Estrutura componível de contratos de pesquisa e receitas YAML para experimentos de segurança operados por agentes em computação descartável
Status: Beta — Framework de Pesquisa e Kit de Runtime
O Cusimanse está em desenvolvimento ativo. Faça um fork, teste, execute os experimentos de referência, reporte bugs e envie pull requests. Espere que APIs, receitas, documentação e integrações evoluam durante o beta.
Uso de IA e contribuição responsável: O Cusimanse utiliza desenvolvimento assistido por IA e IA agêntica como parte de seu framework de pesquisa, documentação, fluxos de análise e processo de engenharia. Resultados gerados ou assistidos por IA não são automaticamente autoritativos, seguros, corretos, originais ou adequados para uso em produção. Os contribuidores são responsáveis por revisar, testar e validar alterações assistidas por IA antes do envio. Não dependa de um sistema de IA como autoridade única para decisões de segurança, autorização, interpretação de evidências ou ações críticas de segurança. Use o Cusimanse apenas para pesquisa autorizada, respeite as leis e políticas aplicáveis, proteja credenciais e dados sensíveis, e mantenha a execução dentro dos limites de política declarados pelo projeto e de computação descartável. As contribuições devem identificar claramente assistência material de IA quando apropriado, preservar a responsabilidade humana e seguir os testes, requisitos de revisão e expectativas de uso responsável do repositório.
Pesquisa de segurança declarativa e operada por agentes em computação descartável. Pesquisadores declaram intenção e requisitos; agentes planejam, selecionam e analisam; a API de capacidades em Go e a política decidem se e como a execução pode ocorrer.
Contrato → requisitos → handoff de prompt → agente → resolução de capacidades → runtime Go → política/aprovação → Lima/QEMU → instrumentação/carga de trabalho → evidências → análise → verificação independente → relatório → preservação → destruição.
| Camada | Responsabilidade | Fonte de verdade |
|---|---|---|
| Contrato | propósito, autorização, escopo, aceitação | contracts/ |
| Requisitos | SO, isolamento, carga de trabalho, rede, instrumentação | recipes/experiments/ |
| Biblioteca de prompts | handoff neutro em relação ao agente | prompts/experiments/ |
| Guias de operador | handoff de adaptador fino | prompts/operators/ |
| Perfis | capacidades reutilizáveis confiáveis | recipes/profiles/ |
| Runtime | resolução, política, ciclo de vida, limite de execução | cmd/cusimanse/, internal/ |
| Política | autoridade e aprovação | policies/, internal/policy/ |
| Contenção | computação descartável | recipes/lima/, Lima/QEMU |
| Evidências | observações, proveniência, verificação | runs/<session-id>/ |
O agente não pode criar perfis confiáveis, expandir políticas, modificar receitas confiáveis ou executar uma carga de trabalho não confiável diretamente no host.
Regra de limite: o agente decide qual pesquisa fazer; o Cusimanse decide se e como ela pode ser executada.
Escreva contracts/<experiment>.md com a questão de pesquisa, autorização, escopo, critérios de aceitação e restrições de segurança. Declare apenas requisitos em recipes/experiments/<experiment>.yaml.
Exemplo:
requirements:
execution: disposable
os: linux
workload: npm-threat
network: localhost-only
instrumentation: [process, syscall, filesystem, network]
./scripts/install.sh
export PATH="$HOME/.local/bin:$HOME/go/bin:$PATH"
cusimanse doctor
cusimanse validate
cusimanse preflight
cusimanse policy validate
cusimanse test
cusimanse integration-test
goose recipe validate recipes/npm-threat-001/recipe.yaml
goose recipe validate recipes/subrecipes/evidence-analysis.yaml
goose recipe validate recipes/subrecipes/verification.yaml
goose recipe validate recipes/subrecipes/report.yaml
goose run --recipe ./recipes/npm-threat-001/recipe.yaml --interactive
A receita declara explicitamente a extensão de plataforma summon. O Summon fornece apenas delegação/orquestração; ele não autoriza execução.
cusimanse resolve npm-threat-001
cusimanse policy explain vm
cusimanse policy explain network
cusimanse policy check-all
cusimanse policy require vm --approved
cusimanse --approved run npm-threat-001 <session-id>
cusimanse observability report <session-id>
cusimanse policy audit
Ciclo de vida: resolve → policy → provision → configure → instrument → execute → collect → verify → report → preserve → destroy.
O prompt é um handoff, não uma camada de autoridade e não uma segunda receita.