Configuracao do Projeto
A configuracao do projeto personaliza o comportamento do Cyberstrike para projetos especificos, sobrescrevendo configuracoes globais quando presente.
📸 SCREENSHOT: project-config.png
Estrutura do arquivo de configuracao do projeto
Localizacao do Arquivo
A configuracao do projeto e armazenada em cyberstrike.json (ou cyberstrike.jsonc) na raiz do projeto. O Cyberstrike sobe a partir do diretorio de trabalho, entao uma configuracao em qualquer pasta pai e detectada:
my-project/├── cyberstrike.json ← Configuracao do projeto├── src/├── package.json└── ...Criando a Configuracao do Projeto
Nao existe comando de inicializacao — crie o arquivo manualmente:
{ "$schema": "https://cyberstrike.io/config.json", "model": "anthropic/claude-sonnet-4-20250514"}Configuracoes Basicas
Selecao de Modelo
{ "model": "anthropic/claude-opus-4-5-20251101"}Agente Padrao
{ "default_agent": "cyberstrike"}default_agent deve ser um agente primario; volta para cyberstrike se nao definido ou invalido.
Instrucoes Personalizadas
instructions e uma lista de arquivos ou padroes glob cujos conteudos sao adicionados ao prompt do sistema (nao e prosa inline). Listas sao mescladas por uniao com a configuracao global:
{ "instructions": [ "SECURITY.md", "docs/security-guidelines.md", ".cursor/rules/*.md" ]}Configuracao de Provedores
Configure provedores sob provider. Nao existe chave provider.default — o provedor ativo segue do model (provider/model):
{ "provider": { "anthropic": { "options": { "apiKey": "{env:ANTHROPIC_API_KEY}" } }, "openai": { "options": { "apiKey": "{env:OPENAI_API_KEY}" } } }}Consulte Provedores de IA para detalhes por provedor.
Permissoes
Permissoes mapeiam um nome de ferramenta para uma acao (ask, allow, deny) ou para um mapa glob → acao. Nao existem arrays allow/deny e nenhum “modo” de permissao:
{ "permission": { "read": "allow", "bash": { "npm test": "allow", "npm run lint": "allow", "rm -rf *": "deny" }, "edit": { "reports/**": "allow", ".env*": "deny" } }}Apenas * e ? sao suportados como wildcards. Consulte Permissoes para o modelo completo e a lista de chaves de permissao.
Servidores MCP
Servidores MCP sao declarados como um mapa plano sob mcp, indexados pelo nome do servidor. Servidores locais usam type: "local" com um unico array command:
{ "mcp": { "project-tools": { "type": "local", "command": ["node", "./tools/mcp-server.js"], "enabled": true } }}Entradas mcp do projeto sao mescladas sobre as globais. Para desligar um servidor herdado, defina seu enabled como false:
{ "mcp": { "some-global-server": { "enabled": false } }}Agentes Personalizados
Defina agentes de projeto como arquivos Markdown sob .cyberstrike/agents/ (consulte Agentes Personalizados), depois selecione um como padrao:
{ "default_agent": "project-scanner"}Exemplo Completo
{ "$schema": "https://cyberstrike.io/config.json", "model": "anthropic/claude-sonnet-4-20250514", "default_agent": "cyberstrike", "instructions": ["docs/SECURITY.md"],
"provider": { "anthropic": { "options": { "apiKey": "{env:ANTHROPIC_API_KEY}" } } },
"permission": { "read": "allow", "bash": { "npm *": "allow", "git status": "allow", "rm *": "deny" }, "edit": { "reports/**": "allow", ".env*": "deny" } },
"mcp": { "db-tools": { "type": "local", "command": ["node", "./tools/db-mcp.js"], "enabled": true } }}Heranca de Configuracao
A configuracao do projeto e mesclada sobre a configuracao global e remota:
Configuracao remota / well-known (base) ↓Configuracao global (~/.config/cyberstrike/) ↓Configuracao personalizada (CYBERSTRIKE_CONFIG) ↓Configuracao do projeto (cyberstrike.json) ↓Configuracao do diretorio .cyberstrike/ ↓CYBERSTRIKE_CONFIG_CONTENT / configuracao gerenciada / argumentos CLI (sobrescrita)Consulte a Referencia de Configuracao para a ordem completa de prioridade.
Comportamento de Mesclagem
| Configuracao | Comportamento |
|---|---|
| Escalares | Substituidos |
| Objetos | Mesclagem profunda |
| Arrays | Substituidos — exceto plugin e instructions, que sao mesclados por uniao |
Validacao de Schema
Adicione a referencia de schema para autocompletar e validacao no IDE:
{ "$schema": "https://cyberstrike.io/config.json"}Integracao com Git
Fazer Commit da Configuracao do Projeto
git add cyberstrike.jsongit commit -m "Add Cyberstrike project configuration"Ignorar Dados Sensiveis
# Ignorar dados de sessao locais.cyberstrike/sessions/Boas Praticas
- Controle de versao - Faca commit da configuracao do projeto para compartilhamento com a equipe
- Use referencias de ambiente - Nunca codifique chaves de API diretamente (
{env:VAR}) - Documente instrucoes - Aponte
instructionspara seus documentos de seguranca - Permissoes minimas - Permita apenas o necessario
- Sobrescritas pessoais - Use
CYBERSTRIKE_CONFIGpara configuracoes que nao devem ser commitadas
Tip
Faca commit de cyberstrike.json para compartilhamento com a equipe. Use variaveis de ambiente ou CYBERSTRIKE_CONFIG para sobrescritas pessoais que nao devem ser commitadas.
Documentacao Relacionada
- Referencia de Configuracao - Guia completo
- Configuracao Global - Configuracoes globais
- Variaveis de Ambiente - Referencia de variaveis de ambiente