# 使用 Homebrew, dnf, MacPorts, apt 安装 howdoi

查看 howdoi 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:howdoi
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install howdoi
```

  证据: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install howdoi
```

  证据: MacPorts ports tree: devel/howdoi/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- dnf (92%):

```sh
sudo dnf install howdoi
```

  证据: Fedora Rawhide package metadata: howdoi from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Ubuntu apt (92%):

```sh
sudo apt install howdoi
```

  证据: Ubuntu 24.04 LTS package indexes: howdoi from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz

## 软件包事实

- **软件包键:** brew:howdoi
- **软件包管理器:** Homebrew
- **软件包管理器页面:** <https://formulae.brew.sh/formula/howdoi>
- **版本:** 2.0.20
- **来源摘要:** Instant coding answers via the command-line
- **主页:** <https://github.com/gleitz/howdoi>
- **仓库:** <https://github.com/gleitz/howdoi>
- **上游文档:** <https://github.com/gleitz/howdoi#readme>
- **许可证:** MIT
- **源码归档:** <https://files.pythonhosted.org/packages/6d/43/0e8166583575bd500c0f8f1a4ab9429af9466feb6fcdc006e88de8fd23e9/howdoi-2.0.20.tar.gz>
- **最后更新:** 2026-06-03T10:42:50Z
- **已生成:** 2026-07-08T18:08:21+00:00

## 可执行文件

- howdoi (cli)
- howdoi (别名)

## 依赖

- certifi
- cryptography
- libsodium
- python@3.14

## macOS 提供的库

- libxml2
- libxslt

## 安装行为

- post-install 钩子: 未定义
- Bottle: 可用 于 arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## 版本和新鲜度

- 页面生成时间: 2026-07-08
- 管理器版本: 2.0.20
- 管理器更新时间: 2026-06-03
- 本地数据: OK
- 上游仓库: https://github.com/gleitz/howdoi
- 信息: No cached GitHub release or tag data was available.
## 项目历史与用法

howdoi is a Python command-line tool that returns coding answers in the terminal. Its README pitches the tool as a way to avoid opening a browser for common programming questions, with examples that query Stack Overflow-style answers and print snippets directly.

### 项目历史

Benjamin Gleitzman created howdoi and credits Rich Jones for the idea in the project README and source header. The repository source header describes it as written by Gleitzman, and the README keeps the intentionally terse premise: instant coding answers via the command line.

The project started as a small search-and-scrape utility and evolved into a more featureful CLI. The changelog records PyPI packaging, Python 3 support, multiple answers, color output, caching, alternate search engines, JSON output, saved answers, environment-variable configuration, and later changes caused by search-engine and Stack Overflow markup shifts.

### 采用历史

PyPI records the first packaged 0.1.1 upload in November 2012, and Homebrew packages `howdoi` from the PyPI source archive. The package metadata in this batch also records distro packaging through DNF, MacPorts, and Ubuntu, which is unusually broad for a novelty-adjacent developer helper.

The README lists integrations for Slack, Telegram, Discord, Emacs, VSCode, and Alfred. Those integrations show that howdoi's basic idea escaped the original terminal command and became a reusable pattern for asking programming-reference questions from developer surfaces.

### 使用方式

The core usage is `howdoi QUERY`, with options for selecting result position, returning multiple answers, printing full text, colorizing output, showing only links, choosing a search engine, using JSON output, and saving or viewing stashed answers.

Environment variables such as `HOWDOI_COLORIZE`, `HOWDOI_SEARCH_ENGINE`, and `HOWDOI_URL` let users change default behavior or point searches at other Stack Exchange sites.

### 为什么软件包爱好者会关心

howdoi is package-nerd catnip because it captures an early-2010s developer workflow in one tiny command: ask the web a coding question, scrape the likely answer, and stay in the shell. It is fragile by design because it depends on search results and answer-page markup, and the changelog reads like a history of keeping that trick alive.

It also helped popularize a genre of terminal knowledge tools that wrap public Q&A sites, then rely on package managers to make the joke useful enough to install everywhere.

### 时间线

- 2012: PyPI records the 0.1.1 package upload.
- 2013: The 1.0 changelog marks Python 3 support and Production/Stable project status.
- 2.0.1: The changelog adds JSON output and stashed answers.
- 2.0.8: The changelog records the move from Travis to GitHub Actions and dropping Python 2.7 support.
- 2022: PyPI records the 2.0.20 release, whose changelog adds Python 3.10 support.

### Related projects

- Stack Overflow and other Stack Exchange sites are the knowledge sources targeted by the documented query examples and `HOWDOI_URL` setting.
- keep inspired the answer-stashing feature documented in the howdoi README and changelog.
- slack-howdoi, howdoi-telegram, discord-howdoi, emacs-howdoi, VSCode howdoi, and alfred-howdoi are listed by the project as integrations.

### 来源

- <https://formulae.brew.sh/formula/howdoi>
- <https://github.com/gleitz/howdoi>
- <https://github.com/gleitz/howdoi/blob/master/CHANGES.txt>
- <https://github.com/gleitz/howdoi/blob/master/howdoi/howdoi.py>
- <https://pypi.org/project/howdoi/>
- <https://pypi.org/pypi/howdoi/json>


## 安全说明

没有找到 howdoi 的匹配本地密钥处理 manifest。Nucleus 软件包元数据仍在此发布，以便未来覆盖拥有稳定的软件包 URL。


## 源数据库详情

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** howdoi
- **Version Scheme:** 0
- **Revision:** 22
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## 其他软件包管理器记录

- Ubuntu apt - howdoi - 1.1.9-1.1: normalized package name match | Ubuntu 24.04 LTS package indexes: howdoi from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | command line tool for instant coding answers | https://github.com/gleitz/howdoi
- dnf - howdoi - 2.0.20-16.fc45: normalized package name match | Fedora Rawhide package metadata: howdoi from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Instant coding answers via the command line | https://github.com/gleitz/howdoi
- MacPorts - howdoi: normalized package name match | MacPorts ports tree: devel/howdoi/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## 相关链接

- [Source-control packages](https://www.automicvault.com/zh-hans/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Terminal utility packages](https://www.automicvault.com/zh-hans/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/zh-hans/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/zh-hans/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [python@3.14](https://www.automicvault.com/zh-hans/pkg/brew/python-3-14/) - Runtime dependency declared by Homebrew.
- [abi3audit](https://www.automicvault.com/zh-hans/pkg/brew/abi3audit/) - Shares av.db curated category or tags: cli, developer-tools, python.
- [auditwheel](https://www.automicvault.com/zh-hans/pkg/brew/auditwheel/) - Shares av.db curated category or tags: cli, developer-tools, python.
- [austin](https://www.automicvault.com/zh-hans/pkg/brew/austin/) - Shares av.db curated category or tags: cli, developer-tools, python.
- [autopep8](https://www.automicvault.com/zh-hans/pkg/brew/autopep8/) - Shares av.db curated category or tags: cli, developer-tools, python.
- [basedpyright](https://www.automicvault.com/zh-hans/pkg/brew/basedpyright/) - Shares av.db curated category or tags: cli, developer-tools, python.
- [black](https://www.automicvault.com/zh-hans/pkg/brew/black/) - Shares av.db curated category or tags: cli, developer-tools, python.
- [bpython](https://www.automicvault.com/zh-hans/pkg/brew/bpython/) - Shares av.db curated category or tags: cli, developer-tools, python.
- [breezy](https://www.automicvault.com/zh-hans/pkg/brew/breezy/) - Shares av.db curated category or tags: cli, developer-tools, python.
- [euler-py](https://www.automicvault.com/zh-hans/pkg/brew/euler-py/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, command-line, developer, developer-tools, line.
- [langgraph-cli](https://www.automicvault.com/zh-hans/pkg/brew/langgraph-cli/) - Both packages touch the same language runtime or ecosystem. Shared terms: certifi, cli, command-line, developer, developer-tools.
- [mistral-vibe](https://www.automicvault.com/zh-hans/pkg/brew/mistral-vibe/) - Both packages touch the same language runtime or ecosystem. Shared terms: certifi, cli, coding, cryptography, developer.

## Combined YAML source

View the package source record on GitHub. [combined/howdoi.yml](https://github.com/automic-vault/db/blob/main/combined/howdoi.yml)


## 来源

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
