Automic VaultAutomic Vault

brew

使用 Homebrew, MacPorts, Nix 安装 hermit

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

安装

其他安装命令

macOS

Homebrew已验证 · 100%
brew install hermit

local Homebrew formula metadata

MacPorts已验证 · 94%
sudo port install hermit

MacPorts ports tree · devel/hermit/Portfile · 来源: api.github.com

Linux

Nix已验证 · 92%
nix profile install nixpkgs#hermit

nixpkgs package indexes · pkgs/by-name/he/hermit/package.nix · 来源: api.github.com

概览

软件包摘要

Manages isolated, self-bootstrapping sets of tools in software projects

命令和别名

  • hermit

历史

项目历史与用法

Hermit is a project-local toolchain manager from Cash App. It installs development tools into isolated, self-bootstrapping environments so a repository, its contributors, and its CI can share the same command-line tooling without asking users to preconfigure a whole machine.

项目历史

The Hermit and hermit-packages repositories were created on May 20, 2021. The README describes the core mission as uniform tooling for Linux and Mac: self-contained tool sets that travel with a software project.

Hermit's design separates the environment manager from package manifests. The `cashapp/hermit-packages` repository contains HCL manifests that describe how to download, install, and map packages into an environment, while Hermit itself provides activation, package lookup, installation, updating, and shell integration.

The documentation presents Hermit as intentionally narrow. The FAQ says it manages development tools rather than libraries, avoids being a general-purpose package manager, and differs from Nix, Homebrew, Docker, Bazel, GoFish, and asdf by focusing on project-level, self-bootstrapping, binary-tool environments.

采用历史

Hermit's adoption path is strongest inside repositories and CI jobs that want reproducible developer tools without adopting a full operating-system package manager or build system. Its docs teach users to commit the generated `bin` directory artifacts such as `activate-hermit`, `hermit`, and `hermit.hcl` so a clone can bootstrap itself.

The presence of a separate manifest repository, a GitHub Action for activating Hermit, Renovate datasource support, and package-manager entries in Homebrew, MacPorts, and Nix reflects a small but durable ecosystem around project-local tool provisioning.

使用方式

A typical workflow starts with `hermit init` in a project, then `. ./bin/activate-hermit` to add the project's `bin` directory and managed environment variables to the shell. Users then install tools with commands such as `hermit install go-1.16.3` or `hermit install rust@nightly protoc`.

Hermit packages can be selected by exact version, channel, or preferred version. The management docs describe manifest sources, periodic syncs, `hermit search`, `hermit list`, `hermit info`, `hermit upgrade`, explicit downgrades with `hermit install`, and `hermit uninstall`.

Hermit's package definitions are HCL manifests commonly retrieved from Git repositories. The official packaging docs describe these manifests as the way packages define source archives, installation behavior, and binary mappings.

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

Hermit occupies a pragmatic middle ground between language-specific version managers and full system package managers. Package nerds care because it turns a repository into its own tool-distribution boundary, but does so by downloading relocatable binary tools instead of building a new universe from source.

Its comparison with asdf is especially revealing: asdf focuses on switching versions of languages and tools for a user, while Hermit focuses on making project tooling consistent and reproducible for teams and CI. That difference explains why Hermit manifests and activation scripts are part of the project workflow rather than only per-user setup.

时间线

  • 2021-05-20: Hermit and hermit-packages repositories were created.
  • 2021: Early documentation used Go 1.16.3 and Rust 1.51-era examples, matching Hermit's initial positioning as a project toolchain manager.
  • 2026: The repository and package manifest collection remained active, with documentation covering package manifests, Renovate integration, and multiple shells.

Related projects

  • asdf is the closest version-manager comparison in the official FAQ, but Hermit emphasizes project-level binary tool environments rather than per-user language switching.
  • Nix, Homebrew, Docker, Bazel, and GoFish are comparison points in the FAQ. Hermit deliberately avoids becoming a full OS package manager, build system, or container runtime.
  • `cashapp/hermit-packages`, `cashapp/hermit-build`, and `cashapp/activate-hermit` are companion repositories for manifests, special build artifacts, and CI activation.

来源

  • Hermit README for project mission and copyright date.
  • Official get-started, package-management, and FAQ docs for workflow and scope boundaries.
  • hermit-packages README for manifest repository role.

安全态势

风险级别:绿色

narrow executable package without higher-risk signals.

风险分类器

绿色 风险 · 低 置信度 · appliance

原因

  • narrow executable package without higher-risk signals

信号

  • metadata:no-higher-risk-signals

安装行为

  • formula 元数据中未记录 Homebrew post-install 钩子。
  • Homebrew bottle 元数据适用于 6 个平台目标。
  • 构建元数据列出 1 个构建依赖。

建议审查

在无人值守的代理使用前,请检查该工具是否读取明文凭据、写入远程状态、发布制品或调用插件。

可执行文件

已安装的可执行文件

命令类型暴露范围备注
hermitcli全局可执行文件

新鲜度

版本和新鲜度

这些信号区分页生成时间、软件包管理器活动和上游发布比较。只有存在证据 URL 和可比较版本时,才会提示版本落后。

页面生成时间2026-07-08
管理器版本0.52.3
管理器更新时间2026-06-16
本地数据OK
上游当前
检测到的最新版本v0.52.3

https://github.com/cashapp/hermit

  • OK没有生成新鲜度警告。

安装元数据

软件包元数据

软件包键brew:hermit
版本0.52.3
软件包管理器Homebrew
软件包管理器页面https://formulae.brew.sh/formula/hermit
主页https://cashapp.github.io/hermit
仓库https://github.com/cashapp/hermit
上游文档https://cashapp.github.io/hermit
许可证Apache-2.0
源码归档https://github.com/cashapp/hermit/archive/refs/tags/v0.52.3.tar.gz
最后更新2026-06-16T08:40:33Z
Pulseupdated
构建依赖go
Bottle可用 (于 arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-install未定义
服务未声明
注意事项For shell integration hooks, add the following to your shell configuration: For bash, add the following command to your .bashrc: eval "$(test -x $(brew --prefix)/bin/hermit && $(brew --prefix)/bin/hermit shell-hooks --print --bash)" For zsh, add the following command to your .zshrc: eval "$(test -x $(brew --prefix)/bin/hermit && $(brew --prefix)/bin/hermit shell-hooks --print --zsh)"

注册表事实

源数据库详情

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namehermit
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

源数据库匹配

其他软件包管理器记录

匹配项来自外部软件包管理器索引,并与本地 Automic Vault 软件包链接分开显示。

Nix95%

hermit

nix profile install nixpkgs#hermit
  • normalized package name match
  • 匹配方式:Hermit
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/he/hermit/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
MacPorts95%

hermit

sudo port install hermit
  • normalized package name match
  • 匹配方式:Hermit
MacPorts ports tree · api.github.com · MacPorts ports tree: devel/hermit/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

来源线索

由仓库数据生成

此页面由 av-webscripts/generate-pkg-sqlite.py 生成的私有软件包 SQLite 工件提供。

使用的来源

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