
Regras de segurança portáteis para o limite de ação de agentes de IA
Dê aos seus agentes fronteiras que você pode ler. Obtenha decisões que você pode verificar.
O que é · Início rápido · Como funciona · SDKs · CLI · Políticas · Docs · Especificação
HushSpec é uma especificação aberta para os controles de segurança sob os quais um agente de IA opera. Escreva uma política em YAML, avalie-a em Rust, TypeScript, Python ou Go, e produza recibos que vinculam cada decisão à política por trás dela.
Ela cobre as coisas que os agentes realmente tocam: arquivos, redes, shells, ferramentas, navegadores
e execução de código. A especificação define as regras e seu significado; seu runtime
aplica a fronteira através do HushGuard ou de sua própria integração.
| Declarar | Aplicar | Provar |
|---|---|---|
| YAML revisável com políticas base reutilizáveis e permissões explícitas. | Decisões consistentes de allow, warn e deny no ponto da ação. | Recibos de decisão, assinaturas de política e logs verificáveis. |
A especificação 1.0.0 é estável. O formato do documento, a semântica de avaliação, a forma canônica e os formatos de transmissão estão congelados para a série 1.x. Consulte a política de versionamento e a matriz de conformidade dos SDKs para os contratos e sua cobertura de testes.
A versão 1.0 dos SDKs ainda não foi publicada. Consulte o status de entrega para implementação, qualificação e evidências de lançamento.
O experimental controlador de conformidade externo testa um executável capturado contra o corpus L0-L3 e retém suas entradas, saídas e identidade. O adaptador Go é uma inicialização própria, não uma qualificação independente de engine ou de fronteira de runtime.
O experimental coordenador de invocação confiável verifica uma ferramenta MCP qualificada pelo host e seus efeitos contra um snapshot de política autenticado, registra uma permissão durável e então despacha. Seu piloto isolado de codificação testa edições reais, operações bloqueadas e evidências de falhas. Esta é uma demonstração própria de escopo limitado, não adoção externa ou contenção geral de MCP.
Compile a CLI h2h a partir deste checkout:
cargo install --path crates/hushspec-cli --locked
Salve isto como policy.yaml. Ela protege credenciais, restringe o acesso à rede
e pede confirmação antes que uma ferramenta possa escrever um arquivo ou enviar código.
hushspec: "1.0.0"
name: production-agent
rules:
forbidden_paths:
patterns: ["**/.ssh/**", "**/.aws/**", "/etc/shadow"]
egress:
allow: ["api.openai.com", "*.anthropic.com", "api.github.com"]
default: block
tool_access:
allow: [file_read, search]
block: [shell_exec, run_command]
require_confirmation: [file_write, git_push]
default: block
Valide-a e então teste três decisões:
h2h validate policy.yaml
h2h eval policy.yaml --type egress --target api.openai.com
# allow
h2h eval policy.yaml --type tool_call --target shell_exec
# deny
h2h eval policy.yaml --type tool_call --target file_write
# warn: confirmation required
Esses comandos avaliam ações; eles não as executam. eval sai com
0 para allow, 1 para deny e 4 para warn. Um runtime deve tratar a decisão
antes de despachar a ação. Integre-a ao seu agente →
| Método | Instalação |
|---|---|
| Cargo | cargo install hushspec-cli |
| Homebrew | brew install backbay-labs/tap/h2h |
| npm | npm install -g @hushspec/cli |
| Binários pré-compilados | GitHub Releases, com checksums e atestados de proveniência |
Os instaladores empacotados dependem de o pipeline de lançamento ter publicado os artefatos correspondentes. A instalação a partir do código-fonte acima compila diretamente deste checkout.
Para uma política e suíte de testes geradas automaticamente, execute h2h init --preset default.
Consulte o guia da primeira política para o fluxo de trabalho completo.
O HushGuard carrega a política e reúne avaliação, modos de aplicação, confirmação,
destinos de recibos e observadores. Chame enforce antes de despachar uma ferramenta:
import { HushGuard } from '@hushspec/core';
const guard = HushGuard.fromFile('./policy.yaml');
guard.enforce({ type: 'tool_call', target: 'shell_exec' });
// Throws HushSpecDenied under the quickstart policy.
Uma política que falha na verificação de assinatura obrigatória produz um guard recusado:
toda ação é negada com __hushspec_policy_unverified__. Uma recarga a quente malsucedida
mantém a última política válida em vigor. Campos desconhecidos e documentos inválidos são
rejeitados explicitamente.
A fronteira de aplicação é responsabilidade do runtime. O HushSpec fornece o contrato de política portátil e primitivas de SDK para construí-la. Guia de integração com o runtime →