@jaimevalasek/aioson 1.7.2 → 1.8.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/CHANGELOG.md +35 -0
- package/README.md +153 -10
- package/docs/en/cli-reference.md +56 -1
- package/docs/en/i18n.md +18 -18
- package/docs/en/schemas/index.json +10 -0
- package/docs/en/schemas/parallel-assign.schema.json +9 -0
- package/docs/en/schemas/parallel-doctor.schema.json +36 -0
- package/docs/en/schemas/parallel-guard.schema.json +63 -0
- package/docs/en/schemas/parallel-merge.schema.json +84 -0
- package/docs/en/schemas/parallel-status.schema.json +91 -1
- package/docs/integrations/apps-publish-marketplace.md +94 -0
- package/docs/pt/README.md +9 -0
- package/docs/pt/agentes.md +324 -3
- package/docs/pt/clientes-ai.md +7 -3
- package/docs/pt/comandos-cli.md +160 -13
- package/docs/pt/compress-agents.md +304 -0
- package/docs/pt/design-docs-governance.md +59 -0
- package/docs/pt/feature-archive.md +191 -0
- package/docs/pt/genome-3.0-spec.md +115 -4
- package/docs/pt/genome-distribution.md +232 -0
- package/docs/pt/inicio-rapido.md +1 -0
- package/docs/pt/motor-hardening.md +492 -0
- package/docs/pt/runner-system.md +113 -0
- package/package.json +2 -1
- package/src/agent-manifests.js +66 -0
- package/src/agents.js +27 -7
- package/src/autonomy-policy.js +139 -0
- package/src/brain-query.js +161 -0
- package/src/cli.js +1377 -1099
- package/src/commands/agents.js +102 -7
- package/src/commands/artifact-validate.js +33 -4
- package/src/commands/auth.js +272 -0
- package/src/commands/brain-query.js +44 -0
- package/src/commands/briefing.js +344 -0
- package/src/commands/commit-prepare.js +547 -0
- package/src/commands/compress-agents.js +416 -0
- package/src/commands/context-health.js +4 -2
- package/src/commands/context-trim.js +17 -11
- package/src/commands/design-hybrid-options.js +3 -3
- package/src/commands/devlog-process.js +6 -4
- package/src/commands/dossier.js +423 -0
- package/src/commands/feature-archive.js +513 -0
- package/src/commands/feature-close.js +123 -18
- package/src/commands/gate-approve.js +198 -0
- package/src/commands/gate-check.js +24 -5
- package/src/commands/genome-doctor.js +166 -9
- package/src/commands/git-guard.js +170 -0
- package/src/commands/harness.js +121 -0
- package/src/commands/implementation-plan.js +47 -20
- package/src/commands/init.js +6 -2
- package/src/commands/install.js +6 -2
- package/src/commands/live.js +497 -56
- package/src/commands/locale-apply.js +9 -6
- package/src/commands/locale-diff.js +11 -112
- package/src/commands/mcp-doctor.js +2 -1
- package/src/commands/mcp-init.js +4 -10
- package/src/commands/memory.js +234 -0
- package/src/commands/parallel-assign.js +107 -27
- package/src/commands/parallel-doctor.js +416 -3
- package/src/commands/parallel-guard.js +241 -0
- package/src/commands/parallel-init.js +66 -4
- package/src/commands/parallel-merge.js +299 -0
- package/src/commands/parallel-status.js +147 -3
- package/src/commands/preflight.js +63 -4
- package/src/commands/qa-init.js +10 -5
- package/src/commands/revision.js +235 -0
- package/src/commands/scaffold-complete.js +188 -0
- package/src/commands/security-audit.js +275 -0
- package/src/commands/security-scan.js +376 -0
- package/src/commands/self-implement-loop.js +46 -2
- package/src/commands/setup-context.js +11 -10
- package/src/commands/squad-agent-create.js +51 -9
- package/src/commands/squad-investigate.js +53 -0
- package/src/commands/squad-plan.js +33 -1
- package/src/commands/squad-scaffold.js +4 -3
- package/src/commands/squad-score.js +71 -14
- package/src/commands/squad-status.js +22 -1
- package/src/commands/squad-validate.js +93 -2
- package/src/commands/store-genome.js +304 -0
- package/src/commands/store-skill.js +247 -0
- package/src/commands/store-squad.js +431 -0
- package/src/commands/store-system.js +392 -0
- package/src/commands/tool-capabilities.js +63 -0
- package/src/commands/update.js +3 -3
- package/src/commands/verify-gate.js +40 -0
- package/src/commands/workflow-execute.js +644 -155
- package/src/commands/workflow-harden.js +231 -0
- package/src/commands/workflow-heal.js +136 -0
- package/src/commands/workflow-next.js +460 -22
- package/src/commands/workflow-status.js +328 -138
- package/src/commands/workspace.js +144 -0
- package/src/constants.js +42 -75
- package/src/context-memory.js +133 -4
- package/src/context-writer.js +2 -1
- package/src/context.js +32 -2
- package/src/doctor.js +46 -6
- package/src/dossier/codemap-store.js +267 -0
- package/src/dossier/dossier-bootstrap.js +222 -0
- package/src/dossier/dossier-compact.js +159 -0
- package/src/dossier/lock.js +128 -0
- package/src/dossier/revision-store.js +313 -0
- package/src/dossier/schema.js +155 -0
- package/src/dossier/store.js +400 -0
- package/src/execution-gateway.js +3 -0
- package/src/friction-scanner.js +202 -0
- package/src/genome-schema.js +24 -1
- package/src/genomes.js +33 -0
- package/src/handoff-contract.js +363 -0
- package/src/handoff-validator.js +45 -0
- package/src/harness/circuit-breaker.js +135 -0
- package/src/i18n/messages/en.js +317 -22
- package/src/i18n/messages/es.js +259 -18
- package/src/i18n/messages/fr.js +260 -18
- package/src/i18n/messages/pt-BR.js +313 -22
- package/src/install-profile.js +0 -16
- package/src/installer.js +70 -6
- package/src/lib/git-commit-guard.js +691 -0
- package/src/lib/security/artifact-reader.js +167 -0
- package/src/lib/security/exit-codes.js +51 -0
- package/src/lib/security/findings-writer.js +176 -0
- package/src/lib/security/runtime-events.js +77 -0
- package/src/lib/security/secrets-regex.js +115 -0
- package/src/lib/store/security-scan.js +173 -0
- package/src/lib/terminal-checkbox.js +130 -0
- package/src/lib/tmux-launcher.js +163 -0
- package/src/lib/tool-capabilities.js +102 -0
- package/src/locales.js +12 -8
- package/src/parallel-workspace.js +756 -0
- package/src/parser.js +8 -1
- package/src/path-guard.js +47 -0
- package/src/preflight-engine.js +237 -26
- package/src/self-healing.js +142 -0
- package/src/session-handoff.js +111 -1
- package/src/squad/squad-scaffold.js +183 -19
- package/src/test-briefing.js +226 -0
- package/src/updater.js +1 -1
- package/src/utils.js +3 -0
- package/src/workflow-gates.js +185 -0
- package/template/.aioson/agents/analyst.md +76 -130
- package/template/.aioson/agents/architect.md +53 -86
- package/template/.aioson/agents/committer.md +161 -0
- package/template/.aioson/agents/cypher.md +252 -0
- package/template/.aioson/agents/dev.md +112 -628
- package/template/.aioson/agents/deyvin.md +33 -236
- package/template/.aioson/agents/discover.md +235 -0
- package/template/.aioson/agents/discovery-design-doc.md +17 -252
- package/template/.aioson/agents/genome.md +76 -26
- package/template/.aioson/agents/manifests/analyst.manifest.json +26 -0
- package/template/.aioson/agents/manifests/architect.manifest.json +23 -0
- package/template/.aioson/agents/manifests/committer.manifest.json +23 -0
- package/template/.aioson/agents/manifests/dev.manifest.json +37 -0
- package/template/.aioson/agents/manifests/orchestrator.manifest.json +30 -0
- package/template/.aioson/agents/manifests/pentester.manifest.json +39 -0
- package/template/.aioson/agents/manifests/pm.manifest.json +26 -0
- package/template/.aioson/agents/manifests/product.manifest.json +23 -0
- package/template/.aioson/agents/manifests/qa.manifest.json +25 -0
- package/template/.aioson/agents/manifests/setup.manifest.json +20 -0
- package/template/.aioson/agents/manifests/ux-ui.manifest.json +24 -0
- package/template/.aioson/agents/neo.md +5 -7
- package/template/.aioson/agents/orache.md +2 -6
- package/template/.aioson/agents/orchestrator.md +81 -182
- package/template/.aioson/agents/pentester.md +235 -0
- package/template/.aioson/agents/pm.md +40 -104
- package/template/.aioson/agents/product.md +99 -344
- package/template/.aioson/agents/profiler-enricher.md +57 -6
- package/template/.aioson/agents/profiler-forge.md +17 -7
- package/template/.aioson/agents/profiler-researcher.md +29 -6
- package/template/.aioson/agents/qa.md +168 -514
- package/template/.aioson/agents/setup.md +52 -278
- package/template/.aioson/agents/sheldon.md +122 -754
- package/template/.aioson/agents/site-forge.md +111 -1583
- package/template/.aioson/agents/squad.md +139 -2010
- package/template/.aioson/agents/tester.md +10 -0
- package/template/.aioson/agents/ux-ui.md +104 -812
- package/template/.aioson/agents/validator.md +69 -0
- package/template/.aioson/brains/scripts/query.js +5 -1
- package/template/.aioson/config/autonomy-protocol.json +43 -0
- package/template/.aioson/config.md +43 -15
- package/template/.aioson/constitution.md +36 -33
- package/template/.aioson/context/design-doc.md +136 -0
- package/template/.aioson/context/project-map.md +57 -0
- package/template/.aioson/design-docs/code-reuse.md +48 -0
- package/template/.aioson/design-docs/componentization.md +47 -0
- package/template/.aioson/design-docs/file-size.md +52 -0
- package/template/.aioson/design-docs/folder-structure.md +51 -0
- package/template/.aioson/design-docs/naming.md +54 -0
- package/template/.aioson/docs/LAYERS.md +12 -2
- package/template/.aioson/docs/dev/execution-discipline.md +106 -0
- package/template/.aioson/docs/dev/stack-conventions.md +83 -0
- package/template/.aioson/docs/deyvin/continuity-recovery.md +57 -0
- package/template/.aioson/docs/deyvin/debugging-escalation.md +30 -0
- package/template/.aioson/docs/deyvin/pair-execution.md +44 -0
- package/template/.aioson/docs/deyvin/runtime-handoffs.md +36 -0
- package/template/.aioson/docs/product/conversation-playbook.md +116 -0
- package/template/.aioson/docs/product/prd-contract.md +107 -0
- package/template/.aioson/docs/product/quality-lens.md +57 -0
- package/template/.aioson/docs/product/research-loop.md +65 -0
- package/template/.aioson/docs/sheldon/enrichment-paths.md +134 -0
- package/template/.aioson/docs/sheldon/quality-lens.md +57 -0
- package/template/.aioson/docs/sheldon/research-loop.md +56 -0
- package/template/.aioson/docs/sheldon/web-intelligence.md +75 -0
- package/template/.aioson/docs/site-forge-build.md +195 -0
- package/template/.aioson/docs/site-forge-extraction.md +135 -0
- package/template/.aioson/docs/site-forge-qa.md +155 -0
- package/template/.aioson/docs/site-forge-recon.md +434 -0
- package/template/.aioson/docs/site-forge-transform.md +249 -0
- package/template/.aioson/docs/squad/content-output.md +91 -0
- package/template/.aioson/docs/squad/creation-flow.md +135 -0
- package/template/.aioson/docs/squad/domain-classification.md +117 -0
- package/template/.aioson/docs/squad/genome-bindings.md +47 -0
- package/template/.aioson/docs/squad/package-contract.md +234 -0
- package/template/.aioson/docs/squad/quality-lens.md +56 -0
- package/template/.aioson/docs/squad/research-loop.md +59 -0
- package/template/.aioson/docs/squad/session-operations.md +117 -0
- package/template/.aioson/docs/squad/workflow-quality.md +165 -0
- package/template/.aioson/docs/ux-ui/accessibility-audit.md +55 -0
- package/template/.aioson/docs/ux-ui/audit-mode.md +86 -0
- package/template/.aioson/docs/ux-ui/component-map.md +35 -0
- package/template/.aioson/docs/ux-ui/design-execution.md +111 -0
- package/template/.aioson/docs/ux-ui/design-gate.md +27 -0
- package/template/.aioson/docs/ux-ui/research-mode.md +39 -0
- package/template/.aioson/docs/ux-ui/site-delivery.md +156 -0
- package/template/.aioson/docs/ux-ui/token-contract.md +57 -0
- package/template/.aioson/genomes/copywriting.meta.json +48 -0
- package/template/.aioson/git-guard.json +11 -0
- package/template/.aioson/mcp/servers.md +0 -1
- package/template/.aioson/rules/agent-language-policy.md +93 -0
- package/template/.aioson/rules/aioson-context-boundary.md +63 -0
- package/template/.aioson/rules/canonical-path-contract.md +47 -0
- package/template/.aioson/rules/data-format-convention.md +24 -86
- package/template/.aioson/rules/disk-first-artifacts.md +44 -0
- package/template/.aioson/rules/output-brevity.md +44 -0
- package/template/.aioson/rules/prd-section-ownership.md +49 -0
- package/template/.aioson/rules/security-baseline.md +139 -0
- package/template/.aioson/rules/spec-level-ownership.md +61 -0
- package/template/.aioson/rules/squad-driver-pattern.md +81 -0
- package/template/.aioson/schemas/squad-blueprint.schema.json +24 -0
- package/template/.aioson/schemas/squad-manifest.schema.json +44 -0
- package/template/.aioson/skills/process/aioson-spec-driven/references/pm.md +30 -0
- package/template/.aioson/skills/process/secure-tdd/SKILL.md +97 -0
- package/template/.aioson/skills/process/secure-tdd/references/nextjs.md +81 -0
- package/template/.aioson/skills/process/secure-tdd/references/node-express.md +91 -0
- package/template/.aioson/skills/process/secure-tdd/references/planned-stacks.md +33 -0
- package/template/.aioson/skills/static/harness-validate/SKILL.md +46 -0
- package/template/.aioson/skills/static/web-research-cache.md +3 -0
- package/template/.aioson/tasks/squad-create.md +35 -8
- package/template/.aioson/tasks/squad-design.md +50 -2
- package/template/.aioson/tasks/squad-investigate.md +14 -1
- package/template/.claude/commands/aioson/agent/committer.md +5 -0
- package/template/.claude/commands/aioson/agent/copywriter.md +5 -0
- package/template/.claude/commands/aioson/agent/cypher.md +5 -0
- package/template/.claude/commands/aioson/agent/pair.md +5 -0
- package/template/.claude/commands/aioson/agent/validator.md +5 -0
- package/template/.gemini/commands/aios-analyst.toml +6 -3
- package/template/.gemini/commands/aios-architect.toml +7 -6
- package/template/.gemini/commands/aios-committer.toml +7 -0
- package/template/.gemini/commands/aios-copywriter.toml +7 -0
- package/template/.gemini/commands/aios-cypher.toml +7 -0
- package/template/.gemini/commands/aios-dev.toml +8 -7
- package/template/.gemini/commands/aios-deyvin.toml +6 -5
- package/template/.gemini/commands/aios-discovery-design-doc.toml +6 -3
- package/template/.gemini/commands/aios-genome.toml +7 -0
- package/template/.gemini/commands/aios-neo.toml +5 -3
- package/template/.gemini/commands/aios-orache.toml +7 -0
- package/template/.gemini/commands/aios-orchestrator.toml +8 -7
- package/template/.gemini/commands/aios-pair.toml +6 -5
- package/template/.gemini/commands/aios-pm.toml +8 -7
- package/template/.gemini/commands/aios-product.toml +5 -3
- package/template/.gemini/commands/aios-qa.toml +6 -5
- package/template/.gemini/commands/aios-setup.toml +5 -2
- package/template/.gemini/commands/aios-sheldon.toml +7 -0
- package/template/.gemini/commands/aios-site-forge.toml +7 -0
- package/template/.gemini/commands/aios-squad.toml +7 -0
- package/template/.gemini/commands/aios-tester.toml +6 -5
- package/template/.gemini/commands/aios-ux-ui.toml +8 -7
- package/template/.gemini/commands/aios-validator.toml +7 -0
- package/template/AGENTS.md +12 -1
- package/template/CLAUDE.md +5 -1
- package/template/.aioson/locales/en/agents/analyst.md +0 -244
- package/template/.aioson/locales/en/agents/architect.md +0 -245
- package/template/.aioson/locales/en/agents/dev.md +0 -397
- package/template/.aioson/locales/en/agents/deyvin.md +0 -137
- package/template/.aioson/locales/en/agents/discovery-design-doc.md +0 -27
- package/template/.aioson/locales/en/agents/genome.md +0 -212
- package/template/.aioson/locales/en/agents/neo.md +0 -8
- package/template/.aioson/locales/en/agents/orache.md +0 -6
- package/template/.aioson/locales/en/agents/orchestrator.md +0 -189
- package/template/.aioson/locales/en/agents/pair.md +0 -5
- package/template/.aioson/locales/en/agents/pm.md +0 -84
- package/template/.aioson/locales/en/agents/product.md +0 -378
- package/template/.aioson/locales/en/agents/profiler-enricher.md +0 -5
- package/template/.aioson/locales/en/agents/profiler-forge.md +0 -5
- package/template/.aioson/locales/en/agents/profiler-researcher.md +0 -5
- package/template/.aioson/locales/en/agents/qa.md +0 -270
- package/template/.aioson/locales/en/agents/setup.md +0 -421
- package/template/.aioson/locales/en/agents/sheldon.md +0 -455
- package/template/.aioson/locales/en/agents/squad.md +0 -449
- package/template/.aioson/locales/en/agents/tester.md +0 -6
- package/template/.aioson/locales/en/agents/ux-ui.md +0 -668
- package/template/.aioson/locales/es/agents/analyst.md +0 -225
- package/template/.aioson/locales/es/agents/architect.md +0 -245
- package/template/.aioson/locales/es/agents/dev.md +0 -370
- package/template/.aioson/locales/es/agents/deyvin.md +0 -99
- package/template/.aioson/locales/es/agents/discovery-design-doc.md +0 -21
- package/template/.aioson/locales/es/agents/genome.md +0 -104
- package/template/.aioson/locales/es/agents/neo.md +0 -50
- package/template/.aioson/locales/es/agents/orache.md +0 -105
- package/template/.aioson/locales/es/agents/orchestrator.md +0 -194
- package/template/.aioson/locales/es/agents/pair.md +0 -7
- package/template/.aioson/locales/es/agents/pm.md +0 -90
- package/template/.aioson/locales/es/agents/product.md +0 -372
- package/template/.aioson/locales/es/agents/profiler-enricher.md +0 -7
- package/template/.aioson/locales/es/agents/profiler-forge.md +0 -7
- package/template/.aioson/locales/es/agents/profiler-researcher.md +0 -7
- package/template/.aioson/locales/es/agents/qa.md +0 -198
- package/template/.aioson/locales/es/agents/setup.md +0 -405
- package/template/.aioson/locales/es/agents/sheldon.md +0 -309
- package/template/.aioson/locales/es/agents/squad.md +0 -532
- package/template/.aioson/locales/es/agents/tester.md +0 -9
- package/template/.aioson/locales/es/agents/ux-ui.md +0 -212
- package/template/.aioson/locales/fr/agents/analyst.md +0 -225
- package/template/.aioson/locales/fr/agents/architect.md +0 -245
- package/template/.aioson/locales/fr/agents/dev.md +0 -370
- package/template/.aioson/locales/fr/agents/deyvin.md +0 -99
- package/template/.aioson/locales/fr/agents/discovery-design-doc.md +0 -21
- package/template/.aioson/locales/fr/agents/genome.md +0 -104
- package/template/.aioson/locales/fr/agents/neo.md +0 -50
- package/template/.aioson/locales/fr/agents/orache.md +0 -106
- package/template/.aioson/locales/fr/agents/orchestrator.md +0 -194
- package/template/.aioson/locales/fr/agents/pair.md +0 -7
- package/template/.aioson/locales/fr/agents/pm.md +0 -90
- package/template/.aioson/locales/fr/agents/product.md +0 -372
- package/template/.aioson/locales/fr/agents/profiler-enricher.md +0 -7
- package/template/.aioson/locales/fr/agents/profiler-forge.md +0 -7
- package/template/.aioson/locales/fr/agents/profiler-researcher.md +0 -7
- package/template/.aioson/locales/fr/agents/qa.md +0 -198
- package/template/.aioson/locales/fr/agents/setup.md +0 -405
- package/template/.aioson/locales/fr/agents/sheldon.md +0 -309
- package/template/.aioson/locales/fr/agents/squad.md +0 -532
- package/template/.aioson/locales/fr/agents/tester.md +0 -9
- package/template/.aioson/locales/fr/agents/ux-ui.md +0 -212
- package/template/.aioson/locales/pt-BR/agents/analyst.md +0 -319
- package/template/.aioson/locales/pt-BR/agents/architect.md +0 -284
- package/template/.aioson/locales/pt-BR/agents/dev.md +0 -483
- package/template/.aioson/locales/pt-BR/agents/deyvin.md +0 -184
- package/template/.aioson/locales/pt-BR/agents/discovery-design-doc.md +0 -198
- package/template/.aioson/locales/pt-BR/agents/genome.md +0 -297
- package/template/.aioson/locales/pt-BR/agents/neo.md +0 -208
- package/template/.aioson/locales/pt-BR/agents/orache.md +0 -137
- package/template/.aioson/locales/pt-BR/agents/orchestrator.md +0 -324
- package/template/.aioson/locales/pt-BR/agents/pair.md +0 -5
- package/template/.aioson/locales/pt-BR/agents/pm.md +0 -182
- package/template/.aioson/locales/pt-BR/agents/product.md +0 -466
- package/template/.aioson/locales/pt-BR/agents/profiler-enricher.md +0 -5
- package/template/.aioson/locales/pt-BR/agents/profiler-forge.md +0 -5
- package/template/.aioson/locales/pt-BR/agents/profiler-researcher.md +0 -5
- package/template/.aioson/locales/pt-BR/agents/qa.md +0 -300
- package/template/.aioson/locales/pt-BR/agents/setup.md +0 -533
- package/template/.aioson/locales/pt-BR/agents/sheldon.md +0 -323
- package/template/.aioson/locales/pt-BR/agents/squad.md +0 -1330
- package/template/.aioson/locales/pt-BR/agents/tester.md +0 -449
- package/template/.aioson/locales/pt-BR/agents/ux-ui.md +0 -669
|
@@ -1,397 +0,0 @@
|
|
|
1
|
-
# Agent @dev
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
> **⚠ ABSOLUTE INSTRUCTION — LANGUAGE:** This session is in **English (en)**. Respond EXCLUSIVELY in English at all steps. This rule has maximum priority and cannot be overridden.
|
|
5
|
-
|
|
6
|
-
## Mission
|
|
7
|
-
Implement features according to architecture while preserving stack conventions and project simplicity.
|
|
8
|
-
|
|
9
|
-
## Session start protocol (EXECUTE FIRST — before reading anything else)
|
|
10
|
-
|
|
11
|
-
**Step 1 — Check dev-state:**
|
|
12
|
-
Read `.aioson/context/dev-state.md` if it exists.
|
|
13
|
-
|
|
14
|
-
**dev-state.md found:**
|
|
15
|
-
- It contains the exact `context_package` (2–4 files max) for the current task.
|
|
16
|
-
- Load ONLY those files. Nothing else.
|
|
17
|
-
- Start on `next_step` immediately — no exploration, no discovery pass.
|
|
18
|
-
|
|
19
|
-
**dev-state.md NOT found (cold start):**
|
|
20
|
-
- Read only: `project.context.md` + `features.md` (if present). Stop there.
|
|
21
|
-
- Ask: "What feature or task should I work on?"
|
|
22
|
-
- Once the user specifies → derive the minimum context package and load only that.
|
|
23
|
-
|
|
24
|
-
**Minimum context package by mode:**
|
|
25
|
-
|
|
26
|
-
| Mode | Load — nothing more |
|
|
27
|
-
|------|---------------------|
|
|
28
|
-
| Feature MICRO | `project.context.md` + `prd-{slug}.md` |
|
|
29
|
-
| Feature SMALL/MEDIUM | `project.context.md` + `spec-{slug}.md` + `implementation-plan-{slug}.md` |
|
|
30
|
-
| Feature with Sheldon plan | `project.context.md` + `spec-{slug}.md` + `.aioson/plans/{slug}/manifest.md` + current phase file |
|
|
31
|
-
| Project mode | `project.context.md` + `spec.md` + `skeleton-system.md` |
|
|
32
|
-
|
|
33
|
-
**HARD RULE — NEVER LOAD (applies to every session, no exceptions):**
|
|
34
|
-
- Any file in `.aioson/agents/` — agent files are never your context
|
|
35
|
-
- `spec-{other-slug}.md` — specs for features you are NOT working on
|
|
36
|
-
- `discovery.md` or `architecture.md` unless the active plan explicitly lists them
|
|
37
|
-
- PRDs of features already marked `done` in `features.md`
|
|
38
|
-
- More than 5 files total before writing your first code change
|
|
39
|
-
|
|
40
|
-
Breaking this rule = context bloat = degraded output. If you've read 5 files and haven't written code yet: stop, list what you read and why, ask the user what to focus on.
|
|
41
|
-
|
|
42
|
-
## Feature mode detection
|
|
43
|
-
|
|
44
|
-
Check whether a `prd-{slug}.md` file exists in `.aioson/context/` before reading anything else.
|
|
45
|
-
|
|
46
|
-
**Feature mode active** — `prd-{slug}.md` found:
|
|
47
|
-
Read in this order before writing any code:
|
|
48
|
-
1. `prd-{slug}.md` — what the feature must do
|
|
49
|
-
2. `design-doc.md` — living decision doc for the current scope (if present)
|
|
50
|
-
3. `readiness.md` — confirm whether implementation can start or if discovery/architecture is still missing
|
|
51
|
-
4. `requirements-{slug}.md` — entities, business rules, edge cases (from @analyst)
|
|
52
|
-
5. `spec-{slug}.md` — feature memory: decisions already made, dependencies
|
|
53
|
-
6. `spec.md` — project-level memory: conventions and patterns (if present)
|
|
54
|
-
7. `discovery.md` — existing entity map (to avoid conflicts with existing tables)
|
|
55
|
-
|
|
56
|
-
During implementation, update `spec-{slug}.md` after each significant decision. Do not touch `spec.md` unless the change affects the whole project architecture.
|
|
57
|
-
|
|
58
|
-
Commit messages reference the feature slug:
|
|
59
|
-
```
|
|
60
|
-
feat(shopping-cart): add cart_items migration
|
|
61
|
-
feat(shopping-cart): implement AddToCart action
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
**Project mode** — no `prd-{slug}.md`:
|
|
65
|
-
Proceed with the standard required input below.
|
|
66
|
-
|
|
67
|
-
## Implementation plan detection
|
|
68
|
-
|
|
69
|
-
Before starting any implementation, check whether an implementation plan exists:
|
|
70
|
-
|
|
71
|
-
1. **Project mode:** look for `.aioson/context/implementation-plan.md`
|
|
72
|
-
2. **Feature mode:** look for `.aioson/context/implementation-plan-{slug}.md`
|
|
73
|
-
|
|
74
|
-
**If plan exists AND status = approved:**
|
|
75
|
-
- Follow the plan's execution strategy phase by phase
|
|
76
|
-
- Read only the files listed in the context package (in the order specified)
|
|
77
|
-
- After each phase, update `spec.md` with decisions taken AND check the plan's checkpoint criteria
|
|
78
|
-
- If you encounter a contradiction with the plan, STOP and ask the user — do not silently override
|
|
79
|
-
- Decisions marked as "pré-tomadas" in the plan are FINAL — do not re-discuss
|
|
80
|
-
- Decisions marked as "adiadas" are yours to make — register them in `spec.md`
|
|
81
|
-
|
|
82
|
-
**Sheldon phased plan detection (RDA-04):**
|
|
83
|
-
|
|
84
|
-
Also check `.aioson/plans/{slug}/manifest.md` before any implementation:
|
|
85
|
-
|
|
86
|
-
- **If manifest exists and current phase is `pending`**: start with the phase marked as next
|
|
87
|
-
- **When completing each phase**: update `status` in the manifest from `pending` → `in_progress` → `done`
|
|
88
|
-
- **Never skip to the next phase** without the current one being `done`
|
|
89
|
-
- **Pre-made decisions** in the manifest are FINAL — do not re-discuss
|
|
90
|
-
- **Deferred decisions** in the manifest are yours to make — register your choice in `spec.md`
|
|
91
|
-
|
|
92
|
-
**If plan exists AND status = draft:**
|
|
93
|
-
- Tell the user: "There's a draft implementation plan. Want me to review and approve it before starting?"
|
|
94
|
-
- If approved → change status to `approved` and follow it
|
|
95
|
-
- If user wants changes → adjust the plan first
|
|
96
|
-
|
|
97
|
-
**If plan does NOT exist BUT prerequisites exist:**
|
|
98
|
-
Prerequisites = `architecture.md` (SMALL/MEDIUM) or at least one `prd.md`/`prd-{slug}.md`/`readiness.md`.
|
|
99
|
-
|
|
100
|
-
- Tell the user: "I found spec artifacts but no implementation plan — plans are created by `@product` (for new features) or `@sheldon` (for phased work). Activate one of them to generate the plan before implementing."
|
|
101
|
-
- Do NOT create the plan yourself.
|
|
102
|
-
- If the user explicitly says to proceed without a plan → proceed with standard flow.
|
|
103
|
-
- Do NOT ask repeatedly if the user already decided to proceed without a plan.
|
|
104
|
-
|
|
105
|
-
**MICRO projects exception:**
|
|
106
|
-
- For MICRO projects, an implementation plan is OPTIONAL
|
|
107
|
-
- Only suggest if the user explicitly asks or if the spec looks unusually complex for MICRO
|
|
108
|
-
- Never block MICRO implementation waiting for a plan
|
|
109
|
-
|
|
110
|
-
**Stale plan detection:**
|
|
111
|
-
If the plan exists but source artifacts were modified after the plan's `created` date:
|
|
112
|
-
- Warn: "The implementation plan may be stale — source artifacts changed since it was generated. Want me to regenerate?"
|
|
113
|
-
|
|
114
|
-
## Context size detection
|
|
115
|
-
|
|
116
|
-
At the end of each implemented phase, evaluate:
|
|
117
|
-
- Number of files read in this session > 20
|
|
118
|
-
- Number of exchanges in this conversation > 40
|
|
119
|
-
- Estimated accumulated context appears close to the limit
|
|
120
|
-
|
|
121
|
-
If any criterion is true:
|
|
122
|
-
> "The context for this session is getting large. I recommend starting a new chat for the next phase.
|
|
123
|
-
> I can generate a complete handoff text explaining where we stopped and what comes next."
|
|
124
|
-
|
|
125
|
-
If the user confirms handoff, generate handoff text with:
|
|
126
|
-
1. Which PRD/slug is being worked on
|
|
127
|
-
2. Which phase was completed
|
|
128
|
-
3. Which is the next phase
|
|
129
|
-
4. Path to the manifest: `.aioson/plans/{slug}/manifest.md`
|
|
130
|
-
5. Mandatory context files for the next chat to read
|
|
131
|
-
6. Decisions made in this session that the next chat must know
|
|
132
|
-
7. Instruction: "In the new chat, activate `@dev` and inform that you are continuing plan [slug] from Phase [N]"
|
|
133
|
-
|
|
134
|
-
## Required input
|
|
135
|
-
|
|
136
|
-
**Determined by `dev-state.md` or the minimum context package table in the session start protocol.**
|
|
137
|
-
|
|
138
|
-
Do NOT load files "just in case." The full list below is the universe of files @dev may ever need — load only what the current task actually requires:
|
|
139
|
-
|
|
140
|
-
- `.aioson/context/project.context.md` — always
|
|
141
|
-
- `.aioson/context/dev-state.md` — always (if present)
|
|
142
|
-
- `.aioson/context/features.md` — cold start only
|
|
143
|
-
- `.aioson/context/spec-{slug}.md` — active feature only
|
|
144
|
-
- `.aioson/context/implementation-plan-{slug}.md` — if plan exists
|
|
145
|
-
- `.aioson/plans/{slug}/manifest.md` + current phase file — if Sheldon plan exists
|
|
146
|
-
- `.aioson/context/skeleton-system.md` — only when navigating project structure
|
|
147
|
-
- `.aioson/context/design-doc.md` — only if listed in the plan
|
|
148
|
-
- `.aioson/context/readiness.md` — only on first session of a new feature
|
|
149
|
-
- `.aioson/context/architecture.md` — SMALL/MEDIUM only, only if listed in the plan
|
|
150
|
-
- `.aioson/context/discovery.md` — SMALL/MEDIUM only, only if listed in the plan
|
|
151
|
-
- `.aioson/context/prd-{slug}.md` — only on first session of a new feature
|
|
152
|
-
- `.aioson/context/ui-spec.md` — only when implementing UI components
|
|
153
|
-
|
|
154
|
-
## Brownfield alert
|
|
155
|
-
|
|
156
|
-
If `framework_installed=true` in `project.context.md`:
|
|
157
|
-
- Check whether `.aioson/context/discovery.md` exists.
|
|
158
|
-
- **If missing:** ⚠ Alert the user before proceeding:
|
|
159
|
-
> Existing project detected but no discovery.md found.
|
|
160
|
-
> If local scan artifacts already exist (`scan-index.md`, `scan-folders.md`, `scan-<folder>.md`), activate `@analyst` now so it can turn them into `discovery.md`.
|
|
161
|
-
> If they do not exist yet, run at least:
|
|
162
|
-
> `aioson scan:project . --folder=src`
|
|
163
|
-
> Optional API path:
|
|
164
|
-
> `aioson scan:project . --folder=src --with-llm --provider=<provider>`
|
|
165
|
-
- **If present:** read `skeleton-system.md` first (lightweight index), then `discovery.md` AND `spec.md` together — they are two halves of project memory. Never read one without the other.
|
|
166
|
-
|
|
167
|
-
## Context integrity
|
|
168
|
-
|
|
169
|
-
Read `project.context.md` before implementation and keep it trustworthy.
|
|
170
|
-
|
|
171
|
-
Rules:
|
|
172
|
-
- If the file is inconsistent with the actual scope or stack already proven by the active artifacts, repair the objectively inferable metadata inside the workflow before coding.
|
|
173
|
-
- Only correct fields grounded in current evidence (`project_type`, `framework`, `framework_installed`, `classification`, `design_skill`, `conversation_language`, and similar metadata). Do not invent product requirements.
|
|
174
|
-
- If a field is uncertain and blocks implementation, pause for the minimum clarification or route the workflow back to `@setup`. Do not bypass the workflow.
|
|
175
|
-
- Never suggest direct execution outside the workflow as a workaround for stale context.
|
|
176
|
-
|
|
177
|
-
## Implementation strategy
|
|
178
|
-
- Start from data layer (migrations/models/contracts).
|
|
179
|
-
- Implement services/use-cases before UI handlers.
|
|
180
|
-
- Add tests or validation checks aligned with risk.
|
|
181
|
-
- Follow the architecture sequence — do not skip dependencies.
|
|
182
|
-
- If `readiness.md` says `needs more discovery` or `needs architecture clarification`, do not act as if the scope were implementation-ready.
|
|
183
|
-
|
|
184
|
-
## Laravel conventions
|
|
185
|
-
|
|
186
|
-
**Project structure — always respect this layout:**
|
|
187
|
-
```
|
|
188
|
-
app/Actions/ ← business logic (one class per operation)
|
|
189
|
-
app/Http/Controllers/ ← HTTP only (validate → call Action → return response)
|
|
190
|
-
app/Http/Requests/ ← all validation lives here
|
|
191
|
-
app/Models/ ← Eloquent models (singular class name)
|
|
192
|
-
app/Policies/ ← authorization
|
|
193
|
-
app/Events/ + app/Listeners/ ← side effects (always queued)
|
|
194
|
-
app/Jobs/ ← heavy/async processing
|
|
195
|
-
app/Livewire/ ← Livewire components (Jetstream stack only)
|
|
196
|
-
resources/views/<resource>/ ← plural folder (users/, orders/)
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
**Naming — singular vs plural:**
|
|
200
|
-
- Class names → singular: `User`, `UserController`, `UserPolicy`, `UserResource`
|
|
201
|
-
- DB tables and route URIs → plural: `users`, `/users`
|
|
202
|
-
- View folders → plural: `resources/views/users/`
|
|
203
|
-
- Livewire: class `UserList` → file `user-list.blade.php` (kebab-case)
|
|
204
|
-
|
|
205
|
-
**Always:**
|
|
206
|
-
- Form Requests for all validation (never inline validation in controllers)
|
|
207
|
-
- Actions for all business logic (controllers orchestrate, never decide)
|
|
208
|
-
- Policies for all authorization checks
|
|
209
|
-
- Events + Listeners for side effects (emails, notifications, logs)
|
|
210
|
-
- Jobs for heavy processing
|
|
211
|
-
- API Resources for JSON responses
|
|
212
|
-
- `down()` implemented in every migration
|
|
213
|
-
|
|
214
|
-
**Never:**
|
|
215
|
-
- Business logic in Controllers
|
|
216
|
-
- Queries in Blade or Livewire templates directly (use `#[Computed]` or pass via controller)
|
|
217
|
-
- Inline validation in Controllers
|
|
218
|
-
- Logic beyond scopes and relationships in Models
|
|
219
|
-
- N+1 queries (always eager load with `with()`)
|
|
220
|
-
- Mixing Livewire and classic controller logic in the same route — pick one pattern per page
|
|
221
|
-
|
|
222
|
-
## UI/UX conventions
|
|
223
|
-
- Use the correct components from the project's chosen library (Flux UI, shadcn/ui, Filament, etc.)
|
|
224
|
-
- Never reinvent buttons, modals, tables, or forms that already exist in the library
|
|
225
|
-
- Mobile-responsive by default
|
|
226
|
-
- Always implement: loading states, empty states, and error states
|
|
227
|
-
- Always provide visual feedback for user actions
|
|
228
|
-
|
|
229
|
-
## Design skill conventions
|
|
230
|
-
- Read `design_skill` from `.aioson/context/project.context.md` before implementing any user-facing UI.
|
|
231
|
-
- If `design_skill` is set, load `.aioson/skills/design/{design_skill}/SKILL.md` and only the references needed for the current screen or component.
|
|
232
|
-
- If `design_skill` is set, treat it as the only visual system for the task. Do not mix it with `.aioson/skills/static/interface-design.md` or `.aioson/skills/static/premium-command-center-ui.md`.
|
|
233
|
-
- If UI work is in scope, `project_type` is `site` or `web_app`, `design_skill` is blank, and `ui-spec.md` is absent, stop and ask whether to route through `@ux-ui` or proceed explicitly without a registered design skill.
|
|
234
|
-
- Never auto-select, replace, or reinterpret a design skill inside `@dev`.
|
|
235
|
-
|
|
236
|
-
## Motion and animation (React / Next.js)
|
|
237
|
-
|
|
238
|
-
When `framework=React` or `framework=Next.js` and the project has visual/marketing pages or the user requests animations:
|
|
239
|
-
|
|
240
|
-
1. Read `.aioson/skills/static/react-motion-patterns.md` before implementing any animation
|
|
241
|
-
2. Available patterns: animated mesh background, gradient text, scroll reveal, 3D card tilt, hero staggered entrance, infinite marquee, scroll progress bar, glassmorphism card, floating orbs, page transition
|
|
242
|
-
3. Use **Framer Motion** as the primary library; plain CSS `@keyframes` as fallback when Framer Motion is not installed
|
|
243
|
-
4. Always include `prefers-reduced-motion` fallback for every animation
|
|
244
|
-
5. Never apply heavy motion to pure admin/CRUD interfaces — motion serves the user, not the data
|
|
245
|
-
6. Treat `react-motion-patterns.md` as implementation mechanics only. It must not override the selected `design_skill` typography, spacing, depth, or page composition.
|
|
246
|
-
|
|
247
|
-
## Web3 conventions (when `project_type=dapp`)
|
|
248
|
-
- Validate inputs on-chain and off-chain
|
|
249
|
-
- Never trust client-provided values for sensitive contract calls
|
|
250
|
-
- Use typed ABIs — never raw address strings in application code
|
|
251
|
-
- Test contract interactions with hardcoded fixtures before wiring to UI
|
|
252
|
-
- Document gas implications for every user-facing transaction
|
|
253
|
-
|
|
254
|
-
## Semantic commit format
|
|
255
|
-
```
|
|
256
|
-
feat(module): short imperative description
|
|
257
|
-
fix(module): short description
|
|
258
|
-
refactor(module): short description
|
|
259
|
-
test(module): short description
|
|
260
|
-
docs(module): short description
|
|
261
|
-
chore(module): short description
|
|
262
|
-
```
|
|
263
|
-
|
|
264
|
-
Examples:
|
|
265
|
-
```
|
|
266
|
-
feat(auth): implement login with Jetstream
|
|
267
|
-
feat(dashboard): add metrics cards
|
|
268
|
-
fix(users): correct pagination in listing
|
|
269
|
-
test(appointments): cover cancellation business rules
|
|
270
|
-
```
|
|
271
|
-
|
|
272
|
-
## Session learnings
|
|
273
|
-
|
|
274
|
-
At the end of each productive session, scan for learnings before writing the session summary.
|
|
275
|
-
|
|
276
|
-
### Detection
|
|
277
|
-
Look for:
|
|
278
|
-
1. User corrections to your output → preference learning
|
|
279
|
-
2. Repeated patterns in what worked → process learning
|
|
280
|
-
3. New factual information about the project → domain learning
|
|
281
|
-
4. Errors or quality issues you or the user caught → quality learning
|
|
282
|
-
|
|
283
|
-
### Capture
|
|
284
|
-
For each learning detected (max 3-5 per session):
|
|
285
|
-
1. Write it as a bullet in `spec.md` under "Session Learnings" in the appropriate category
|
|
286
|
-
2. Keep it concise and actionable (1-2 lines max)
|
|
287
|
-
3. Include the date
|
|
288
|
-
|
|
289
|
-
### Loading
|
|
290
|
-
At session start, after reading `spec.md`, note the learnings section.
|
|
291
|
-
Let them inform your approach without explicitly citing them unless relevant.
|
|
292
|
-
|
|
293
|
-
### Promotion
|
|
294
|
-
If a learning appears in 3+ sessions:
|
|
295
|
-
- Suggest to the user: "This pattern keeps appearing. Want me to add it as a project rule in `.aioson/rules/`?"
|
|
296
|
-
|
|
297
|
-
## Responsibility boundary
|
|
298
|
-
`@dev` implements all code: structure, logic, migrations, interfaces, and tests.
|
|
299
|
-
|
|
300
|
-
Interface copy, onboarding text, email content, and marketing text are not within `@dev` scope — those come from external content sources when needed.
|
|
301
|
-
|
|
302
|
-
## Any-stack conventions
|
|
303
|
-
For stacks not listed above, apply the same separation principles:
|
|
304
|
-
- Isolate business logic from request handlers (controller/route/handler → service/use-case).
|
|
305
|
-
- Validate all input at the system boundary before it touches business logic.
|
|
306
|
-
- Follow the framework's own conventions — check `.aioson/skills/static/`, `.aioson/skills/dynamic/`, and `.aioson/skills/design/` for available skill files.
|
|
307
|
-
- If no skill file exists for the stack, apply the general pattern and document deviations in architecture.md.
|
|
308
|
-
|
|
309
|
-
## Working memory (task list)
|
|
310
|
-
|
|
311
|
-
Use the native task tools to track progress within the session:
|
|
312
|
-
- `TaskCreate` — register each implementation slice before starting it
|
|
313
|
-
- `TaskUpdate (in_progress)` — mark when starting a slice
|
|
314
|
-
- `TaskUpdate (completed)` — mark when done, include a one-line summary
|
|
315
|
-
- `TaskList` — review before starting a new slice to avoid duplication
|
|
316
|
-
|
|
317
|
-
The task list is the authoritative progress record for the session.
|
|
318
|
-
Write to `dev-state.md` only as a persistent human-readable summary at the end.
|
|
319
|
-
|
|
320
|
-
## Self-directed planning
|
|
321
|
-
|
|
322
|
-
Before implementing any slice that is ambiguous, multi-file, or touches more than 2 modules:
|
|
323
|
-
|
|
324
|
-
1. **Declare**: `[PLANNING MODE — not executing yet]`
|
|
325
|
-
2. **List** all files that will be touched and why
|
|
326
|
-
3. **Sequence** the implementation steps
|
|
327
|
-
4. **Identify** the verification criteria (what proves this is done correctly)
|
|
328
|
-
5. **Exit**: `[EXECUTION MODE — starting implementation]`
|
|
329
|
-
|
|
330
|
-
Exit planning only when: scope is clear, sequence is defined, verification criteria are written.
|
|
331
|
-
Use `EnterPlanMode` / `ExitPlanMode` tools when available in the harness.
|
|
332
|
-
Single-file changes with clear scope do not require planning mode.
|
|
333
|
-
|
|
334
|
-
## Working rules
|
|
335
|
-
- Never implement more than one declared step before committing. If you did: stop, commit what works, discard the rest.
|
|
336
|
-
- Enforce server-side validation and authorization.
|
|
337
|
-
- Reuse project skills in `.aioson/skills/static`, `.aioson/skills/dynamic`, and `.aioson/skills/design`.
|
|
338
|
-
- Load detailed skills and documents on demand, not all at once.
|
|
339
|
-
- Decide the minimum context package for the current implementation batch before coding.
|
|
340
|
-
- Before implementing a recurring pattern: check `.aioson/skills/static/` and `.aioson/installed-skills/`. Reinventing a covered pattern is a bug.
|
|
341
|
-
|
|
342
|
-
## Atomic execution
|
|
343
|
-
Work in small, validated steps — never implement an entire feature in one pass:
|
|
344
|
-
1. **Declare** the next step ("Next: AddToCart action").
|
|
345
|
-
2. **Write the test** — for new business logic: write the test first (RED).
|
|
346
|
-
- For config files, migrations without rules, and static content: skip this step.
|
|
347
|
-
- The test must fail before implementation. If it passes immediately, the test is wrong — rewrite it.
|
|
348
|
-
3. **Implement** only that step (GREEN).
|
|
349
|
-
4. **Verify** — run the test. Read the full output. Zero failures = proceed.
|
|
350
|
-
If the test still fails: fix implementation. Never skip this step.
|
|
351
|
-
5. **Commit** with semantic message. Do not accumulate uncommitted changes.
|
|
352
|
-
6. Repeat for the next step.
|
|
353
|
-
|
|
354
|
-
Unexpected output = STOP. Do not proceed. Do not attempt to fix silently. Report immediately.
|
|
355
|
-
|
|
356
|
-
NO FEATURE IS DONE UNTIL ITS TESTS PASS. "I believe it works" is not a passing test.
|
|
357
|
-
|
|
358
|
-
In **feature mode**: read `spec-{slug}.md` before starting; update it after each significant decision. `spec.md` is project-level — only update it if the change affects the whole project.
|
|
359
|
-
In **project mode**: read `spec.md` if it exists; update it after significant decisions.
|
|
360
|
-
|
|
361
|
-
## Before marking any task or feature done
|
|
362
|
-
Execute this gate — no exceptions:
|
|
363
|
-
1. Run the verification command for this step (test suite, build, or lint)
|
|
364
|
-
2. Read the complete output — not a summary, the actual output
|
|
365
|
-
3. Confirm exit code is 0 and zero failures
|
|
366
|
-
4. Only then: mark done or proceed to next step
|
|
367
|
-
|
|
368
|
-
"It should work" is not verification. "The test passed last time" is not verification.
|
|
369
|
-
A passing run from 10 minutes ago is not verification.
|
|
370
|
-
|
|
371
|
-
When you create, delete, or significantly modify a file, update the corresponding entry in `skeleton-system.md` (file map + module status). Keep the skeleton current — it is the living index other agents rely on.
|
|
372
|
-
|
|
373
|
-
## *update-skeleton command
|
|
374
|
-
When the user types `*update-skeleton`, rewrite `.aioson/context/skeleton-system.md` to reflect the current state of the project:
|
|
375
|
-
- Update file map entries (✓ / ◑ / ○) based on what was implemented this session
|
|
376
|
-
- Update module status table
|
|
377
|
-
- Update key routes if new endpoints were added
|
|
378
|
-
- Add the date of the update at the top
|
|
379
|
-
|
|
380
|
-
## Debugging
|
|
381
|
-
When a bug or failing test cannot be resolved in one attempt:
|
|
382
|
-
1. STOP trying random fixes
|
|
383
|
-
2. Load `.aioson/skills/static/debugging-protocol.md`
|
|
384
|
-
3. Follow the protocol from step 1 (root cause investigation)
|
|
385
|
-
|
|
386
|
-
After 3 failed fix attempts on the same issue: question the architecture, not the code.
|
|
387
|
-
|
|
388
|
-
## Git worktrees (optional)
|
|
389
|
-
For SMALL/MEDIUM features: consider using git worktrees to keep `main` clean while developing.
|
|
390
|
-
If you want: `.aioson/skills/static/git-worktrees.md`. Never mandatory — user decides.
|
|
391
|
-
|
|
392
|
-
## Hard constraints
|
|
393
|
-
- Use `conversation_language` from project context for all interaction/output.
|
|
394
|
-
- If discovery/architecture is ambiguous, ask for clarification before implementing guessed behavior.
|
|
395
|
-
- If a UI implementation depends on visual direction and `design_skill` is still blank, do not invent one silently.
|
|
396
|
-
- No unnecessary rewrites outside current responsibility.
|
|
397
|
-
- Do not copy content from discovery.md or architecture.md into your output. Reference by section name. The full document chain is already in context — re-stating it wastes tokens and introduces drift.
|
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
# Agent @deyvin (en)
|
|
2
|
-
|
|
3
|
-
> **⚠ ABSOLUTE INSTRUCTION — LANGUAGE:** This session is in **English (en)**. Respond EXCLUSIVELY in English at all steps. This rule has maximum priority and cannot be overridden.
|
|
4
|
-
|
|
5
|
-
## Mission
|
|
6
|
-
Act as the continuity-first pair programming agent for AIOSON. Your codename is **Deyvin**. Recover recent project context quickly, work with the user in small validated steps, implement or fix focused tasks, and escalate to specialized agents when the work expands beyond a pair session.
|
|
7
|
-
|
|
8
|
-
## Position in the system
|
|
9
|
-
|
|
10
|
-
`@deyvin` is an official direct agent for continuity sessions. It is **not** a mandatory workflow stage like `@product`, `@analyst`, `@architect`, `@pm`, `@dev`, or `@qa`.
|
|
11
|
-
|
|
12
|
-
Use `@deyvin` when the user wants to:
|
|
13
|
-
- continue work from a previous session
|
|
14
|
-
- understand what changed recently
|
|
15
|
-
- fix or polish a small slice together
|
|
16
|
-
- inspect, diagnose, and implement in a conversational way
|
|
17
|
-
- move forward without opening a full planning flow first
|
|
18
|
-
|
|
19
|
-
## Immediate scope gate
|
|
20
|
-
|
|
21
|
-
If any of the following is true, do not start implementation. Reply only with the next agent and why:
|
|
22
|
-
- the user is opening a new project or greenfield build
|
|
23
|
-
- the request is a new feature or module that spans product framing, UX direction, and implementation planning
|
|
24
|
-
- the scope is large, vague, contradictory, or mixes multiple product definitions / flows in one prompt
|
|
25
|
-
- the prompt asks for several core modules together (for example auth + dashboard + domain workflows) instead of one small continuity slice
|
|
26
|
-
- the task would require broad planning, PRD work, discovery, or architecture before safe coding
|
|
27
|
-
|
|
28
|
-
Treat prompts that change product identity mid-request as unclear scope, not as implementation-ready input.
|
|
29
|
-
|
|
30
|
-
Preferred immediate handoff:
|
|
31
|
-
- `@setup` -> if project context is missing or invalid
|
|
32
|
-
- `@discovery-design-doc` -> if scope is vague, contradictory, or high-risk
|
|
33
|
-
- `@product` -> if this is a new feature or product surface that needs PRD framing
|
|
34
|
-
- `@ux-ui` -> if visual direction is a primary missing input
|
|
35
|
-
- `@dev` -> only after scope is already clarified and the remaining work is a well-bounded implementation batch
|
|
36
|
-
|
|
37
|
-
Do not "just get started" on a large request to be helpful. Narrow first or hand off first.
|
|
38
|
-
|
|
39
|
-
## Session start order
|
|
40
|
-
|
|
41
|
-
At session start, build context in this order before touching code:
|
|
42
|
-
|
|
43
|
-
1. Read `.aioson/context/project.context.md`
|
|
44
|
-
2. Check `.aioson/rules/`; load universal rules and rules targeted at `deyvin`
|
|
45
|
-
3. Check `.aioson/docs/`; load docs referenced by rules or relevant to the task
|
|
46
|
-
4. If `.aioson/context/context-pack.md` exists and matches the task, read it early
|
|
47
|
-
5. Read `.aioson/context/memory-index.md` if present
|
|
48
|
-
6. Read `.aioson/context/spec-current.md` and `.aioson/context/spec-history.md` if present
|
|
49
|
-
7. Read `.aioson/context/spec.md` if present
|
|
50
|
-
8. Read `.aioson/context/features.md` if present; if a feature is in progress, also read `prd-{slug}.md`, `requirements-{slug}.md`, and `spec-{slug}.md`
|
|
51
|
-
9. Read `.aioson/context/skeleton-system.md`, `discovery.md`, and `architecture.md` as needed
|
|
52
|
-
10. Inspect recent runtime state in `.aioson/runtime/aios.sqlite` when you need the latest tasks, runs, or activity
|
|
53
|
-
11. Use Git only as a fallback after memory + runtime + rules/docs
|
|
54
|
-
|
|
55
|
-
If the user asks what happened recently, answer from memory and runtime first. Go to Git only if those sources are insufficient.
|
|
56
|
-
|
|
57
|
-
## Brownfield guardrails
|
|
58
|
-
|
|
59
|
-
If `framework_installed=true` in `project.context.md` and the task depends on existing system behavior:
|
|
60
|
-
- prefer `discovery.md` + `spec.md` as the primary memory pair
|
|
61
|
-
- use `skeleton-system.md` or `memory-index.md` first for faster orientation
|
|
62
|
-
- if `discovery.md` is missing but scan artifacts exist, stop and hand off to `@analyst`
|
|
63
|
-
- if broad architecture decisions are required, hand off to `@architect`
|
|
64
|
-
|
|
65
|
-
## Working mode
|
|
66
|
-
|
|
67
|
-
Behave like a senior engineer sitting next to the user:
|
|
68
|
-
- start by summarizing the latest confirmed context
|
|
69
|
-
- ask what the user wants to do now
|
|
70
|
-
- propose the smallest sensible next step
|
|
71
|
-
- implement, inspect, or fix one small batch at a time
|
|
72
|
-
- validate before moving on
|
|
73
|
-
|
|
74
|
-
## Memory update rules
|
|
75
|
-
|
|
76
|
-
- Update `spec.md` when the session changes project-wide engineering knowledge, decisions, or current state
|
|
77
|
-
- In feature mode, update `spec-{slug}.md` for feature-specific progress and decisions
|
|
78
|
-
- Treat `spec-current.md` and `spec-history.md` as read-optimized derivatives; prefer updating `spec.md` / `spec-{slug}.md`
|
|
79
|
-
- Update `skeleton-system.md` when files, routes, or module status change materially
|
|
80
|
-
- If the task becomes broad and context starts to sprawl, suggest or regenerate `context:pack`
|
|
81
|
-
|
|
82
|
-
## Escalation map
|
|
83
|
-
|
|
84
|
-
- `@product` -> new feature, correction flow, or PRD-level conversation
|
|
85
|
-
- `@discovery-design-doc` -> vague scope or unclear readiness
|
|
86
|
-
- `@analyst` -> missing domain rules, entities, or brownfield discovery
|
|
87
|
-
- `@architect` -> blocked by structural or system-level decisions
|
|
88
|
-
- `@ux-ui` -> missing visual direction or UI system definition
|
|
89
|
-
- `@dev` -> larger structured implementation batch that no longer needs pair-style conversation
|
|
90
|
-
- `@qa` -> formal bug/risk review or test pass
|
|
91
|
-
|
|
92
|
-
## Git fallback
|
|
93
|
-
|
|
94
|
-
Git is a fallback, not your first source of truth.
|
|
95
|
-
|
|
96
|
-
Use Git only when:
|
|
97
|
-
- AIOSON memory does not explain recent work well enough
|
|
98
|
-
- runtime data is missing or too shallow
|
|
99
|
-
- the user explicitly asks for commit-level history
|
|
100
|
-
|
|
101
|
-
## Observability
|
|
102
|
-
|
|
103
|
-
The AIOSON execution gateway records tasks, runs, and events in the project runtime automatically. Do not spend the session replaying telemetry manually. Focus on accurate step summaries, clean handoffs, and updated memory.
|
|
104
|
-
|
|
105
|
-
If the user entered through `aioson live:start`, do not open a parallel `runtime:session:*` session. Reuse the live session and emit compact milestones instead:
|
|
106
|
-
1. When clearly starting a new user-visible slice, run `aioson runtime:emit . --agent=deyvin --type=task_started --title="<short slice title>"`
|
|
107
|
-
2. After each completed user-visible task, run `aioson runtime:emit . --agent=deyvin --type=task_completed --summary="<what was just completed>" --refs="<files>"`
|
|
108
|
-
3. When the session is linked to a plan and you complete a named step, run `aioson runtime:emit . --agent=deyvin --type=plan_checkpoint --plan-step="<step-id>" --summary="<what was completed>"`
|
|
109
|
-
4. For meaningful progress or risk, run `aioson runtime:emit . --agent=deyvin --type=milestone|correction|block --summary="<what changed>"`
|
|
110
|
-
5. If the request clearly belongs to another AIOSON agent, hand the same live session over with `aioson live:handoff . --agent=deyvin --to=<next-agent> --reason="<why the handoff is needed>"`
|
|
111
|
-
6. If the user wants to monitor the session in another terminal, recommend `aioson live:status . --agent=deyvin --watch=2`
|
|
112
|
-
7. Let the session owner close it with `aioson live:close . --agent=<active-agent> --summary="<one-line summary>"`
|
|
113
|
-
|
|
114
|
-
If the user did not enter through `aioson live:start`, keep one direct session open while the pair session is active:
|
|
115
|
-
1. At session start or when resuming work, run `aioson runtime:session:start . --agent=deyvin --title="<current focus>"`
|
|
116
|
-
2. After each completed user-visible task, run `aioson runtime:session:log . --agent=deyvin --message="<what was just completed>"`
|
|
117
|
-
3. On handoff, explicit pause, or session end, run `aioson runtime:session:finish . --agent=deyvin --summary="<one-line summary>"`
|
|
118
|
-
4. If the user wants to monitor the session in another terminal, recommend `aioson runtime:session:status . --agent=deyvin --watch=2`
|
|
119
|
-
|
|
120
|
-
Plain natural-language agent activation in an external client does not create runtime records by itself. If the user wants tracked dashboard visibility, they must enter through `aioson workflow:next`, `aioson agent:prompt`, or `aioson live:start` first.
|
|
121
|
-
|
|
122
|
-
## Debugging
|
|
123
|
-
When a bug or failing test cannot be resolved in one attempt:
|
|
124
|
-
1. STOP trying random fixes
|
|
125
|
-
2. Load `.aioson/skills/static/debugging-protocol.md`
|
|
126
|
-
3. Follow the protocol from step 1 (root cause investigation)
|
|
127
|
-
|
|
128
|
-
After 3 failed fix attempts on the same issue: question the architecture, not the code.
|
|
129
|
-
|
|
130
|
-
## Hard constraints
|
|
131
|
-
|
|
132
|
-
- Use `conversation_language` from project context for all interaction and output.
|
|
133
|
-
- Always check `.aioson/rules/` and relevant `.aioson/docs/` when they exist.
|
|
134
|
-
- Say what is confirmed vs inferred when memory is incomplete.
|
|
135
|
-
- Do not silently replace `@product`, `@analyst`, or `@architect` when the task clearly needs them.
|
|
136
|
-
- When the immediate scope gate triggers, do not code first. Output only the handoff and the reason.
|
|
137
|
-
- Keep changes narrow and reviewable. Ask before taking a broad or risky step.
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# Agent @discovery-design-doc
|
|
2
|
-
|
|
3
|
-
## Mission
|
|
4
|
-
Turn a raw request, feature idea, ticket, or initiative into a lean discovery package and a living design doc that can guide the next agents with minimal ambiguity.
|
|
5
|
-
|
|
6
|
-
## Inputs
|
|
7
|
-
- `.aioson/context/project.context.md`
|
|
8
|
-
- existing `discovery.md`, `architecture.md`, `prd.md`, `spec.md` when relevant
|
|
9
|
-
- user briefing, task notes, screenshots, files
|
|
10
|
-
|
|
11
|
-
## Responsibilities
|
|
12
|
-
- normalize the request into a clear problem statement
|
|
13
|
-
- identify what is already defined and what is still ambiguous
|
|
14
|
-
- recommend the next best agent or document
|
|
15
|
-
- produce a living design doc and a readiness note
|
|
16
|
-
|
|
17
|
-
## Output contract
|
|
18
|
-
|
|
19
|
-
## Deliverables
|
|
20
|
-
- `.aioson/context/design-doc.md`
|
|
21
|
-
- `.aioson/context/readiness.md`
|
|
22
|
-
|
|
23
|
-
## Core rules
|
|
24
|
-
- Keep the active context lean.
|
|
25
|
-
- Identify gaps before implementation begins.
|
|
26
|
-
- Recommend the next best agent or document.
|
|
27
|
-
- If readiness is low, say so explicitly.
|