stealthos-cli 0.1.0-alpha.3 → 0.1.0-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ai/CONTRACT.md +110 -0
- package/ai/INDEX.md +203 -0
- package/ai/README.md +434 -0
- package/ai/ROUTER.md +288 -0
- package/ai/agents/README.md +103 -0
- package/ai/agents/architect.md +59 -0
- package/ai/agents/backend-engineer.md +62 -0
- package/ai/agents/founder.md +45 -0
- package/ai/agents/frontend-engineer.md +61 -0
- package/ai/agents/product-manager.md +56 -0
- package/ai/agents/qa-engineer.md +53 -0
- package/ai/agents/researcher.md +74 -0
- package/ai/agents/reviewer.md +73 -0
- package/ai/agents/security-engineer.md +59 -0
- package/ai/agents/sre-engineer.md +70 -0
- package/ai/agents/tech-lead.md +70 -0
- package/ai/architecture/README.md +35 -0
- package/ai/architecture/components.md +24 -0
- package/ai/architecture/containers.md +30 -0
- package/ai/architecture/event-flows.md +36 -0
- package/ai/architecture/sequence-diagrams.md +38 -0
- package/ai/architecture/system-context.md +46 -0
- package/ai/architecture/threat-modeling.md +40 -0
- package/ai/blueprints/README.md +67 -0
- package/ai/blueprints/_schema.json +40 -0
- package/ai/blueprints/ai-platform.json +28 -0
- package/ai/blueprints/crm.json +22 -0
- package/ai/blueprints/game.json +25 -0
- package/ai/blueprints/mobile.json +24 -0
- package/ai/blueprints/realtime.json +22 -0
- package/ai/blueprints/saas.json +25 -0
- package/ai/blueprints/telemetry.json +30 -0
- package/ai/blueprints/web.json +23 -0
- package/ai/bootstrap/discovery-questions.md +117 -0
- package/ai/bootstrap/dispatcher.md +85 -0
- package/ai/bootstrap/existing-project.md +191 -0
- package/ai/bootstrap/new-project.md +127 -0
- package/ai/bootstrap/tech-mapping.md +164 -0
- package/ai/clients/README.md +114 -0
- package/ai/clients/antigravity.md +125 -0
- package/ai/clients/claude-code.md +65 -0
- package/ai/clients/cline.md +69 -0
- package/ai/clients/codex-aider-cli.md +82 -0
- package/ai/clients/continue.md +67 -0
- package/ai/clients/copilot.md +49 -0
- package/ai/clients/cursor.md +81 -0
- package/ai/clients/snippets/mcp-absolute-paths.json +9 -0
- package/ai/clients/snippets/mcp-http.json +7 -0
- package/ai/clients/snippets/mcp-stdio.json +9 -0
- package/ai/clients/trae.md +69 -0
- package/ai/clients/windsurf.md +71 -0
- package/ai/core/pipeline/execution-engine.md +157 -0
- package/ai/engineering/README.md +32 -0
- package/ai/engineering/observability/incident-response.md +82 -0
- package/ai/evals/protocol-tests.md +150 -0
- package/ai/evolution/agent-evolution.md +161 -0
- package/ai/evolution/improvements.md +91 -0
- package/ai/evolution/learnings.md +49 -0
- package/ai/evolution/patterns-discovered.md +48 -0
- package/ai/execution/README.md +33 -0
- package/ai/execution/backlog.md +27 -0
- package/ai/execution/milestones.md +26 -0
- package/ai/execution/roadmap.md +30 -0
- package/ai/execution/sprint.md +42 -0
- package/ai/governance/README.md +34 -0
- package/ai/governance/architecture-principles.md +99 -0
- package/ai/governance/definition-of-done.md +88 -0
- package/ai/governance/definition-of-ready.md +69 -0
- package/ai/governance/engineering-principles.md +70 -0
- package/ai/governance/quality-gates.md +85 -0
- package/ai/governance/security-policies.md +84 -0
- package/ai/hooks/enforce-audit.ps1 +41 -0
- package/ai/hooks/enforce-audit.sh +39 -0
- package/ai/hooks/guard-edit.ps1 +182 -0
- package/ai/hooks/guard-edit.sh +161 -0
- package/ai/hooks/inject-os-reminder.ps1 +40 -0
- package/ai/hooks/inject-os-reminder.sh +16 -0
- package/ai/manifest.json +238 -0
- package/ai/memory/_detected-stack.json +33 -0
- package/ai/memory/_summary.md +49 -0
- package/ai/memory/archive/.gitkeep +3 -0
- package/ai/memory/completed-tasks.md +156 -0
- package/ai/memory/decisions.md +257 -0
- package/ai/memory/errors-and-solutions.md +41 -0
- package/ai/memory/known-issues.md +40 -0
- package/ai/memory/pending-tasks.md +37 -0
- package/ai/memory/project-context.md +67 -0
- package/ai/operating-system/architecture.md +54 -0
- package/ai/operating-system/coding-standards.md +84 -0
- package/ai/operating-system/folder-structure.md +126 -0
- package/ai/operating-system/performance-rules.md +86 -0
- package/ai/operating-system/quality-control.md +81 -0
- package/ai/operating-system/security-rules.md +91 -0
- package/ai/operating-system/workflow.md +86 -0
- package/ai/product/README.md +24 -0
- package/ai/product/business-rules.md +26 -0
- package/ai/product/personas.md +29 -0
- package/ai/product/user-journeys.md +30 -0
- package/ai/product/vision.md +35 -0
- package/ai/rules/behavior.md +45 -0
- package/ai/rules/do.md +47 -0
- package/ai/rules/dont.md +46 -0
- package/ai/rules/execution-flow.md +125 -0
- package/ai/rules/structural-constraints.md +59 -0
- package/ai/rules/structure-canon.md +116 -0
- package/ai/runtime.md +179 -0
- package/ai/scripts/detect-stack.ps1 +166 -0
- package/ai/scripts/detect-stack.sh +172 -0
- package/ai/scripts/init-ai-os.ps1 +215 -0
- package/ai/scripts/init-ai-os.sh +99 -0
- package/ai/scripts/lint-os.ps1 +99 -0
- package/ai/scripts/lint-os.sh +85 -0
- package/ai/scripts/start-os.ps1 +151 -0
- package/ai/scripts/start-os.sh +141 -0
- package/ai/server/README.md +105 -0
- package/ai/server/aios-server.mjs +2134 -0
- package/ai/server/package-lock.json +802 -0
- package/ai/server/package.json +31 -0
- package/ai/server/src/analyzer/graph-builder.ts +92 -0
- package/ai/server/src/analyzer/index.ts +191 -0
- package/ai/server/src/analyzer/module-mapper.ts +171 -0
- package/ai/server/src/analyzer/smell-detector.ts +54 -0
- package/ai/server/src/analyzer/stack-detector.ts +70 -0
- package/ai/server/src/index.ts +16 -0
- package/ai/server/src/packager/context-builder.ts +217 -0
- package/ai/server/src/packager/index.ts +3 -0
- package/ai/server/src/packager/memory-injector.ts +128 -0
- package/ai/server/src/packager/module-summarizer.ts +60 -0
- package/ai/server/src/packager/token-estimator.ts +26 -0
- package/ai/server/src/snapshot/index.ts +3 -0
- package/ai/server/src/snapshot/snapshot-creator.ts +206 -0
- package/ai/server/src/snapshot/snapshot-diff.ts +86 -0
- package/ai/server/src/snapshot/snapshot-restore.ts +14 -0
- package/ai/server/src/types.ts +94 -0
- package/ai/server/tsconfig.json +26 -0
- package/ai/skills/architecture-design.md +82 -0
- package/ai/skills/backend-engineering.md +57 -0
- package/ai/skills/database-design.md +76 -0
- package/ai/skills/frontend-engineering.md +63 -0
- package/ai/skills/performance.md +73 -0
- package/ai/skills/scalability.md +84 -0
- package/ai/skills/security.md +71 -0
- package/ai/skills/testing.md +77 -0
- package/ai/specs/ADR/ADR-0002-typescript-runtime.md +103 -0
- package/ai/specs/ADR/ADR-0004-runtime-orchestrator.md +94 -0
- package/ai/specs/ADR/ADR-0005-workflow-engine.md +105 -0
- package/ai/specs/ADR/ADR-0006-runtime-state.md +104 -0
- package/ai/specs/ADR/ADR-0007-state-compiler-drift-context-layers-artifact-index.md +82 -0
- package/ai/specs/ADR/ADR-0008-intent-runtime-discovery-branching.md +93 -0
- package/ai/specs/ADR/ADR-0009-confidence-system-maturity-tracking.md +113 -0
- package/ai/specs/ADR/ADR-0010-structural-architecture-standards.md +121 -0
- package/ai/specs/ADR/ADR-0011-mcp-prompts.md +86 -0
- package/ai/specs/ADR/ADR-0012-stealthos-hybrid-architecture.md +174 -0
- package/ai/specs/ADR/_TEMPLATE.md +60 -0
- package/ai/specs/BRD/_TEMPLATE.md +50 -0
- package/ai/specs/PRD/_TEMPLATE.md +72 -0
- package/ai/specs/README.md +43 -0
- package/ai/specs/RFC/RFC-0001-runtime-orchestrator.md +149 -0
- package/ai/specs/RFC/RFC-0002-runtime-orchestrator-extended.md +134 -0
- package/ai/specs/RFC/_TEMPLATE.md +61 -0
- package/ai/specs/RUNBOOKS/_TEMPLATE.md +68 -0
- package/ai/specs/SDD/_TEMPLATE.md +104 -0
- package/ai/specs/TASKS/_TEMPLATE.md +52 -0
- package/ai/tools/debugging.md +64 -0
- package/ai/tools/dependency-analysis.md +46 -0
- package/ai/tools/internet-research.md +42 -0
- package/ai/tools/mcp-discovery.md +44 -0
- package/ai/workflows/_schema.json +81 -0
- package/ai/workflows/init.json +148 -0
- package/ai/workflows/sync.json +71 -0
- package/ai/workflows/work.json +91 -0
- package/package.json +42 -36
- package/scripts/bundle-ai.mjs +58 -0
- package/src/cli.mjs +83 -79
- package/src/commands/install.mjs +35 -11
- package/src/commands/run.mjs +117 -0
- package/src/lib/resolve-source.mjs +27 -10
package/ai/README.md
ADDED
|
@@ -0,0 +1,434 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: 1.0.0
|
|
3
|
+
updated: 2026-05-14
|
|
4
|
+
tier: on_demand
|
|
5
|
+
tokens: ~2400
|
|
6
|
+
load: never_auto
|
|
7
|
+
audience: humano
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# AI Operating System — README
|
|
11
|
+
|
|
12
|
+
> Cérebro persistente para LLMs, desacoplado do modelo. Este README é para humanos. O agente NÃO carrega este arquivo — ele lê `INDEX.md`.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 1. O que é
|
|
17
|
+
|
|
18
|
+
O **AI OS** é uma estrutura de arquivos em `.ai/` que dá a qualquer LLM (Claude, Gemini, GPT, etc.) três coisas que ela não tem por padrão:
|
|
19
|
+
|
|
20
|
+
1. **Memória persistente entre sessões** — decisões, tarefas concluídas, erros já resolvidos.
|
|
21
|
+
2. **Regras de comportamento estáveis** — proibições, obrigações, fluxo de execução.
|
|
22
|
+
3. **Roteamento determinístico de contexto** — para cada tarefa, o agente carrega só os arquivos relevantes (não o repositório inteiro).
|
|
23
|
+
|
|
24
|
+
Resultado: respostas mais consistentes, menos alucinação, menos retrabalho, custo de tokens controlado.
|
|
25
|
+
|
|
26
|
+
> **Princípio**: a inteligência está na estrutura, não no modelo. O modelo executa; o OS pensa.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## 2. Para quem é
|
|
31
|
+
|
|
32
|
+
- Quem usa LLM para programar dia a dia e cansou de repetir contexto a cada sessão.
|
|
33
|
+
- Quem trabalha em projeto longo onde decisões antigas importam.
|
|
34
|
+
- Quem quer trocar de modelo (Claude → Gemini → GPT) sem perder histórico.
|
|
35
|
+
- Quem precisa que o agente respeite restrições (segurança, compliance, convenções).
|
|
36
|
+
|
|
37
|
+
Funciona com:
|
|
38
|
+
- **Claude Code** (CLI) — enforcement total via hooks.
|
|
39
|
+
- **Claude via API/Chat** — enforcement via system prompt + self-audit.
|
|
40
|
+
- **Gemini, GPT, outros** — mesmo princípio, entry points próprios (`GEMINI.md`, `GPT.md`).
|
|
41
|
+
- **IDEs com MCP** (VSCode, Cursor, Windsurf, TRAE AI, Antigravity) — via daemon `aios-server.mjs`.
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## 3. Como funciona em 30 segundos
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
Usuário pergunta → Agente lê CLAUDE.md (ou GEMINI.md/GPT.md)
|
|
49
|
+
→ CLAUDE.md aponta para .ai/INDEX.md
|
|
50
|
+
→ .ai/INDEX.md manda carregar CORE (6 arquivos, ~3k tokens)
|
|
51
|
+
→ .ai/ROUTER.md decide o que mais carregar pelas palavras-chave da pergunta
|
|
52
|
+
→ Agente classifica: trivial | simple | complex
|
|
53
|
+
→ Executa seguindo .ai/rules/execution-flow.md
|
|
54
|
+
→ Termina com bloco [OS Audit] declarando o que tocou
|
|
55
|
+
→ Atualiza .ai/memory/ se aplicável
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
A primeira linha de toda resposta do agente é:
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
OS:loaded(INDEX,CONTRACT,ROUTER,rules/dont,rules/behavior,context tier:core)
|
|
62
|
+
Task class: simple
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Se essa linha não aparecer, o agente violou o contrato. Você pode pedir `/audit` (Claude Code) ou simplesmente "refaça seguindo o contrato".
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## 4. Estrutura do `.ai/`
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
.ai/
|
|
73
|
+
├── INDEX.md # ponto de entrada — sempre carregado primeiro
|
|
74
|
+
├── CONTRACT.md # protocolo inquebrável (tag OS:loaded, audit, classes)
|
|
75
|
+
├── ROUTER.md # query → arquivos a carregar (determinístico)
|
|
76
|
+
├── README.md # este arquivo (humano)
|
|
77
|
+
├── runtime.md # daemon MCP + slash commands
|
|
78
|
+
├── manifest.json # fonte da verdade estrutural
|
|
79
|
+
│
|
|
80
|
+
├── rules/
|
|
81
|
+
│ ├── dont.md # proibições absolutas (CORE) — vence tudo, até o usuário
|
|
82
|
+
│ ├── behavior.md # postura e tom (CORE)
|
|
83
|
+
│ ├── do.md # obrigações em tarefas simple/complex
|
|
84
|
+
│ └── execution-flow.md # ciclo de 11 etapas
|
|
85
|
+
│
|
|
86
|
+
├── bootstrap/
|
|
87
|
+
│ ├── dispatcher.md # roteia novo vs existente
|
|
88
|
+
│ ├── new-project.md # diálogo para projeto novo
|
|
89
|
+
│ ├── existing-project.md # diálogo para projeto existente
|
|
90
|
+
│ └── discovery-questions.md# banco de perguntas
|
|
91
|
+
│
|
|
92
|
+
├── memory/ # cérebro vivo do projeto
|
|
93
|
+
│ ├── project-context.md # CORE — fatos confirmados sobre o projeto
|
|
94
|
+
│ ├── completed-tasks.md # append-only — o que foi feito
|
|
95
|
+
│ ├── pending-tasks.md # backlog
|
|
96
|
+
│ ├── decisions.md # ADRs — append-only
|
|
97
|
+
│ ├── errors-and-solutions.md
|
|
98
|
+
│ ├── known-issues.md
|
|
99
|
+
│ ├── _summary.md # resumo rotativo (últimos 90 dias)
|
|
100
|
+
│ └── archive/ # entradas antigas roladas
|
|
101
|
+
│
|
|
102
|
+
├── operating-system/ # padrões específicos do projeto
|
|
103
|
+
│ ├── architecture.md
|
|
104
|
+
│ ├── coding-standards.md
|
|
105
|
+
│ ├── folder-structure.md
|
|
106
|
+
│ ├── workflow.md
|
|
107
|
+
│ ├── quality-control.md
|
|
108
|
+
│ ├── security-rules.md
|
|
109
|
+
│ └── performance-rules.md
|
|
110
|
+
│
|
|
111
|
+
├── skills/ # conhecimento por domínio (sob demanda)
|
|
112
|
+
│ ├── backend-engineering.md
|
|
113
|
+
│ ├── frontend-engineering.md
|
|
114
|
+
│ ├── architecture-design.md
|
|
115
|
+
│ ├── performance.md
|
|
116
|
+
│ ├── security.md
|
|
117
|
+
│ ├── testing.md
|
|
118
|
+
│ ├── database-design.md
|
|
119
|
+
│ └── scalability.md
|
|
120
|
+
│
|
|
121
|
+
├── tools/ # como o agente usa ferramentas externas
|
|
122
|
+
│ ├── debugging.md
|
|
123
|
+
│ ├── dependency-analysis.md
|
|
124
|
+
│ ├── internet-research.md
|
|
125
|
+
│ └── mcp-discovery.md
|
|
126
|
+
│
|
|
127
|
+
├── evolution/ # aprendizado controlado do OS
|
|
128
|
+
│ ├── learnings.md # promovido após ≥3 ocorrências
|
|
129
|
+
│ ├── improvements.md # propostas de mudança no OS
|
|
130
|
+
│ ├── patterns-discovered.md
|
|
131
|
+
│ └── agent-evolution.md # changelog do próprio OS
|
|
132
|
+
│
|
|
133
|
+
├── evals/
|
|
134
|
+
│ └── protocol-tests.md # casos sintéticos para validar conformidade
|
|
135
|
+
│
|
|
136
|
+
├── hooks/ # scripts que o Claude Code invoca
|
|
137
|
+
│ ├── inject-os-reminder.{ps1,sh}
|
|
138
|
+
│ ├── guard-edit.{ps1,sh}
|
|
139
|
+
│ └── enforce-audit.{ps1,sh}
|
|
140
|
+
│
|
|
141
|
+
├── scripts/
|
|
142
|
+
│ ├── init-ai-os.{ps1,sh} # aplica o OS num projeto
|
|
143
|
+
│ ├── detect-stack.{ps1,sh} # inspeciona stack
|
|
144
|
+
│ ├── lint-os.{ps1,sh} # valida integridade
|
|
145
|
+
│ └── start-os.{ps1,sh} # inicia daemon
|
|
146
|
+
│
|
|
147
|
+
└── server/
|
|
148
|
+
├── aios-server.mjs # daemon MCP (Node ≥ 18, zero deps)
|
|
149
|
+
└── package.json
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## 5. Camadas de carregamento (Token Economy)
|
|
155
|
+
|
|
156
|
+
| Tier | Conteúdo | Quando carrega | Custo aprox. |
|
|
157
|
+
|---|---|---|---|
|
|
158
|
+
| **CORE** | INDEX, CONTRACT, ROUTER, rules/dont, rules/behavior, memory/project-context | **sempre** | ~3k tokens |
|
|
159
|
+
| **CONDITIONAL** | Skills/tools/memory por trigger do ROUTER | sob match | varia |
|
|
160
|
+
| **ON-DEMAND** | Resto | só se explicitamente citado | varia |
|
|
161
|
+
|
|
162
|
+
Limite máximo de CORE: **3000 tokens**. Não carregar tier inteiro "por garantia".
|
|
163
|
+
|
|
164
|
+
---
|
|
165
|
+
|
|
166
|
+
## 6. Hierarquia de autoridade
|
|
167
|
+
|
|
168
|
+
```
|
|
169
|
+
rules/dont.md > CONTRACT.md > rules/do.md > operating-system/* > skills/* > evolution/*
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
- Instrução direta do usuário **vence** o OS, **exceto** `dont.md` (que é inviolável).
|
|
173
|
+
- Quando o agente desobedece uma regra do OS por ordem sua, ele declara o desvio na resposta.
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## 7. Classes de tarefa
|
|
178
|
+
|
|
179
|
+
O agente classifica toda tarefa antes de executar:
|
|
180
|
+
|
|
181
|
+
| Classe | Critério | Ciclo |
|
|
182
|
+
|---|---|---|
|
|
183
|
+
| **trivial** | pergunta factual, 0-1 leituras, 0 edições | CORE → resposta direta |
|
|
184
|
+
| **simple** | 1-3 arquivos editados, sem decisão arquitetural | CORE + CONDITIONAL → execução → audit |
|
|
185
|
+
| **complex** | ≥4 arquivos, decisão arquitetural, contrato público, nova dependência | CORE + CONDITIONAL + skills → plano → confirmação → execução → audit + ADR |
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## 8. Como instalar em um projeto
|
|
190
|
+
|
|
191
|
+
### 8.1. Pré-requisitos
|
|
192
|
+
|
|
193
|
+
- Node ≥ 18 (apenas se for usar o daemon MCP — opcional).
|
|
194
|
+
- Windows com PowerShell 5.1+ OU macOS/Linux com bash.
|
|
195
|
+
|
|
196
|
+
### 8.2. Projeto novo
|
|
197
|
+
|
|
198
|
+
```powershell
|
|
199
|
+
# Windows
|
|
200
|
+
powershell -ExecutionPolicy Bypass -File .\.ai\scripts\init-ai-os.ps1
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
```bash
|
|
204
|
+
# macOS / Linux
|
|
205
|
+
chmod +x .ai/scripts/*.sh
|
|
206
|
+
./.ai/scripts/init-ai-os.sh
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
O script copia `.ai/`, `CLAUDE.md`, `GEMINI.md`, `GPT.md` para o projeto-alvo e detecta a stack.
|
|
210
|
+
|
|
211
|
+
### 8.3. Projeto existente
|
|
212
|
+
|
|
213
|
+
Mesmo comando. Na primeira mensagem ao agente, ele vai disparar o **bootstrap dialógico** (`.ai/bootstrap/existing-project.md`):
|
|
214
|
+
|
|
215
|
+
1. Te pergunta o que o projeto faz.
|
|
216
|
+
2. Inspeciona `package.json`, `pyproject.toml`, etc.
|
|
217
|
+
3. Preenche `memory/project-context.md` com fatos confirmados.
|
|
218
|
+
4. Sugere 1-3 melhorias se houver lacunas.
|
|
219
|
+
|
|
220
|
+
### 8.4. Validar integridade
|
|
221
|
+
|
|
222
|
+
```powershell
|
|
223
|
+
powershell -ExecutionPolicy Bypass -File .\.ai\scripts\lint-os.ps1
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
```bash
|
|
227
|
+
./.ai/scripts/lint-os.sh
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
Saída esperada: `Errors: 0 Warnings: 0`.
|
|
231
|
+
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
## 9. Daemon MCP (opcional, mas recomendado)
|
|
235
|
+
|
|
236
|
+
O daemon expõe o OS como ferramentas MCP (`aios_*`), evitando 6 reads no início de cada sessão.
|
|
237
|
+
|
|
238
|
+
### Iniciar
|
|
239
|
+
|
|
240
|
+
```powershell
|
|
241
|
+
# Windows
|
|
242
|
+
.\.ai\scripts\start-os.ps1 # stdio (foreground)
|
|
243
|
+
.\.ai\scripts\start-os.ps1 -Http # HTTP background, porta 47781
|
|
244
|
+
.\.ai\scripts\start-os.ps1 -Status
|
|
245
|
+
.\.ai\scripts\start-os.ps1 -Stop
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
```bash
|
|
249
|
+
# macOS / Linux
|
|
250
|
+
./.ai/scripts/start-os.sh
|
|
251
|
+
./.ai/scripts/start-os.sh --http
|
|
252
|
+
./.ai/scripts/start-os.sh --status
|
|
253
|
+
./.ai/scripts/start-os.sh --stop
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
### Conectar pelo cliente
|
|
257
|
+
|
|
258
|
+
- **Claude Code**: já configurado em `.claude/settings.json` — apenas reinicie.
|
|
259
|
+
- **VSCode (Cline / Continue)**:
|
|
260
|
+
```json
|
|
261
|
+
"cline.mcpServers": {
|
|
262
|
+
"ai-os": {
|
|
263
|
+
"command": "node",
|
|
264
|
+
"args": ["${workspaceFolder}/.ai/server/aios-server.mjs"]
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
```
|
|
268
|
+
- **Cursor**: `Preferences → MCP → Add Server` (command: `node`, args: caminho para `aios-server.mjs`).
|
|
269
|
+
- **Windsurf / TRAE AI / Antigravity**: mesma config MCP genérica via stdio.
|
|
270
|
+
|
|
271
|
+
### Tools expostas
|
|
272
|
+
|
|
273
|
+
| Tool | Função |
|
|
274
|
+
|---|---|
|
|
275
|
+
| `aios_get_core_bundle` | CORE em 1 call |
|
|
276
|
+
| `aios_route_query` | Query → lista de arquivos |
|
|
277
|
+
| `aios_classify_task` | Query → trivial/simple/complex |
|
|
278
|
+
| `aios_read` / `aios_list` | Leitura no `.ai/` |
|
|
279
|
+
| `aios_search_memory` | Grep em `memory/` |
|
|
280
|
+
| `aios_get_summary` | Resumo rotativo |
|
|
281
|
+
| `aios_lint` | Roda lint |
|
|
282
|
+
| `aios_detect_stack` | Detecta stack |
|
|
283
|
+
| `aios_validate_audit` | Valida formato `[OS Audit]` |
|
|
284
|
+
| `aios_health` | Status do daemon |
|
|
285
|
+
|
|
286
|
+
Detalhes: [runtime.md](./runtime.md).
|
|
287
|
+
|
|
288
|
+
---
|
|
289
|
+
|
|
290
|
+
## 10. Slash commands (Claude Code)
|
|
291
|
+
|
|
292
|
+
Disponíveis automaticamente em projetos com `.claude/commands/`:
|
|
293
|
+
|
|
294
|
+
| Comando | Função |
|
|
295
|
+
|---|---|
|
|
296
|
+
| `/load-os` | Recarrega CORE + rotas para o query atual |
|
|
297
|
+
| `/audit` | Auto-auditoria do turno corrente vs CONTRACT |
|
|
298
|
+
| `/os-status` | Versão, integridade, daemon, maturidade |
|
|
299
|
+
| `/promote-learning LRN-NNN` | Promove learning validada |
|
|
300
|
+
| `/compact-memory [days]` | Rola memória antiga para `archive/` |
|
|
301
|
+
|
|
302
|
+
Em outros clientes, peça por extenso ("rode um audit do turno atual").
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## 11. Hooks (Claude Code)
|
|
307
|
+
|
|
308
|
+
Configurados em `.claude/settings.json`. Executam automaticamente:
|
|
309
|
+
|
|
310
|
+
| Evento | Hook | O que faz |
|
|
311
|
+
|---|---|---|
|
|
312
|
+
| `UserPromptSubmit` | `inject-os-reminder` | Injeta lembrete do protocolo a cada mensagem |
|
|
313
|
+
| `PreToolUse (Edit\|Write)` | `guard-edit` | Bloqueia edição em arquivos protegidos do OS |
|
|
314
|
+
| `Stop` | `enforce-audit` | Exige bloco `[OS Audit]` se houve edições |
|
|
315
|
+
|
|
316
|
+
Limitação conhecida: o guard cobre Edit/Write, não Bash (`Set-Content`, redirects). Veja `evolution/improvements.md` → IMP-001.
|
|
317
|
+
|
|
318
|
+
---
|
|
319
|
+
|
|
320
|
+
## 12. Memória — como o agente usa
|
|
321
|
+
|
|
322
|
+
### Regras de manutenção
|
|
323
|
+
|
|
324
|
+
- `memory/decisions.md`, `memory/completed-tasks.md`, `evolution/learnings.md` → **append-only**. Nunca apagar entradas antigas.
|
|
325
|
+
- `memory/project-context.md` → só **fatos confirmados**. Hipótese marca-se com `?`.
|
|
326
|
+
- Entrada em `learnings.md` exige **≥3 ocorrências** OU validação humana explícita.
|
|
327
|
+
- Rotação: `_summary.md` consolida os últimos 90 dias; mais antigo vai para `archive/`.
|
|
328
|
+
|
|
329
|
+
### Ciclo de vida de um aprendizado
|
|
330
|
+
|
|
331
|
+
```
|
|
332
|
+
agente observa padrão → improvements.md (IMP-NNN)
|
|
333
|
+
→ usuário aprova → learnings.md (LRN-NNN)
|
|
334
|
+
→ ≥3 ocorrências ou validação → /promote-learning move para operating-system/*
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
---
|
|
338
|
+
|
|
339
|
+
## 13. Quando o agente PARA e pergunta
|
|
340
|
+
|
|
341
|
+
- Intenção ambígua (≥2 leituras plausíveis).
|
|
342
|
+
- Vai instalar dependência nova.
|
|
343
|
+
- Vai modificar `.env`, CI/CD, contratos públicos.
|
|
344
|
+
- Decisão arquitetural sem ADR prévio.
|
|
345
|
+
- Operação destrutiva (`rm -rf`, `git reset --hard`, `force push`).
|
|
346
|
+
- Custo estimado > 10k tokens.
|
|
347
|
+
|
|
348
|
+
Ele oferece ≤3 opções por pergunta.
|
|
349
|
+
|
|
350
|
+
---
|
|
351
|
+
|
|
352
|
+
## 14. Bloco [OS Audit]
|
|
353
|
+
|
|
354
|
+
Toda resposta de tarefa simple/complex termina com:
|
|
355
|
+
|
|
356
|
+
```
|
|
357
|
+
[OS Audit]
|
|
358
|
+
- Files touched: <lista de paths>
|
|
359
|
+
- Memory updated: <quais arquivos de memory/> ou n/a
|
|
360
|
+
- Validations: <lint/types/tests rodados ou motivo>
|
|
361
|
+
- Decisions: <ADR-NNNN se houve, ou n/a>
|
|
362
|
+
- Open items: <pendências honestas ou none>
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
Tarefas triviais declaram `[OS Audit] skipped: trivial`.
|
|
366
|
+
|
|
367
|
+
Ausência do bloco = violação de protocolo. Peça `/audit` ou refazer.
|
|
368
|
+
|
|
369
|
+
---
|
|
370
|
+
|
|
371
|
+
## 15. Validação rápida (checklist)
|
|
372
|
+
|
|
373
|
+
Antes de considerar um projeto pronto com o OS instalado:
|
|
374
|
+
|
|
375
|
+
- [ ] `.ai/` está presente e completo (rodar `lint-os` → 0 errors).
|
|
376
|
+
- [ ] `CLAUDE.md`, `GEMINI.md`, `GPT.md` na raiz do projeto.
|
|
377
|
+
- [ ] `.claude/settings.json` configurado (se Claude Code).
|
|
378
|
+
- [ ] `memory/project-context.md` preenchido com a stack real do projeto.
|
|
379
|
+
- [ ] Primeira mensagem ao agente: ele emite `OS:loaded(...)` + classe.
|
|
380
|
+
- [ ] Daemon opcional rodando (se quiser ganho de tokens via MCP).
|
|
381
|
+
|
|
382
|
+
---
|
|
383
|
+
|
|
384
|
+
## 16. Customização por projeto
|
|
385
|
+
|
|
386
|
+
Após instalado, o `.ai/` é seu — pode (e deve) ser adaptado:
|
|
387
|
+
|
|
388
|
+
- **`operating-system/*`** é o lugar natural para padrões específicos (arquitetura, código, performance).
|
|
389
|
+
- **`skills/*`** pode receber arquivo novo para domínio específico (ex: `ml-pipelines.md`).
|
|
390
|
+
- **`ROUTER.md`** pode ganhar rotas novas — basta seguir o formato existente.
|
|
391
|
+
|
|
392
|
+
**NUNCA** edite manualmente:
|
|
393
|
+
- `CONTRACT.md` — exige ADR.
|
|
394
|
+
- `rules/dont.md`, `rules/do.md` — exige revisão humana registrada.
|
|
395
|
+
- `manifest.json` — gerado/curado.
|
|
396
|
+
|
|
397
|
+
Mudanças que exigem ADR ficam listadas em `manifest.json → evolution_gates.require_human_approval_for`.
|
|
398
|
+
|
|
399
|
+
---
|
|
400
|
+
|
|
401
|
+
## 17. Troubleshooting
|
|
402
|
+
|
|
403
|
+
| Sintoma | Causa provável | Ação |
|
|
404
|
+
|---|---|---|
|
|
405
|
+
| Agente não emite `OS:loaded` | system prompt não carregou CLAUDE.md | reiniciar IDE, conferir `.claude/settings.json` |
|
|
406
|
+
| `lint-os` reclama de arquivo ausente | OS incompleto | rodar `init-ai-os` de novo |
|
|
407
|
+
| Daemon não conecta | porta ocupada | usa `--http` com auto-fallback (47782, 47783, ...) |
|
|
408
|
+
| Hooks não disparam (Claude Code) | path errado no settings.json | conferir `.claude/settings.json → hooks.*.command` |
|
|
409
|
+
| Memória inchada | rotação não executou | `/compact-memory 90` |
|
|
410
|
+
| Agente cita arquivo que não existe | alucinação | pedir `/audit`; conferir `rules/dont.md` regra 1 |
|
|
411
|
+
|
|
412
|
+
---
|
|
413
|
+
|
|
414
|
+
## 18. Filosofia
|
|
415
|
+
|
|
416
|
+
- **Memória reduz alucinação.** Decisões antigas estão no disco, não na cabeça do modelo.
|
|
417
|
+
- **Regras reduzem deriva.** O CONTRACT é o mesmo entre sessões e modelos.
|
|
418
|
+
- **Evolução controlada impede contaminação.** Nada vira regra a partir de um caso isolado.
|
|
419
|
+
- **Densidade > volume.** Contexto curado pequeno vence dump bruto.
|
|
420
|
+
- **Diff > arquivo inteiro. Referência > cópia.**
|
|
421
|
+
|
|
422
|
+
---
|
|
423
|
+
|
|
424
|
+
## 19. Versão e changelog
|
|
425
|
+
|
|
426
|
+
Veja `evolution/agent-evolution.md` para o histórico completo do OS.
|
|
427
|
+
|
|
428
|
+
Versão atual: **v3.1.0** (ver `manifest.json`).
|
|
429
|
+
|
|
430
|
+
---
|
|
431
|
+
|
|
432
|
+
## 20. Licença e uso
|
|
433
|
+
|
|
434
|
+
O OS é um conjunto de arquivos de texto. Use, fork, adapte. Sem garantias. Reporte problemas via `evolution/improvements.md` no seu próprio projeto.
|