macOS
brew install carapacelocal Homebrew formula metadata
sudo port install carapaceMacPorts ports tree · sysutils/carapace/Portfile · source: api.github.com
brew
Multi-shell multi-command argument completer. Version 1.7.3 via Homebrew; verified 2026-06-30.
install
brew install carapacelocal Homebrew formula metadata
sudo port install carapaceMacPorts ports tree · sysutils/carapace/Portfile · source: api.github.com
sudo apk add carapaceAlpine Linux edge package indexes · carapace · source: dl-cdn.alpinelinux.org
nix profile install nixpkgs#carapacenixpkgs package indexes · pkgs/by-name/ca/carapace/package.nix · source: api.github.com
winget install --id rsteube.Carapace -eWindows Package Manager source index · rsteube.Carapace · source: cdn.winget.microsoft.com
overview
Multi-shell multi-command argument completer
history
carapace is a Go-based multi-shell argument completer distributed as the carapace-bin package. It exists in the long tradition of shell completion frameworks, but its package-nerd hook is that one completion engine can target many shells instead of requiring a separate completion script style for Bash, Zsh, Fish, PowerShell, Nushell, Xonsh, Elvish, and others.
The public carapace-bin repository was created on GitHub in April 2020. Its README describes the project as a multi-shell completion binary, and the repository topics show the project deliberately spans many shell ecosystems rather than being tied to a single command-line environment.
The project grew around two related surfaces: a collection of completers for existing CLI tools and a specification system for adding custom completions. Its documentation is published as an mdBook site, and the README points users to install and setup pages rather than treating the GitHub README as the only manual.
The project is packaged across multiple operating-system package channels. The supplied Homebrew source facts list Homebrew, Alpine, MacPorts, Nix, and winget package mappings, while the upstream README includes a Repology packaging badge, signaling that distribution packaging is part of the project's public identity.
Adoption has been strongest among users who move between shells or who want richer completion behavior without writing shell-specific scripts. The upstream README's supported-shell list includes both traditional shells and newer interactive shells, which is the core adoption story for carapace.
Users install the carapace binary, enable it for their shell, and then use it to provide argument completions for supported commands. The upstream README links to the official install and setup documentation, and the official completers page documents the list of commands covered by the project.
For package maintainers and power users, carapace is also interesting because completions can be specified outside a single shell's scripting language, making it useful when a command-line tool needs completions across several shell communities.
carapace matters to package nerds because shell completion is often the forgotten layer between a package and its users. A package that ships a good binary but poor completions feels worse in day-to-day terminal use, and carapace offers a shared completion layer that package managers can distribute like any other CLI tool.
Its significance also comes from cross-shell normalization. Package repositories normally have to care about Bash, Zsh, Fish, PowerShell, and newer shells separately; carapace turns that messy edge of packaging into a dedicated, versioned tool.
security posture
generalized runtime or code generation signal.
yellow risk · medium confidence · runtime
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
local files
These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.
Config paths the tool may read or write during local use.
${UserConfigDir}/carapace${UserConfigDir}/carapace/specs${UserConfigDir}/carapace/variables/{group}.yaml${UserConfigDir}/carapace/bridgeexecutables
| Command | Kind | Exposure | Note |
|---|---|---|---|
carapace | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/carapace-sh/carapace-bin
install metadata
| Package key | brew:carapace |
|---|---|
| Version | 1.7.3 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/carapace |
| Homepage | https://carapace.sh |
| Repository | https://github.com/carapace-sh/carapace-bin |
| Upstream docs | https://carapace-sh.github.io/carapace-bin |
| License | MIT |
| Source archive | https://github.com/carapace-sh/carapace-bin/archive/refs/tags/v1.7.3.tar.gz |
| Last updated | 2026-06-30T23:54:20Z |
| Pulse | updated |
| Build dependencies | go |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | carapace |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
carapace
nix profile install nixpkgs#carapacecarapace 1.5.7-r5
Multi-shell multi-command argument completer
sudo apk add carapacecarapace
sudo port install carapacersteube.Carapace
winget install --id rsteube.Carapace -esource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.