
Reforce as configurações do seu gerenciador de pacotes contra ataques à cadeia de suprimentos.
```text
_ _
| | ___ _ __ ___ __ _ _ _ __ _ _ __ | |
/
|/ _ \ '_ \/ __|/ _ | | | |/ | '__/ _ |
| (| | __/ |) _ \ (| | || | (| | | | (| |
_,_|_| ./|/_, |_,|_,|| _,|
|| |___/
Por **[[arnica](https://arnica.io?utm_source=depsguard&utm_medium=referral&utm_campaign=community)]**
## Índice
- [Visão geral](#overview)
- [Instalação](#install)
- [Uso](#usage)
- [O que é verificado](#what-gets-checked)
- [Locais dos arquivos de configuração](#config-file-locations)
- [Correção de segurança urgente](#urgent-security-fix)
- [Backups e restauração](#backups-and-restore)
- [Como funciona](#how-it-works)
- [Solução de problemas](#troubleshooting)
- [Ajuda e feedback](#help--feedback)
- [Guias](#guides)
- [Veja também](#see-also)
- [Licença](#license)
## Visão geral
O DepsGuard procura por **npm**, **pnpm**, **yarn**, **bun**, **uv**, **pip**, **poetry** e **aube** na sua máquina, lê seus arquivos de configuração, compara-os com as configurações recomendadas de cadeia de suprimentos e pode **aplicar correções interativamente**. Ele também verifica a existência de configurações do **Renovate** e do **Dependabot** nos seus repositórios. Ele nunca executa instalações de pacotes; apenas edita arquivos de configuração que você aprovar e cria **backups** antes de qualquer alteração.
### Principais recursos
- TUI interativa: verificar, revisar, alternar correções, aplicar
- Subcomando `scan` para relatórios somente leitura
- Subcomando `restore` para escolher um backup e reverter um arquivo
- Multiplataforma: Linux, macOS, Windows
- Sem crates Rust de terceiros incorporados (stdlib + pequena quantidade de FFI de plataforma para o terminal)
### Stack de tecnologia
| Área | Detalhes |
|------|----------|
| Linguagem | Rust (MSRV **1.74**, veja `Cargo.toml`) |
| CLI / TUI | `src/main.rs`, `src/ui.rs`, `src/term.rs` |
| Lógica de configuração | `src/manager.rs`, `src/fix.rs` |
| Site | Site estático em `docs/` (separado do binário) |
## Instalação
### Binários pré-compilados
Cada [GitHub Release](https://github.com/arnica/depsguard/releases) inclui arquivos para:
- Linux: `x86_64` (glibc), `x86_64` (musl), `aarch64` (glibc)
- macOS: Intel e Apple Silicon
- Windows: `x86_64` ZIP contendo `depsguard.exe`
Baixe o arquivo para sua plataforma, descompacte-o e coloque o binário no seu `PATH`.
Verifique a integridade usando o arquivo `.sha256` correspondente ao lado de cada artefato na página de lançamento.
### Instalação por plataforma
#### Linux (Debian/Ubuntu via APT)```bash
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://depsguard.com/apt/gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/depsguard.gpg
echo "deb [arch=amd64,arm64 signed-by=/etc/apt/keyrings/depsguard.gpg] https://depsguard.com/apt stable main" | sudo tee /etc/apt/sources.list.d/depsguard.list >/dev/null
sudo apt update
sudo apt install depsguard
brew install depsguard
O DepsGuard está no [homebrew-core](https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/d/depsguard.rb), portanto, nenhum tap personalizado é necessário.
> **Migrando do antigo tap `arnica/depsguard`?** Troque para a fórmula core uma vez:
>
> ```bash
> brew uninstall depsguard
> brew untap arnica/depsguard
> brew update
> brew install depsguard
> ```
#### Windows```powershell
# WinGet
winget install Arnica.DepsGuard
# Scoop
scoop bucket add depsguard https://github.com/arnica/depsguard
scoop install depsguard
Ou baixe manualmente via PowerShell:```powershell $zip = "$env:TEMP\depsguard.zip" Invoke-WebRequest -Uri "https://github.com/arnica/depsguard/releases/latest/download/depsguard-x86_64-pc-windows-msvc.zip" -OutFile $zip Expand-Archive -LiteralPath $zip -DestinationPath "$env:TEMP\depsguard" -Force Copy-Item "$env:TEMP\depsguard\depsguard.exe" "$HOME\AppData\Local\Microsoft\WindowsApps\depsguard.exe" -Force depsguard.exe --help
### crates.io```bash
cargo install depsguard
Requer uma cadeia de ferramentas Rust com cargo.
Se a sua organização distribui o DepsGuard via Homebrew, Scoop ou WinGet, use as instruções correspondentes. Configurar ou automatizar esses canais (PRs do Homebrew core, buckets, PRs do WinGet, segredos de CI) é documentação de mantenedores; consulte AGENTS.md na seção Release & distribution.
| Canal | Linux | macOS | Windows | Comando de instalação |
|---|---|---|---|---|
| APT (repositório personalizado) | sim | não | não | sudo apt install depsguard (após a configuração do repositório acima) |
| crates.io | sim | sim | sim | cargo install depsguard |
| Homebrew (homebrew-core) | sim | sim | não | brew install depsguard |
| Scoop (bucket personalizado) | não | não | sim | scoop bucket add depsguard https://github.com/arnica/depsguard ; scoop install depsguard |
| WinGet | não | não | sim | winget install Arnica.DepsGuard |
Use o canal pelo qual você instalou:
| Canal | Comando de atualização |
|---|---|
| Homebrew | brew update && brew upgrade depsguard |
| APT (repositório personalizado) | sudo apt update && sudo apt install --only-upgrade depsguard |
| crates.io | cargo install --force depsguard (reinstala a versão mais recente) |
| Scoop | scoop update && scoop update depsguard |
| WinGet | winget upgrade Arnica.DepsGuard |
Verifique sua versão instalada a qualquer momento com depsguard --version e veja a página de releases para a versão mais recente.
git clone https://github.com/arnica/depsguard.git cd depsguard cargo build --release
O binário é `target/release/depsguard` (`.exe` no Windows). É necessário Rust **1.74+**.
## Uso```bash
depsguard # interactive: scan, choose fixes, apply
depsguard scan # report only; no writes (exits 1 if action is needed)
depsguard --no-search # skip recursive file search, check local configs only
depsguard restore # restore from a previous backup
depsguard --help # CLI help