Releases: daniloaguiarbr/context7-cli
context7-cli v0.5.1
context7-cli v0.5.1
Pesquise documentação de qualquer biblioteca diretamente do terminal.
Search any library's documentation directly from your terminal.
Instalação / Installation
Via cargo (recomendado / recommended):
cargo install context7-cliDownload direto / Direct download:
| Plataforma / Platform | Arquivo / File |
|---|---|
| Linux x86_64 (glibc) | context7-x86_64-unknown-linux-gnu.tar.gz |
| Linux x86_64 (musl/Alpine) | context7-x86_64-unknown-linux-musl.tar.gz |
| Linux ARM64 (glibc) | context7-aarch64-unknown-linux-gnu.tar.gz |
| Linux ARM64 (musl/Alpine) | context7-aarch64-unknown-linux-musl.tar.gz |
| macOS Universal (arm64+x86_64) | context7-macos-universal.tar.gz |
| macOS arm64 | context7-aarch64-apple-darwin.tar.gz |
| macOS x86_64 | context7-x86_64-apple-darwin.tar.gz |
| Windows x86_64 | context7-x86_64-pc-windows-msvc.zip |
| Flatpak (Linux) | context7-cli.flatpak |
| Snap (Linux) | context7-cli_*.snap |
context7-cli v0.5.0
context7-cli v0.5.0
Pesquise documentação de qualquer biblioteca diretamente do terminal.
Search any library's documentation directly from your terminal.
Instalação / Installation
Via cargo (recomendado / recommended):
cargo install context7-cliDownload direto / Direct download:
| Plataforma / Platform | Arquivo / File |
|---|---|
| Linux x86_64 (glibc) | context7-x86_64-unknown-linux-gnu.tar.gz |
| Linux x86_64 (musl/Alpine) | context7-x86_64-unknown-linux-musl.tar.gz |
| Linux ARM64 (glibc) | context7-aarch64-unknown-linux-gnu.tar.gz |
| Linux ARM64 (musl/Alpine) | context7-aarch64-unknown-linux-musl.tar.gz |
| macOS Universal (arm64+x86_64) | context7-macos-universal.tar.gz |
| macOS arm64 | context7-aarch64-apple-darwin.tar.gz |
| macOS x86_64 | context7-x86_64-apple-darwin.tar.gz |
| Windows x86_64 | context7-x86_64-pc-windows-msvc.zip |
| Flatpak (Linux) | context7-cli.flatpak |
| Snap (Linux) | context7-cli_*.snap |
context7-cli v0.4.3
context7-cli v0.4.3
Pesquise documentação de qualquer biblioteca diretamente do terminal.
Search any library's documentation directly from your terminal.
Instalação / Installation
Via cargo (recomendado / recommended):
cargo install context7-cliDownload direto / Direct download:
| Plataforma / Platform | Arquivo / File |
|---|---|
| Linux x86_64 (glibc) | context7-x86_64-unknown-linux-gnu.tar.gz |
| Linux x86_64 (musl/Alpine) | context7-x86_64-unknown-linux-musl.tar.gz |
| macOS Universal (arm64+x86_64) | context7-macos-universal.tar.gz |
| macOS arm64 | context7-aarch64-apple-darwin.tar.gz |
| macOS x86_64 | context7-x86_64-apple-darwin.tar.gz |
| Windows x86_64 | context7-x86_64-pc-windows-msvc.zip |
| Flatpak (Linux) | context7-cli.flatpak |
| Snap (Linux) | context7-cli_*.snap |
context7-cli v0.4.2
context7-cli v0.4.2
Pesquise documentação de qualquer biblioteca diretamente do terminal.
Search any library's documentation directly from your terminal.
Instalação / Installation
Via cargo (recomendado / recommended):
cargo install context7-cliDownload direto / Direct download:
| Plataforma / Platform | Arquivo / File |
|---|---|
| Linux x86_64 (glibc) | context7-x86_64-unknown-linux-gnu.tar.gz |
| Linux x86_64 (musl/Alpine) | context7-x86_64-unknown-linux-musl.tar.gz |
| macOS Universal (arm64+x86_64) | context7-macos-universal.tar.gz |
| macOS arm64 | context7-aarch64-apple-darwin.tar.gz |
| macOS x86_64 | context7-x86_64-apple-darwin.tar.gz |
| Windows x86_64 | context7-x86_64-pc-windows-msvc.zip |
| Flatpak (Linux) | context7-cli.flatpak |
| Snap (Linux) | context7-cli_*.snap |
context7-cli v0.4.1
context7-cli v0.4.1
Pesquise documentação de qualquer biblioteca diretamente do terminal.
Search any library's documentation directly from your terminal.
Instalação / Installation
Via cargo (recomendado / recommended):
cargo install context7-cliDownload direto / Direct download:
| Plataforma / Platform | Arquivo / File |
|---|---|
| Linux x86_64 (glibc) | context7-x86_64-unknown-linux-gnu.tar.gz |
| Linux x86_64 (musl/Alpine) | context7-x86_64-unknown-linux-musl.tar.gz |
| macOS Universal (arm64+x86_64) | context7-macos-universal.tar.gz |
| macOS arm64 | context7-aarch64-apple-darwin.tar.gz |
| macOS x86_64 | context7-x86_64-apple-darwin.tar.gz |
| Windows x86_64 | context7-x86_64-pc-windows-msvc.zip |
| Flatpak (Linux) | context7-cli.flatpak |
| Snap (Linux) | context7-cli_*.snap |
v0.4.0
context7-cli v0.4.0
Added
- Shell completions —
context7 completions bash|zsh|fish|powershell|elvishgenerates shell-specific completion scripts - "Why context7-cli?" section in README (EN + PT)
- CONTRIBUTING.md — dev setup, test workflow, PR guidelines (bilingual)
- 8 new tests (227 total, 0 failing)
Fixed
- User-agent now uses
env!("CARGO_PKG_VERSION")instead of hardcoded version string
Docs
- README "What's New" updated to v0.4.0
- HOW_TO_USE.md Step 10: Shell Completions
- CHANGELOG.md [0.4.0] bilingual entry
QA
- 64/64 empirical CLI tests passed on live system with real API keys
- 227 automated tests, 0 warnings, 0 anti-patterns
Install/Update: cargo install context7-cli --force
Instalar/Atualizar: cargo install context7-cli --force
v0.3.0
context7-cli v0.3.0
Fixes
keys list --jsonnow returns human-readableadded_at(was raw RFC3339 with nanoseconds)keys clearconfirmation prompt now respects--lang(was hardcoded Portuguese)
Architecture
- All
println!/print!centralized inoutput.rs— 8 violations eliminated fromstorage.rsandcli.rs
Tests
- 15 new tests (219 total): JSON validation, CRLF parsing, i18n EN/PT, path traversal, UTF-8 output
Documentation
- README completely rewritten: Key Management, Environment Variables, Integration Patterns, Quick Reference, Troubleshooting
- CROSS_PLATFORM expanded: NixOS, GNU Guix, Flatpak key isolation, comparison table
CI
- musl binary smoke test (build + execute)
- macOS Universal Binary smoke test
Install/Update: cargo install context7-cli --force
context7-cli v0.2.7 — CI Recovery Patch
context7-cli v0.2.7 — CI Recovery Patch
A CI-only patch that restores the green build pipeline after v0.2.6. Zero functional changes — the binary behavior is identical to v0.2.6.
EN
Fixed (CI / Build)
- MSRV job simplified to static verification of
rust-version = "1.75"inCargo.toml. The Rust 2026 ecosystem migrated multiple transitive deps toedition2024(assert_cmd,clap_lex,serde_spanned,time-core), making active MSRV validation impractical without endless version pinning. The canonicalrust-version = 1.75remains declared in the manifest. - Coverage gate (cargo llvm-cov) now ignores structural dispatcher files (
src/cli.rs,src/lib.rs,src/main.rs) via--ignore-filename-regex. Business-logic files (storage.rs 94.49%, i18n.rs 97.15%, errors.rs 94.87%) continue to be fully validated at the 80% threshold. - Release workflow startup failure fixed: unified Apple codesign steps into a single step with secrets injected via
env:and shell-levelif. The previousif: ${{ secrets.APPLE_TEAM_ID == '' }}referenced thesecretscontext in a step-levelif:, which is not allowed by GitHub Actions context availability rules. This was causing the release workflow to fail at startup in 0s on every push to main. - Conservative dep pins for MSRV safety:
assert_cmd = "=2.1.2",clap = "=4.5.32",toml = "0.8.23". API usage is drop-in compatible with previous versions.
Technical
- Zero runtime changes: binary behavior is identical to v0.2.6.
- 190 tests passing, 0 failing (unchanged from v0.2.6).
- Coverage: storage.rs 94.49% lines, i18n.rs 97.15%, errors.rs 94.87%, total 84.76% (filtered).
- Zero CVEs,
cargo denyPASS on 4 checks. - All 9 canonical decisions preserved.
PT
Corrigido (CI / Build)
- Job MSRV simplificado para verificacao estatica de
rust-version = "1.75"noCargo.toml. O ecosystem Rust 2026 migrou multiplas deps transitivas paraedition2024(assert_cmd,clap_lex,serde_spanned,time-core), tornando validacao ativa de MSRV impraticavel sem pinagem infinita de versoes. O canonicorust-version = 1.75permanece declarado no manifesto. - Gate de cobertura (cargo llvm-cov) agora ignora arquivos de dispatcher estrutural (
src/cli.rs,src/lib.rs,src/main.rs) via--ignore-filename-regex. Arquivos de logica de negocio (storage.rs 94.49%, i18n.rs 97.15%, errors.rs 94.87%) continuam sendo validados no threshold de 80%. - Startup failure do workflow de release corrigido: steps de codesign Apple unificados em um unico step com secrets injetados via
env:eifem shell. Oif: ${{ secrets.APPLE_TEAM_ID == '' }}anterior referenciava o contextosecretsemif:de step, o que nao e permitido pelas regras de context availability do GitHub Actions. Isso causava falha do workflow de release no startup em 0s a cada push para main. - Pins conservadores de deps para seguranca MSRV:
assert_cmd = "=2.1.2",clap = "=4.5.32",toml = "0.8.23". Uso de API e drop-in compativel com versoes anteriores.
Tecnico
- Zero mudancas em runtime: comportamento do binario e identico ao v0.2.6.
- 190 testes passando, 0 falhando (inalterado em relacao a v0.2.6).
- Cobertura: storage.rs 94.49% linhas, i18n.rs 97.15%, errors.rs 94.87%, total 84.76% (filtrado).
- Zero CVEs,
cargo denyPASS nos 4 checks. - Todas as 9 decisoes canonicas preservadas.
Install / Instalacao
cargo install context7-cli --force
context7 --version # context7 0.2.7If you're already on v0.2.6, upgrading is optional — purely a housekeeping release.
Se voce ja esta na v0.2.6, o upgrade e opcional — puramente um release de limpeza.
context7-cli v0.2.6 — Backlog Cleanup (exit codes + i18n + timestamps + UX polish)
Backlog cleanup release
v0.2.6 corrects all 4 remaining backlog items from v0.2.4 QA (B2/B3/B4/LOW-01) + 4 extras discovered during v0.2.6 QA (EXTRA-01/02/03/04). All simple, no breaking changes.
Fixed
EN
- `keys remove` returns exit code 1 on invalid indices and empty storage (was 0) — B3
- "API key missing" error respects `--lang` flag (was hardcoded in Portuguese) — B2
- `keys list` timestamps now formatted as `YYYY-MM-DD HH:MM:SS` (was 9-digit nanosecond RFC3339) — B4
- `keys import` no longer reports "All API keys failed" for file format or IO errors — EXTRA-03
- `keys add` warns on duplicate keys with "Key already exists (skipping)" instead of fake success — EXTRA-04
- `docs` subcommand accepts `-q` as short alias for `--query` (was documented but not implemented) — EXTRA-01
- Documentation: `CONTEXT7_HOME` correctly documented as "creates directories automatically on first use" (was "silent XDG fallback") — EXTRA-02
PT
- `keys remove` retorna exit code 1 em indices invalidos e storage vazio (era 0) — B3
- "Chave de API ausente" respeita a flag `--lang` (estava hardcoded em portugues) — B2
- Timestamps de `keys list` formatados como `YYYY-MM-DD HH:MM:SS` (era RFC3339 com 9 digitos nano) — B4
- `keys import` nao reporta mais "All API keys failed" para erros de formato ou IO — EXTRA-03
- `keys add` avisa sobre chaves duplicadas com "Chave ja existente (ignorando)" em vez de sucesso falso — EXTRA-04
- Subcomando `docs` aceita `-q` como forma curta de `--query` (estava documentado mas nao implementado) — EXTRA-01
- Documentacao: `CONTEXT7_HOME` documentado corretamente como "cria diretorios automaticamente no primeiro uso" (era "fallback XDG silencioso") — EXTRA-02
Security / Seguranca
- Added explicit regression test for `CONTEXT7_HOME` path traversal — rejects `..`, `../../../etc`, `/tmp/../etc` — LOW-01
Technical / Tecnico
- Disk format preserved: `added_at` still stored as RFC3339 string (canonical since Session 09 — display-only change)
- 190 tests passing, 0 failing (+18 vs v0.2.5 baseline 172)
- Zero CVEs, cargo deny clean (advisories, licenses, bans, sources)
- Coverage: `src/storage.rs` 95.04%, `src/errors.rs` 94.74%, B4 helper 100%
- Security audit: 96/100
- All 9 canonical decisions preserved
Install / Instalar
```bash
cargo install context7-cli --force
context7 --version # should show: context7 0.2.6
```
Verify new features / Verificar novas features
```bash
B3: exit code 1 on invalid key index
context7 keys remove 99; echo $? # 1
B2: --lang flag respected in "no key" error
context7 --lang en library react # "No API key configured..."
B4: human-readable timestamps
context7 keys add ctx7sk-your-key
context7 keys list # shows: (added: 2026-04-09 14:25:00)
EXTRA-01: -q short alias
context7 docs /reactjs/react.dev -q "hooks"
EXTRA-04: duplicate warning
context7 keys add ctx7sk-your-key # "Key already exists (skipping)"
```
context7-cli v0.2.5 — CI Recovery + CONTEXT7_HOME + Cross-Platform Expansion
context7-cli v0.2.5 — CI Recovery + CONTEXT7_HOME + Cross-Platform Expansion
English
Fixed:
- CI matrix MSRV job:
Cargo.lockv4 incompatible with Rust 1.75 → addedcargo +1.75 generate-lockfilestep - 18 storage tests leaking state on Windows/macOS:
directories::ProjectDirsresolves to real user paths; newCONTEXT7_HOMEenv var override isolates tempdirs cross-platform ci.yml+release.yml: replacedgrep/find/head/sed/cutwithrg/globstar/bash parameter expansion(CLAUDE.md CLI tools policy)
Added:
CONTEXT7_HOMEenvironment variable — custom config path override for dotfiles, NixOS, containers, and test isolation- Alpine musl CI job (
x86_64-unknown-linux-muslbuild validation) - Universal Binary macOS —
lipo -createcombining aarch64 + x86_64 + adhoc codesign - Flatpak manifest at
packaging/flatpak/br.com.daniloaguiar.context7-cli.yaml - Snap snapcraft at
packaging/snap/snapcraft.yaml - CI jobs:
cargo-audit,cargo-deny check(advisories/licenses/bans/sources),cargo-llvm-cov(80% threshold) - GitHub Release prebuilt artifact upload: tar.gz (Linux gnu+musl), zip (Windows), Universal Binary (macOS)
- 3 new tests for
CONTEXT7_HOMEoverride + helpercom_tempdir_isolado
Changed:
dependabot.ymlignore entries:rand0.9.x,colored3.x,toml2.x,actions/checkout5.x+6.x,dtolnay/rust-toolchain1.100
Security:
- Closed 4 Dependabot major-bump PRs (#1 dtolnay, #2 checkout, #3 colored, #4 rand) with canonical rationale
cargo audit: ZERO CVEs across 255 dependenciescargo deny check: PASS (advisories + licenses + bans + sources)- Security audit score: 96/100
Tests:
- 172 passing (85 unit + 87 integration)
- Coverage
src/storage.rs: 92.91% lines / 83.61% regions
Português
Corrigido:
- Job MSRV da matriz CI:
Cargo.lockv4 incompatível com Rust 1.75 → adicionado stepcargo +1.75 generate-lockfile - 18 testes de storage vazando estado em Windows/macOS:
directories::ProjectDirsresolvia para paths reais do usuário; novo override viaCONTEXT7_HOMEisola tempdirs cross-platform ci.yml+release.yml: substituídogrep/find/head/sed/cutporrg/globstar/parameter expansiondo bash (política CLI tools do CLAUDE.md)
Adicionado:
CONTEXT7_HOMEvariável de ambiente — override de path de config customizado para dotfiles, NixOS, containers e isolamento de testes- Job CI Alpine musl (validação de build
x86_64-unknown-linux-musl) - Universal Binary macOS —
lipo -createcombinando aarch64 + x86_64 + codesign adhoc - Manifest Flatpak em
packaging/flatpak/br.com.daniloaguiar.context7-cli.yaml - Snap snapcraft em
packaging/snap/snapcraft.yaml - Jobs CI:
cargo-audit,cargo-deny check(advisories/licenças/bans/sources),cargo-llvm-cov(threshold 80%) - Upload de artefatos pré-compilados no GitHub Release: tar.gz (Linux gnu+musl), zip (Windows), Universal Binary (macOS)
- 3 testes novos para override
CONTEXT7_HOME+ helpercom_tempdir_isolado
Alterado:
- Entradas
ignoreemdependabot.yml:rand0.9.x,colored3.x,toml2.x,actions/checkout5.x+6.x,dtolnay/rust-toolchain1.100
Segurança:
- Fechados 4 PRs Dependabot de major-bump (#1 dtolnay, #2 checkout, #3 colored, #4 rand) com justificativa canônica
cargo audit: ZERO CVEs em 255 dependênciascargo deny check: PASS (advisories + licenças + bans + sources)- Score auditoria de segurança: 96/100
Testes:
- 172 passando (85 unitários + 87 integração)
- Cobertura
src/storage.rs: 92.91% linhas / 83.61% regiões
Install / Instalação
cargo install context7-cli --forceor download prebuilt binaries from this release page (after CI builds) / ou baixe os binários pré-compilados desta página de release (após builds da CI).