@kal-elsam/kairo-runtime 0.1.0
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/README.md +937 -0
- package/bin/harness.js +11 -0
- package/bin/kairo-runtime.js +11 -0
- package/bin/kairo.js +11 -0
- package/global-template/components/catalog.json +25 -0
- package/global-template/components/orchestrator/orchestrator.md +55 -0
- package/global-template/components/sdd-core/handoff.md +38 -0
- package/global-template/components/sdd-core/spec-sizing.md +38 -0
- package/global-template/components/sdd-core/workflow.md +31 -0
- package/global-template/core/orchestrator.md +55 -0
- package/package.json +64 -0
- package/prompts/HARNESS_ENFORCEMENT_UPGRADE.md +11 -0
- package/prompts/HARNESS_ENTERPRISE.md +33 -0
- package/prompts/HARNESS_INSTALLER_MASTER.md +853 -0
- package/prompts/HARNESS_MINIMAL.md +30 -0
- package/prompts/HARNESS_SPEC_SIZING_UPGRADE.md +41 -0
- package/prompts/HARNESS_STANDARD.md +35 -0
- package/prompts/HARNESS_UNIVERSAL_PARITY.md +56 -0
- package/repo-template/.claude/agents/adapter-parity-reviewer.md +17 -0
- package/repo-template/.claude/agents/architect.md +17 -0
- package/repo-template/.claude/agents/eval-engineer.md +17 -0
- package/repo-template/.claude/agents/reviewer.md +17 -0
- package/repo-template/.claude/agents/sdd-reviewer.md +17 -0
- package/repo-template/.claude/agents/sdd-spec-writer.md +17 -0
- package/repo-template/.claude/skills/checkpoint/SKILL.md +13 -0
- package/repo-template/.claude/skills/eval-design/SKILL.md +3 -0
- package/repo-template/.claude/skills/evals/SKILL.md +13 -0
- package/repo-template/.claude/skills/loop-engineering/SKILL.md +16 -0
- package/repo-template/.claude/skills/maintainability-review/SKILL.md +3 -0
- package/repo-template/.claude/skills/quality-gate-review/SKILL.md +3 -0
- package/repo-template/.claude/skills/sdd/SKILL.md +13 -0
- package/repo-template/.claude/skills/spec-complexity-classifier/SKILL.md +10 -0
- package/repo-template/.claude/skills/spec-escalation-review/SKILL.md +10 -0
- package/repo-template/.claude/skills/spec-intake/SKILL.md +10 -0
- package/repo-template/.claude/skills/tdd/SKILL.md +13 -0
- package/repo-template/.claude/skills/trust-review/SKILL.md +3 -0
- package/repo-template/.codex/skills/adapter-parity/SKILL.md +29 -0
- package/repo-template/.codex/skills/checkpoint/SKILL.md +36 -0
- package/repo-template/.codex/skills/eval-design/SKILL.md +3 -0
- package/repo-template/.codex/skills/evals/SKILL.md +28 -0
- package/repo-template/.codex/skills/loop-engineering/SKILL.md +24 -0
- package/repo-template/.codex/skills/maintainability-review/SKILL.md +3 -0
- package/repo-template/.codex/skills/quality-gate-review/SKILL.md +3 -0
- package/repo-template/.codex/skills/sdd/SKILL.md +30 -0
- package/repo-template/.codex/skills/spec-complexity-classifier/SKILL.md +10 -0
- package/repo-template/.codex/skills/spec-escalation-review/SKILL.md +10 -0
- package/repo-template/.codex/skills/spec-intake/SKILL.md +10 -0
- package/repo-template/.codex/skills/tdd/SKILL.md +27 -0
- package/repo-template/.codex/skills/trust-review/SKILL.md +3 -0
- package/repo-template/.cursor/agents/adapter-parity-reviewer.md +29 -0
- package/repo-template/.cursor/agents/architect.md +27 -0
- package/repo-template/.cursor/agents/context-engineer.md +27 -0
- package/repo-template/.cursor/agents/debugger.md +27 -0
- package/repo-template/.cursor/agents/eval-engineer.md +27 -0
- package/repo-template/.cursor/agents/harness-orchestrator.md +27 -0
- package/repo-template/.cursor/agents/loop-controller.md +17 -0
- package/repo-template/.cursor/agents/loop-debugger.md +16 -0
- package/repo-template/.cursor/agents/reviewer.md +27 -0
- package/repo-template/.cursor/agents/sdd/sdd-acceptance-reviewer.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-implementation-guardian.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-intake-analyst.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-orchestrator.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-spec-reviewer.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-spec-writer.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-task-breakdown.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-technical-planner.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-test-planner.md +31 -0
- package/repo-template/.cursor/agents/spec-intake-analyst.md +14 -0
- package/repo-template/.cursor/agents/test-engineer.md +27 -0
- package/repo-template/.cursor/commands/adapter-parity.md +34 -0
- package/repo-template/.cursor/commands/checkpoint.md +30 -0
- package/repo-template/.cursor/commands/debug.md +13 -0
- package/repo-template/.cursor/commands/init-eval.md +12 -0
- package/repo-template/.cursor/commands/init-feature.md +12 -0
- package/repo-template/.cursor/commands/init-harness.md +13 -0
- package/repo-template/.cursor/commands/loop-debug.md +3 -0
- package/repo-template/.cursor/commands/loop-review.md +3 -0
- package/repo-template/.cursor/commands/loop-run.md +5 -0
- package/repo-template/.cursor/commands/review.md +21 -0
- package/repo-template/.cursor/commands/sdd-intake.md +18 -0
- package/repo-template/.cursor/commands/sdd-plan.md +18 -0
- package/repo-template/.cursor/commands/sdd-spec.md +18 -0
- package/repo-template/.cursor/commands/sdd-tasks.md +18 -0
- package/repo-template/.cursor/commands/sdd-validate.md +18 -0
- package/repo-template/.cursor/commands/spec-escalate.md +9 -0
- package/repo-template/.cursor/commands/spec-intake.md +10 -0
- package/repo-template/.cursor/commands/spec-size.md +21 -0
- package/repo-template/.cursor/rules/adapter-parity.mdc +20 -0
- package/repo-template/.cursor/rules/api.mdc +12 -0
- package/repo-template/.cursor/rules/core.mdc +21 -0
- package/repo-template/.cursor/rules/enforcement.mdc +16 -0
- package/repo-template/.cursor/rules/evals.mdc +10 -0
- package/repo-template/.cursor/rules/git.mdc +19 -0
- package/repo-template/.cursor/rules/harness.mdc +14 -0
- package/repo-template/.cursor/rules/loops.mdc +17 -0
- package/repo-template/.cursor/rules/testing.mdc +13 -0
- package/repo-template/.cursor/rules/ui.mdc +13 -0
- package/repo-template/.cursor/skills/api-design/SKILL.md +23 -0
- package/repo-template/.cursor/skills/architecture/SKILL.md +23 -0
- package/repo-template/.cursor/skills/code-review/SKILL.md +23 -0
- package/repo-template/.cursor/skills/context-graph/SKILL.md +23 -0
- package/repo-template/.cursor/skills/debugging/SKILL.md +23 -0
- package/repo-template/.cursor/skills/evals/SKILL.md +23 -0
- package/repo-template/.cursor/skills/git-workflow/SKILL.md +23 -0
- package/repo-template/.cursor/skills/testing/SKILL.md +23 -0
- package/repo-template/.cursor/skills/ui-design/SKILL.md +23 -0
- package/repo-template/.gentle-ai/README.md +37 -0
- package/repo-template/.gentle-ai/loops/README.md +27 -0
- package/repo-template/.gentle-ai/loops/sdd-tdd-repair.loop.md +27 -0
- package/repo-template/.gentle-ai/model-routing.md +25 -0
- package/repo-template/.github/copilot-instructions.md +37 -0
- package/repo-template/.github/dependabot.yml +11 -0
- package/repo-template/.github/instructions/harness.instructions.md +11 -0
- package/repo-template/.github/workflows/harness-quality-gate.yml +67 -0
- package/repo-template/.github/workflows/harness-security-gate.yml +32 -0
- package/repo-template/.harness/spec-sizing.json +33 -0
- package/repo-template/.opencode/README.md +71 -0
- package/repo-template/.opencode/agents/adapter-parity-reviewer.md +23 -0
- package/repo-template/.opencode/agents/architect.md +38 -0
- package/repo-template/.opencode/agents/checkpoint-reviewer.md +38 -0
- package/repo-template/.opencode/agents/eval-engineer.md +38 -0
- package/repo-template/.opencode/agents/loop-controller.md +38 -0
- package/repo-template/.opencode/agents/loop-debugger.md +38 -0
- package/repo-template/.opencode/agents/model-router.md +38 -0
- package/repo-template/.opencode/agents/sdd-orchestrator.md +38 -0
- package/repo-template/.opencode/agents/sdd-spec-reviewer.md +38 -0
- package/repo-template/.opencode/agents/spec-intake-analyst.md +19 -0
- package/repo-template/.opencode/agents/tdd-engineer.md +38 -0
- package/repo-template/.opencode/commands/checkpoint.md +3 -0
- package/repo-template/.opencode/commands/eval-design.md +3 -0
- package/repo-template/.opencode/commands/maintainability-review.md +3 -0
- package/repo-template/.opencode/commands/quality-gate.md +3 -0
- package/repo-template/.opencode/commands/spec-escalate.md +9 -0
- package/repo-template/.opencode/commands/spec-intake.md +10 -0
- package/repo-template/.opencode/commands/spec-size.md +21 -0
- package/repo-template/.opencode/commands/trust-review.md +3 -0
- package/repo-template/.opencode/loops/ai-behavior-improvement.loop.md +15 -0
- package/repo-template/.opencode/loops/bug-repair.loop.md +16 -0
- package/repo-template/.opencode/loops/documentation-sync.loop.md +13 -0
- package/repo-template/.opencode/loops/feature-development.loop.md +25 -0
- package/repo-template/.opencode/skills/spec-complexity-classifier/SKILL.md +10 -0
- package/repo-template/.opencode/skills/spec-escalation-review/SKILL.md +10 -0
- package/repo-template/.opencode/skills/spec-intake/SKILL.md +10 -0
- package/repo-template/.pi/README.md +21 -0
- package/repo-template/.pi/prompts/checkpoint.md +11 -0
- package/repo-template/.pi/prompts/loop-run.md +10 -0
- package/repo-template/.pi/prompts/sdd-plan.md +11 -0
- package/repo-template/.pi/prompts/sdd-spec.md +13 -0
- package/repo-template/.pi/prompts/spec-escalate.md +9 -0
- package/repo-template/.pi/prompts/spec-intake.md +10 -0
- package/repo-template/.pi/prompts/spec-size.md +21 -0
- package/repo-template/.pi/skills/adapter-parity/SKILL.md +7 -0
- package/repo-template/.pi/skills/checkpoint/SKILL.md +7 -0
- package/repo-template/.pi/skills/eval-design/SKILL.md +3 -0
- package/repo-template/.pi/skills/evals/SKILL.md +7 -0
- package/repo-template/.pi/skills/loop-engineering/SKILL.md +7 -0
- package/repo-template/.pi/skills/maintainability-review/SKILL.md +3 -0
- package/repo-template/.pi/skills/quality-gate-review/SKILL.md +3 -0
- package/repo-template/.pi/skills/sdd/SKILL.md +7 -0
- package/repo-template/.pi/skills/spec-complexity-classifier/SKILL.md +10 -0
- package/repo-template/.pi/skills/spec-escalation-review/SKILL.md +10 -0
- package/repo-template/.pi/skills/spec-intake/SKILL.md +10 -0
- package/repo-template/.pi/skills/tdd/SKILL.md +7 -0
- package/repo-template/.pi/skills/trust-review/SKILL.md +3 -0
- package/repo-template/AGENT.md +8 -0
- package/repo-template/AGENTS.md +165 -0
- package/repo-template/CLAUDE.md +9 -0
- package/repo-template/GEMINI.md +9 -0
- package/repo-template/docs/ai/adapter-parity.md +135 -0
- package/repo-template/docs/ai/agent-workflow.md +45 -0
- package/repo-template/docs/ai/api.md +28 -0
- package/repo-template/docs/ai/architecture.md +53 -0
- package/repo-template/docs/ai/context-budget.md +54 -0
- package/repo-template/docs/ai/context-graph.md +39 -0
- package/repo-template/docs/ai/conventions.md +34 -0
- package/repo-template/docs/ai/decision-log.md +5 -0
- package/repo-template/docs/ai/enforcement.md +63 -0
- package/repo-template/docs/ai/eval-strategy.md +42 -0
- package/repo-template/docs/ai/evals.md +44 -0
- package/repo-template/docs/ai/git-workflow.md +35 -0
- package/repo-template/docs/ai/governance.md +61 -0
- package/repo-template/docs/ai/harness.md +49 -0
- package/repo-template/docs/ai/installer-cli.md +34 -0
- package/repo-template/docs/ai/loop-log.md +5 -0
- package/repo-template/docs/ai/loop-observability.md +57 -0
- package/repo-template/docs/ai/loop-policy.md +86 -0
- package/repo-template/docs/ai/loops.md +95 -0
- package/repo-template/docs/ai/maintainability-gates.md +26 -0
- package/repo-template/docs/ai/memory.md +71 -0
- package/repo-template/docs/ai/model-policy.md +105 -0
- package/repo-template/docs/ai/observability-runtime.md +48 -0
- package/repo-template/docs/ai/provider-routing.md +138 -0
- package/repo-template/docs/ai/quality-gates.md +48 -0
- package/repo-template/docs/ai/rollback-runtime.md +25 -0
- package/repo-template/docs/ai/security.md +12 -0
- package/repo-template/docs/ai/spec-driven-development.md +124 -0
- package/repo-template/docs/ai/spec-escalation.md +44 -0
- package/repo-template/docs/ai/spec-intake.md +46 -0
- package/repo-template/docs/ai/spec-sizing.md +207 -0
- package/repo-template/docs/ai/test-driven-development.md +35 -0
- package/repo-template/docs/ai/testing.md +28 -0
- package/repo-template/docs/ai/tool-adapters.md +186 -0
- package/repo-template/docs/ai/trust-allowlist.md +5 -0
- package/repo-template/docs/ai/trust-policy.md +41 -0
- package/repo-template/docs/ai/ui.md +17 -0
- package/repo-template/docs/skills/adapter-parity-review.md +46 -0
- package/repo-template/docs/skills/api-design.md +37 -0
- package/repo-template/docs/skills/architecture.md +37 -0
- package/repo-template/docs/skills/code-review.md +37 -0
- package/repo-template/docs/skills/context-graph.md +38 -0
- package/repo-template/docs/skills/debugging.md +37 -0
- package/repo-template/docs/skills/eval-design.md +12 -0
- package/repo-template/docs/skills/evals.md +37 -0
- package/repo-template/docs/skills/git-workflow.md +37 -0
- package/repo-template/docs/skills/look-trust-review.md +12 -0
- package/repo-template/docs/skills/loop-debugging.md +16 -0
- package/repo-template/docs/skills/loop-design.md +39 -0
- package/repo-template/docs/skills/loop-retrospective.md +15 -0
- package/repo-template/docs/skills/loop-review.md +16 -0
- package/repo-template/docs/skills/maintainability-review.md +12 -0
- package/repo-template/docs/skills/model-selection.md +36 -0
- package/repo-template/docs/skills/quality-gate-review.md +12 -0
- package/repo-template/docs/skills/spec-complexity-classifier.md +41 -0
- package/repo-template/docs/skills/spec-escalation-review.md +34 -0
- package/repo-template/docs/skills/spec-intake.md +25 -0
- package/repo-template/docs/skills/testing.md +37 -0
- package/repo-template/docs/skills/tool-adapter-sync.md +36 -0
- package/repo-template/docs/skills/ui-design.md +37 -0
- package/repo-template/docs/specs/README.md +9 -0
- package/repo-template/docs/specs/templates/basic-spec.md +41 -0
- package/repo-template/docs/specs/templates/complex-spec.md +145 -0
- package/repo-template/docs/specs/templates/standard-spec.md +58 -0
- package/repo-template/evals/README.md +11 -0
- package/repo-template/evals/golden/sample-golden.json +12 -0
- package/repo-template/evals/loop-regression/README.md +11 -0
- package/repo-template/evals/regression/sample-regression.json +12 -0
- package/repo-template/evals/schema/sample-schema.json +12 -0
- package/repo-template/evals/tool-calls/sample-tool-calls.json +12 -0
- package/repo-template/opencode.json.sample +29 -0
- package/repo-template/scripts/harness/backup.mjs +7 -0
- package/repo-template/scripts/harness/doctor.mjs +20 -0
- package/repo-template/scripts/harness/run-evals.mjs +27 -0
- package/repo-template/setup-agent-links.sh +54 -0
- package/scripts/check-published-release.mjs +127 -0
- package/scripts/check-release-commit.mjs +32 -0
- package/scripts/install.sh +225 -0
- package/scripts/installer-smoke-test.sh +155 -0
- package/scripts/lib/attribution-guard.mjs +59 -0
- package/scripts/registry-smoke-test.sh +149 -0
- package/scripts/smoke-test.sh +197 -0
- package/scripts/ux-smoke-test.sh +140 -0
- package/src/cli.js +625 -0
- package/src/doctor.js +68 -0
- package/src/global/adapter-context.js +27 -0
- package/src/global/adapter-matrix.js +38 -0
- package/src/global/adapters/claude.js +8 -0
- package/src/global/adapters/codex.js +8 -0
- package/src/global/adapters/cursor.js +8 -0
- package/src/global/adapters/opencode.js +8 -0
- package/src/global/agents.js +7 -0
- package/src/global/apply-confirmation.js +62 -0
- package/src/global/backups.js +54 -0
- package/src/global/brand/cli.js +52 -0
- package/src/global/brand/index.js +85 -0
- package/src/global/clack/setup-preview.js +48 -0
- package/src/global/clack/setup-wizard-constants.js +6 -0
- package/src/global/clack/setup-wizard.js +207 -0
- package/src/global/clack/theme.js +145 -0
- package/src/global/component-authoring.js +121 -0
- package/src/global/component-builders.js +43 -0
- package/src/global/component-distribution.js +270 -0
- package/src/global/component-installer.js +106 -0
- package/src/global/component-paths.js +22 -0
- package/src/global/component-registry.js +89 -0
- package/src/global/components/orchestrator.js +14 -0
- package/src/global/components/sdd-core.js +17 -0
- package/src/global/diff.js +233 -0
- package/src/global/drift.js +264 -0
- package/src/global/explain.js +144 -0
- package/src/global/global-cli.js +1145 -0
- package/src/global/global-doctor.js +67 -0
- package/src/global/global-installer.js +284 -0
- package/src/global/history.js +313 -0
- package/src/global/ink/run-setup-ink.js +77 -0
- package/src/global/ink/setup-app.js +278 -0
- package/src/global/ink/setup-routing.js +51 -0
- package/src/global/ink/setup-state.js +180 -0
- package/src/global/ink/terminal.js +13 -0
- package/src/global/json-output.js +22 -0
- package/src/global/load-component-catalog.js +41 -0
- package/src/global/load-workspace-component-catalog.js +123 -0
- package/src/global/managed-body.js +28 -0
- package/src/global/managed-config-adapter.js +134 -0
- package/src/global/managed-section.js +73 -0
- package/src/global/npm-registry.js +25 -0
- package/src/global/paths.js +22 -0
- package/src/global/policy.js +344 -0
- package/src/global/preflight.js +65 -0
- package/src/global/registry.js +79 -0
- package/src/global/report.js +110 -0
- package/src/global/rollback.js +126 -0
- package/src/global/setup.js +284 -0
- package/src/global/state-migration.js +65 -0
- package/src/global/state.js +50 -0
- package/src/global/status.js +94 -0
- package/src/global/sync.js +129 -0
- package/src/global/upgrade.js +145 -0
- package/src/harness-files.js +145 -0
- package/src/harness-updater.js +120 -0
- package/src/hash.js +5 -0
- package/src/manifest.js +36 -0
- package/src/project-detection.js +105 -0
- package/src/template-installer.js +72 -0
- package/src/text-template.js +24 -0
- package/src/workspace-cli.js +115 -0
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# Spec-Driven Development
|
|
2
|
+
|
|
3
|
+
## Cuándo crear una spec
|
|
4
|
+
|
|
5
|
+
Crear spec para:
|
|
6
|
+
|
|
7
|
+
- nueva feature
|
|
8
|
+
- cambio de flujo
|
|
9
|
+
- endpoint nuevo
|
|
10
|
+
- integración externa
|
|
11
|
+
- cambio de modelo de datos
|
|
12
|
+
- refactor estructural
|
|
13
|
+
- automatización agéntica
|
|
14
|
+
- prompt/agente de producción
|
|
15
|
+
|
|
16
|
+
No es obligatorio para cambios triviales de copy, estilos menores o fixes pequeños, salvo riesgo alto.
|
|
17
|
+
|
|
18
|
+
## Ubicación
|
|
19
|
+
|
|
20
|
+
```txt
|
|
21
|
+
docs/specs/<feature-name>.spec.md
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Plantilla
|
|
25
|
+
|
|
26
|
+
```md
|
|
27
|
+
# Spec: [Nombre]
|
|
28
|
+
|
|
29
|
+
## Objetivo
|
|
30
|
+
|
|
31
|
+
## Contexto
|
|
32
|
+
|
|
33
|
+
## Alcance
|
|
34
|
+
|
|
35
|
+
## No alcance
|
|
36
|
+
|
|
37
|
+
## Criterios de aceptación
|
|
38
|
+
|
|
39
|
+
- [ ] Comportamiento observable
|
|
40
|
+
- [ ] Caso de error
|
|
41
|
+
- [ ] Validación técnica
|
|
42
|
+
|
|
43
|
+
## Diseño técnico
|
|
44
|
+
|
|
45
|
+
### Capas afectadas
|
|
46
|
+
|
|
47
|
+
- UI:
|
|
48
|
+
- API:
|
|
49
|
+
- DB:
|
|
50
|
+
- Servicios:
|
|
51
|
+
- Jobs:
|
|
52
|
+
- Agentes:
|
|
53
|
+
- Evals:
|
|
54
|
+
|
|
55
|
+
### Contratos
|
|
56
|
+
|
|
57
|
+
#### Request
|
|
58
|
+
|
|
59
|
+
```json
|
|
60
|
+
{}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
#### Response
|
|
64
|
+
|
|
65
|
+
```json
|
|
66
|
+
{}
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Estados y errores
|
|
70
|
+
|
|
71
|
+
| Caso | Resultado esperado |
|
|
72
|
+
|---|---|
|
|
73
|
+
| Happy path | |
|
|
74
|
+
| Error externo | |
|
|
75
|
+
| Input inválido | |
|
|
76
|
+
| Sin permisos | |
|
|
77
|
+
|
|
78
|
+
## Testing
|
|
79
|
+
|
|
80
|
+
- Unit:
|
|
81
|
+
- Integration:
|
|
82
|
+
- E2E:
|
|
83
|
+
- Regression:
|
|
84
|
+
|
|
85
|
+
## Evals
|
|
86
|
+
|
|
87
|
+
- Dataset:
|
|
88
|
+
- Prompt regression:
|
|
89
|
+
- Tool calling:
|
|
90
|
+
- Safety:
|
|
91
|
+
|
|
92
|
+
## Riesgos
|
|
93
|
+
|
|
94
|
+
## Plan de implementación
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Reglas
|
|
98
|
+
|
|
99
|
+
- La spec debe ser suficientemente clara para que otro agente implemente.
|
|
100
|
+
- Los criterios de aceptación deben convertirse en tests/evals.
|
|
101
|
+
- Si cambia la implementación, actualizar la spec.
|
|
102
|
+
- Si la spec contradice arquitectura, resolver antes de codificar.
|
|
103
|
+
|
|
104
|
+
## Spec sizing requirement
|
|
105
|
+
|
|
106
|
+
Before writing a spec, classify it as:
|
|
107
|
+
|
|
108
|
+
```txt
|
|
109
|
+
basic
|
|
110
|
+
standard
|
|
111
|
+
complex
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Use:
|
|
115
|
+
|
|
116
|
+
```txt
|
|
117
|
+
docs/ai/spec-sizing.md
|
|
118
|
+
docs/specs/templates/basic-spec.md
|
|
119
|
+
docs/specs/templates/standard-spec.md
|
|
120
|
+
docs/specs/templates/complex-spec.md
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
Do not force complex SDD on tiny safe tasks.
|
|
124
|
+
Do not use basic specs for high-risk or high-ambiguity tasks.
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Spec Escalation
|
|
2
|
+
|
|
3
|
+
## Objective
|
|
4
|
+
|
|
5
|
+
Define when to upgrade a spec level during work.
|
|
6
|
+
|
|
7
|
+
## Upgrade from basic to standard when
|
|
8
|
+
|
|
9
|
+
- more than 3 files are affected
|
|
10
|
+
- behavior is broader than expected
|
|
11
|
+
- tests require integration setup
|
|
12
|
+
- state management is touched
|
|
13
|
+
- API contract is touched
|
|
14
|
+
- ambiguity appears
|
|
15
|
+
- the agent needs to make design choices
|
|
16
|
+
|
|
17
|
+
## Upgrade from standard to complex when
|
|
18
|
+
|
|
19
|
+
- architecture boundaries are touched
|
|
20
|
+
- auth/security/privacy appears
|
|
21
|
+
- database migration appears
|
|
22
|
+
- production AI behavior appears
|
|
23
|
+
- a new vendor/tool/MCP appears
|
|
24
|
+
- rollback becomes hard
|
|
25
|
+
- multiple systems/services are affected
|
|
26
|
+
- failure modes are not obvious
|
|
27
|
+
- human approval becomes necessary
|
|
28
|
+
|
|
29
|
+
## Stop conditions
|
|
30
|
+
|
|
31
|
+
Stop implementation and escalate if:
|
|
32
|
+
|
|
33
|
+
```txt
|
|
34
|
+
The current spec level no longer matches risk.
|
|
35
|
+
The agent is making architecture decisions not captured in the spec.
|
|
36
|
+
The implementation requires changing the original scope.
|
|
37
|
+
The task touches hard-trigger areas.
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Downgrade
|
|
41
|
+
|
|
42
|
+
Downgrading requires explicit review.
|
|
43
|
+
|
|
44
|
+
Do not silently downgrade from complex to standard/basic.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Spec Intake
|
|
2
|
+
|
|
3
|
+
## Objective
|
|
4
|
+
|
|
5
|
+
Capture enough information to classify and start the right level of spec.
|
|
6
|
+
|
|
7
|
+
## Intake questions
|
|
8
|
+
|
|
9
|
+
Ask or infer:
|
|
10
|
+
|
|
11
|
+
```txt
|
|
12
|
+
What is the requested change?
|
|
13
|
+
What problem does it solve?
|
|
14
|
+
Who is affected?
|
|
15
|
+
What files/modules are likely affected?
|
|
16
|
+
Does it touch UI, API, DB, auth, infra, AI, tools or payments?
|
|
17
|
+
Is there existing behavior to preserve?
|
|
18
|
+
How will success be validated?
|
|
19
|
+
What could break?
|
|
20
|
+
How easy is rollback?
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Intake output
|
|
24
|
+
|
|
25
|
+
Every feature/task starts with:
|
|
26
|
+
|
|
27
|
+
```txt
|
|
28
|
+
Spec level:
|
|
29
|
+
Reason:
|
|
30
|
+
Hard triggers:
|
|
31
|
+
Ambiguity:
|
|
32
|
+
Blast radius:
|
|
33
|
+
Validation needed:
|
|
34
|
+
Human approval needed:
|
|
35
|
+
Next action:
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Avoid over-questioning
|
|
39
|
+
|
|
40
|
+
If the task is simple and low-risk, infer missing details and create a basic spec.
|
|
41
|
+
|
|
42
|
+
If the task is high-risk, stop and require more explicit scope or human approval.
|
|
43
|
+
|
|
44
|
+
## Classification first
|
|
45
|
+
|
|
46
|
+
Do not implement before classifying the spec level.
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
# Spec Sizing
|
|
2
|
+
|
|
3
|
+
## Objective
|
|
4
|
+
|
|
5
|
+
Classify the required depth of a spec before implementation.
|
|
6
|
+
|
|
7
|
+
The goal is to avoid two failure modes:
|
|
8
|
+
|
|
9
|
+
```txt
|
|
10
|
+
Over-specification: wasting time with complex SDD for tiny tasks.
|
|
11
|
+
Under-specification: allowing risky work to proceed with vague instructions.
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Spec levels
|
|
15
|
+
|
|
16
|
+
```txt
|
|
17
|
+
basic
|
|
18
|
+
standard
|
|
19
|
+
complex
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Basic spec
|
|
23
|
+
|
|
24
|
+
Use for low-risk, well-understood, localized work.
|
|
25
|
+
|
|
26
|
+
Examples:
|
|
27
|
+
|
|
28
|
+
- small UI copy change
|
|
29
|
+
- styling adjustment
|
|
30
|
+
- small isolated component behavior
|
|
31
|
+
- simple bug with clear reproduction
|
|
32
|
+
- simple utility function
|
|
33
|
+
- small test addition
|
|
34
|
+
- documentation update
|
|
35
|
+
|
|
36
|
+
Allowed when:
|
|
37
|
+
|
|
38
|
+
- no architecture change
|
|
39
|
+
- no API contract change
|
|
40
|
+
- no database change
|
|
41
|
+
- no auth/security change
|
|
42
|
+
- no payment/billing change
|
|
43
|
+
- no AI behavior change
|
|
44
|
+
- no production migration
|
|
45
|
+
- low ambiguity
|
|
46
|
+
- low blast radius
|
|
47
|
+
|
|
48
|
+
Required sections:
|
|
49
|
+
|
|
50
|
+
```txt
|
|
51
|
+
Goal
|
|
52
|
+
Scope
|
|
53
|
+
Files likely affected
|
|
54
|
+
Acceptance criteria
|
|
55
|
+
Validation
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Standard spec
|
|
59
|
+
|
|
60
|
+
Use for normal product/engineering work.
|
|
61
|
+
|
|
62
|
+
Examples:
|
|
63
|
+
|
|
64
|
+
- new frontend feature
|
|
65
|
+
- new form or workflow
|
|
66
|
+
- API endpoint without critical data impact
|
|
67
|
+
- integration with existing service
|
|
68
|
+
- non-critical refactor
|
|
69
|
+
- medium bug spanning multiple files
|
|
70
|
+
- state management change
|
|
71
|
+
- component library change
|
|
72
|
+
|
|
73
|
+
Allowed when:
|
|
74
|
+
|
|
75
|
+
- moderate ambiguity
|
|
76
|
+
- moderate number of files
|
|
77
|
+
- test strategy needed
|
|
78
|
+
- contracts may be touched but not critical
|
|
79
|
+
- rollback is straightforward
|
|
80
|
+
|
|
81
|
+
Required sections:
|
|
82
|
+
|
|
83
|
+
```txt
|
|
84
|
+
Problem
|
|
85
|
+
Goal
|
|
86
|
+
Non-goals
|
|
87
|
+
User flow / system flow
|
|
88
|
+
Scope
|
|
89
|
+
Technical plan
|
|
90
|
+
Acceptance criteria
|
|
91
|
+
Test plan
|
|
92
|
+
Risks
|
|
93
|
+
Rollback
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Complex spec
|
|
97
|
+
|
|
98
|
+
Use for high-risk, ambiguous or architectural work.
|
|
99
|
+
|
|
100
|
+
Examples:
|
|
101
|
+
|
|
102
|
+
- architecture changes
|
|
103
|
+
- auth/authorization/session changes
|
|
104
|
+
- payments/billing
|
|
105
|
+
- database schema or migrations
|
|
106
|
+
- production AI behavior
|
|
107
|
+
- agent/tool/MCP permissions
|
|
108
|
+
- security-sensitive logic
|
|
109
|
+
- infrastructure/deployment changes
|
|
110
|
+
- cross-service workflows
|
|
111
|
+
- large refactors
|
|
112
|
+
- multi-agent orchestration
|
|
113
|
+
- data consistency changes
|
|
114
|
+
- irreversible or hard-to-rollback changes
|
|
115
|
+
|
|
116
|
+
Required sections:
|
|
117
|
+
|
|
118
|
+
```txt
|
|
119
|
+
Context
|
|
120
|
+
Problem
|
|
121
|
+
Goals
|
|
122
|
+
Non-goals
|
|
123
|
+
Stakeholders
|
|
124
|
+
System boundaries
|
|
125
|
+
Current architecture
|
|
126
|
+
Proposed architecture
|
|
127
|
+
Alternatives considered
|
|
128
|
+
Decision / ADR link
|
|
129
|
+
Data model / contracts
|
|
130
|
+
Failure modes
|
|
131
|
+
Security/privacy review
|
|
132
|
+
Test strategy
|
|
133
|
+
Eval strategy if AI-related
|
|
134
|
+
Migration plan
|
|
135
|
+
Observability
|
|
136
|
+
Rollback plan
|
|
137
|
+
Rollout plan
|
|
138
|
+
Risk register
|
|
139
|
+
Human approvals
|
|
140
|
+
Acceptance criteria
|
|
141
|
+
Implementation phases
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
## Complexity scoring
|
|
145
|
+
|
|
146
|
+
Score each dimension from 0 to 2.
|
|
147
|
+
|
|
148
|
+
| Dimension | 0 | 1 | 2 |
|
|
149
|
+
|---|---|---|---|
|
|
150
|
+
| Ambiguity | clear | some unknowns | unclear/open-ended |
|
|
151
|
+
| Blast radius | 1 file/module | multiple modules | cross-system |
|
|
152
|
+
| Architecture impact | none | local pattern | system boundary/design |
|
|
153
|
+
| Data impact | none | non-critical data | persistent/critical data |
|
|
154
|
+
| Security/privacy | none | minor | auth/secrets/privacy |
|
|
155
|
+
| AI behavior | none | prompt-only/internal | production behavior/tools |
|
|
156
|
+
| Testability | simple | needs integration | needs evals/E2E/contracts |
|
|
157
|
+
| Rollback | trivial | moderate | hard/destructive |
|
|
158
|
+
| Dependency impact | none | minor package | new service/vendor/MCP |
|
|
159
|
+
| User impact | invisible/internal | normal UX | critical flow/revenue |
|
|
160
|
+
|
|
161
|
+
## Decision
|
|
162
|
+
|
|
163
|
+
```txt
|
|
164
|
+
0-3 points -> basic spec
|
|
165
|
+
4-9 points -> standard spec
|
|
166
|
+
10+ points -> complex spec
|
|
167
|
+
Any hard trigger -> complex spec
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
## Hard triggers for complex spec
|
|
171
|
+
|
|
172
|
+
Always complex if the task touches:
|
|
173
|
+
|
|
174
|
+
- auth
|
|
175
|
+
- authorization
|
|
176
|
+
- payments
|
|
177
|
+
- billing
|
|
178
|
+
- secrets
|
|
179
|
+
- production database migration
|
|
180
|
+
- destructive data changes
|
|
181
|
+
- infrastructure
|
|
182
|
+
- CI/CD release gates
|
|
183
|
+
- production AI behavior
|
|
184
|
+
- MCP/tool permissions
|
|
185
|
+
- cross-service contracts
|
|
186
|
+
- architecture boundaries
|
|
187
|
+
- compliance/legal/privacy
|
|
188
|
+
- anything difficult to rollback
|
|
189
|
+
|
|
190
|
+
## Escalation
|
|
191
|
+
|
|
192
|
+
A spec can be upgraded at any time.
|
|
193
|
+
|
|
194
|
+
```txt
|
|
195
|
+
basic -> standard
|
|
196
|
+
standard -> complex
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
A spec can be downgraded only after review.
|
|
200
|
+
|
|
201
|
+
## Rule
|
|
202
|
+
|
|
203
|
+
```txt
|
|
204
|
+
Start with the smallest safe spec.
|
|
205
|
+
Escalate as soon as risk or ambiguity increases.
|
|
206
|
+
Never use a basic spec for critical work.
|
|
207
|
+
```
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Test-Driven Development
|
|
2
|
+
|
|
3
|
+
## Regla central
|
|
4
|
+
|
|
5
|
+
Antes de implementar cambios de comportamiento, escribir el test que define el comportamiento esperado.
|
|
6
|
+
|
|
7
|
+
## Por tipo de tarea
|
|
8
|
+
|
|
9
|
+
| Tarea | Test obligatorio |
|
|
10
|
+
|---|---|
|
|
11
|
+
| Función nueva | Unit test |
|
|
12
|
+
| Bug fix | Regression test que falla primero |
|
|
13
|
+
| Endpoint nuevo | Integration test happy path + errores |
|
|
14
|
+
| Flujo de usuario | E2E test |
|
|
15
|
+
| Refactor | Tests existentes deben seguir pasando |
|
|
16
|
+
| Cambio IA | Eval o prompt regression |
|
|
17
|
+
|
|
18
|
+
## Proceso
|
|
19
|
+
|
|
20
|
+
```txt
|
|
21
|
+
1. Identificar comportamiento esperado
|
|
22
|
+
2. Escribir test/eval que falla
|
|
23
|
+
3. Confirmar que falla por la razón correcta
|
|
24
|
+
4. Implementar mínimo necesario
|
|
25
|
+
5. Ejecutar test/eval
|
|
26
|
+
6. Ejecutar suite completa
|
|
27
|
+
7. Refactorizar si aplica
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Prohibiciones
|
|
31
|
+
|
|
32
|
+
- No mockear lógica de negocio propia.
|
|
33
|
+
- No borrar tests para hacer pasar el pipeline.
|
|
34
|
+
- No cambiar assertions para ocultar un bug.
|
|
35
|
+
- No usar snapshots como sustituto de comportamiento crítico.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Estrategia de testing
|
|
2
|
+
|
|
3
|
+
## Estado actual
|
|
4
|
+
|
|
5
|
+
- Tests configurados: [TESTING_EXISTS]
|
|
6
|
+
- Herramientas detectadas: [TESTING_TOOLS]
|
|
7
|
+
- Herramientas propuestas: [TESTING_PROPOSED]
|
|
8
|
+
- Comando: [TEST_COMMAND]
|
|
9
|
+
- Cobertura mínima recomendada: 80% líneas y branches
|
|
10
|
+
|
|
11
|
+
## Por tipo de tarea
|
|
12
|
+
|
|
13
|
+
| Tarea | Test requerido |
|
|
14
|
+
|---|---|
|
|
15
|
+
| Función nueva | Unit |
|
|
16
|
+
| Endpoint nuevo | Integration |
|
|
17
|
+
| Bug fix | Regression |
|
|
18
|
+
| Flujo UI | E2E |
|
|
19
|
+
| Refactor | Suite existente verde |
|
|
20
|
+
| Cambio IA | Eval/prompt regression |
|
|
21
|
+
|
|
22
|
+
## Reglas
|
|
23
|
+
|
|
24
|
+
- Factories en `tests/factories/` si aplica.
|
|
25
|
+
- Mocks solo para dependencias externas.
|
|
26
|
+
- Regression test antes del fix.
|
|
27
|
+
- No borrar tests sin justificación.
|
|
28
|
+
- No cambiar assertions para ocultar bugs.
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
# Tool Adapters
|
|
2
|
+
|
|
3
|
+
## Objetivo
|
|
4
|
+
|
|
5
|
+
Definir cómo cada herramienta consume el core harness sin duplicar reglas.
|
|
6
|
+
|
|
7
|
+
## Constitución común
|
|
8
|
+
|
|
9
|
+
Todo adapter — Cursor, Codex, Claude, Gemini, GitHub Copilot, OpenCode, Gentle AI, Pi — lee `AGENTS.md` primero, antes de cualquier archivo específico del adapter.
|
|
10
|
+
|
|
11
|
+
```txt
|
|
12
|
+
AGENTS.md is the constitution.
|
|
13
|
+
Adapter files are translations, never replacements.
|
|
14
|
+
If an adapter file and AGENTS.md disagree, AGENTS.md wins.
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Ningún adapter puede:
|
|
18
|
+
|
|
19
|
+
- Declarar una regla que no exista en `AGENTS.md` o `docs/ai/` como si fuera gobernanza propia.
|
|
20
|
+
- Saltarse SDD, TDD, evals o aprobación humana porque su formato nativo no lo soporta bien.
|
|
21
|
+
- Tratar su propia sintaxis, rules, skills o prompts, como más autoritativa que el core.
|
|
22
|
+
|
|
23
|
+
## Core universal
|
|
24
|
+
|
|
25
|
+
La fuente principal siempre es:
|
|
26
|
+
|
|
27
|
+
```txt
|
|
28
|
+
AGENTS.md
|
|
29
|
+
docs/ai/
|
|
30
|
+
docs/skills/
|
|
31
|
+
docs/specs/
|
|
32
|
+
evals/
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Cursor adapter
|
|
36
|
+
|
|
37
|
+
Rutas:
|
|
38
|
+
|
|
39
|
+
```txt
|
|
40
|
+
.cursor/rules/
|
|
41
|
+
.cursor/commands/
|
|
42
|
+
.cursor/agents/
|
|
43
|
+
.cursor/skills/
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Uso:
|
|
47
|
+
|
|
48
|
+
- reglas persistentes
|
|
49
|
+
- comandos de workflow
|
|
50
|
+
- subagentes especializados
|
|
51
|
+
- skills nativas de Cursor
|
|
52
|
+
|
|
53
|
+
No debe contradecir `AGENTS.md`.
|
|
54
|
+
|
|
55
|
+
## Codex adapter
|
|
56
|
+
|
|
57
|
+
Rutas:
|
|
58
|
+
|
|
59
|
+
```txt
|
|
60
|
+
AGENTS.md
|
|
61
|
+
.codex/skills/
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Uso:
|
|
65
|
+
|
|
66
|
+
- Codex App
|
|
67
|
+
- Codex CLI
|
|
68
|
+
- skills reutilizables para SDD/TDD/evals/checkpoint
|
|
69
|
+
|
|
70
|
+
Codex debe leer `AGENTS.md` como fuente universal.
|
|
71
|
+
|
|
72
|
+
## Claude adapter
|
|
73
|
+
|
|
74
|
+
Rutas:
|
|
75
|
+
|
|
76
|
+
```txt
|
|
77
|
+
CLAUDE.md
|
|
78
|
+
.claude/agents/
|
|
79
|
+
.claude/skills/
|
|
80
|
+
.claude/commands/
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Uso:
|
|
84
|
+
|
|
85
|
+
- subagentes de arquitectura/review/debugging
|
|
86
|
+
- skills de workflow
|
|
87
|
+
- comandos reutilizables
|
|
88
|
+
|
|
89
|
+
`CLAUDE.md` debe ser puntero delgado salvo necesidad explícita.
|
|
90
|
+
|
|
91
|
+
## Gemini adapter
|
|
92
|
+
|
|
93
|
+
Rutas:
|
|
94
|
+
|
|
95
|
+
```txt
|
|
96
|
+
GEMINI.md
|
|
97
|
+
.gemini/
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
Uso:
|
|
101
|
+
|
|
102
|
+
- puntero delgado a `AGENTS.md`
|
|
103
|
+
- comandos o contexto específico si la herramienta lo requiere
|
|
104
|
+
|
|
105
|
+
## GitHub Copilot adapter
|
|
106
|
+
|
|
107
|
+
Rutas:
|
|
108
|
+
|
|
109
|
+
```txt
|
|
110
|
+
.github/copilot-instructions.md
|
|
111
|
+
.github/instructions/
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Uso:
|
|
115
|
+
|
|
116
|
+
- instrucciones compactas
|
|
117
|
+
- no duplicar reglas largas
|
|
118
|
+
- apuntar al core
|
|
119
|
+
|
|
120
|
+
## Gentle AI adapter
|
|
121
|
+
|
|
122
|
+
Gentle AI usa el core como fuente de verdad y puede ejecutar:
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
/sdd-init
|
|
126
|
+
gentle-ai skill-registry refresh
|
|
127
|
+
gentle-ai doctor
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
Debe alinearse con:
|
|
131
|
+
|
|
132
|
+
```txt
|
|
133
|
+
docs/ai/spec-driven-development.md
|
|
134
|
+
docs/ai/test-driven-development.md
|
|
135
|
+
docs/ai/evals.md
|
|
136
|
+
docs/skills/
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
## Engram / Graphify adapter
|
|
140
|
+
|
|
141
|
+
- Engram indexa memoria y decisiones.
|
|
142
|
+
- Graphify indexa grafo contextual.
|
|
143
|
+
- Ninguno reemplaza el repo.
|
|
144
|
+
- Si hay contradicción, gana el repo.
|
|
145
|
+
|
|
146
|
+
## OpenCode adapter
|
|
147
|
+
|
|
148
|
+
Rutas:
|
|
149
|
+
|
|
150
|
+
```txt
|
|
151
|
+
.opencode/
|
|
152
|
+
.opencode/agents/
|
|
153
|
+
.opencode/loops/
|
|
154
|
+
opencode.json.sample
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
Uso:
|
|
158
|
+
|
|
159
|
+
- runtime principal CLI
|
|
160
|
+
- ejecución con Gentle AI + DeepSeek
|
|
161
|
+
- agentes por proyecto
|
|
162
|
+
- loops acotados
|
|
163
|
+
- plan/build separation
|
|
164
|
+
- escalación por permisos y límites de pasos
|
|
165
|
+
|
|
166
|
+
Reglas:
|
|
167
|
+
|
|
168
|
+
- OpenCode ejecuta, pero `AGENTS.md` gobierna.
|
|
169
|
+
- `Plan` debe preferirse para análisis sin cambios.
|
|
170
|
+
- `Build` puede implementar con permisos controlados.
|
|
171
|
+
- Subagentes se invocan con `@agent-name`.
|
|
172
|
+
- Loops deben respetar `docs/ai/loop-policy.md`.
|
|
173
|
+
|
|
174
|
+
## Adapter parity rule
|
|
175
|
+
|
|
176
|
+
No adapter is primary by authority.
|
|
177
|
+
|
|
178
|
+
```txt
|
|
179
|
+
OpenCode can be primary by workflow preference.
|
|
180
|
+
Cursor can be primary by IDE preference.
|
|
181
|
+
Codex can be primary by task execution.
|
|
182
|
+
Claude can be primary by reasoning task.
|
|
183
|
+
But AGENTS.md remains governance-primary.
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
Read `docs/ai/adapter-parity.md` before adding or changing adapters.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Trust Policy for Skills, Tools and Packages
|
|
2
|
+
|
|
3
|
+
## Regla central
|
|
4
|
+
|
|
5
|
+
```txt
|
|
6
|
+
No untrusted skill, tool, package or MCP server may run with write, network or shell permissions.
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
## Trust levels
|
|
10
|
+
|
|
11
|
+
| Trust level | Descripción | Permisos |
|
|
12
|
+
|---|---|---|
|
|
13
|
+
| trusted-local | creado y revisado por el equipo | mínimo necesario |
|
|
14
|
+
| trusted-vendored | congelado en repo con revisión | mínimo necesario |
|
|
15
|
+
| trusted-official | fuente oficial verificada | mínimo necesario |
|
|
16
|
+
| experimental | probado en sandbox | read-only por default |
|
|
17
|
+
| untrusted | no revisado | deny |
|
|
18
|
+
|
|
19
|
+
## Deny by default
|
|
20
|
+
|
|
21
|
+
Bloquear por defecto:
|
|
22
|
+
|
|
23
|
+
- scripts descargados dinámicamente
|
|
24
|
+
- paquetes no fijados
|
|
25
|
+
- skills con instrucciones ocultas
|
|
26
|
+
- skills con shell/network sin justificación
|
|
27
|
+
- tools que modifiquen auth/secrets/infra
|
|
28
|
+
- MCPs no revisados
|
|
29
|
+
- prompts que pidan ignorar AGENTS.md
|
|
30
|
+
|
|
31
|
+
## Review checklist
|
|
32
|
+
|
|
33
|
+
- [ ] objetivo claro
|
|
34
|
+
- [ ] no contiene instrucciones ocultas
|
|
35
|
+
- [ ] no pide exfiltrar información
|
|
36
|
+
- [ ] no pide ignorar políticas
|
|
37
|
+
- [ ] no ejecuta shell sin permiso
|
|
38
|
+
- [ ] no accede a red sin permiso
|
|
39
|
+
- [ ] permisos mínimos
|
|
40
|
+
- [ ] versión/ref fija
|
|
41
|
+
- [ ] reviewer humano
|