stealthos-cli 0.1.0-alpha.2 → 0.1.0-alpha.4
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 +170 -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/bin.cjs +7 -0
- package/package.json +9 -3
- package/scripts/bundle-ai.mjs +58 -0
- package/src/cli.mjs +1 -1
- package/src/commands/install.mjs +35 -11
- package/src/lib/resolve-source.mjs +27 -10
- package/stealthos +0 -2
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# UserPromptSubmit hook
|
|
2
|
+
# Injeta lembrete do AI Operating System em toda mensagem do usuário.
|
|
3
|
+
# Output em additionalContext é incorporado ao contexto do agente nesse turno.
|
|
4
|
+
|
|
5
|
+
$projectDir = $env:CLAUDE_PROJECT_DIR
|
|
6
|
+
if (-not $projectDir) { $projectDir = (Get-Location).Path }
|
|
7
|
+
|
|
8
|
+
$indexPath = Join-Path $projectDir ".ai\INDEX.md"
|
|
9
|
+
$contractPath = Join-Path $projectDir ".ai\CONTRACT.md"
|
|
10
|
+
$routerPath = Join-Path $projectDir ".ai\ROUTER.md"
|
|
11
|
+
|
|
12
|
+
if (-not (Test-Path $indexPath)) {
|
|
13
|
+
# .ai/ não existe — sugerir bootstrap
|
|
14
|
+
$msg = "[OS REMINDER] O diretorio .ai/ nao existe neste projeto. Pergunte ao usuario se quer rodar o bootstrap (.ai/scripts/init-ai-os.ps1)."
|
|
15
|
+
} else {
|
|
16
|
+
$msg = @"
|
|
17
|
+
[OS REMINDER] Antes de responder:
|
|
18
|
+
1. Emitir tag OS:loaded(<arquivos>) na primeira linha.
|
|
19
|
+
2. Consultar .ai/ROUTER.md para decidir o que carregar alem do CORE.
|
|
20
|
+
3. Classificar a tarefa: trivial | simple | complex.
|
|
21
|
+
4. Para simple/complex: terminar com bloco [OS Audit].
|
|
22
|
+
5. Nunca inventar arquivos, validacoes ou resultados.
|
|
23
|
+
|
|
24
|
+
CORE sempre carregado: INDEX, CONTRACT, ROUTER, rules/dont, rules/behavior, memory/project-context.
|
|
25
|
+
|
|
26
|
+
Hierarquia: rules/dont > rules/do > operating-system > skills > evolution.
|
|
27
|
+
Conflito com usuario: instrucao do usuario vence, exceto dont.md.
|
|
28
|
+
"@
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
# Output JSON com hookSpecificOutput para injecao em context (Claude Code 1.x+)
|
|
32
|
+
$payload = @{
|
|
33
|
+
hookSpecificOutput = @{
|
|
34
|
+
hookEventName = "UserPromptSubmit"
|
|
35
|
+
additionalContext = $msg
|
|
36
|
+
}
|
|
37
|
+
} | ConvertTo-Json -Depth 5 -Compress
|
|
38
|
+
|
|
39
|
+
Write-Output $payload
|
|
40
|
+
exit 0
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# UserPromptSubmit hook (Unix)
|
|
3
|
+
# Injeta lembrete do AI Operating System em toda mensagem do usuario.
|
|
4
|
+
set -euo pipefail
|
|
5
|
+
|
|
6
|
+
PROJECT_DIR="${CLAUDE_PROJECT_DIR:-$(pwd)}"
|
|
7
|
+
INDEX="$PROJECT_DIR/.ai/INDEX.md"
|
|
8
|
+
|
|
9
|
+
if [[ ! -f "$INDEX" ]]; then
|
|
10
|
+
MSG='[OS REMINDER] O diretorio .ai/ nao existe neste projeto. Pergunte ao usuario se quer rodar o bootstrap (.ai/scripts/init-ai-os.sh).'
|
|
11
|
+
else
|
|
12
|
+
MSG='[OS REMINDER] Antes de responder:\n1. Emitir tag OS:loaded(<arquivos>) na primeira linha.\n2. Consultar .ai/ROUTER.md para decidir o que carregar alem do CORE.\n3. Classificar a tarefa: trivial | simple | complex.\n4. Para simple/complex: terminar com bloco [OS Audit].\n5. Nunca inventar arquivos, validacoes ou resultados.\n\nCORE sempre carregado: INDEX, CONTRACT, ROUTER, rules/dont, rules/behavior, memory/project-context.\n\nHierarquia: rules/dont > rules/do > operating-system > skills > evolution.\nConflito com usuario: instrucao do usuario vence, exceto dont.md.\n\nSe daemon AI OS estiver ativo, preferir aios.* tools (MCP) para acesso rapido.'
|
|
13
|
+
fi
|
|
14
|
+
|
|
15
|
+
printf '{"hookSpecificOutput":{"hookEventName":"UserPromptSubmit","additionalContext":"%s"}}\n' "$MSG"
|
|
16
|
+
exit 0
|
package/ai/manifest.json
ADDED
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "./manifest.schema.json",
|
|
3
|
+
"name": "ai-operating-system",
|
|
4
|
+
"version": "4.1.0",
|
|
5
|
+
"updated": "2026-05-15",
|
|
6
|
+
"description": "AI Development Operating System (AI-DOS) — Context Engine + Multi-agent + Spec-Driven + Pipeline com gates + memória evolutiva + Runtime v0.1 executável (Project State / Context Packager / Snapshot).",
|
|
7
|
+
"capabilities": {
|
|
8
|
+
"runtime_v0_1": true,
|
|
9
|
+
"context_packager": true,
|
|
10
|
+
"project_state_engine": true,
|
|
11
|
+
"snapshot_system": true,
|
|
12
|
+
"agents_executable": false,
|
|
13
|
+
"intent_analyzer_dialog": false,
|
|
14
|
+
"spec_generator": false
|
|
15
|
+
},
|
|
16
|
+
"tiers": {
|
|
17
|
+
"core": {
|
|
18
|
+
"description": "Sempre carregado. Custo baixo, valor máximo.",
|
|
19
|
+
"max_total_tokens": 3000,
|
|
20
|
+
"files": [
|
|
21
|
+
".ai/INDEX.md",
|
|
22
|
+
".ai/CONTRACT.md",
|
|
23
|
+
".ai/ROUTER.md",
|
|
24
|
+
".ai/rules/dont.md",
|
|
25
|
+
".ai/rules/behavior.md",
|
|
26
|
+
".ai/memory/project-context.md"
|
|
27
|
+
]
|
|
28
|
+
},
|
|
29
|
+
"conditional": {
|
|
30
|
+
"description": "Carregado por match em ROUTER.md.",
|
|
31
|
+
"rule": "Ver .ai/ROUTER.md"
|
|
32
|
+
},
|
|
33
|
+
"on_demand": {
|
|
34
|
+
"description": "Carregado apenas quando explicitamente referenciado pelo agente ou pelo usuário.",
|
|
35
|
+
"rule": "Resto do .ai/"
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"required_files": [
|
|
39
|
+
".ai/CONTRACT.md",
|
|
40
|
+
".ai/INDEX.md",
|
|
41
|
+
".ai/README.md",
|
|
42
|
+
".ai/ROUTER.md",
|
|
43
|
+
".ai/agents/README.md",
|
|
44
|
+
".ai/agents/architect.md",
|
|
45
|
+
".ai/agents/backend-engineer.md",
|
|
46
|
+
".ai/agents/founder.md",
|
|
47
|
+
".ai/agents/frontend-engineer.md",
|
|
48
|
+
".ai/agents/product-manager.md",
|
|
49
|
+
".ai/agents/qa-engineer.md",
|
|
50
|
+
".ai/agents/researcher.md",
|
|
51
|
+
".ai/agents/reviewer.md",
|
|
52
|
+
".ai/agents/security-engineer.md",
|
|
53
|
+
".ai/agents/sre-engineer.md",
|
|
54
|
+
".ai/agents/tech-lead.md",
|
|
55
|
+
".ai/architecture/README.md",
|
|
56
|
+
".ai/architecture/components.md",
|
|
57
|
+
".ai/architecture/containers.md",
|
|
58
|
+
".ai/architecture/event-flows.md",
|
|
59
|
+
".ai/architecture/sequence-diagrams.md",
|
|
60
|
+
".ai/architecture/system-context.md",
|
|
61
|
+
".ai/architecture/threat-modeling.md",
|
|
62
|
+
".ai/bootstrap/discovery-questions.md",
|
|
63
|
+
".ai/bootstrap/dispatcher.md",
|
|
64
|
+
".ai/bootstrap/existing-project.md",
|
|
65
|
+
".ai/bootstrap/new-project.md",
|
|
66
|
+
".ai/bootstrap/tech-mapping.md",
|
|
67
|
+
".ai/context/README.md",
|
|
68
|
+
".ai/context/active-goals.md",
|
|
69
|
+
".ai/context/architecture-state.md",
|
|
70
|
+
".ai/context/assumptions.md",
|
|
71
|
+
".ai/context/business-context.md",
|
|
72
|
+
".ai/context/constraints.md",
|
|
73
|
+
".ai/context/glossary.md",
|
|
74
|
+
".ai/context/project-state.md",
|
|
75
|
+
".ai/context/roadmap.md",
|
|
76
|
+
".ai/context/technical-context.md",
|
|
77
|
+
".ai/context/technical-debt.md",
|
|
78
|
+
".ai/core/pipeline/execution-engine.md",
|
|
79
|
+
".ai/engineering/README.md",
|
|
80
|
+
".ai/engineering/observability/incident-response.md",
|
|
81
|
+
".ai/execution/README.md",
|
|
82
|
+
".ai/execution/backlog.md",
|
|
83
|
+
".ai/execution/milestones.md",
|
|
84
|
+
".ai/execution/roadmap.md",
|
|
85
|
+
".ai/execution/sprint.md",
|
|
86
|
+
".ai/governance/README.md",
|
|
87
|
+
".ai/governance/architecture-principles.md",
|
|
88
|
+
".ai/governance/definition-of-done.md",
|
|
89
|
+
".ai/governance/definition-of-ready.md",
|
|
90
|
+
".ai/governance/engineering-principles.md",
|
|
91
|
+
".ai/governance/quality-gates.md",
|
|
92
|
+
".ai/governance/security-policies.md",
|
|
93
|
+
".ai/product/README.md",
|
|
94
|
+
".ai/product/business-rules.md",
|
|
95
|
+
".ai/product/personas.md",
|
|
96
|
+
".ai/product/user-journeys.md",
|
|
97
|
+
".ai/product/vision.md",
|
|
98
|
+
".ai/specs/README.md",
|
|
99
|
+
".ai/specs/ADR/_TEMPLATE.md",
|
|
100
|
+
".ai/specs/BRD/_TEMPLATE.md",
|
|
101
|
+
".ai/specs/PRD/_TEMPLATE.md",
|
|
102
|
+
".ai/specs/RFC/_TEMPLATE.md",
|
|
103
|
+
".ai/specs/RUNBOOKS/_TEMPLATE.md",
|
|
104
|
+
".ai/specs/SDD/_TEMPLATE.md",
|
|
105
|
+
".ai/specs/TASKS/_TEMPLATE.md",
|
|
106
|
+
".ai/evolution/agent-evolution.md",
|
|
107
|
+
".ai/evolution/improvements.md",
|
|
108
|
+
".ai/evolution/learnings.md",
|
|
109
|
+
".ai/evolution/patterns-discovered.md",
|
|
110
|
+
".ai/hooks/enforce-audit.ps1",
|
|
111
|
+
".ai/hooks/enforce-audit.sh",
|
|
112
|
+
".ai/hooks/guard-edit.ps1",
|
|
113
|
+
".ai/hooks/guard-edit.sh",
|
|
114
|
+
".ai/hooks/inject-os-reminder.ps1",
|
|
115
|
+
".ai/hooks/inject-os-reminder.sh",
|
|
116
|
+
".ai/memory/completed-tasks.md",
|
|
117
|
+
".ai/memory/decisions.md",
|
|
118
|
+
".ai/memory/errors-and-solutions.md",
|
|
119
|
+
".ai/memory/known-issues.md",
|
|
120
|
+
".ai/memory/pending-tasks.md",
|
|
121
|
+
".ai/memory/project-context.md",
|
|
122
|
+
".ai/operating-system/architecture.md",
|
|
123
|
+
".ai/operating-system/coding-standards.md",
|
|
124
|
+
".ai/operating-system/folder-structure.md",
|
|
125
|
+
".ai/operating-system/performance-rules.md",
|
|
126
|
+
".ai/operating-system/quality-control.md",
|
|
127
|
+
".ai/operating-system/security-rules.md",
|
|
128
|
+
".ai/operating-system/workflow.md",
|
|
129
|
+
".ai/rules/behavior.md",
|
|
130
|
+
".ai/rules/do.md",
|
|
131
|
+
".ai/rules/dont.md",
|
|
132
|
+
".ai/rules/execution-flow.md",
|
|
133
|
+
".ai/runtime.md",
|
|
134
|
+
".ai/scripts/detect-stack.ps1",
|
|
135
|
+
".ai/scripts/detect-stack.sh",
|
|
136
|
+
".ai/scripts/init-ai-os.ps1",
|
|
137
|
+
".ai/scripts/init-ai-os.sh",
|
|
138
|
+
".ai/scripts/lint-os.ps1",
|
|
139
|
+
".ai/scripts/lint-os.sh",
|
|
140
|
+
".ai/scripts/start-os.ps1",
|
|
141
|
+
".ai/scripts/start-os.sh",
|
|
142
|
+
".ai/server/aios-server.mjs",
|
|
143
|
+
".ai/server/package.json",
|
|
144
|
+
".ai/server/tsconfig.json",
|
|
145
|
+
".ai/server/README.md",
|
|
146
|
+
".ai/specs/ADR/ADR-0002-typescript-runtime.md",
|
|
147
|
+
".ai/skills/architecture-design.md",
|
|
148
|
+
".ai/skills/backend-engineering.md",
|
|
149
|
+
".ai/skills/database-design.md",
|
|
150
|
+
".ai/skills/frontend-engineering.md",
|
|
151
|
+
".ai/skills/performance.md",
|
|
152
|
+
".ai/skills/scalability.md",
|
|
153
|
+
".ai/skills/security.md",
|
|
154
|
+
".ai/skills/testing.md",
|
|
155
|
+
".ai/tools/debugging.md",
|
|
156
|
+
".ai/tools/dependency-analysis.md",
|
|
157
|
+
".ai/tools/internet-research.md",
|
|
158
|
+
".ai/tools/mcp-discovery.md",
|
|
159
|
+
".claude/commands/init.md",
|
|
160
|
+
".claude/commands/sync.md",
|
|
161
|
+
".claude/commands/work.md",
|
|
162
|
+
".ai/workflows/_schema.json",
|
|
163
|
+
".ai/workflows/init.json",
|
|
164
|
+
".ai/workflows/sync.json",
|
|
165
|
+
".ai/workflows/work.json",
|
|
166
|
+
".ai/runtime/state.schema.json",
|
|
167
|
+
".ai/runtime/state.json",
|
|
168
|
+
".ai/specs/RFC/RFC-0001-runtime-orchestrator.md",
|
|
169
|
+
".ai/specs/RFC/RFC-0002-runtime-orchestrator-extended.md",
|
|
170
|
+
".ai/specs/ADR/ADR-0004-runtime-orchestrator.md",
|
|
171
|
+
".ai/specs/ADR/ADR-0005-workflow-engine.md",
|
|
172
|
+
".ai/specs/ADR/ADR-0006-runtime-state.md",
|
|
173
|
+
".ai/specs/ADR/ADR-0007-state-compiler-drift-context-layers-artifact-index.md",
|
|
174
|
+
".ai/specs/ADR/ADR-0008-intent-runtime-discovery-branching.md",
|
|
175
|
+
".ai/specs/ADR/ADR-0009-confidence-system-maturity-tracking.md",
|
|
176
|
+
".ai/specs/ADR/ADR-0010-structural-architecture-standards.md",
|
|
177
|
+
".ai/rules/structure-canon.md",
|
|
178
|
+
".ai/rules/structural-constraints.md",
|
|
179
|
+
".ai/blueprints/_schema.json",
|
|
180
|
+
".ai/blueprints/README.md",
|
|
181
|
+
".ai/blueprints/web.json",
|
|
182
|
+
".ai/blueprints/saas.json",
|
|
183
|
+
".ai/blueprints/crm.json",
|
|
184
|
+
".ai/blueprints/mobile.json",
|
|
185
|
+
".ai/blueprints/game.json",
|
|
186
|
+
".ai/blueprints/ai-platform.json",
|
|
187
|
+
".ai/blueprints/telemetry.json",
|
|
188
|
+
".ai/blueprints/realtime.json",
|
|
189
|
+
".claude/settings.json",
|
|
190
|
+
".claude/settings.unix.json",
|
|
191
|
+
"CLAUDE.md",
|
|
192
|
+
"GEMINI.md",
|
|
193
|
+
"GPT.md"
|
|
194
|
+
],
|
|
195
|
+
"memory_hygiene": {
|
|
196
|
+
"max_lines_per_file": 500,
|
|
197
|
+
"archive_dir": ".ai/memory/archive",
|
|
198
|
+
"rotation": "quarterly",
|
|
199
|
+
"summary_file": ".ai/memory/_summary.md"
|
|
200
|
+
},
|
|
201
|
+
"evolution_gates": {
|
|
202
|
+
"learning_promotion_min_occurrences": 3,
|
|
203
|
+
"pattern_recognition_min_occurrences": 3,
|
|
204
|
+
"require_human_approval_for": [
|
|
205
|
+
".ai/rules/*",
|
|
206
|
+
".ai/operating-system/*",
|
|
207
|
+
".ai/CONTRACT.md",
|
|
208
|
+
".ai/ROUTER.md",
|
|
209
|
+
".ai/manifest.json"
|
|
210
|
+
]
|
|
211
|
+
},
|
|
212
|
+
"supported_models": {
|
|
213
|
+
"claude-code": {
|
|
214
|
+
"entry": "CLAUDE.md",
|
|
215
|
+
"settings": ".claude/settings.json",
|
|
216
|
+
"hooks": true,
|
|
217
|
+
"skills": true,
|
|
218
|
+
"subagents": true
|
|
219
|
+
},
|
|
220
|
+
"claude-api": {
|
|
221
|
+
"entry": "CLAUDE.md",
|
|
222
|
+
"hooks": false,
|
|
223
|
+
"enforcement": "system_prompt + self_audit"
|
|
224
|
+
},
|
|
225
|
+
"gemini": {
|
|
226
|
+
"entry": "GEMINI.md",
|
|
227
|
+
"hooks": false,
|
|
228
|
+
"enforcement": "system_prompt + self_audit",
|
|
229
|
+
"context_strategy": "preload_full_tier_when_headroom"
|
|
230
|
+
},
|
|
231
|
+
"gpt": {
|
|
232
|
+
"entry": "GPT.md",
|
|
233
|
+
"hooks": false,
|
|
234
|
+
"enforcement": "system_prompt + json_schema_routing"
|
|
235
|
+
}
|
|
236
|
+
},
|
|
237
|
+
"layout": "consolidated-in-.ai"
|
|
238
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"detected_at": "2026-05-16 14:26:47",
|
|
3
|
+
"target": "C:\\Users\\PC\\Desktop\\Estrutura para IA\\Harness",
|
|
4
|
+
"languages": [
|
|
5
|
+
|
|
6
|
+
],
|
|
7
|
+
"frameworks": [
|
|
8
|
+
|
|
9
|
+
],
|
|
10
|
+
"databases": [
|
|
11
|
+
|
|
12
|
+
],
|
|
13
|
+
"infra": [
|
|
14
|
+
|
|
15
|
+
],
|
|
16
|
+
"ci_cd": [
|
|
17
|
+
|
|
18
|
+
],
|
|
19
|
+
"test_frameworks": [
|
|
20
|
+
|
|
21
|
+
],
|
|
22
|
+
"linters": [
|
|
23
|
+
|
|
24
|
+
],
|
|
25
|
+
"formatters": [
|
|
26
|
+
|
|
27
|
+
],
|
|
28
|
+
"package_manager": null,
|
|
29
|
+
"structure_style": null,
|
|
30
|
+
"smells": [
|
|
31
|
+
"README.md ausente"
|
|
32
|
+
]
|
|
33
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: 1.0.0
|
|
3
|
+
updated: 2026-05-14
|
|
4
|
+
tier: on_demand
|
|
5
|
+
tokens: ~200
|
|
6
|
+
load: when_memory_referenced
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Memory Summary (90 dias)
|
|
10
|
+
|
|
11
|
+
> Resumo rotativo dos últimos 90 dias. Atualizado automaticamente ou pelo comando `/compact-memory`.
|
|
12
|
+
> Carrega este arquivo em vez dos logs completos quando o agente só precisa de panorama.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Período coberto
|
|
17
|
+
|
|
18
|
+
**De**: _(preencher)_
|
|
19
|
+
**Até**: _(preencher)_
|
|
20
|
+
|
|
21
|
+
## Tarefas concluídas (top 10)
|
|
22
|
+
|
|
23
|
+
_(lista das mais recentes/relevantes)_
|
|
24
|
+
|
|
25
|
+
## ADRs ativos
|
|
26
|
+
|
|
27
|
+
_(lista de ADRs aceitos, não substituídos)_
|
|
28
|
+
|
|
29
|
+
## Erros recorrentes resolvidos
|
|
30
|
+
|
|
31
|
+
_(top 5 padrões de erro com correção)_
|
|
32
|
+
|
|
33
|
+
## Pendências críticas (P0/P1)
|
|
34
|
+
|
|
35
|
+
_(itens de pending-tasks.md)_
|
|
36
|
+
|
|
37
|
+
## Issues abertos
|
|
38
|
+
|
|
39
|
+
_(de known-issues.md, severidade alta+)_
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Política de Rotação
|
|
44
|
+
|
|
45
|
+
- A cada 90 dias, mover entradas para `memory/archive/YYYY-QX.md`.
|
|
46
|
+
- Manter os 5-10 itens mais relevantes em cada arquivo de memória vivo.
|
|
47
|
+
- Atualizar este resumo após cada rotação.
|
|
48
|
+
|
|
49
|
+
Comando: `/compact-memory` (ver `.ai/operating-system/quality-control.md` se configurado).
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: 1.0.0
|
|
3
|
+
updated: 2026-05-14
|
|
4
|
+
tier: on_demand
|
|
5
|
+
tokens: ~varies
|
|
6
|
+
load: completion_audit
|
|
7
|
+
mutable: append_only
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Completed Tasks
|
|
11
|
+
|
|
12
|
+
> Log append-only de tarefas concluídas. Mais recente no topo.
|
|
13
|
+
|
|
14
|
+
## Formato
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
## AAAA-MM-DD — Título curto
|
|
18
|
+
- Descrição: o que foi feito
|
|
19
|
+
- Arquivos: lista de paths tocados
|
|
20
|
+
- Validação: como foi verificado (testes, lint, manual)
|
|
21
|
+
- Origem: pending-tasks.md? bug report? request direto?
|
|
22
|
+
- Decisão associada: ADR-NNN (se aplicável)
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Regras
|
|
26
|
+
|
|
27
|
+
1. Append-only. Nunca apagar entradas antigas.
|
|
28
|
+
2. Uma entrada por tarefa atômica.
|
|
29
|
+
3. Se a tarefa originou-se em `pending-tasks.md`, removê-la de lá.
|
|
30
|
+
4. Não duplicar com `decisions.md`: lá vai o **porquê** arquitetural; aqui vai o **o quê** e **quando**.
|
|
31
|
+
|
|
32
|
+
## Entradas
|
|
33
|
+
|
|
34
|
+
<!-- adicionar abaixo -->
|
|
35
|
+
|
|
36
|
+
## 2026-05-16 — Structural Architecture Standards (ADR-0010) + docs cross-IDE atualizados
|
|
37
|
+
- Descrição: implementada camada de Standards estruturais inspirada em análise externa (síntese filtrada de Vertical Slice Architecture + Modular Monolith DDD + AI-native monorepo 2026). Criados: princípios qualitativos universais (`.ai/rules/structure-canon.md` — 7 princípios: domain-first, vertical slice, boundaries explícitos, no global utils, AI-navigable, contracts required, evolutionary), limites quantitativos (`.ai/rules/structural-constraints.md`), schema declarativo para blueprints, 8 blueprints (web/saas/crm/mobile/game/ai-platform/telemetry/realtime — cada um declara folders, modules, packages_recommended, integrations_recommended, constraints_overrides; suporta `extends` transitivo), e Composition Engine (3 novas tools MCP) que resolve extends, faz union semântica dedupe de folders/modules/packages/integrations e merge de constraints (mais restritivo vence). Concomitantemente, docs cross-IDE atualizados para refletir o estado final pós-Fase 5: `.ai/clients/README.md` ganhou nova tabela com 34 tools por camada + seção sobre pause/resume; `.ai/clients/antigravity.md` tabela "linguagem natural" expandida; `AGENTS.md` lista completa das 34 tools por camada.
|
|
38
|
+
- Arquivos novos (13): `.ai/specs/ADR/ADR-0010-structural-architecture-standards.md`, `.ai/rules/structure-canon.md`, `.ai/rules/structural-constraints.md`, `.ai/blueprints/_schema.json`, `.ai/blueprints/README.md`, `.ai/blueprints/{web,saas,crm,mobile,game,ai-platform,telemetry,realtime}.json`.
|
|
39
|
+
- Arquivos modificados: `.ai/server/aios-server.mjs` (+3 tools `aios_list_blueprints` / `aios_get_blueprint` / `aios_compose_structure` + funções listBlueprints/loadBlueprint/getBlueprint/resolveExtendsTransitive/mergeConstraints/composeStructure); `.ai/manifest.json` (+ ADR-0010 + canon + constraints + 8 blueprints + README + schema; bypass `.claude/.unlock` removido); `.ai/clients/README.md`, `.ai/clients/antigravity.md`, `AGENTS.md` (tabelas e capability matrices).
|
|
40
|
+
- Validação: `lint-os.ps1` → Errors: 0; daemon expõe **38 tools** (era 34, +3 blueprints + 1 acumulado); `aios_list_blueprints` retornou 8 blueprints com extends e module_counts corretos; `aios_compose_structure({types:["saas","telemetry","realtime"]})` → resolveu extends transitivo para `["web","saas","telemetry","realtime"]`, mesclou em 20 folders e **23 modules únicos** (alerts, audit, auth, billing, broadcasts, devices, event-streams, events, feature-flags, fleet, geofencing, notifications, permissions, presence, providers, queues, subscriptions, telemetry, tenancy, tracking, trips, users, websockets), constraints merged (max_modules_before_split=20 como mais restritivo vencendo overrides 25/30 dos blueprints).
|
|
41
|
+
- Pesquisa: confirmou state-of-the-art via WebSearch — Milan Jovanović "Vertical Slices Inside Modular Monolith" (milanjovanovic.tech); kgrzybek "modular-monolith-with-ddd" (github); Spectro Cloud "Will AI Turn 2026 into the Year of the Monorepo"; d4b.dev "AI agents in monorepos: what to configure differently".
|
|
42
|
+
- Origem: análise externa apresentada pelo usuário ("Structural Architecture Standards" / "AI-Native Project Architecture Standards" — domain-first, vertical slice, blueprints híbridos, composition engine) + pedido explícito "Pesquise na internet se precisar".
|
|
43
|
+
- Decisão associada: ADR-0010 (Structural Architecture Standards).
|
|
44
|
+
|
|
45
|
+
## 2026-05-16 — Runtime Orchestrator Fase 5: Confidence System + Maturity Tracking
|
|
46
|
+
- Descrição: implementada Fase 5 do RFC-0002 (ADR-0009) — última fase. `state.json` ganhou bloco `confidence` (categories: { name: { level: low|medium|high, reason, updated_at } }, default_level). 3 novas tools MCP: `aios_confidence_get({category?})`, `aios_confidence_set({category, level, reason})`, `aios_confidence_assess()` (heurística que olha state + project-state + ADRs e propõe níveis + maturity sem aplicar). `aios_compile_runtime_context` (ADR-0007) ganhou campo `low_confidence_flags: [{ category, reason }]` (top 3 categorias com level=low) para LLM ler diretamente do runtime-context. Maturity heuristic: empty (sem project_name + sem ADRs), minimal (project_name + ≤2 ADRs), partial (3-9 ADRs + project-state), mature (≥10 ADRs + >10 módulos + ≥3 syncs).
|
|
47
|
+
- Arquivos novos: `.ai/specs/ADR/ADR-0009-confidence-system-maturity-tracking.md`.
|
|
48
|
+
- Arquivos modificados: `.ai/server/aios-server.mjs` (+3 tools + funções ensureConfidenceBlock/confidenceGet/confidenceSet/confidenceAssess + low_confidence_flags em compileRuntimeContext); `.ai/runtime/state.schema.json` (+ bloco confidence); `.ai/manifest.json` (+ ADR-0009; bypass `.claude/.unlock` removido).
|
|
49
|
+
- Validação: `lint-os.ps1` → Errors: 0; daemon expõe **34 tools** (era 31, +3 confidence); `aios_confidence_assess` → current_maturity=mature, suggested_maturity=partial (7 ADRs, 16 módulos, 0 smells, 0 syncs), suggestões: decisions=medium, architecture=high, modules=high, domain=medium, telemetry=low; `aios_confidence_set({category:"telemetry",level:"low",reason:"sem instrumentação"})` → registrado; `aios_compile_runtime_context` propagou flag `[{category:"telemetry",reason:"sem instrumentação"}]` em `low_confidence_flags`; runtime-context.json ainda em 1258 tokens (orçamento 4000).
|
|
50
|
+
- Origem: continuação da refatoração aprovada — Fase 5 (final).
|
|
51
|
+
- Decisão associada: ADR-0009 (Fase 5). RFC-0002 completamente implementado (todas as 4 fases de extensão + Fase 5 entregues).
|
|
52
|
+
- Status global: Runtime Orchestrator entregue end-to-end (Fases 1-5). 34 tools MCP, 3 commands consolidados, 3 workflows declarativos, state persistente com lifecycle/confidence, execution contracts, pause/resume, branches, state compiler, drift detection, context layers, artifact index, maturity tracking.
|
|
53
|
+
|
|
54
|
+
## 2026-05-16 — Runtime Orchestrator Fase 4: Intent Runtime para /work + Discovery Runtime ramificado + pause/resume
|
|
55
|
+
- Descrição: implementada Fase 4 do RFC-0002 (ADR-0008). Workflow Engine ganhou 2 capacidades: (1) **pause_for** — step pode declarar `pause_for: { when: before|after, reason, prompt, expected_input }`; engine pausa, salva execução em `.ai/runtime/paused-executions/<execution_id>.json` (TTL 30 min), retorna `status: "paused"` + `execution_id` + `pause_info`; cliente externo retoma com `aios_resume_workflow({execution_id, user_input})`. (2) **branches** — step pode ter `branches: [{when: "<dotted.path> <op> <literal>", steps: [...]}, {default: true, steps: [...]}]`; engine expande inline antes de executar; operadores `==`, `!=`, `in`. 3 novas tools: `aios_resume_workflow`, `aios_list_paused_executions`, `aios_cancel_paused_execution`. Workflow `init` v3.0.0 ramificado (Discovery Runtime para projeto novo via `state.identity.maturity == "empty"`, com pause_for perguntando nome do projeto; Reverse Engineering Runtime como default para projetos existentes). Workflow `work` v3.0.0 (Intent Runtime completo): load_runtime_context → classify → route → search_memory → **pause: clarification_questions** → focused_context → **pause: plan_approval** → validate_lint → record_completion → post_snapshot.
|
|
56
|
+
- Arquivos novos: `.ai/specs/ADR/ADR-0008-intent-runtime-discovery-branching.md`. Diretório `.ai/runtime/paused-executions/` criado on-demand pelo engine.
|
|
57
|
+
- Arquivos modificados: `.ai/server/aios-server.mjs` (+3 tools + funções expandSteps/evalBranchCondition/savePausedExecution/pauseExecution/resumeWorkflow/listPausedExecutions/cancelPausedExecution; runWorkflow refatorado para chamar executeStepsFrom; novo namespace ctx.resumed_input); `.ai/workflows/_schema.json` (+ campos pause_for, branches no step); `.ai/workflows/init.json` v3.0.0 (com branches); `.ai/workflows/work.json` v3.0.0 (com 2 pause_for); `.ai/manifest.json` (+ ADR-0008; bypass `.claude/.unlock` removido).
|
|
58
|
+
- Validação: `lint-os.ps1` → Errors: 0; daemon expõe **31 tools** (era 28); E2E pause/resume: `aios_run_workflow({name:"work"})` → `status: paused`, execution_id, pause `clarification_questions`; `aios_resume_workflow({execution_id, user_input:"ok"})` → 2ª pausa `plan_approval`; segundo resume → `status: ok`, todas 4 guarantees met (`runtime_context_compiled, task_classified, query_routed, memory_searched`), 10 steps.
|
|
59
|
+
- Origem: continuação da refatoração aprovada (Fases 2→3→4→5 em sequência).
|
|
60
|
+
- Decisão associada: ADR-0008 (Fase 4). Próxima: ADR-0009 (Fase 5 — Confidence System).
|
|
61
|
+
|
|
62
|
+
## 2026-05-16 — Runtime Orchestrator Fase 3: State Compiler + Drift Detection + Context Layers + Artifact Index
|
|
63
|
+
- Descrição: implementada Fase 3 do RFC-0002 (ADR-0007). 4 novas tools MCP: (1) `aios_compile_runtime_context` — Project State Compiler que consolida state.json + project-state + top-N módulos por conectividade + N ADRs recentes + memory rotating num único `.ai/runtime/runtime-context.json` otimizado (target ≤4000 tokens); (2) `aios_detect_drift` — Documentation Drift Detection que compara módulos do snapshot vs estado atual + identifica orphan modules sem referência em specs (severity: info); (3) `aios_get_context(layer)` — atalho para tiers `core | working | deep`; (4) `aios_artifact_list({type?, status?})` — catálogo de specs (ADR/RFC/PRD/SDD/RUNBOOKS/TASKS/BRD) + snapshots + packages + workflows, com auto-write de `.ai/artifacts/index.json`. Workflow `sync` v3.0.0 ganhou 2 steps finais (compile_runtime_context + detect_drift) e guarantees correspondentes (`runtime_context_compiled`, `drift_checked`).
|
|
64
|
+
- Arquivos novos: `.ai/specs/ADR/ADR-0007-state-compiler-drift-context-layers-artifact-index.md`, `.ai/runtime/runtime-context.json` (gerado pelo compiler), `.ai/artifacts/index.json` (gerado pelo artifact_list).
|
|
65
|
+
- Arquivos modificados: `.ai/server/aios-server.mjs` (+4 tools + funções compileRuntimeContext/detectDrift/getContextLayer/artifactList + helpers safeReadJson/safeReadText/estimateTokens/listAdrs + 2 novas guarantees em GUARANTEE_PROVIDERS + import readdirSync); `.ai/workflows/sync.json` v3.0.0; `.ai/manifest.json` (+ ADR-0007; bypass `.claude/.unlock` removido).
|
|
66
|
+
- Validação: `lint-os.ps1` → Errors: 0; daemon expõe **28 tools** (era 23); `aios_compile_runtime_context` gerou runtime-context.json com **1116 tokens** (dentro do orçamento de 4000); `aios_detect_drift` contra snapshot `phase3-validate` → 16 módulos persistidos, 0 added/removed, 16 orphan_modules_no_spec_reference (esperado: runtime é código novo sem SDD); `aios_get_context({layer:"working"})` retornou identity + lifecycle + 3 ADRs recentes; `aios_artifact_list({})` retornou 12 itens (5 ADRs + 3 workflows + 2 RFCs + 1 snapshot + 1 package). Fix mid-flight: snapshot v0.1 salva `state.json` não `project-state.json` — drift agora tenta ambos.
|
|
67
|
+
- Origem: continuação da refatoração aprovada em 2026-05-16 ("Adotar TUDO incluindo Confidence System" + "Tudo em sequência").
|
|
68
|
+
- Decisão associada: ADR-0007 (Fase 3). Próxima: ADR-0008 (Fase 4 — Intent Runtime + Discovery Runtime ramificado).
|
|
69
|
+
|
|
70
|
+
## 2026-05-16 — Runtime Orchestrator Fase 2: Runtime State + Lifecycle + Context TTL + Execution Contracts + Safety Rule
|
|
71
|
+
- Descrição: implementada Fase 2 do RFC-0002 (extensão do RFC-0001). Persistência operacional em `.ai/runtime/state.json` (versionado, schema-validated): identity (project_name, maturity, stack), lifecycle (phase ∈ discovery|planning|implementation|stabilization|production, mode ∈ readonly|analysis|execution|validation), persistent (architecture_decisions_refs, rules_refs), rotating (ttl_days, active_focus, recent_errors, open_questions), workflow_history (últimas 20 execuções). 4 novas tools MCP (`aios_state_get`, `aios_state_set`, `aios_state_advance`, `aios_state_reset`). Workflow engine estendido: schema ganhou `guarantees: []` (lista auditável de invariantes) e `safety: { project_files_readonly }`; engine valida cumprimento de guarantees após cada run via mapeamento fixo `GUARANTEE_PROVIDERS` (10 garantias mapeadas para tools provedoras); relatório inclui `declared_guarantees`, `guarantees_met`, `unmet_guarantees`; status pode ser `ok | ok_with_warnings | aborted`. Substituição de template em workflow ganhou `${state.X}`. Workflow history é gravado automaticamente em `state.workflow_history` (FIFO 20).
|
|
72
|
+
- Arquivos novos: `.ai/specs/RFC/RFC-0002-runtime-orchestrator-extended.md`, `.ai/specs/ADR/ADR-0006-runtime-state.md`, `.ai/runtime/state.schema.json`, `.ai/runtime/state.json` (inicializado para AI OS Harness em fase implementation).
|
|
73
|
+
- Arquivos modificados: `.ai/server/aios-server.mjs` (+4 tools state + helpers loadState/saveState/getByPath/setByPath/stateGet/stateSet/stateAdvance/stateReset/recordWorkflowHistory; runWorkflow agora popula `ctx.state`, valida guarantees, grava history); `.ai/workflows/_schema.json` (campos `guarantees`, `safety`); `.ai/workflows/{init,sync,work}.json` (v2.0.0: declaram guarantees, safety, e adicionam step final de state advance/set); `.ai/manifest.json` (+ state schema + state.json + RFC-0002 + ADR-0006; bypass `.claude/.unlock` removido).
|
|
74
|
+
- Validação: `lint-os.ps1` → Errors: 0, Warnings: 3 (pré-existentes); daemon expõe **23 tools** (era 19); `aios_state_get({path:"lifecycle"})` retornou `{phase:"implementation",mode:"execution"}`; `aios_run_workflow({name:"work",input:{intent:"fase 2 smoke test"}})` → `status: ok`, 5/5 guarantees met (`task_classified, query_routed, core_loaded, memory_searched, context_compiled`), 6/6 steps ok; `state.json` atualizado automaticamente com `rotating.active_focus="fase 2 smoke test"` e nova entrada em `workflow_history`.
|
|
75
|
+
- Origem: análise externa apresentada pelo usuário em 2026-05-16 (após Fase 1); usuário aprovou "Adotar TUDO incluindo Confidence System (Fase 5)" + "Tudo em sequência (2 → 3 → 4) até acabar".
|
|
76
|
+
- Decisão associada: ADR-0006 (Fase 2). Próxima: ADR-0007 (Fase 3 — State Compiler + Drift + Context Layers + Artifact Index).
|
|
77
|
+
|
|
78
|
+
## 2026-05-16 — Runtime Orchestrator Fase 1: Workflow Engine MVP + 3 commands consolidados
|
|
79
|
+
- Descrição: implementada Fase 1 do Runtime Orchestrator (ADR-0004). Workflow Engine determinístico orquestra as 17 tools MCP primitivas via workflows JSON declarativos. Substituídos os 8 slash commands granulares (`/analyze`, `/audit`, `/compact-memory`, `/context`, `/load-os`, `/os-status`, `/promote-learning`, `/snapshot`) por 3 consolidados (`/init`, `/sync`, `/work`). Cada command chama `aios_run_workflow({ name })` que carrega `.ai/workflows/<name>.json`, itera steps com substituição de variáveis (`${input.X}`, `${timestamp}`), suporta `on_error: abort|continue`, retorna relatório JSON com status/duração/preview por step. Zero novas dependências (JSON parser built-in Node).
|
|
80
|
+
- Arquivos novos: `.ai/specs/RFC/RFC-0001-runtime-orchestrator.md` (visão das 4 fases), `.ai/specs/ADR/ADR-0004-runtime-orchestrator.md` (decisão consolidada), `.ai/specs/ADR/ADR-0005-workflow-engine.md` (Fase 1), `.ai/workflows/_schema.json` + `init.json` + `sync.json` + `work.json`, `.claude/commands/{init,sync,work}.md`.
|
|
81
|
+
- Arquivos modificados: `.ai/server/aios-server.mjs` (+2 tools: `aios_run_workflow`, `aios_list_workflows`; +helpers `resolveTemplateValue`, `resolveArgs`, `loadWorkflow`, `runWorkflow`, `listWorkflows`); `.ai/manifest.json` (8 commands antigos removidos da `required_files`, 3 novos + 4 workflows + 3 specs adicionados — bypass via `.claude/.unlock` temporário, removido depois); `AGENTS.md`, `.ai/clients/{README,antigravity}.md`, `.ai/runtime.md` (tabelas: 8 commands antigos → 3 novos; 17 → 19 tools).
|
|
82
|
+
- Arquivos deletados (8): `.claude/commands/{analyze,audit,compact-memory,context,load-os,os-status,promote-learning,snapshot}.md`.
|
|
83
|
+
- Validação: `lint-os.ps1` → Errors: 0, Warnings: 3 (todos pré-existentes); daemon HTTP `aios_list_workflows()` → 3 workflows listados; `aios_run_workflow({name: "work", input: {intent: "corrige um bug no login que ignora MFA"}})` → status `ok`, 5 steps em ~1700ms total (classify → simple, route → 9 arquivos via rota "Bugs e erros", load_core → 26562 chars, search_memory → [], build_focused_context → 5 módulos / ~1250 tokens estimados).
|
|
84
|
+
- Origem: análise externa apresentada pelo usuário sobre AI Engineering Runtime vs MCP puro; síntese filtrada e refinada em RFC-0001. Decisões confirmadas via AskUserQuestion (sessão 2026-05-16): "Fases 1+2+3+4 (refatoração completa)" + "Substituir tudo pelos 3 novos".
|
|
85
|
+
- Decisão associada: ADR-0004 (consolidada) + ADR-0005 (Fase 1). Fases 2-4 pendentes (ADR-0006, 0007, 0008).
|
|
86
|
+
|
|
87
|
+
## 2026-05-16 — Rename de tools MCP de dot-namespace para underscore (compat Gemini/Antigravity)
|
|
88
|
+
- Descrição: Antigravity (Gemini API) rejeitou todas as 17 tools `aios.*` com erro `tool name mcp_ai-os_aios.X violates ^[a-zA-Z0-9_-]{1,64}$` — o regex de Function Declaration do Google não aceita ponto. Renomeação em massa de `aios.<tool>` → `aios_<tool>` no servidor MCP + todas as referências (slash commands, docs, settings). Compat preservada com Claude Code/Cursor/Cline (todos aceitam underscore). Decisão registrada via AskUserQuestion (usuário escolheu "Renomear tudo para underscore"). 23 arquivos atualizados via find-replace literal `aios.` → `aios_` (sem falsos-positivos confirmados via Grep prévio).
|
|
89
|
+
- Arquivos: `.ai/server/aios-server.mjs` (17 tools renomeadas + 17 handlers); `.claude/commands/{analyze,context,snapshot,os-status,load-os,compact-memory,promote-learning}.md`; `.claude/settings.local.json` (curl commands); `AGENTS.md`; `.ai/clients/{README,antigravity,claude-code}.md`; `.cursor/rules/ai-os.mdc`; `.ai/{runtime,README}.md`; `.ai/server/README.md`; `.ai/specs/ADR/ADR-0002-typescript-runtime.md`; `.ai/evolution/improvements.md`; `.ai/agents/{tech-lead,reviewer,architect,product-manager}.md`.
|
|
90
|
+
- Validação: `lint-os.ps1` → Errors: 0, Warnings: 3 (pré-existentes). Daemon HTTP em 47782 → `/tools` lista `aios_get_core_bundle`, `aios_route_query`, `aios_classify_task`, ... (todas com underscore); `/health` → `status: ok, version: 4.1.0, runtime_v0_1: true`. Grep final `aios\.[a-z]` → "No files found" (zero ocorrências de dot-namespace restantes). Validação efetiva no Antigravity: usuário precisa clicar Refresh no painel MCP (daemon spawnado pelo Antigravity foi morto para forçar reload).
|
|
91
|
+
- Origem: erro reportado pelo usuário em screenshots do painel "Manage MCP servers" do Antigravity ("Error: tool name ... violates ^[a-zA-Z0-9_-]{1,64}$").
|
|
92
|
+
- Decisão associada: n/a — escolha técnica documentada em `improvements.md` se quiser ADR futuro; por ora, mudança é mecânica e reversível.
|
|
93
|
+
|
|
94
|
+
## 2026-05-16 — Portabilidade do AI OS para múltiplas IDEs e CLIs
|
|
95
|
+
- Descrição: criados entry-points específicos para cada IDE/CLI alvo (Cursor, Windsurf, Cline, Continue, Copilot, TRAE, Antigravity/Gemini CLI, Codex/Aider via AGENTS.md), além de configs MCP de escopo projeto onde suportado. Estratégia: stub curto (12-18 linhas) referenciando `.ai/INDEX.md` (sem duplicar CORE), respeitando convenção que cada ferramenta auto-carrega. Catálogo canônico em `.ai/clients/` com README + 9 docs por IDE (capability matrix, ativação em 3 passos, snippet inline, validação, troubleshooting, limitações).
|
|
96
|
+
- Arquivos novos (22): `AGENTS.md`, `.cursorrules`, `.cursor/rules/ai-os.mdc`, `.cursor/mcp.json`, `.windsurfrules`, `.clinerules`, `.continue/rules/ai-os.md`, `.continue/config.yaml`, `.github/copilot-instructions.md`, `.trae/rules/project_rules.md`, `.gemini/settings.json`, `.ai/clients/README.md`, `.ai/clients/{claude-code,cursor,windsurf,cline,continue,copilot,trae,antigravity,codex-aider-cli}.md`, `.ai/clients/snippets/{mcp-stdio,mcp-http,mcp-absolute-paths}.json`. Zero modificações em `.ai/` core (CONTRACT, ROUTER, rules, operating-system, manifest intactos).
|
|
97
|
+
- Validação: `lint-os.ps1` → Errors: 0, Warnings: 3 (todos pré-existentes em `context/project-state.md`, `context/packages/*`, `snapshots/*`). Daemon HTTP: `node .ai/server/aios-server.mjs --http` + `curl /health` → 200 OK com `runtime_v0_1: true`, version 4.1.0. Validação por IDE individual depende do usuário ter cada ferramenta instalada — instruções de teste end-to-end em cada `.ai/clients/<ide>.md`.
|
|
98
|
+
- Origem: request direto do usuário ("Eu só estou conseguindo usar os comando pelo painel e chat da Claude Code, preciso que tudo funcione em outras ferramentas tbm").
|
|
99
|
+
- Decisão associada: n/a (sem ADR — escolha do usuário foi não tocar em `manifest.json` para registrar `client_adapters`; pode virar entrega futura).
|
|
100
|
+
- Plano: arquivado no histórico local do Claude Code (não versionado).
|
|
101
|
+
- Pesquisas: confirmadas via WebSearch — Cursor MDC frontmatter (`description`/`globs`/`alwaysApply`); Windsurf MCP em `%USERPROFILE%\.codeium\windsurf\mcp_config.json`; TRAE v1.3+ suporta `.trae/rules/project_rules.md` + MCP.
|
|
102
|
+
|
|
103
|
+
## 2026-05-15 — Framework v4.0.0: AI-DOS completo (Context Engine + Multi-agent + Spec-Driven + Pipeline)
|
|
104
|
+
- Descrição: evolução major do `.ai/` de framework de regras para **AI Development Operating System completo**, paridade com processo de empresas maduras. Adicionadas 6 camadas: (1) `governance/` com princípios inegociáveis + DoR/DoD + 10 quality gates + security/architecture policies; (2) `agents/` com 10 especialistas (founder, product-manager, architect, tech-lead, backend-engineer, frontend-engineer, qa-engineer, security-engineer, sre-engineer, reviewer, researcher) com contratos I/O; (3) `specs/` com templates canônicos (PRD, SDD, ADR, RFC, BRD, Runbook, Task); (4) `context/` Context Engine vivo separado da memória histórica (10 docs); (5) `core/pipeline/execution-engine.md` com pipeline IDEIA→DISCOVERY→PRD→ARCH→SDD→TASKS→IMPL→TEST→REVIEW→DEPLOY→OBSERVE→APRENDIZADO e gates G1-G10; (6) pastas-irmãs `product/`, `architecture/` (C4 + threat modeling), `engineering/` (com observability/incident-response), `execution/` (backlog/sprint/roadmap/milestones).
|
|
105
|
+
- Arquivos: ~50 novos files. `INDEX.md` v4.0.0, `ROUTER.md` com 7 rotas novas, `manifest.json` v4.0.0 com required_files de 69 → 137. ADR-0003 documenta a decisão completa. Entrada v4.0.0 em `agent-evolution.md`.
|
|
106
|
+
- Validação: `lint-os.ps1` → 0 errors, 0 warnings; 137/137 required_files presentes.
|
|
107
|
+
- Origem: pedido do usuário (Spec-Driven Development, Context Engineering, multi-agent, "empresa de uma pessoa").
|
|
108
|
+
- Decisão associada: ADR-0003.
|
|
109
|
+
|
|
110
|
+
## 2026-05-15 — Framework v3.4.0: guard-edit com split em subcomandos + allowlist read-only (IMP-002 aplicado)
|
|
111
|
+
- Descrição: `.ai/hooks/guard-edit.{ps1,sh}` reescritos para tratar comandos compostos corretamente. Antes: bloqueava qualquer comando que tivesse write verb + path protegido juntos, mesmo em subcomandos diferentes ou com write verb como argumento (`grep Set-Content settings.json` bloqueava sem razão). Agora: (1) **split** do comando por `&&`/`||`/`;`/`|`/newline respeitando aspas; (2) **allowlist de prefixos read-only** (grep/cat/head/tail/ls/find/wc/stat/file/which/echo/printf/Get-Content/Get-ChildItem/Select-String/Test-Path/Resolve-Path/Get-Item/gci/gc/sls) — subcomando que começa com um destes nunca bloqueia, EXCETO se houver redirect (`>` ou `>>`) no mesmo subcomando. (3) Os 11 paths protegidos permanecem inalterados; comportamento Edit/Write/NotebookEdit idêntico.
|
|
112
|
+
- Arquivos tocados: `.ai/hooks/guard-edit.ps1` (reescrito ~30 linhas), `.ai/hooks/guard-edit.sh` (reescrito split via awk + read-only prefix regex), `.ai/evolution/improvements.md` (IMP-002 status `aplicado`), `.ai/evolution/agent-evolution.md` (entrada v3.4.0 — pendente abaixo). Sincronizado para `sistema-de-diesel/.ai/hooks/`.
|
|
113
|
+
- Validação: **38/38 cenários PASS** (20 PowerShell + 18 Bash em sandbox `mktemp -d`). Casos novos cobertos: `rm -rf dist && cat .ai/manifest.json` (não bloqueia), `grep Set-Content .claude/settings.json` (não bloqueia), `echo x > .claude/settings.json && ls` (bloqueia subcomando 1), `cat foo && rm .ai/CONTRACT.md` (bloqueia subcomando 2), `cat /dev/null > .ai/CONTRACT.md` (bloqueia: redirect anula allowlist), `cat .ai/CONTRACT.md | grep foo` (não bloqueia), unlock bypass funcional.
|
|
114
|
+
- Origem: false positives observados na sessão (usuário comentou explicitamente: "refinar o guard contra false positives").
|
|
115
|
+
- Decisão associada: n/a (refinamento técnico de regra existente; IMP-002 documentado em `evolution/improvements.md`).
|
|
116
|
+
- Pendência: nenhuma deste ciclo.
|
|
117
|
+
|
|
118
|
+
## 2026-05-14 — Framework v3.3.0: tech-mapping protocol + `.ai/` instalado no Strak + 3 fixes técnicos
|
|
119
|
+
- Descrição: framework pai ganhou **protocolo de tech-mapping** (`.ai/bootstrap/tech-mapping.md`, novo) — bootstrap (novo OU existente) agora produz `operating-system/architecture.md` organizado por especificação técnica (Frontend, Backend, BD, Infra, Integrações, Tools, APIs, MCPs, Dados/Samples, Pendências de Mapeamento). Caso real de aplicação: `.ai/` instalado no subprojeto Strak com architecture.md preenchido nesse formato. ADR-0002 registra a decisão. Em paralelo, 3 melhorias no Strak: chunking do bundle (ADR-0002 do Strak, manualChunks), scripts `server/scripts/*` robustecidos a qualquer cwd (paths relativos a `__dirname`), `.env` confirmado já untracked (não havia ação a fazer).
|
|
120
|
+
- Arquivos tocados (framework pai): `.ai/bootstrap/tech-mapping.md` (novo), `.ai/bootstrap/existing-project.md`, `.ai/bootstrap/new-project.md`, `.ai/operating-system/folder-structure.md`, `.ai/INDEX.md`, `.ai/manifest.json`, `.ai/ROUTER.md`, `.ai/memory/decisions.md` (ADR-0002 novo), `.ai/evolution/agent-evolution.md` (entrada v3.3.0).
|
|
121
|
+
- Arquivos tocados (Strak): instalação completa do `.ai/` + entry points (`CLAUDE.md`/`GEMINI.md`/`GPT.md`) + `.claude/` (commands + settings.json + settings.unix.json); `.ai/memory/project-context.md` populado; `.ai/operating-system/architecture.md` reescrito como mapa técnico; `.ai/memory/decisions.md` com ADR-0001 (adoção do OS) e ADR-0002 (chunking); `vite.config.ts` (manualChunks); 5 scripts em `server/scripts/` (paths robustos).
|
|
122
|
+
- Validação:
|
|
123
|
+
- tsc front Strak → 0 erros
|
|
124
|
+
- tsc server Strak → 0 erros
|
|
125
|
+
- vite build Strak → OK em 19.85s. Maior chunk era 1523 KB; agora maior é `pdf` 422 KB (138 KB gzip), `app` 388 KB (118 KB gzip), `charts` 302 KB, `xlsx` 283 KB, `maps-leaflet` 154 KB, `storage` 97 KB, `motion` 96 KB, `date` 46 KB.
|
|
126
|
+
- vitest Strak → 32/32 PASS
|
|
127
|
+
- `lint-os.ps1` framework pai → 0 errors, 0 warnings
|
|
128
|
+
- `lint-os.ps1` Strak → 0 errors, 0 warnings
|
|
129
|
+
- Origem: pedido direto do usuário em duas partes — (a) "instalar `.ai/` no Strak para que ele aprenda tudo sobre o sistema, sendo o especialista dele"; (b) "lembre que na sua estrutura de orientação deve ter um processo interno que toda vez que um projeto novo é iniciado ou se for um projeto existente, vc analisa a estrutura e organiza tudo por especificações técnicas".
|
|
130
|
+
- Decisões associadas:
|
|
131
|
+
- Framework pai: **ADR-0002** — Tech-mapping obrigatório no bootstrap.
|
|
132
|
+
- Strak: **ADR-0001** — Adoção do AI OS no Strak; **ADR-0002** (do Strak) — Code-splitting via manualChunks.
|
|
133
|
+
- Pendência: nenhuma deste ciclo. Strak agora tem cérebro persistente próprio. Workings em `Arquivos Base/` (11 MB) preservados, gitignored. `.unlock` foi usado e removido conforme protocolo.
|
|
134
|
+
|
|
135
|
+
## 2026-05-14 — Bootstrap + saneamento do subprojeto `sistema-de-diesel/` (Strak)
|
|
136
|
+
- Descrição: subprojeto separado em `sistema-de-diesel/` (sem `.ai/` próprio) recebeu primeira passagem de bootstrap dialógico — diagnóstico read-only (tsc/build/vitest), correção de 8 erros TS em `server/src/infra/database.ts` (sobrecarga de `pg.Pool.query`), atualização de 2 testes desalinhados com a regra em `src/services/__tests__/analysis.test.ts` (Null Island filter + threshold de 3 records consecutivos), remoção do framework legado `.agent/` (Antigravity Kit, 2.1 MB) por ordem do usuário, exclusão de leftovers (`metadata.json`, `test-db.cjs` na raiz, `server/test_upload.js` com path hardcoded), reorganização de 6 scripts ad-hoc em `server/scripts/`, padronização do nome para **Strak** (System Track) no README, criação de `server/.env.example` baseado no README, ajustes no `.gitignore` (Arquivos Base/, samples/, .ai/.runtime/).
|
|
137
|
+
- Arquivos tocados (no subprojeto, não no `.ai/`): `sistema-de-diesel/server/src/infra/database.ts`, `sistema-de-diesel/src/services/__tests__/analysis.test.ts`, `sistema-de-diesel/README.md`, `sistema-de-diesel/.gitignore`, `sistema-de-diesel/server/.env.example` (novo); removidos: `.agent/` (recursivo), `metadata.json`, `test-db.cjs`, `server/test_upload.js`, `dist/`; movidos para `server/scripts/`: `check-count.cjs`, `check-indexes.cjs`, `test-db.ts`, `test-perf.cjs`, `test-sql.cjs`, `run-schema.ts`.
|
|
138
|
+
- Validação: tsc front → 0 erros; tsc server → 0 erros (era 8); vite build → OK em ~23s; vitest run → **32/32 PASS** (era 30/32).
|
|
139
|
+
- Origem: pedido direto do usuário ("ajude a estruturar e corrigir problemas existentes").
|
|
140
|
+
- Decisão associada: n/a (sem ADR — o subprojeto não tem `.ai/` próprio e os ADRs do framework não se aplicam).
|
|
141
|
+
- Pendência registrada: subprojeto Strak ficou **sem cérebro persistente** após remoção do `.agent/`. Para continuar a evolução com memória, instalar `.ai/` AI OS dentro de `sistema-de-diesel/` em sessão futura. Per `dont.md` regra 9 (não cruzar contexto entre projetos), o contexto técnico do Strak não deve viver na memória do framework — só nesta linha referencial.
|
|
142
|
+
|
|
143
|
+
## 2026-05-14 — v3.2.0: IMP-001 aplicado + daemon validado end-to-end
|
|
144
|
+
- Descrição: fechado IMP-001 (Bash bypass do guard). Reescritos `guard-edit.{ps1,sh}` limpos (estavam corrompidos), adicionado branch Bash com detecção de verbos de escrita, suporte a `.claude/.unlock` para override autorizado. Matcher em `settings.json` e `settings.unix.json` atualizado para `Edit|Write|NotebookEdit|Bash`. Corrigido bug do `start-os.ps1` em paths com espaço. Daemon HTTP subido e validado em 8 endpoints (health, tools, classify_task, route_query, lint, get_core_bundle, validate_audit, search_memory). Daemon parado ao final.
|
|
145
|
+
- Arquivos: `.ai/hooks/guard-edit.ps1` (reescrito), `.ai/hooks/guard-edit.sh` (reescrito), `.claude/settings.json` (matcher), `.claude/settings.unix.json` (matcher), `.ai/scripts/start-os.ps1` (fix path-com-espaço), `.ai/memory/decisions.md` (ADR-0001 novo), `.ai/evolution/improvements.md` (IMP-001 → status aplicado), `.ai/evolution/agent-evolution.md` (entrada v3.2.0).
|
|
146
|
+
- Validação: sintaxe PS+SH OK; 19 cenários de smoke-test dos hooks (9 PS + 10 SH) → 19/19 PASS; 8 endpoints do daemon HTTP → todos OK; `lint-os.ps1` → 0 errors, 0 warnings.
|
|
147
|
+
- Origem: solicitação direta do usuário ("IMP-001 ... pode realizar essa pendencia").
|
|
148
|
+
- Decisão associada: ADR-0001 (primeiro ADR do projeto).
|
|
149
|
+
|
|
150
|
+
## 2026-05-14 — Finalização do AI OS v3.1.0 (README + limpeza)
|
|
151
|
+
- Descrição: criado `.ai/README.md` (documentação humana completa: o que é, instalação, daemon MCP, hooks, slash commands, memória, troubleshooting, filosofia). Removidos os dois scripts temporários de migração na raiz (`_migrate.mjs`, `_migrate2.mjs`) deixados após a consolidação em `.ai/` na v3.0.
|
|
152
|
+
- Arquivos: `.ai/README.md` (criado), `_migrate.mjs` (removido), `_migrate2.mjs` (removido)
|
|
153
|
+
- Validação: `scripts/lint-os.ps1` → Errors: 0, Warnings: 0. Todos os 72 `required_files` do manifest presentes.
|
|
154
|
+
- Origem: solicitação direta do usuário ("deixar tudo pronto e no README colocar todas as orientações").
|
|
155
|
+
- Decisão associada: n/a (README era `required_file` previamente ausente).
|
|
156
|
+
- Open: IMP-001 (Bash bypass do guard-edit) permanece `proposto` — não tocado nesta entrega; usuário não solicitou.
|