@bonesofspring/ai-rules 0.2.25 → 0.2.27
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 +31 -6
- package/LICENSE +21 -0
- package/README.md +36 -112
- package/bin/cli.js +291 -48
- package/bin/lib/safe-path.js +93 -0
- package/bin/lib/seed-ai-local-team.js +440 -0
- package/bin/mavis-install.js +45 -10
- package/bin/opencode-install.js +44 -12
- package/docs/LOCAL-OVERLAY.md +186 -0
- package/docs/MAVIS-COMPATIBILITY.md +174 -0
- package/docs/MAVIS.md +120 -0
- package/docs/OPENCODE-COMPATIBILITY.md +54 -0
- package/docs/OPENCODE.md +123 -0
- package/docs/PRESET-CONTRIBUTION.md +431 -0
- package/docs/PRESET-ENGLISH-STYLE.md +91 -0
- package/docs/specs/INDEX.md +9 -0
- package/docs/specs/_templates/feature.md +32 -0
- package/docs/specs/_templates/page.md +47 -0
- package/package.json +9 -2
- package/presets/_shared/README.md +22 -37
- package/presets/_shared/core/agent-team/agent-artifact-contracts.md +3 -9
- package/presets/_shared/core/agent-team/agent-team-orchestrator.md +2 -2
- package/presets/_shared/core/architecture/reference-features.template.md +1 -1
- package/presets/_shared/core/meta/preset-layering.md +1 -1
- package/presets/_shared/core/meta/preset-pr-checklist.md +3 -3
- package/presets/_shared/core/meta/preset-token-budget.md +10 -10
- package/presets/_shared/core/meta/preset-twin-sync.md +26 -8
- package/presets/_shared/core/quality/code-quality-and-refactoring.md +6 -0
- package/presets/claude/android-kotlin/CLAUDE.md +1 -1
- package/presets/claude/android-kotlin/README.md +3 -26
- package/presets/claude/android-kotlin/REPO_AGENTS.md +34 -8
- package/presets/claude/android-kotlin/agents/README.md +1 -1
- package/presets/claude/android-kotlin/agents/accessibility-reviewer.md +4 -4
- package/presets/claude/android-kotlin/agents/api-contract-reviewer.md +3 -3
- package/presets/claude/android-kotlin/agents/build-verifier.md +6 -6
- package/presets/claude/android-kotlin/agents/ci-investigator.md +3 -3
- package/presets/claude/android-kotlin/agents/code-reviewer.md +6 -6
- package/presets/claude/android-kotlin/agents/debugger.md +4 -4
- package/presets/claude/android-kotlin/agents/feature-developer.md +3 -3
- package/presets/claude/android-kotlin/agents/migration-specialist.md +3 -3
- package/presets/claude/android-kotlin/agents/mockup-reviewer.md +4 -4
- package/presets/claude/android-kotlin/agents/openspec-author.md +5 -5
- package/presets/claude/android-kotlin/agents/performance-auditor.md +3 -3
- package/presets/claude/android-kotlin/agents/qa-tester.md +3 -3
- package/presets/claude/android-kotlin/agents/security-reviewer.md +4 -4
- package/presets/claude/android-kotlin/agents/solution-architect.md +1 -1
- package/presets/claude/android-kotlin/agents/task-analyst.md +4 -4
- package/presets/claude/android-kotlin/agents/task-router.md +4 -4
- package/presets/claude/android-kotlin/agents/tech-writer.md +3 -3
- package/presets/claude/android-kotlin/agents/unit-test-generator.md +3 -3
- package/presets/claude/android-kotlin/agents/unit-test-healer.md +4 -4
- package/presets/claude/android-kotlin/agents/unit-test-planner.md +3 -3
- package/presets/claude/android-kotlin/{team → ai-local}/conventions.md +1 -1
- package/presets/claude/android-kotlin/commands/README.md +3 -3
- package/presets/claude/android-kotlin/commands/spec-start.md +2 -2
- package/presets/claude/android-kotlin/commands/task-continue.md +2 -2
- package/presets/claude/android-kotlin/commands/task.md +2 -2
- package/presets/claude/android-kotlin/commands/technical-retro.md +4 -4
- package/presets/claude/android-kotlin/hooks/README.md +1 -1
- package/presets/claude/android-kotlin/hooks/chain-team-phases.sh +69 -9
- package/presets/claude/android-kotlin/hooks/examples/README.md +5 -3
- package/presets/claude/android-kotlin/hooks/examples/test-on-save.example.sh +6 -4
- package/presets/claude/android-kotlin/rules/README.md +1 -1
- package/presets/claude/android-kotlin/rules/architecture/di-dagger-feature-holders.md +1 -1
- package/presets/claude/android-kotlin/rules/architecture/feature-delivery.md +2 -2
- package/presets/claude/android-kotlin/rules/architecture/reference-features.md +1 -1
- package/presets/claude/android-kotlin/rules/stack/android-app-core.md +1 -1
- package/presets/claude/android-kotlin/rules/tooling-and-review/agent-team-intake.md +1 -1
- package/presets/claude/android-kotlin/rules/tooling-and-review/agent-team-orchestrator.md +6 -6
- package/presets/claude/android-kotlin/rules/tooling-and-review/ai-local-overlay.md +2 -2
- package/presets/claude/android-kotlin/rules/tooling-and-review/code-quality.md +6 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/code-review.md +1 -1
- package/presets/claude/android-kotlin/rules/tooling-and-review/mcp-usage.md +1 -1
- package/presets/claude/android-kotlin/rules/tooling-and-review/mockup-review.md +1 -1
- package/presets/claude/android-kotlin/rules/tooling-and-review/post-change-build.md +1 -1
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-layering.md +3 -3
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-no-cross-stack-leakage.md +2 -2
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-pr-checklist.md +5 -5
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-token-budget.md +12 -12
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-twin-sync.md +28 -10
- package/presets/claude/android-kotlin/rules/tooling-and-review/technical-retro.md +1 -1
- package/presets/claude/android-kotlin/rules/tooling-and-review/ux-design.md +1 -1
- package/presets/claude/android-kotlin/rules/ui-and-accessibility/compose.md +2 -0
- package/presets/claude/android-kotlin/rules/ui-and-accessibility/viewmodels.md +1 -1
- package/presets/claude/android-kotlin/skills/ci-investigation/SKILL.md +1 -1
- package/presets/claude/android-kotlin/skills/code-review/SKILL.md +2 -2
- package/presets/claude/android-kotlin/skills/debug-investigation/SKILL.md +1 -1
- package/presets/claude/android-kotlin/skills/feature-delivery/SKILL.md +1 -1
- package/presets/claude/android-kotlin/skills/mockup-review/SKILL.md +1 -1
- package/presets/claude/android-kotlin/skills/spec-discovery/SKILL.md +2 -2
- package/presets/claude/android-kotlin/skills/technical-retro/SKILL.md +2 -2
- package/presets/claude/android-kotlin/skills/unit-testing/SKILL.md +1 -1
- package/presets/claude/android-kotlin/skills/ux-design/SKILL.md +1 -1
- package/presets/claude/android-kotlin/skills/write-adr/SKILL.md +2 -2
- package/presets/claude/android-kotlin/team/README.md +59 -44
- package/presets/claude/go/CLAUDE.md +1 -1
- package/presets/claude/go/README.md +3 -32
- package/presets/claude/go/REPO_AGENTS.md +34 -8
- package/presets/claude/go/agents/api-contract-reviewer.md +1 -1
- package/presets/claude/go/agents/build-verifier.md +3 -3
- package/presets/claude/go/agents/code-reviewer.md +6 -6
- package/presets/claude/go/agents/debugger.md +1 -1
- package/presets/claude/go/agents/feature-developer.md +3 -3
- package/presets/claude/go/agents/integration-test-generator.md +1 -1
- package/presets/claude/go/agents/integration-test-healer.md +1 -1
- package/presets/claude/go/agents/integration-test-planner.md +1 -1
- package/presets/claude/go/agents/migration-specialist.md +1 -1
- package/presets/claude/go/agents/openspec-author.md +5 -5
- package/presets/claude/go/agents/performance-auditor.md +1 -1
- package/presets/claude/go/agents/qa-tester.md +1 -1
- package/presets/claude/go/agents/security-reviewer.md +1 -1
- package/presets/claude/go/agents/solution-architect.md +1 -1
- package/presets/claude/go/agents/task-analyst.md +2 -2
- package/presets/claude/go/agents/task-router.md +4 -4
- package/presets/claude/go/agents/unit-test-planner.md +1 -1
- package/presets/claude/{next/team → go/ai-local}/conventions.md +1 -1
- package/presets/claude/go/commands/README.md +1 -1
- package/presets/claude/go/commands/spec-start.md +2 -2
- package/presets/claude/go/commands/task-continue.md +2 -2
- package/presets/claude/go/commands/task.md +2 -2
- package/presets/claude/go/hooks/README.md +1 -1
- package/presets/claude/go/hooks/chain-team-phases.sh +69 -9
- package/presets/claude/go/hooks/examples/README.md +5 -3
- package/presets/claude/go/rules/README.md +1 -1
- package/presets/claude/go/rules/api-and-data/adapters-driven.md +3 -3
- package/presets/claude/go/rules/api-and-data/adapters-driving.md +2 -2
- package/presets/claude/go/rules/api-and-data/api-grpc.md +2 -2
- package/presets/claude/go/rules/api-and-data/api-http.md +3 -3
- package/presets/claude/go/rules/api-and-data/messaging-adapters.md +1 -1
- package/presets/claude/go/rules/api-and-data/persistence-adapters.md +2 -2
- package/presets/claude/go/rules/architecture/application-usecases.md +1 -1
- package/presets/claude/go/rules/architecture/domain-layer.md +1 -1
- package/presets/claude/go/rules/architecture/feature-delivery.md +3 -3
- package/presets/claude/go/rules/architecture/ports-interfaces.md +2 -2
- package/presets/claude/go/rules/architecture/reference-features.md +1 -1
- package/presets/claude/go/rules/stack/go-conventions.md +1 -1
- package/presets/claude/go/rules/testing/e2e.md +2 -2
- package/presets/claude/go/rules/testing/integration.md +2 -2
- package/presets/claude/go/rules/testing/unit.md +1 -1
- package/presets/claude/go/rules/tooling-and-review/agent-team-intake.md +3 -3
- package/presets/claude/go/rules/tooling-and-review/agent-team-orchestrator.md +5 -5
- package/presets/claude/go/rules/tooling-and-review/ai-local-overlay.md +2 -2
- package/presets/claude/go/rules/tooling-and-review/code-quality.md +6 -0
- package/presets/claude/go/rules/tooling-and-review/code-review.md +3 -3
- package/presets/claude/go/rules/tooling-and-review/go-tooling.md +3 -3
- package/presets/claude/go/rules/tooling-and-review/mcp-usage.md +1 -1
- package/presets/claude/go/rules/tooling-and-review/post-change-test.md +3 -3
- package/presets/claude/go/rules/tooling-and-review/preset-layering.md +2 -2
- package/presets/claude/go/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -1
- package/presets/claude/go/rules/tooling-and-review/preset-pr-checklist.md +4 -4
- package/presets/claude/go/rules/tooling-and-review/preset-token-budget.md +11 -11
- package/presets/claude/go/rules/tooling-and-review/preset-twin-sync.md +27 -9
- package/presets/claude/go/rules/tooling-and-review/security-go.md +3 -3
- package/presets/claude/go/rules/tooling-and-review/technical-retro.md +3 -3
- package/presets/claude/go/skills/spec-discovery/SKILL.md +2 -2
- package/presets/claude/go/skills/technical-retro/SKILL.md +2 -2
- package/presets/claude/go/skills/write-adr/SKILL.md +2 -2
- package/presets/claude/go/team/README.md +59 -36
- package/presets/claude/ios-swift/CLAUDE.md +1 -1
- package/presets/claude/ios-swift/README.md +3 -37
- package/presets/claude/ios-swift/REPO_AGENTS.md +34 -8
- package/presets/claude/ios-swift/agents/README.md +2 -2
- package/presets/claude/ios-swift/agents/accessibility-reviewer.md +3 -3
- package/presets/claude/ios-swift/agents/api-contract-reviewer.md +2 -2
- package/presets/claude/ios-swift/agents/build-verifier.md +7 -7
- package/presets/claude/ios-swift/agents/ci-investigator.md +2 -2
- package/presets/claude/ios-swift/agents/code-reviewer.md +6 -6
- package/presets/claude/ios-swift/agents/debugger.md +3 -3
- package/presets/claude/ios-swift/agents/feature-developer.md +3 -3
- package/presets/claude/ios-swift/agents/migration-specialist.md +2 -2
- package/presets/claude/ios-swift/agents/mockup-reviewer.md +4 -4
- package/presets/claude/ios-swift/agents/openspec-author.md +5 -5
- package/presets/claude/ios-swift/agents/performance-auditor.md +2 -2
- package/presets/claude/ios-swift/agents/qa-tester.md +2 -2
- package/presets/claude/ios-swift/agents/security-reviewer.md +3 -3
- package/presets/claude/ios-swift/agents/solution-architect.md +1 -1
- package/presets/claude/ios-swift/agents/task-analyst.md +4 -4
- package/presets/claude/ios-swift/agents/task-router.md +4 -4
- package/presets/claude/ios-swift/agents/tech-writer.md +2 -2
- package/presets/claude/ios-swift/agents/unit-test-generator.md +2 -2
- package/presets/claude/ios-swift/agents/unit-test-healer.md +3 -3
- package/presets/claude/ios-swift/agents/unit-test-planner.md +2 -2
- package/presets/claude/ios-swift/agents/xcuitest-test-generator.md +1 -1
- package/presets/claude/ios-swift/agents/xcuitest-test-planner.md +1 -1
- package/presets/claude/{go/team → ios-swift/ai-local}/conventions.md +1 -1
- package/presets/claude/ios-swift/commands/README.md +3 -3
- package/presets/claude/ios-swift/commands/spec-start.md +2 -2
- package/presets/claude/ios-swift/commands/task-continue.md +2 -2
- package/presets/claude/ios-swift/commands/task.md +2 -2
- package/presets/claude/ios-swift/commands/technical-retro.md +4 -4
- package/presets/claude/ios-swift/hooks/README.md +1 -1
- package/presets/claude/ios-swift/hooks/chain-team-phases.sh +69 -9
- package/presets/claude/ios-swift/hooks/examples/README.md +5 -3
- package/presets/claude/ios-swift/rules/README.md +1 -1
- package/presets/claude/ios-swift/rules/architecture/feature-delivery.md +4 -4
- package/presets/claude/ios-swift/rules/architecture/reference-features.md +2 -2
- package/presets/claude/ios-swift/rules/tooling-and-review/agent-team-intake.md +1 -1
- package/presets/claude/ios-swift/rules/tooling-and-review/agent-team-orchestrator.md +6 -6
- package/presets/claude/ios-swift/rules/tooling-and-review/ai-local-overlay.md +2 -2
- package/presets/claude/ios-swift/rules/tooling-and-review/code-quality.md +6 -0
- package/presets/claude/ios-swift/rules/tooling-and-review/code-review.md +1 -1
- package/presets/claude/ios-swift/rules/tooling-and-review/mcp-usage.md +1 -1
- package/presets/claude/ios-swift/rules/tooling-and-review/mockup-review.md +1 -1
- package/presets/claude/ios-swift/rules/tooling-and-review/post-change-build.md +2 -2
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-layering.md +3 -3
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-no-cross-stack-leakage.md +2 -2
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-pr-checklist.md +5 -5
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-token-budget.md +12 -12
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-twin-sync.md +28 -10
- package/presets/claude/ios-swift/rules/tooling-and-review/technical-retro.md +1 -1
- package/presets/claude/ios-swift/rules/tooling-and-review/ux-design.md +1 -1
- package/presets/claude/ios-swift/rules/ui-and-accessibility/swiftui.md +7 -0
- package/presets/claude/ios-swift/skills/ci-investigation/SKILL.md +1 -1
- package/presets/claude/ios-swift/skills/code-review/SKILL.md +2 -2
- package/presets/claude/ios-swift/skills/debug-investigation/SKILL.md +1 -1
- package/presets/claude/ios-swift/skills/feature-delivery/SKILL.md +1 -1
- package/presets/claude/ios-swift/skills/mockup-review/SKILL.md +1 -1
- package/presets/claude/ios-swift/skills/spec-discovery/SKILL.md +2 -2
- package/presets/claude/ios-swift/skills/technical-retro/SKILL.md +2 -2
- package/presets/claude/ios-swift/skills/unit-testing/SKILL.md +1 -1
- package/presets/claude/ios-swift/skills/ux-design/SKILL.md +1 -1
- package/presets/claude/ios-swift/skills/write-adr/SKILL.md +2 -2
- package/presets/claude/ios-swift/team/README.md +59 -40
- package/presets/claude/java/CLAUDE.md +2 -2
- package/presets/claude/java/README.md +3 -20
- package/presets/claude/java/REPO_AGENTS.md +36 -9
- package/presets/claude/java/agents/api-contract-reviewer.md +1 -1
- package/presets/claude/java/agents/build-verifier.md +3 -3
- package/presets/claude/java/agents/code-reviewer.md +6 -6
- package/presets/claude/java/agents/debugger.md +1 -1
- package/presets/claude/java/agents/feature-developer.md +3 -3
- package/presets/claude/java/agents/integration-test-generator.md +1 -1
- package/presets/claude/java/agents/integration-test-healer.md +1 -1
- package/presets/claude/java/agents/integration-test-planner.md +1 -1
- package/presets/claude/java/agents/migration-specialist.md +1 -1
- package/presets/claude/java/agents/openspec-author.md +5 -5
- package/presets/claude/java/agents/performance-auditor.md +1 -1
- package/presets/claude/java/agents/qa-tester.md +1 -1
- package/presets/claude/java/agents/security-reviewer.md +1 -1
- package/presets/claude/java/agents/solution-architect.md +1 -1
- package/presets/claude/java/agents/task-analyst.md +2 -2
- package/presets/claude/java/agents/task-router.md +4 -4
- package/presets/claude/java/agents/unit-test-planner.md +1 -1
- package/presets/claude/{ios-swift/team → java/ai-local}/conventions.md +1 -1
- package/presets/claude/java/commands/README.md +1 -1
- package/presets/claude/java/commands/spec-start.md +2 -2
- package/presets/claude/java/commands/task-continue.md +2 -2
- package/presets/claude/java/commands/task.md +2 -2
- package/presets/claude/java/hooks/README.md +1 -1
- package/presets/claude/java/hooks/chain-team-phases.sh +69 -9
- package/presets/claude/java/hooks/examples/README.md +5 -3
- package/presets/claude/java/rules/README.md +1 -1
- package/presets/claude/java/rules/architecture/feature-delivery.md +2 -2
- package/presets/claude/java/rules/architecture/reference-features.md +1 -1
- package/presets/claude/java/rules/tooling-and-review/agent-team-intake.md +2 -2
- package/presets/claude/java/rules/tooling-and-review/agent-team-orchestrator.md +5 -5
- package/presets/claude/java/rules/tooling-and-review/ai-local-overlay.md +2 -2
- package/presets/claude/java/rules/tooling-and-review/code-quality.md +6 -0
- package/presets/claude/java/rules/tooling-and-review/code-review.md +2 -2
- package/presets/claude/java/rules/tooling-and-review/java-tooling.md +2 -2
- package/presets/claude/java/rules/tooling-and-review/mcp-usage.md +1 -1
- package/presets/claude/java/rules/tooling-and-review/post-change-test.md +2 -2
- package/presets/claude/java/rules/tooling-and-review/preset-layering.md +2 -2
- package/presets/claude/java/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -1
- package/presets/claude/java/rules/tooling-and-review/preset-pr-checklist.md +4 -4
- package/presets/claude/java/rules/tooling-and-review/preset-token-budget.md +11 -11
- package/presets/claude/java/rules/tooling-and-review/preset-twin-sync.md +27 -9
- package/presets/claude/java/rules/tooling-and-review/technical-retro.md +2 -2
- package/presets/claude/java/skills/spec-discovery/SKILL.md +2 -2
- package/presets/claude/java/skills/technical-retro/SKILL.md +2 -2
- package/presets/claude/java/skills/write-adr/SKILL.md +2 -2
- package/presets/claude/java/team/README.md +59 -36
- package/presets/claude/mcp-ts/CLAUDE.md +1 -1
- package/presets/claude/mcp-ts/README.md +3 -5
- package/presets/claude/mcp-ts/REPO_AGENTS.md +34 -8
- package/presets/claude/mcp-ts/agents/build-verifier.md +3 -3
- package/presets/claude/mcp-ts/agents/feature-developer.md +2 -2
- package/presets/claude/mcp-ts/agents/security-reviewer.md +1 -1
- package/presets/claude/mcp-ts/agents/task-analyst.md +2 -2
- package/presets/claude/mcp-ts/agents/task-router.md +4 -4
- package/presets/claude/mcp-ts/{team → ai-local}/conventions.md +2 -2
- package/presets/claude/mcp-ts/commands/spec-start.md +2 -2
- package/presets/claude/mcp-ts/commands/task-continue.md +2 -2
- package/presets/claude/mcp-ts/commands/task.md +2 -2
- package/presets/claude/mcp-ts/commands/technical-retro.md +4 -4
- package/presets/claude/mcp-ts/hooks/chain-team-phases.sh +69 -9
- package/presets/claude/mcp-ts/rules/README.md +1 -1
- package/presets/claude/mcp-ts/rules/api-and-data/mcp-auth-secrets.md +4 -4
- package/presets/claude/mcp-ts/rules/api-and-data/mcp-contract-testing.md +2 -2
- package/presets/claude/mcp-ts/rules/api-and-data/mcp-tool-design.md +1 -1
- package/presets/claude/mcp-ts/rules/api-and-data/mcp-transport-packaging.md +2 -2
- package/presets/claude/mcp-ts/rules/architecture/mcp-server-boundaries.md +1 -1
- package/presets/claude/mcp-ts/rules/architecture/reference-features.md +1 -1
- package/presets/claude/mcp-ts/rules/testing/unit.md +2 -2
- package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-intake.md +2 -2
- package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
- package/presets/claude/mcp-ts/rules/tooling-and-review/ai-local-overlay.md +2 -2
- package/presets/claude/mcp-ts/rules/tooling-and-review/anti-sycophancy-discipline.md +2 -2
- package/presets/claude/mcp-ts/rules/tooling-and-review/code-quality.md +6 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/mcp-ts-tooling.md +3 -3
- package/presets/claude/mcp-ts/rules/tooling-and-review/post-change-test.md +1 -1
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-layering.md +2 -2
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -1
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-pr-checklist.md +4 -4
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-token-budget.md +11 -11
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-twin-sync.md +27 -9
- package/presets/claude/mcp-ts/rules/tooling-and-review/security-mcp.md +1 -1
- package/presets/claude/mcp-ts/rules/tooling-and-review/technical-retro.md +2 -2
- package/presets/claude/mcp-ts/skills/spec-discovery/SKILL.md +2 -2
- package/presets/claude/mcp-ts/team/README.md +77 -43
- package/presets/claude/next/CLAUDE.md +1 -1
- package/presets/claude/next/README.md +13 -36
- package/presets/claude/next/REPO_AGENTS.md +4 -4
- package/presets/claude/next/agents/README.md +4 -112
- package/presets/claude/next/agents/accessibility-reviewer.md +4 -4
- package/presets/claude/next/agents/api-contract-reviewer.md +3 -3
- package/presets/claude/next/agents/build-verifier.md +6 -6
- package/presets/claude/next/agents/ci-investigator.md +3 -3
- package/presets/claude/next/agents/code-reviewer.md +5 -5
- package/presets/claude/next/agents/debugger.md +4 -4
- package/presets/claude/next/agents/feature-developer.md +3 -3
- package/presets/claude/next/agents/migration-specialist.md +3 -3
- package/presets/claude/next/agents/mockup-reviewer.md +4 -4
- package/presets/claude/next/agents/openspec-author.md +5 -5
- package/presets/claude/next/agents/performance-auditor.md +3 -3
- package/presets/claude/next/agents/qa-tester.md +3 -3
- package/presets/claude/next/agents/security-reviewer.md +4 -4
- package/presets/claude/next/agents/solution-architect.md +4 -4
- package/presets/claude/next/agents/task-analyst.md +6 -6
- package/presets/claude/next/agents/task-router.md +4 -4
- package/presets/claude/next/agents/tech-writer.md +3 -3
- package/presets/claude/next/agents/unit-test-generator.md +3 -3
- package/presets/claude/next/agents/unit-test-healer.md +2 -2
- package/presets/claude/next/agents/unit-test-planner.md +3 -3
- package/presets/claude/{java/team → next/ai-local}/conventions.md +1 -1
- package/presets/claude/next/commands/README.md +1 -1
- package/presets/claude/next/commands/spec-start.md +2 -2
- package/presets/claude/next/commands/task-continue.md +2 -2
- package/presets/claude/next/commands/task.md +2 -2
- package/presets/claude/next/hooks/README.md +2 -8
- package/presets/claude/next/hooks/chain-team-phases.sh +69 -9
- package/presets/claude/next/hooks/examples/README.md +5 -3
- package/presets/claude/next/rules/README.md +1 -1
- package/presets/claude/next/rules/api-and-data/api-services.md +6 -4
- package/presets/claude/next/rules/api-and-data/store-rtk.md +6 -5
- package/presets/claude/next/rules/architecture/feature-delivery-workflow.md +4 -0
- package/presets/claude/next/rules/architecture/reference-features.md +2 -2
- package/presets/claude/next/rules/stack/next-app-core.md +2 -1
- package/presets/claude/next/rules/testing/tests-unit.md +1 -0
- package/presets/claude/next/rules/tooling-and-review/agent-team-intake.md +1 -1
- package/presets/claude/next/rules/tooling-and-review/agent-team-orchestrator.md +5 -5
- package/presets/claude/next/rules/tooling-and-review/ai-local-overlay.md +2 -2
- package/presets/claude/next/rules/tooling-and-review/code-quality.md +6 -0
- package/presets/claude/next/rules/tooling-and-review/code-review-mr.md +1 -1
- package/presets/claude/next/rules/tooling-and-review/mockup-review.md +1 -1
- package/presets/claude/next/rules/tooling-and-review/post-change-lint.md +1 -1
- package/presets/claude/next/rules/tooling-and-review/preset-layering.md +3 -3
- package/presets/claude/next/rules/tooling-and-review/preset-no-cross-stack-leakage.md +2 -2
- package/presets/claude/next/rules/tooling-and-review/preset-pr-checklist.md +5 -5
- package/presets/claude/next/rules/tooling-and-review/preset-token-budget.md +12 -12
- package/presets/claude/next/rules/tooling-and-review/preset-twin-sync.md +28 -10
- package/presets/claude/next/rules/tooling-and-review/technical-retro.md +1 -1
- package/presets/claude/next/rules/tooling-and-review/ux-design.md +1 -1
- package/presets/claude/next/rules/ui-and-accessibility/react-ui.md +37 -1
- package/presets/claude/next/skills/code-review/SKILL.md +2 -2
- package/presets/claude/next/skills/debug-investigation/SKILL.md +1 -1
- package/presets/claude/next/skills/mockup-review/SKILL.md +1 -1
- package/presets/claude/next/skills/spec-discovery/SKILL.md +2 -2
- package/presets/claude/next/skills/technical-retro/SKILL.md +2 -2
- package/presets/claude/next/skills/unit-testing/SKILL.md +1 -1
- package/presets/claude/next/skills/ux-design/SKILL.md +1 -1
- package/presets/claude/next/skills/write-adr/SKILL.md +2 -2
- package/presets/claude/next/team/README.md +35 -102
- package/presets/claude/next/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
- package/presets/claude/next/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
- package/presets/claude/next/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
- package/presets/claude/next/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
- package/presets/claude/next/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
- package/presets/claude/next/team/fixtures/metrics.example.json +54 -0
- package/presets/claude/nuxt/CLAUDE.md +1 -1
- package/presets/claude/nuxt/README.md +6 -36
- package/presets/claude/nuxt/REPO_AGENTS.md +34 -8
- package/presets/claude/nuxt/agents/README.md +5 -113
- package/presets/claude/nuxt/agents/accessibility-reviewer.md +4 -4
- package/presets/claude/nuxt/agents/api-contract-reviewer.md +3 -3
- package/presets/claude/nuxt/agents/build-verifier.md +6 -6
- package/presets/claude/nuxt/agents/ci-investigator.md +3 -3
- package/presets/claude/nuxt/agents/code-reviewer.md +5 -5
- package/presets/claude/nuxt/agents/debugger.md +4 -4
- package/presets/claude/nuxt/agents/feature-developer.md +3 -3
- package/presets/claude/nuxt/agents/migration-specialist.md +3 -3
- package/presets/claude/nuxt/agents/mockup-reviewer.md +4 -4
- package/presets/claude/nuxt/agents/openspec-author.md +5 -5
- package/presets/claude/nuxt/agents/performance-auditor.md +3 -3
- package/presets/claude/nuxt/agents/qa-tester.md +3 -3
- package/presets/claude/nuxt/agents/security-reviewer.md +4 -4
- package/presets/claude/nuxt/agents/solution-architect.md +4 -4
- package/presets/claude/nuxt/agents/task-analyst.md +6 -6
- package/presets/claude/nuxt/agents/task-router.md +4 -4
- package/presets/claude/nuxt/agents/tech-writer.md +3 -3
- package/presets/claude/nuxt/agents/unit-test-generator.md +3 -3
- package/presets/claude/nuxt/agents/unit-test-healer.md +2 -2
- package/presets/claude/nuxt/agents/unit-test-planner.md +3 -3
- package/presets/claude/nuxt/ai-local/conventions.md +21 -0
- package/presets/claude/nuxt/commands/README.md +3 -3
- package/presets/claude/nuxt/commands/spec-start.md +2 -2
- package/presets/claude/nuxt/commands/task-continue.md +2 -2
- package/presets/claude/nuxt/commands/task.md +2 -2
- package/presets/claude/nuxt/commands/technical-retro.md +4 -4
- package/presets/claude/nuxt/hooks/chain-team-phases.sh +69 -9
- package/presets/claude/nuxt/hooks/examples/README.md +5 -3
- package/presets/claude/nuxt/hooks/examples/format-edited.example.sh +8 -7
- package/presets/claude/nuxt/hooks/examples/test-on-save.example.sh +8 -3
- package/presets/claude/nuxt/rules/README.md +1 -1
- package/presets/claude/nuxt/rules/architecture/layer-barrel-exports.md +1 -1
- package/presets/claude/nuxt/rules/architecture/reference-features.md +2 -2
- package/presets/claude/nuxt/rules/tooling-and-review/agent-team-intake.md +1 -1
- package/presets/claude/nuxt/rules/tooling-and-review/agent-team-orchestrator.md +6 -6
- package/presets/claude/nuxt/rules/tooling-and-review/ai-local-overlay.md +2 -2
- package/presets/claude/nuxt/rules/tooling-and-review/code-quality.md +6 -0
- package/presets/claude/nuxt/rules/tooling-and-review/mockup-review.md +1 -1
- package/presets/claude/nuxt/rules/tooling-and-review/preset-layering.md +2 -2
- package/presets/claude/nuxt/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -1
- package/presets/claude/nuxt/rules/tooling-and-review/preset-pr-checklist.md +4 -4
- package/presets/claude/nuxt/rules/tooling-and-review/preset-token-budget.md +11 -11
- package/presets/claude/nuxt/rules/tooling-and-review/preset-twin-sync.md +27 -9
- package/presets/claude/nuxt/rules/tooling-and-review/technical-retro.md +1 -1
- package/presets/claude/nuxt/rules/tooling-and-review/ux-design.md +1 -1
- package/presets/claude/nuxt/rules/ui-and-accessibility/vue-ui.md +7 -0
- package/presets/claude/nuxt/skills/code-review/SKILL.md +2 -2
- package/presets/claude/nuxt/skills/debug-investigation/SKILL.md +1 -1
- package/presets/claude/nuxt/skills/mockup-review/SKILL.md +1 -1
- package/presets/claude/nuxt/skills/spec-discovery/SKILL.md +2 -2
- package/presets/claude/nuxt/skills/technical-retro/SKILL.md +2 -2
- package/presets/claude/nuxt/skills/unit-testing/SKILL.md +1 -1
- package/presets/claude/nuxt/skills/ux-design/SKILL.md +1 -1
- package/presets/claude/nuxt/skills/write-adr/SKILL.md +2 -2
- package/presets/claude/nuxt/team/README.md +35 -106
- package/presets/claude/nuxt/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
- package/presets/claude/nuxt/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
- package/presets/claude/nuxt/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
- package/presets/claude/nuxt/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
- package/presets/claude/nuxt/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
- package/presets/claude/nuxt/team/fixtures/metrics.example.json +54 -0
- package/presets/claude/php-hexagonal/CLAUDE.md +2 -2
- package/presets/claude/php-hexagonal/README.md +3 -20
- package/presets/claude/php-hexagonal/REPO_AGENTS.md +36 -9
- package/presets/claude/php-hexagonal/agents/api-contract-reviewer.md +1 -1
- package/presets/claude/php-hexagonal/agents/build-verifier.md +3 -3
- package/presets/claude/php-hexagonal/agents/code-reviewer.md +6 -6
- package/presets/claude/php-hexagonal/agents/debugger.md +1 -1
- package/presets/claude/php-hexagonal/agents/feature-developer.md +3 -3
- package/presets/claude/php-hexagonal/agents/integration-test-generator.md +1 -1
- package/presets/claude/php-hexagonal/agents/integration-test-healer.md +1 -1
- package/presets/claude/php-hexagonal/agents/integration-test-planner.md +1 -1
- package/presets/claude/php-hexagonal/agents/migration-specialist.md +1 -1
- package/presets/claude/php-hexagonal/agents/openspec-author.md +5 -5
- package/presets/claude/php-hexagonal/agents/performance-auditor.md +1 -1
- package/presets/claude/php-hexagonal/agents/qa-tester.md +1 -1
- package/presets/claude/php-hexagonal/agents/security-reviewer.md +1 -1
- package/presets/claude/php-hexagonal/agents/solution-architect.md +1 -1
- package/presets/claude/php-hexagonal/agents/task-analyst.md +2 -2
- package/presets/claude/php-hexagonal/agents/task-router.md +4 -4
- package/presets/claude/php-hexagonal/agents/unit-test-planner.md +1 -1
- package/presets/claude/php-hexagonal/ai-local/conventions.md +21 -0
- package/presets/claude/php-hexagonal/commands/README.md +1 -1
- package/presets/claude/php-hexagonal/commands/spec-start.md +2 -2
- package/presets/claude/php-hexagonal/commands/task-continue.md +2 -2
- package/presets/claude/php-hexagonal/commands/task.md +2 -2
- package/presets/claude/php-hexagonal/hooks/README.md +1 -1
- package/presets/claude/php-hexagonal/hooks/chain-team-phases.sh +69 -9
- package/presets/claude/php-hexagonal/hooks/examples/README.md +5 -3
- package/presets/claude/php-hexagonal/rules/README.md +1 -1
- package/presets/claude/php-hexagonal/rules/architecture/feature-delivery.md +2 -2
- package/presets/claude/php-hexagonal/rules/architecture/reference-features.md +1 -1
- package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-intake.md +2 -2
- package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-orchestrator.md +5 -5
- package/presets/claude/php-hexagonal/rules/tooling-and-review/ai-local-overlay.md +2 -2
- package/presets/claude/php-hexagonal/rules/tooling-and-review/code-quality.md +6 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/code-review.md +2 -2
- package/presets/claude/php-hexagonal/rules/tooling-and-review/mcp-usage.md +1 -1
- package/presets/claude/php-hexagonal/rules/tooling-and-review/php-tooling.md +2 -2
- package/presets/claude/php-hexagonal/rules/tooling-and-review/post-change-test.md +2 -2
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-layering.md +2 -2
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -1
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-pr-checklist.md +4 -4
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-token-budget.md +11 -11
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-twin-sync.md +27 -9
- package/presets/claude/php-hexagonal/rules/tooling-and-review/technical-retro.md +2 -2
- package/presets/claude/php-hexagonal/skills/spec-discovery/SKILL.md +2 -2
- package/presets/claude/php-hexagonal/skills/technical-retro/SKILL.md +2 -2
- package/presets/claude/php-hexagonal/skills/write-adr/SKILL.md +2 -2
- package/presets/claude/php-hexagonal/team/README.md +59 -38
- package/presets/claude/php-laravel/README.md +3 -24
- package/presets/claude/php-laravel/REPO_AGENTS.md +36 -9
- package/presets/claude/php-laravel/agents/api-contract-reviewer.md +1 -1
- package/presets/claude/php-laravel/agents/build-verifier.md +3 -3
- package/presets/claude/php-laravel/agents/code-reviewer.md +6 -6
- package/presets/claude/php-laravel/agents/debugger.md +1 -1
- package/presets/claude/php-laravel/agents/feature-developer.md +3 -3
- package/presets/claude/php-laravel/agents/integration-test-generator.md +1 -1
- package/presets/claude/php-laravel/agents/integration-test-healer.md +1 -1
- package/presets/claude/php-laravel/agents/integration-test-planner.md +1 -1
- package/presets/claude/php-laravel/agents/migration-specialist.md +1 -1
- package/presets/claude/php-laravel/agents/openspec-author.md +5 -5
- package/presets/claude/php-laravel/agents/performance-auditor.md +1 -1
- package/presets/claude/php-laravel/agents/qa-tester.md +1 -1
- package/presets/claude/php-laravel/agents/security-reviewer.md +1 -1
- package/presets/claude/php-laravel/agents/solution-architect.md +1 -1
- package/presets/claude/php-laravel/agents/task-analyst.md +2 -2
- package/presets/claude/php-laravel/agents/task-router.md +4 -4
- package/presets/claude/php-laravel/agents/unit-test-planner.md +1 -1
- package/presets/claude/php-laravel/ai-local/conventions.md +21 -0
- package/presets/claude/php-laravel/commands/README.md +1 -1
- package/presets/claude/php-laravel/commands/spec-start.md +2 -2
- package/presets/claude/php-laravel/commands/task-continue.md +2 -2
- package/presets/claude/php-laravel/commands/task.md +2 -2
- package/presets/claude/php-laravel/hooks/README.md +1 -1
- package/presets/claude/php-laravel/hooks/chain-team-phases.sh +69 -9
- package/presets/claude/php-laravel/hooks/examples/README.md +5 -3
- package/presets/claude/php-laravel/rules/README.md +1 -1
- package/presets/claude/php-laravel/rules/architecture/reference-features.md +1 -1
- package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-orchestrator.md +3 -3
- package/presets/claude/php-laravel/rules/tooling-and-review/ai-local-overlay.md +2 -2
- package/presets/claude/php-laravel/rules/tooling-and-review/code-quality.md +6 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/mcp-usage.md +1 -1
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-layering.md +1 -1
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-pr-checklist.md +3 -3
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-token-budget.md +10 -10
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-twin-sync.md +26 -8
- package/presets/claude/php-laravel/skills/spec-discovery/SKILL.md +2 -2
- package/presets/claude/php-laravel/skills/technical-retro/SKILL.md +2 -2
- package/presets/claude/php-laravel/skills/write-adr/SKILL.md +2 -2
- package/presets/claude/php-laravel/team/README.md +64 -22
- package/presets/claude/svelte/CLAUDE.md +1 -1
- package/presets/claude/svelte/README.md +3 -7
- package/presets/claude/svelte/REPO_AGENTS.md +34 -8
- package/presets/claude/svelte/agents/README.md +5 -113
- package/presets/claude/svelte/agents/accessibility-reviewer.md +4 -4
- package/presets/claude/svelte/agents/api-contract-reviewer.md +3 -3
- package/presets/claude/svelte/agents/build-verifier.md +6 -6
- package/presets/claude/svelte/agents/ci-investigator.md +3 -3
- package/presets/claude/svelte/agents/code-reviewer.md +5 -5
- package/presets/claude/svelte/agents/debugger.md +4 -4
- package/presets/claude/svelte/agents/feature-developer.md +3 -3
- package/presets/claude/svelte/agents/migration-specialist.md +3 -3
- package/presets/claude/svelte/agents/mockup-reviewer.md +4 -4
- package/presets/claude/svelte/agents/openspec-author.md +5 -5
- package/presets/claude/svelte/agents/performance-auditor.md +3 -3
- package/presets/claude/svelte/agents/qa-tester.md +3 -3
- package/presets/claude/svelte/agents/security-reviewer.md +4 -4
- package/presets/claude/svelte/agents/solution-architect.md +4 -4
- package/presets/claude/svelte/agents/task-analyst.md +6 -6
- package/presets/claude/svelte/agents/task-router.md +4 -4
- package/presets/claude/svelte/agents/tech-writer.md +3 -3
- package/presets/claude/svelte/agents/unit-test-generator.md +3 -3
- package/presets/claude/svelte/agents/unit-test-healer.md +2 -2
- package/presets/claude/svelte/agents/unit-test-planner.md +3 -3
- package/presets/claude/svelte/ai-local/conventions.md +21 -0
- package/presets/claude/svelte/commands/README.md +3 -3
- package/presets/claude/svelte/commands/spec-start.md +2 -2
- package/presets/claude/svelte/commands/task-continue.md +2 -2
- package/presets/claude/svelte/commands/task.md +2 -2
- package/presets/claude/svelte/commands/technical-retro.md +4 -4
- package/presets/claude/svelte/hooks/chain-team-phases.sh +69 -9
- package/presets/claude/svelte/hooks/examples/README.md +5 -3
- package/presets/claude/svelte/rules/README.md +1 -1
- package/presets/claude/svelte/rules/api-and-data/store-svelte.md +1 -1
- package/presets/claude/svelte/rules/architecture/layer-barrel-exports.md +1 -1
- package/presets/claude/svelte/rules/architecture/reference-features.md +2 -2
- package/presets/claude/svelte/rules/tooling-and-review/agent-team-intake.md +1 -1
- package/presets/claude/svelte/rules/tooling-and-review/agent-team-orchestrator.md +6 -6
- package/presets/claude/svelte/rules/tooling-and-review/ai-local-overlay.md +2 -2
- package/presets/claude/svelte/rules/tooling-and-review/code-quality.md +6 -0
- package/presets/claude/svelte/rules/tooling-and-review/mcp-usage.md +1 -1
- package/presets/claude/svelte/rules/tooling-and-review/mockup-review.md +1 -1
- package/presets/claude/svelte/rules/tooling-and-review/preset-layering.md +3 -3
- package/presets/claude/svelte/rules/tooling-and-review/preset-no-cross-stack-leakage.md +2 -2
- package/presets/claude/svelte/rules/tooling-and-review/preset-pr-checklist.md +5 -5
- package/presets/claude/svelte/rules/tooling-and-review/preset-token-budget.md +12 -12
- package/presets/claude/svelte/rules/tooling-and-review/preset-twin-sync.md +28 -10
- package/presets/claude/svelte/rules/tooling-and-review/technical-retro.md +1 -1
- package/presets/claude/svelte/rules/tooling-and-review/ux-design.md +1 -1
- package/presets/claude/svelte/rules/ui-and-accessibility/no-rest-props-spread.md +1 -1
- package/presets/claude/svelte/rules/ui-and-accessibility/svelte-ui.md +7 -0
- package/presets/claude/svelte/skills/code-review/SKILL.md +2 -2
- package/presets/claude/svelte/skills/debug-investigation/SKILL.md +1 -1
- package/presets/claude/svelte/skills/mockup-review/SKILL.md +1 -1
- package/presets/claude/svelte/skills/spec-discovery/SKILL.md +2 -2
- package/presets/claude/svelte/skills/technical-retro/SKILL.md +2 -2
- package/presets/claude/svelte/skills/unit-testing/SKILL.md +1 -1
- package/presets/claude/svelte/skills/ux-design/SKILL.md +1 -1
- package/presets/claude/svelte/skills/write-adr/SKILL.md +2 -2
- package/presets/claude/svelte/team/README.md +35 -106
- package/presets/claude/svelte/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
- package/presets/claude/svelte/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
- package/presets/claude/svelte/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
- package/presets/claude/svelte/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
- package/presets/claude/svelte/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
- package/presets/claude/svelte/team/fixtures/metrics.example.json +54 -0
- package/presets/cursor/android-kotlin/AGENTS.md +1 -1
- package/presets/cursor/android-kotlin/README.md +3 -29
- package/presets/cursor/android-kotlin/REPO_AGENTS.md +34 -8
- package/presets/cursor/android-kotlin/agents/README.md +1 -1
- package/presets/cursor/android-kotlin/agents/accessibility-reviewer.md +4 -4
- package/presets/cursor/android-kotlin/agents/api-contract-reviewer.md +3 -3
- package/presets/cursor/android-kotlin/agents/build-verifier.md +6 -6
- package/presets/cursor/android-kotlin/agents/ci-investigator.md +3 -3
- package/presets/cursor/android-kotlin/agents/code-reviewer.md +6 -6
- package/presets/cursor/android-kotlin/agents/debugger.md +4 -4
- package/presets/cursor/android-kotlin/agents/feature-developer.md +3 -3
- package/presets/cursor/android-kotlin/agents/migration-specialist.md +3 -3
- package/presets/cursor/android-kotlin/agents/mockup-reviewer.md +4 -4
- package/presets/cursor/android-kotlin/agents/openspec-author.md +5 -5
- package/presets/cursor/android-kotlin/agents/performance-auditor.md +3 -3
- package/presets/cursor/android-kotlin/agents/qa-tester.md +3 -3
- package/presets/cursor/android-kotlin/agents/security-reviewer.md +4 -4
- package/presets/cursor/android-kotlin/agents/solution-architect.md +1 -1
- package/presets/cursor/android-kotlin/agents/task-analyst.md +4 -4
- package/presets/cursor/android-kotlin/agents/task-router.md +4 -4
- package/presets/cursor/android-kotlin/agents/tech-writer.md +3 -3
- package/presets/cursor/android-kotlin/agents/unit-test-generator.md +3 -3
- package/presets/cursor/android-kotlin/agents/unit-test-healer.md +4 -4
- package/presets/cursor/android-kotlin/agents/unit-test-planner.md +3 -3
- package/presets/cursor/android-kotlin/{team → ai-local}/conventions.md +1 -1
- package/presets/cursor/android-kotlin/commands/README.md +2 -2
- package/presets/cursor/android-kotlin/commands/spec-start.md +2 -2
- package/presets/cursor/android-kotlin/commands/task-continue.md +2 -2
- package/presets/cursor/android-kotlin/commands/task.md +2 -2
- package/presets/cursor/android-kotlin/commands/technical-retro.md +4 -4
- package/presets/cursor/android-kotlin/hooks/README.md +1 -1
- package/presets/cursor/android-kotlin/hooks/chain-team-phases.sh +69 -9
- package/presets/cursor/android-kotlin/hooks/examples/test-on-save.example.sh +6 -4
- package/presets/cursor/android-kotlin/rules/README.md +1 -1
- package/presets/cursor/android-kotlin/rules/agent-team-orchestrator.mdc +5 -5
- package/presets/cursor/android-kotlin/rules/ai-local-overlay.mdc +2 -2
- package/presets/cursor/android-kotlin/rules/android-app-core.mdc +1 -1
- package/presets/cursor/android-kotlin/rules/code-quality-and-refactoring.mdc +6 -0
- package/presets/cursor/android-kotlin/rules/compose-ui.mdc +2 -0
- package/presets/cursor/android-kotlin/rules/di-dagger-feature-holders.mdc +1 -1
- package/presets/cursor/android-kotlin/rules/feature-delivery-workflow.mdc +1 -1
- package/presets/cursor/android-kotlin/rules/preset-layering.mdc +3 -3
- package/presets/cursor/android-kotlin/rules/preset-no-cross-stack-leakage.mdc +2 -2
- package/presets/cursor/android-kotlin/rules/preset-pr-checklist.mdc +5 -5
- package/presets/cursor/android-kotlin/rules/preset-token-budget.mdc +12 -12
- package/presets/cursor/android-kotlin/rules/preset-twin-sync.mdc +28 -10
- package/presets/cursor/android-kotlin/rules/reference-features.mdc +1 -1
- package/presets/cursor/android-kotlin/rules/state-and-viewmodels.mdc +1 -1
- package/presets/cursor/android-kotlin/skills/ci-investigation/SKILL.md +1 -1
- package/presets/cursor/android-kotlin/skills/code-review/SKILL.md +2 -2
- package/presets/cursor/android-kotlin/skills/debug-investigation/SKILL.md +1 -1
- package/presets/cursor/android-kotlin/skills/feature-delivery/SKILL.md +1 -1
- package/presets/cursor/android-kotlin/skills/mockup-review/SKILL.md +1 -1
- package/presets/cursor/android-kotlin/skills/spec-discovery/SKILL.md +2 -2
- package/presets/cursor/android-kotlin/skills/technical-retro/SKILL.md +2 -2
- package/presets/cursor/android-kotlin/skills/unit-testing/SKILL.md +1 -1
- package/presets/cursor/android-kotlin/skills/ux-design/SKILL.md +1 -1
- package/presets/cursor/android-kotlin/skills/write-adr/SKILL.md +2 -2
- package/presets/cursor/android-kotlin/team/README.md +59 -44
- package/presets/cursor/go/AGENTS.md +1 -1
- package/presets/cursor/go/README.md +8 -31
- package/presets/cursor/go/REPO_AGENTS.md +34 -8
- package/presets/cursor/go/agents/README.md +1 -1
- package/presets/cursor/go/agents/api-contract-reviewer.md +1 -1
- package/presets/cursor/go/agents/build-verifier.md +3 -3
- package/presets/cursor/go/agents/code-reviewer.md +6 -6
- package/presets/cursor/go/agents/debugger.md +1 -1
- package/presets/cursor/go/agents/feature-developer.md +3 -3
- package/presets/cursor/go/agents/integration-test-generator.md +1 -1
- package/presets/cursor/go/agents/integration-test-healer.md +1 -1
- package/presets/cursor/go/agents/integration-test-planner.md +1 -1
- package/presets/cursor/go/agents/migration-specialist.md +1 -1
- package/presets/cursor/go/agents/openspec-author.md +5 -5
- package/presets/cursor/go/agents/performance-auditor.md +1 -1
- package/presets/cursor/go/agents/qa-tester.md +1 -1
- package/presets/cursor/go/agents/security-reviewer.md +1 -1
- package/presets/cursor/go/agents/solution-architect.md +1 -1
- package/presets/cursor/go/agents/task-analyst.md +2 -2
- package/presets/cursor/go/agents/task-router.md +4 -4
- package/presets/cursor/go/agents/unit-test-planner.md +1 -1
- package/presets/cursor/go/ai-local/conventions.md +21 -0
- package/presets/cursor/go/commands/README.md +2 -2
- package/presets/cursor/go/commands/spec-start.md +2 -2
- package/presets/cursor/go/commands/task-continue.md +2 -2
- package/presets/cursor/go/commands/task.md +2 -2
- package/presets/cursor/go/commands/technical-retro.md +4 -4
- package/presets/cursor/go/hooks/README.md +1 -1
- package/presets/cursor/go/hooks/chain-team-phases.sh +69 -9
- package/presets/cursor/go/rules/README.md +2 -2
- package/presets/cursor/go/rules/agent-team-orchestrator.mdc +2 -2
- package/presets/cursor/go/rules/ai-local-overlay.mdc +2 -2
- package/presets/cursor/go/rules/code-quality-and-refactoring.mdc +6 -0
- package/presets/cursor/go/rules/preset-layering.mdc +2 -2
- package/presets/cursor/go/rules/preset-no-cross-stack-leakage.mdc +1 -1
- package/presets/cursor/go/rules/preset-pr-checklist.mdc +4 -4
- package/presets/cursor/go/rules/preset-token-budget.mdc +11 -11
- package/presets/cursor/go/rules/preset-twin-sync.mdc +27 -9
- package/presets/cursor/go/rules/reference-features.mdc +1 -1
- package/presets/cursor/go/skills/spec-discovery/SKILL.md +2 -2
- package/presets/cursor/go/skills/technical-retro/SKILL.md +2 -2
- package/presets/cursor/go/skills/write-adr/SKILL.md +2 -2
- package/presets/cursor/go/team/README.md +59 -40
- package/presets/cursor/ios-swift/AGENTS.md +1 -1
- package/presets/cursor/ios-swift/README.md +8 -37
- package/presets/cursor/ios-swift/REPO_AGENTS.md +34 -8
- package/presets/cursor/ios-swift/agents/README.md +2 -2
- package/presets/cursor/ios-swift/agents/accessibility-reviewer.md +3 -3
- package/presets/cursor/ios-swift/agents/api-contract-reviewer.md +2 -2
- package/presets/cursor/ios-swift/agents/build-verifier.md +7 -7
- package/presets/cursor/ios-swift/agents/ci-investigator.md +2 -2
- package/presets/cursor/ios-swift/agents/code-reviewer.md +6 -6
- package/presets/cursor/ios-swift/agents/debugger.md +3 -3
- package/presets/cursor/ios-swift/agents/feature-developer.md +3 -3
- package/presets/cursor/ios-swift/agents/migration-specialist.md +2 -2
- package/presets/cursor/ios-swift/agents/mockup-reviewer.md +4 -4
- package/presets/cursor/ios-swift/agents/openspec-author.md +5 -5
- package/presets/cursor/ios-swift/agents/performance-auditor.md +2 -2
- package/presets/cursor/ios-swift/agents/qa-tester.md +2 -2
- package/presets/cursor/ios-swift/agents/security-reviewer.md +3 -3
- package/presets/cursor/ios-swift/agents/solution-architect.md +1 -1
- package/presets/cursor/ios-swift/agents/task-analyst.md +4 -4
- package/presets/cursor/ios-swift/agents/task-router.md +4 -4
- package/presets/cursor/ios-swift/agents/tech-writer.md +2 -2
- package/presets/cursor/ios-swift/agents/unit-test-generator.md +2 -2
- package/presets/cursor/ios-swift/agents/unit-test-healer.md +3 -3
- package/presets/cursor/ios-swift/agents/unit-test-planner.md +2 -2
- package/presets/cursor/ios-swift/agents/xcuitest-test-generator.md +1 -1
- package/presets/cursor/ios-swift/agents/xcuitest-test-planner.md +1 -1
- package/presets/cursor/ios-swift/ai-local/conventions.md +21 -0
- package/presets/cursor/ios-swift/commands/README.md +1 -1
- package/presets/cursor/ios-swift/commands/spec-start.md +2 -2
- package/presets/cursor/ios-swift/commands/task-continue.md +2 -2
- package/presets/cursor/ios-swift/commands/task.md +2 -2
- package/presets/cursor/ios-swift/commands/technical-retro.md +4 -4
- package/presets/cursor/ios-swift/hooks/README.md +1 -1
- package/presets/cursor/ios-swift/hooks/chain-team-phases.sh +69 -9
- package/presets/cursor/ios-swift/rules/README.md +2 -2
- package/presets/cursor/ios-swift/rules/agent-team-orchestrator.mdc +5 -5
- package/presets/cursor/ios-swift/rules/ai-local-overlay.mdc +2 -2
- package/presets/cursor/ios-swift/rules/code-quality-and-refactoring.mdc +6 -0
- package/presets/cursor/ios-swift/rules/preset-layering.mdc +3 -3
- package/presets/cursor/ios-swift/rules/preset-no-cross-stack-leakage.mdc +2 -2
- package/presets/cursor/ios-swift/rules/preset-pr-checklist.mdc +5 -5
- package/presets/cursor/ios-swift/rules/preset-token-budget.mdc +12 -12
- package/presets/cursor/ios-swift/rules/preset-twin-sync.mdc +28 -10
- package/presets/cursor/ios-swift/rules/reference-features.mdc +2 -2
- package/presets/cursor/ios-swift/rules/swiftui-ui.mdc +7 -0
- package/presets/cursor/ios-swift/skills/ci-investigation/SKILL.md +1 -1
- package/presets/cursor/ios-swift/skills/code-review/SKILL.md +2 -2
- package/presets/cursor/ios-swift/skills/debug-investigation/SKILL.md +1 -1
- package/presets/cursor/ios-swift/skills/feature-delivery/SKILL.md +1 -1
- package/presets/cursor/ios-swift/skills/mockup-review/SKILL.md +1 -1
- package/presets/cursor/ios-swift/skills/spec-discovery/SKILL.md +2 -2
- package/presets/cursor/ios-swift/skills/technical-retro/SKILL.md +2 -2
- package/presets/cursor/ios-swift/skills/unit-testing/SKILL.md +1 -1
- package/presets/cursor/ios-swift/skills/ux-design/SKILL.md +1 -1
- package/presets/cursor/ios-swift/skills/write-adr/SKILL.md +2 -2
- package/presets/cursor/ios-swift/team/README.md +59 -40
- package/presets/cursor/java/AGENTS.md +2 -2
- package/presets/cursor/java/README.md +9 -19
- package/presets/cursor/java/REPO_AGENTS.md +36 -9
- package/presets/cursor/java/agents/README.md +1 -1
- package/presets/cursor/java/agents/api-contract-reviewer.md +1 -1
- package/presets/cursor/java/agents/build-verifier.md +3 -3
- package/presets/cursor/java/agents/code-reviewer.md +6 -6
- package/presets/cursor/java/agents/debugger.md +1 -1
- package/presets/cursor/java/agents/feature-developer.md +3 -3
- package/presets/cursor/java/agents/integration-test-generator.md +1 -1
- package/presets/cursor/java/agents/integration-test-healer.md +1 -1
- package/presets/cursor/java/agents/integration-test-planner.md +1 -1
- package/presets/cursor/java/agents/migration-specialist.md +1 -1
- package/presets/cursor/java/agents/openspec-author.md +5 -5
- package/presets/cursor/java/agents/performance-auditor.md +1 -1
- package/presets/cursor/java/agents/qa-tester.md +1 -1
- package/presets/cursor/java/agents/security-reviewer.md +1 -1
- package/presets/cursor/java/agents/solution-architect.md +1 -1
- package/presets/cursor/java/agents/task-analyst.md +2 -2
- package/presets/cursor/java/agents/task-router.md +4 -4
- package/presets/cursor/java/agents/unit-test-planner.md +1 -1
- package/presets/cursor/java/ai-local/conventions.md +21 -0
- package/presets/cursor/java/commands/README.md +2 -2
- package/presets/cursor/java/commands/spec-start.md +2 -2
- package/presets/cursor/java/commands/task-continue.md +2 -2
- package/presets/cursor/java/commands/task.md +2 -2
- package/presets/cursor/java/commands/technical-retro.md +4 -4
- package/presets/cursor/java/hooks/README.md +1 -1
- package/presets/cursor/java/hooks/chain-team-phases.sh +69 -9
- package/presets/cursor/java/rules/README.md +2 -2
- package/presets/cursor/java/rules/agent-team-orchestrator.mdc +3 -3
- package/presets/cursor/java/rules/ai-local-overlay.mdc +2 -2
- package/presets/cursor/java/rules/code-quality-and-refactoring.mdc +6 -0
- package/presets/cursor/java/rules/preset-layering.mdc +2 -2
- package/presets/cursor/java/rules/preset-no-cross-stack-leakage.mdc +1 -1
- package/presets/cursor/java/rules/preset-pr-checklist.mdc +4 -4
- package/presets/cursor/java/rules/preset-token-budget.mdc +11 -11
- package/presets/cursor/java/rules/preset-twin-sync.mdc +27 -9
- package/presets/cursor/java/rules/reference-features.mdc +1 -1
- package/presets/cursor/java/skills/spec-discovery/SKILL.md +2 -2
- package/presets/cursor/java/skills/technical-retro/SKILL.md +2 -2
- package/presets/cursor/java/skills/write-adr/SKILL.md +2 -2
- package/presets/cursor/java/team/README.md +59 -40
- package/presets/cursor/mcp-ts/README.md +3 -13
- package/presets/cursor/mcp-ts/REPO_AGENTS.md +34 -8
- package/presets/cursor/mcp-ts/agents/build-verifier.md +3 -3
- package/presets/cursor/mcp-ts/agents/feature-developer.md +2 -2
- package/presets/cursor/mcp-ts/agents/security-reviewer.md +1 -1
- package/presets/cursor/mcp-ts/agents/task-analyst.md +2 -2
- package/presets/cursor/mcp-ts/agents/task-router.md +4 -4
- package/presets/cursor/mcp-ts/{team → ai-local}/conventions.md +2 -2
- package/presets/cursor/mcp-ts/commands/spec-start.md +2 -2
- package/presets/cursor/mcp-ts/commands/task-continue.md +2 -2
- package/presets/cursor/mcp-ts/commands/task.md +2 -2
- package/presets/cursor/mcp-ts/commands/technical-retro.md +4 -4
- package/presets/cursor/mcp-ts/hooks/README.md +1 -1
- package/presets/cursor/mcp-ts/hooks/chain-team-phases.sh +69 -9
- package/presets/cursor/mcp-ts/rules/README.md +2 -2
- package/presets/cursor/mcp-ts/rules/agent-team-orchestrator.mdc +2 -2
- package/presets/cursor/mcp-ts/rules/ai-local-overlay.mdc +2 -2
- package/presets/cursor/mcp-ts/rules/anti-sycophancy-discipline.mdc +2 -2
- package/presets/cursor/mcp-ts/rules/code-quality-and-refactoring.mdc +6 -0
- package/presets/cursor/mcp-ts/rules/mcp-auth-secrets.mdc +4 -4
- package/presets/cursor/mcp-ts/rules/mcp-contract-testing.mdc +2 -2
- package/presets/cursor/mcp-ts/rules/mcp-server-boundaries.mdc +1 -1
- package/presets/cursor/mcp-ts/rules/mcp-tool-design.mdc +1 -1
- package/presets/cursor/mcp-ts/rules/mcp-transport-packaging.mdc +2 -2
- package/presets/cursor/mcp-ts/rules/mcp-ts-tooling.mdc +3 -3
- package/presets/cursor/mcp-ts/rules/preset-layering.mdc +2 -2
- package/presets/cursor/mcp-ts/rules/preset-no-cross-stack-leakage.mdc +1 -1
- package/presets/cursor/mcp-ts/rules/preset-pr-checklist.mdc +4 -4
- package/presets/cursor/mcp-ts/rules/preset-token-budget.mdc +11 -11
- package/presets/cursor/mcp-ts/rules/preset-twin-sync.mdc +27 -9
- package/presets/cursor/mcp-ts/rules/reference-features.mdc +1 -1
- package/presets/cursor/mcp-ts/rules/security-mcp.mdc +1 -1
- package/presets/cursor/mcp-ts/rules/tests-unit.mdc +2 -2
- package/presets/cursor/mcp-ts/skills/spec-discovery/SKILL.md +2 -2
- package/presets/cursor/mcp-ts/team/README.md +77 -43
- package/presets/cursor/next/AGENTS.md +1 -1
- package/presets/cursor/next/README.md +9 -40
- package/presets/cursor/next/REPO_AGENTS.md +4 -4
- package/presets/cursor/next/agents/README.md +2 -118
- package/presets/cursor/next/agents/accessibility-reviewer.md +4 -4
- package/presets/cursor/next/agents/api-contract-reviewer.md +3 -3
- package/presets/cursor/next/agents/build-verifier.md +6 -6
- package/presets/cursor/next/agents/ci-investigator.md +3 -3
- package/presets/cursor/next/agents/code-reviewer.md +5 -5
- package/presets/cursor/next/agents/debugger.md +4 -4
- package/presets/cursor/next/agents/feature-developer.md +3 -3
- package/presets/cursor/next/agents/migration-specialist.md +3 -3
- package/presets/cursor/next/agents/mockup-reviewer.md +4 -4
- package/presets/cursor/next/agents/openspec-author.md +5 -5
- package/presets/cursor/next/agents/performance-auditor.md +3 -3
- package/presets/cursor/next/agents/playwright-test-generator.md +1 -1
- package/presets/cursor/next/agents/qa-tester.md +3 -3
- package/presets/cursor/next/agents/security-reviewer.md +4 -4
- package/presets/cursor/next/agents/solution-architect.md +4 -4
- package/presets/cursor/next/agents/task-analyst.md +6 -6
- package/presets/cursor/next/agents/task-router.md +4 -4
- package/presets/cursor/next/agents/tech-writer.md +3 -3
- package/presets/cursor/next/agents/unit-test-generator.md +3 -3
- package/presets/cursor/next/agents/unit-test-healer.md +2 -2
- package/presets/cursor/next/agents/unit-test-planner.md +3 -3
- package/presets/cursor/next/ai-local/conventions.md +21 -0
- package/presets/cursor/next/commands/README.md +2 -2
- package/presets/cursor/next/commands/spec-start.md +2 -2
- package/presets/cursor/next/commands/task-continue.md +2 -2
- package/presets/cursor/next/commands/task.md +2 -2
- package/presets/cursor/next/commands/technical-retro.md +4 -4
- package/presets/cursor/next/hooks/README.md +3 -7
- package/presets/cursor/next/hooks/chain-team-phases.sh +69 -11
- package/presets/cursor/next/rules/README.md +6 -16
- package/presets/cursor/next/rules/agent-team-orchestrator.mdc +5 -5
- package/presets/cursor/next/rules/ai-local-overlay.mdc +2 -2
- package/presets/cursor/next/rules/api-services.mdc +6 -4
- package/presets/cursor/next/rules/code-quality-and-refactoring.mdc +6 -0
- package/presets/cursor/next/rules/feature-delivery-workflow.mdc +4 -0
- package/presets/cursor/next/rules/next-app-core.mdc +2 -1
- package/presets/cursor/next/rules/preset-layering.mdc +3 -3
- package/presets/cursor/next/rules/preset-no-cross-stack-leakage.mdc +2 -2
- package/presets/cursor/next/rules/preset-pr-checklist.mdc +5 -5
- package/presets/cursor/next/rules/preset-token-budget.mdc +12 -12
- package/presets/cursor/next/rules/preset-twin-sync.mdc +28 -10
- package/presets/cursor/next/rules/react-ui.mdc +37 -1
- package/presets/cursor/next/rules/reference-features.mdc +2 -2
- package/presets/cursor/next/rules/store-rtk.mdc +6 -5
- package/presets/cursor/next/rules/tests-unit.mdc +1 -0
- package/presets/cursor/next/skills/README.md +1 -1
- package/presets/cursor/next/skills/code-review/SKILL.md +2 -2
- package/presets/cursor/next/skills/debug-investigation/SKILL.md +1 -1
- package/presets/cursor/next/skills/mockup-review/SKILL.md +1 -1
- package/presets/cursor/next/skills/spec-discovery/SKILL.md +2 -2
- package/presets/cursor/next/skills/technical-retro/SKILL.md +2 -2
- package/presets/cursor/next/skills/unit-testing/SKILL.md +1 -1
- package/presets/cursor/next/skills/ux-design/SKILL.md +1 -1
- package/presets/cursor/next/skills/write-adr/SKILL.md +2 -2
- package/presets/cursor/next/team/README.md +35 -106
- package/presets/cursor/nuxt/AGENTS.md +1 -1
- package/presets/cursor/nuxt/README.md +8 -39
- package/presets/cursor/nuxt/REPO_AGENTS.md +34 -8
- package/presets/cursor/nuxt/agents/README.md +5 -113
- package/presets/cursor/nuxt/agents/accessibility-reviewer.md +4 -4
- package/presets/cursor/nuxt/agents/api-contract-reviewer.md +3 -3
- package/presets/cursor/nuxt/agents/build-verifier.md +6 -6
- package/presets/cursor/nuxt/agents/ci-investigator.md +3 -3
- package/presets/cursor/nuxt/agents/code-reviewer.md +5 -5
- package/presets/cursor/nuxt/agents/debugger.md +4 -4
- package/presets/cursor/nuxt/agents/feature-developer.md +3 -3
- package/presets/cursor/nuxt/agents/migration-specialist.md +3 -3
- package/presets/cursor/nuxt/agents/mockup-reviewer.md +4 -4
- package/presets/cursor/nuxt/agents/openspec-author.md +5 -5
- package/presets/cursor/nuxt/agents/performance-auditor.md +3 -3
- package/presets/cursor/nuxt/agents/playwright-test-generator.md +1 -1
- package/presets/cursor/nuxt/agents/qa-tester.md +3 -3
- package/presets/cursor/nuxt/agents/security-reviewer.md +4 -4
- package/presets/cursor/nuxt/agents/solution-architect.md +4 -4
- package/presets/cursor/nuxt/agents/task-analyst.md +6 -6
- package/presets/cursor/nuxt/agents/task-router.md +4 -4
- package/presets/cursor/nuxt/agents/tech-writer.md +3 -3
- package/presets/cursor/nuxt/agents/unit-test-generator.md +3 -3
- package/presets/cursor/nuxt/agents/unit-test-healer.md +2 -2
- package/presets/cursor/nuxt/agents/unit-test-planner.md +3 -3
- package/presets/cursor/nuxt/ai-local/conventions.md +21 -0
- package/presets/cursor/nuxt/commands/README.md +2 -2
- package/presets/cursor/nuxt/commands/spec-start.md +2 -2
- package/presets/cursor/nuxt/commands/task-continue.md +2 -2
- package/presets/cursor/nuxt/commands/task.md +2 -2
- package/presets/cursor/nuxt/commands/technical-retro.md +4 -4
- package/presets/cursor/nuxt/hooks/README.md +1 -1
- package/presets/cursor/nuxt/hooks/chain-team-phases.sh +69 -11
- package/presets/cursor/nuxt/hooks/examples/format-edited.example.sh +8 -7
- package/presets/cursor/nuxt/hooks/examples/test-on-save.example.sh +8 -3
- package/presets/cursor/nuxt/rules/README.md +1 -1
- package/presets/cursor/nuxt/rules/agent-team-orchestrator.mdc +5 -5
- package/presets/cursor/nuxt/rules/ai-local-overlay.mdc +2 -2
- package/presets/cursor/nuxt/rules/anti-sycophancy-discipline.mdc +1 -1
- package/presets/cursor/nuxt/rules/code-quality-and-refactoring.mdc +6 -0
- package/presets/cursor/nuxt/rules/design-guidance.mdc +1 -1
- package/presets/cursor/nuxt/rules/layer-barrel-exports.mdc +1 -1
- package/presets/cursor/nuxt/rules/preset-layering.mdc +3 -3
- package/presets/cursor/nuxt/rules/preset-no-cross-stack-leakage.mdc +2 -2
- package/presets/cursor/nuxt/rules/preset-pr-checklist.mdc +5 -5
- package/presets/cursor/nuxt/rules/preset-token-budget.mdc +12 -12
- package/presets/cursor/nuxt/rules/preset-twin-sync.mdc +28 -10
- package/presets/cursor/nuxt/rules/reference-features.mdc +2 -2
- package/presets/cursor/nuxt/rules/vue-ui.mdc +7 -0
- package/presets/cursor/nuxt/skills/code-review/SKILL.md +2 -2
- package/presets/cursor/nuxt/skills/debug-investigation/SKILL.md +1 -1
- package/presets/cursor/nuxt/skills/mockup-review/SKILL.md +1 -1
- package/presets/cursor/nuxt/skills/spec-discovery/SKILL.md +2 -2
- package/presets/cursor/nuxt/skills/technical-retro/SKILL.md +2 -2
- package/presets/cursor/nuxt/skills/unit-testing/SKILL.md +1 -1
- package/presets/cursor/nuxt/skills/ux-design/SKILL.md +1 -1
- package/presets/cursor/nuxt/skills/write-adr/SKILL.md +2 -2
- package/presets/cursor/nuxt/team/README.md +35 -106
- package/presets/cursor/php-hexagonal/AGENTS.md +2 -2
- package/presets/cursor/php-hexagonal/README.md +3 -20
- package/presets/cursor/php-hexagonal/REPO_AGENTS.md +36 -9
- package/presets/cursor/php-hexagonal/agents/README.md +1 -1
- package/presets/cursor/php-hexagonal/agents/api-contract-reviewer.md +1 -1
- package/presets/cursor/php-hexagonal/agents/build-verifier.md +3 -3
- package/presets/cursor/php-hexagonal/agents/code-reviewer.md +6 -6
- package/presets/cursor/php-hexagonal/agents/debugger.md +1 -1
- package/presets/cursor/php-hexagonal/agents/feature-developer.md +3 -3
- package/presets/cursor/php-hexagonal/agents/integration-test-generator.md +1 -1
- package/presets/cursor/php-hexagonal/agents/integration-test-healer.md +1 -1
- package/presets/cursor/php-hexagonal/agents/integration-test-planner.md +1 -1
- package/presets/cursor/php-hexagonal/agents/migration-specialist.md +1 -1
- package/presets/cursor/php-hexagonal/agents/openspec-author.md +5 -5
- package/presets/cursor/php-hexagonal/agents/performance-auditor.md +1 -1
- package/presets/cursor/php-hexagonal/agents/qa-tester.md +1 -1
- package/presets/cursor/php-hexagonal/agents/security-reviewer.md +1 -1
- package/presets/cursor/php-hexagonal/agents/solution-architect.md +1 -1
- package/presets/cursor/php-hexagonal/agents/task-analyst.md +2 -2
- package/presets/cursor/php-hexagonal/agents/task-router.md +4 -4
- package/presets/cursor/php-hexagonal/agents/unit-test-planner.md +1 -1
- package/presets/cursor/php-hexagonal/ai-local/conventions.md +21 -0
- package/presets/cursor/php-hexagonal/commands/README.md +2 -2
- package/presets/cursor/php-hexagonal/commands/spec-start.md +2 -2
- package/presets/cursor/php-hexagonal/commands/task-continue.md +2 -2
- package/presets/cursor/php-hexagonal/commands/task.md +2 -2
- package/presets/cursor/php-hexagonal/commands/technical-retro.md +4 -4
- package/presets/cursor/php-hexagonal/hooks/README.md +1 -1
- package/presets/cursor/php-hexagonal/hooks/chain-team-phases.sh +69 -9
- package/presets/cursor/php-hexagonal/rules/README.md +2 -2
- package/presets/cursor/php-hexagonal/rules/agent-team-orchestrator.mdc +3 -3
- package/presets/cursor/php-hexagonal/rules/ai-local-overlay.mdc +2 -2
- package/presets/cursor/php-hexagonal/rules/code-quality-and-refactoring.mdc +6 -0
- package/presets/cursor/php-hexagonal/rules/preset-layering.mdc +2 -2
- package/presets/cursor/php-hexagonal/rules/preset-no-cross-stack-leakage.mdc +1 -1
- package/presets/cursor/php-hexagonal/rules/preset-pr-checklist.mdc +4 -4
- package/presets/cursor/php-hexagonal/rules/preset-token-budget.mdc +11 -11
- package/presets/cursor/php-hexagonal/rules/preset-twin-sync.mdc +27 -9
- package/presets/cursor/php-hexagonal/rules/reference-features.mdc +1 -1
- package/presets/cursor/php-hexagonal/skills/spec-discovery/SKILL.md +2 -2
- package/presets/cursor/php-hexagonal/skills/technical-retro/SKILL.md +2 -2
- package/presets/cursor/php-hexagonal/skills/write-adr/SKILL.md +2 -2
- package/presets/cursor/php-hexagonal/team/README.md +59 -42
- package/presets/cursor/php-laravel/AGENTS.md +2 -2
- package/presets/cursor/php-laravel/README.md +3 -27
- package/presets/cursor/php-laravel/REPO_AGENTS.md +36 -9
- package/presets/cursor/php-laravel/agents/README.md +1 -1
- package/presets/cursor/php-laravel/agents/api-contract-reviewer.md +1 -1
- package/presets/cursor/php-laravel/agents/build-verifier.md +3 -3
- package/presets/cursor/php-laravel/agents/code-reviewer.md +6 -6
- package/presets/cursor/php-laravel/agents/debugger.md +1 -1
- package/presets/cursor/php-laravel/agents/feature-developer.md +3 -3
- package/presets/cursor/php-laravel/agents/integration-test-generator.md +1 -1
- package/presets/cursor/php-laravel/agents/integration-test-healer.md +1 -1
- package/presets/cursor/php-laravel/agents/integration-test-planner.md +1 -1
- package/presets/cursor/php-laravel/agents/migration-specialist.md +1 -1
- package/presets/cursor/php-laravel/agents/openspec-author.md +5 -5
- package/presets/cursor/php-laravel/agents/performance-auditor.md +1 -1
- package/presets/cursor/php-laravel/agents/qa-tester.md +1 -1
- package/presets/cursor/php-laravel/agents/security-reviewer.md +1 -1
- package/presets/cursor/php-laravel/agents/solution-architect.md +1 -1
- package/presets/cursor/php-laravel/agents/task-analyst.md +2 -2
- package/presets/cursor/php-laravel/agents/task-router.md +4 -4
- package/presets/cursor/php-laravel/agents/unit-test-planner.md +1 -1
- package/presets/cursor/php-laravel/ai-local/conventions.md +21 -0
- package/presets/cursor/php-laravel/commands/README.md +2 -2
- package/presets/cursor/php-laravel/commands/spec-start.md +2 -2
- package/presets/cursor/php-laravel/commands/task-continue.md +2 -2
- package/presets/cursor/php-laravel/commands/task.md +2 -2
- package/presets/cursor/php-laravel/commands/technical-retro.md +4 -4
- package/presets/cursor/php-laravel/hooks/README.md +1 -1
- package/presets/cursor/php-laravel/hooks/chain-team-phases.sh +69 -9
- package/presets/cursor/php-laravel/rules/README.md +2 -2
- package/presets/cursor/php-laravel/rules/agent-team-orchestrator.mdc +3 -3
- package/presets/cursor/php-laravel/rules/ai-local-overlay.mdc +2 -2
- package/presets/cursor/php-laravel/rules/code-quality-and-refactoring.mdc +6 -0
- package/presets/cursor/php-laravel/rules/preset-layering.mdc +2 -2
- package/presets/cursor/php-laravel/rules/preset-no-cross-stack-leakage.mdc +1 -1
- package/presets/cursor/php-laravel/rules/preset-pr-checklist.mdc +4 -4
- package/presets/cursor/php-laravel/rules/preset-token-budget.mdc +11 -11
- package/presets/cursor/php-laravel/rules/preset-twin-sync.mdc +27 -9
- package/presets/cursor/php-laravel/rules/reference-features.mdc +1 -1
- package/presets/cursor/php-laravel/skills/spec-discovery/SKILL.md +2 -2
- package/presets/cursor/php-laravel/skills/technical-retro/SKILL.md +2 -2
- package/presets/cursor/php-laravel/skills/write-adr/SKILL.md +2 -2
- package/presets/cursor/php-laravel/team/README.md +64 -22
- package/presets/cursor/svelte/AGENTS.md +1 -1
- package/presets/cursor/svelte/README.md +9 -40
- package/presets/cursor/svelte/REPO_AGENTS.md +34 -8
- package/presets/cursor/svelte/agents/README.md +5 -113
- package/presets/cursor/svelte/agents/accessibility-reviewer.md +4 -4
- package/presets/cursor/svelte/agents/api-contract-reviewer.md +3 -3
- package/presets/cursor/svelte/agents/build-verifier.md +6 -6
- package/presets/cursor/svelte/agents/ci-investigator.md +3 -3
- package/presets/cursor/svelte/agents/code-reviewer.md +5 -5
- package/presets/cursor/svelte/agents/debugger.md +4 -4
- package/presets/cursor/svelte/agents/feature-developer.md +3 -3
- package/presets/cursor/svelte/agents/migration-specialist.md +3 -3
- package/presets/cursor/svelte/agents/mockup-reviewer.md +4 -4
- package/presets/cursor/svelte/agents/openspec-author.md +5 -5
- package/presets/cursor/svelte/agents/performance-auditor.md +3 -3
- package/presets/cursor/svelte/agents/playwright-test-generator.md +1 -1
- package/presets/cursor/svelte/agents/qa-tester.md +3 -3
- package/presets/cursor/svelte/agents/security-reviewer.md +4 -4
- package/presets/cursor/svelte/agents/solution-architect.md +4 -4
- package/presets/cursor/svelte/agents/task-analyst.md +6 -6
- package/presets/cursor/svelte/agents/task-router.md +4 -4
- package/presets/cursor/svelte/agents/tech-writer.md +3 -3
- package/presets/cursor/svelte/agents/unit-test-generator.md +3 -3
- package/presets/cursor/svelte/agents/unit-test-healer.md +2 -2
- package/presets/cursor/svelte/agents/unit-test-planner.md +3 -3
- package/presets/cursor/svelte/ai-local/conventions.md +21 -0
- package/presets/cursor/svelte/commands/README.md +2 -2
- package/presets/cursor/svelte/commands/spec-start.md +2 -2
- package/presets/cursor/svelte/commands/task-continue.md +2 -2
- package/presets/cursor/svelte/commands/task.md +2 -2
- package/presets/cursor/svelte/commands/technical-retro.md +4 -4
- package/presets/cursor/svelte/hooks/README.md +1 -1
- package/presets/cursor/svelte/hooks/chain-team-phases.sh +69 -11
- package/presets/cursor/svelte/rules/README.md +1 -1
- package/presets/cursor/svelte/rules/agent-team-orchestrator.mdc +5 -5
- package/presets/cursor/svelte/rules/ai-local-overlay.mdc +2 -2
- package/presets/cursor/svelte/rules/code-quality-and-refactoring.mdc +6 -0
- package/presets/cursor/svelte/rules/layer-barrel-exports.mdc +1 -1
- package/presets/cursor/svelte/rules/preset-layering.mdc +3 -3
- package/presets/cursor/svelte/rules/preset-no-cross-stack-leakage.mdc +2 -2
- package/presets/cursor/svelte/rules/preset-pr-checklist.mdc +5 -5
- package/presets/cursor/svelte/rules/preset-token-budget.mdc +12 -12
- package/presets/cursor/svelte/rules/preset-twin-sync.mdc +28 -10
- package/presets/cursor/svelte/rules/reference-features.mdc +2 -2
- package/presets/cursor/svelte/rules/svelte-ui.mdc +7 -0
- package/presets/cursor/svelte/skills/code-review/SKILL.md +2 -2
- package/presets/cursor/svelte/skills/debug-investigation/SKILL.md +1 -1
- package/presets/cursor/svelte/skills/mockup-review/SKILL.md +1 -1
- package/presets/cursor/svelte/skills/spec-discovery/SKILL.md +2 -2
- package/presets/cursor/svelte/skills/technical-retro/SKILL.md +2 -2
- package/presets/cursor/svelte/skills/unit-testing/SKILL.md +1 -1
- package/presets/cursor/svelte/skills/ux-design/SKILL.md +1 -1
- package/presets/cursor/svelte/skills/write-adr/SKILL.md +2 -2
- package/presets/cursor/svelte/team/README.md +35 -106
- package/presets/mavis/README.md +8 -50
- package/presets/mavis/android-kotlin/MAVIS.md +79 -0
- package/presets/mavis/android-kotlin/MCP.md +35 -0
- package/presets/mavis/android-kotlin/README.md +16 -0
- package/presets/mavis/android-kotlin/REPO_AGENTS.md +74 -0
- package/presets/mavis/android-kotlin/adapter-map.json +812 -0
- package/presets/mavis/android-kotlin/agents/README.md +59 -0
- package/presets/mavis/android-kotlin/agents/accessibility-reviewer.md +59 -0
- package/presets/mavis/android-kotlin/agents/api-contract-reviewer.md +63 -0
- package/presets/mavis/android-kotlin/agents/build-verifier.md +77 -0
- package/presets/mavis/android-kotlin/agents/ci-investigator.md +76 -0
- package/presets/mavis/android-kotlin/agents/code-reviewer.md +73 -0
- package/presets/mavis/android-kotlin/agents/codebase-analyzer.md +21 -0
- package/presets/mavis/android-kotlin/agents/debugger.md +84 -0
- package/presets/mavis/android-kotlin/agents/feature-developer.md +102 -0
- package/presets/mavis/android-kotlin/agents/instrumentation-test-generator.md +14 -0
- package/presets/mavis/android-kotlin/agents/instrumentation-test-healer.md +14 -0
- package/presets/mavis/android-kotlin/agents/instrumentation-test-planner.md +14 -0
- package/presets/mavis/android-kotlin/agents/migration-specialist.md +73 -0
- package/presets/mavis/android-kotlin/agents/mockup-reviewer.md +53 -0
- package/presets/mavis/android-kotlin/agents/openspec-author.md +157 -0
- package/presets/mavis/android-kotlin/agents/performance-auditor.md +66 -0
- package/presets/mavis/android-kotlin/agents/qa-tester.md +61 -0
- package/presets/mavis/android-kotlin/agents/security-reviewer.md +58 -0
- package/presets/mavis/android-kotlin/agents/solution-architect.md +20 -0
- package/presets/mavis/android-kotlin/agents/task-analyst.md +92 -0
- package/presets/mavis/android-kotlin/agents/task-router.md +144 -0
- package/presets/mavis/android-kotlin/agents/tech-writer.md +63 -0
- package/presets/mavis/android-kotlin/agents/unit-test-generator.md +48 -0
- package/presets/mavis/android-kotlin/agents/unit-test-healer.md +47 -0
- package/presets/mavis/android-kotlin/agents/unit-test-planner.md +58 -0
- package/presets/mavis/android-kotlin/ai-local/conventions.md +17 -0
- package/presets/mavis/android-kotlin/commands/README.md +49 -0
- package/presets/mavis/android-kotlin/commands/spec-start.md +24 -0
- package/presets/mavis/android-kotlin/commands/task-continue.md +50 -0
- package/presets/mavis/android-kotlin/commands/task.md +49 -0
- package/presets/mavis/android-kotlin/commands/technical-retro.md +80 -0
- package/presets/mavis/android-kotlin/hooks/README.md +22 -0
- package/presets/mavis/android-kotlin/hooks/chain-team-phases.sh +901 -0
- package/presets/mavis/android-kotlin/mcp.json +11 -0
- package/presets/mavis/android-kotlin/rules/README.md +16 -0
- package/presets/mavis/android-kotlin/rules/agent-team-intake.md +11 -0
- package/presets/mavis/android-kotlin/rules/agent-team-orchestrator.md +214 -0
- package/presets/mavis/android-kotlin/rules/ai-local-overlay.md +37 -0
- package/presets/mavis/android-kotlin/rules/android-app-core.md +23 -0
- package/presets/mavis/android-kotlin/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/mavis/android-kotlin/rules/architecture-boundaries.md +23 -0
- package/presets/mavis/android-kotlin/rules/code-quality-and-refactoring.md +54 -0
- package/presets/mavis/android-kotlin/rules/code-review-mr.md +79 -0
- package/presets/mavis/android-kotlin/rules/compose-ui.md +25 -0
- package/presets/mavis/android-kotlin/rules/design-guidance.md +104 -0
- package/presets/mavis/android-kotlin/rules/di-dagger-feature-holders.md +26 -0
- package/presets/mavis/android-kotlin/rules/feature-delivery-workflow.md +39 -0
- package/presets/mavis/android-kotlin/rules/gradle-tooling.md +22 -0
- package/presets/mavis/android-kotlin/rules/kotlin-conventions.md +24 -0
- package/presets/mavis/android-kotlin/rules/mcp-usage.md +94 -0
- package/presets/mavis/android-kotlin/rules/mockup-review.md +111 -0
- package/presets/mavis/android-kotlin/rules/module-public-api.md +22 -0
- package/presets/mavis/android-kotlin/rules/navigation-feature-launcher.md +23 -0
- package/presets/mavis/android-kotlin/rules/networking-data.md +23 -0
- package/presets/mavis/android-kotlin/rules/persistence-data.md +22 -0
- package/presets/mavis/android-kotlin/rules/post-change-build.md +25 -0
- package/presets/mavis/android-kotlin/rules/preset-layering.md +27 -0
- package/presets/mavis/android-kotlin/rules/preset-no-cross-stack-leakage.md +94 -0
- package/presets/mavis/android-kotlin/rules/preset-pr-checklist.md +36 -0
- package/presets/mavis/android-kotlin/rules/preset-token-budget.md +39 -0
- package/presets/mavis/android-kotlin/rules/preset-twin-sync.md +99 -0
- package/presets/mavis/android-kotlin/rules/product-specs-authoring.md +118 -0
- package/presets/mavis/android-kotlin/rules/product-specs.md +61 -0
- package/presets/mavis/android-kotlin/rules/reference-features.md +22 -0
- package/presets/mavis/android-kotlin/rules/security-android.md +21 -0
- package/presets/mavis/android-kotlin/rules/state-and-viewmodels.md +21 -0
- package/presets/mavis/android-kotlin/rules/technical-retro.md +11 -0
- package/presets/mavis/android-kotlin/rules/tests-ui.md +22 -0
- package/presets/mavis/android-kotlin/rules/tests-unit.md +22 -0
- package/presets/mavis/android-kotlin/rules/ux-design.md +103 -0
- package/presets/mavis/android-kotlin/skills/README.md +18 -0
- package/presets/mavis/android-kotlin/skills/ci-investigation/SKILL.md +42 -0
- package/presets/mavis/android-kotlin/skills/code-review/SKILL.md +40 -0
- package/presets/mavis/android-kotlin/skills/debug-investigation/SKILL.md +65 -0
- package/presets/mavis/android-kotlin/skills/feature-delivery/SKILL.md +40 -0
- package/presets/mavis/android-kotlin/skills/instrumentation-ui-e2e/SKILL.md +12 -0
- package/presets/mavis/android-kotlin/skills/mockup-review/SKILL.md +24 -0
- package/presets/mavis/android-kotlin/skills/spec-authoring/SKILL.md +21 -0
- package/presets/mavis/android-kotlin/skills/spec-discovery/SKILL.md +53 -0
- package/presets/mavis/android-kotlin/skills/technical-retro/SKILL.md +49 -0
- package/presets/mavis/android-kotlin/skills/unit-testing/SKILL.md +27 -0
- package/presets/mavis/android-kotlin/skills/ux-design/SKILL.md +31 -0
- package/presets/mavis/android-kotlin/skills/write-adr/SKILL.md +36 -0
- package/presets/mavis/android-kotlin/team/README.md +77 -0
- package/presets/mavis/android-kotlin/team/fixtures/artifact-manifest.example.json +25 -0
- package/presets/mavis/android-kotlin/team/fixtures/bugfix-standard.json +47 -0
- package/presets/mavis/android-kotlin/team/fixtures/feature-full.json +98 -0
- package/presets/mavis/android-kotlin/team/fixtures/feature-light.json +38 -0
- package/presets/mavis/android-kotlin/team/fixtures/feature-with-figma-url.json +17 -0
- package/presets/mavis/android-kotlin/team/fixtures/feature-with-ux-no-figma.json +17 -0
- package/presets/mavis/android-kotlin/team/fixtures/memlog.example.md +9 -0
- package/presets/mavis/android-kotlin/team/fixtures/mockup-review-fail-embedded-status.json +8 -0
- package/presets/mavis/android-kotlin/team/fixtures/mockup-review-standalone.json +14 -0
- package/presets/mavis/android-kotlin/team/fixtures/ux-design-standalone.json +15 -0
- package/presets/mavis/go/MAVIS.md +55 -0
- package/presets/mavis/go/MCP.md +37 -0
- package/presets/mavis/go/README.md +16 -0
- package/presets/mavis/go/REPO_AGENTS.md +74 -0
- package/presets/mavis/go/adapter-map.json +755 -0
- package/presets/mavis/go/agents/README.md +48 -0
- package/presets/mavis/go/agents/api-contract-reviewer.md +17 -0
- package/presets/mavis/go/agents/build-verifier.md +54 -0
- package/presets/mavis/go/agents/ci-investigator.md +24 -0
- package/presets/mavis/go/agents/code-reviewer.md +48 -0
- package/presets/mavis/go/agents/codebase-analyzer.md +21 -0
- package/presets/mavis/go/agents/debugger.md +42 -0
- package/presets/mavis/go/agents/feature-developer.md +90 -0
- package/presets/mavis/go/agents/integration-test-generator.md +16 -0
- package/presets/mavis/go/agents/integration-test-healer.md +16 -0
- package/presets/mavis/go/agents/integration-test-planner.md +16 -0
- package/presets/mavis/go/agents/migration-specialist.md +31 -0
- package/presets/mavis/go/agents/openspec-author.md +157 -0
- package/presets/mavis/go/agents/performance-auditor.md +22 -0
- package/presets/mavis/go/agents/qa-tester.md +22 -0
- package/presets/mavis/go/agents/security-reviewer.md +14 -0
- package/presets/mavis/go/agents/solution-architect.md +28 -0
- package/presets/mavis/go/agents/task-analyst.md +71 -0
- package/presets/mavis/go/agents/task-router.md +133 -0
- package/presets/mavis/go/agents/tech-writer.md +17 -0
- package/presets/mavis/go/agents/unit-test-generator.md +15 -0
- package/presets/mavis/go/agents/unit-test-healer.md +7 -0
- package/presets/mavis/go/agents/unit-test-planner.md +20 -0
- package/presets/mavis/go/ai-local/conventions.md +21 -0
- package/presets/mavis/go/commands/README.md +52 -0
- package/presets/mavis/go/commands/spec-start.md +24 -0
- package/presets/mavis/go/commands/task-continue.md +48 -0
- package/presets/mavis/go/commands/task.md +47 -0
- package/presets/mavis/go/commands/technical-retro.md +80 -0
- package/presets/mavis/go/hooks/README.md +22 -0
- package/presets/mavis/go/hooks/chain-team-phases.sh +874 -0
- package/presets/mavis/go/mcp.json +11 -0
- package/presets/mavis/go/rules/README.md +16 -0
- package/presets/mavis/go/rules/adapters-driven.md +25 -0
- package/presets/mavis/go/rules/adapters-driving.md +26 -0
- package/presets/mavis/go/rules/agent-team-intake.md +15 -0
- package/presets/mavis/go/rules/agent-team-orchestrator.md +214 -0
- package/presets/mavis/go/rules/ai-local-overlay.md +37 -0
- package/presets/mavis/go/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/mavis/go/rules/api-grpc.md +20 -0
- package/presets/mavis/go/rules/api-http.md +25 -0
- package/presets/mavis/go/rules/application-usecases.md +26 -0
- package/presets/mavis/go/rules/architecture-boundaries.md +31 -0
- package/presets/mavis/go/rules/code-quality-and-refactoring.md +55 -0
- package/presets/mavis/go/rules/code-review-mr.md +47 -0
- package/presets/mavis/go/rules/composition-root.md +26 -0
- package/presets/mavis/go/rules/design-guidance.md +104 -0
- package/presets/mavis/go/rules/domain-layer.md +25 -0
- package/presets/mavis/go/rules/feature-delivery-workflow.md +49 -0
- package/presets/mavis/go/rules/go-app-core.md +27 -0
- package/presets/mavis/go/rules/go-conventions.md +45 -0
- package/presets/mavis/go/rules/go-tooling.md +28 -0
- package/presets/mavis/go/rules/mcp-usage.md +93 -0
- package/presets/mavis/go/rules/messaging-adapters.md +15 -0
- package/presets/mavis/go/rules/module-public-api.md +16 -0
- package/presets/mavis/go/rules/persistence-adapters.md +24 -0
- package/presets/mavis/go/rules/ports-interfaces.md +26 -0
- package/presets/mavis/go/rules/post-change-test.md +22 -0
- package/presets/mavis/go/rules/preset-layering.md +27 -0
- package/presets/mavis/go/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/mavis/go/rules/preset-pr-checklist.md +36 -0
- package/presets/mavis/go/rules/preset-token-budget.md +39 -0
- package/presets/mavis/go/rules/preset-twin-sync.md +99 -0
- package/presets/mavis/go/rules/product-specs-authoring.md +118 -0
- package/presets/mavis/go/rules/product-specs.md +62 -0
- package/presets/mavis/go/rules/reference-features.md +45 -0
- package/presets/mavis/go/rules/security-go.md +26 -0
- package/presets/mavis/go/rules/technical-retro.md +11 -0
- package/presets/mavis/go/rules/tests-e2e.md +13 -0
- package/presets/mavis/go/rules/tests-integration.md +22 -0
- package/presets/mavis/go/rules/tests-unit.md +18 -0
- package/presets/mavis/go/skills/README.md +5 -0
- package/presets/mavis/go/skills/ci-investigation/SKILL.md +13 -0
- package/presets/mavis/go/skills/code-review/SKILL.md +27 -0
- package/presets/mavis/go/skills/debug-investigation/SKILL.md +46 -0
- package/presets/mavis/go/skills/feature-delivery/SKILL.md +32 -0
- package/presets/mavis/go/skills/integration-testing/SKILL.md +10 -0
- package/presets/mavis/go/skills/spec-authoring/SKILL.md +21 -0
- package/presets/mavis/go/skills/spec-discovery/SKILL.md +53 -0
- package/presets/mavis/go/skills/technical-retro/SKILL.md +49 -0
- package/presets/mavis/go/skills/unit-testing/SKILL.md +9 -0
- package/presets/mavis/go/skills/write-adr/SKILL.md +36 -0
- package/presets/mavis/go/team/README.md +77 -0
- package/presets/mavis/go/team/fixtures/bugfix-standard.json +37 -0
- package/presets/mavis/go/team/fixtures/feature-full.json +61 -0
- package/presets/mavis/go/team/fixtures/feature-light.json +17 -0
- package/presets/mavis/go/team/fixtures/memlog.example.md +9 -0
- package/presets/mavis/ios-swift/MAVIS.md +79 -0
- package/presets/mavis/ios-swift/MCP.md +35 -0
- package/presets/mavis/ios-swift/README.md +16 -0
- package/presets/mavis/ios-swift/REPO_AGENTS.md +72 -0
- package/presets/mavis/ios-swift/adapter-map.json +805 -0
- package/presets/mavis/ios-swift/agents/README.md +77 -0
- package/presets/mavis/ios-swift/agents/accessibility-reviewer.md +57 -0
- package/presets/mavis/ios-swift/agents/api-contract-reviewer.md +56 -0
- package/presets/mavis/ios-swift/agents/build-verifier.md +95 -0
- package/presets/mavis/ios-swift/agents/ci-investigator.md +70 -0
- package/presets/mavis/ios-swift/agents/code-reviewer.md +73 -0
- package/presets/mavis/ios-swift/agents/codebase-analyzer.md +21 -0
- package/presets/mavis/ios-swift/agents/debugger.md +78 -0
- package/presets/mavis/ios-swift/agents/feature-developer.md +102 -0
- package/presets/mavis/ios-swift/agents/migration-specialist.md +67 -0
- package/presets/mavis/ios-swift/agents/mockup-reviewer.md +53 -0
- package/presets/mavis/ios-swift/agents/openspec-author.md +157 -0
- package/presets/mavis/ios-swift/agents/performance-auditor.md +66 -0
- package/presets/mavis/ios-swift/agents/qa-tester.md +55 -0
- package/presets/mavis/ios-swift/agents/security-reviewer.md +53 -0
- package/presets/mavis/ios-swift/agents/solution-architect.md +20 -0
- package/presets/mavis/ios-swift/agents/task-analyst.md +92 -0
- package/presets/mavis/ios-swift/agents/task-router.md +144 -0
- package/presets/mavis/ios-swift/agents/tech-writer.md +47 -0
- package/presets/mavis/ios-swift/agents/unit-test-generator.md +42 -0
- package/presets/mavis/ios-swift/agents/unit-test-healer.md +41 -0
- package/presets/mavis/ios-swift/agents/unit-test-planner.md +52 -0
- package/presets/mavis/ios-swift/agents/xcuitest-test-generator.md +30 -0
- package/presets/mavis/ios-swift/agents/xcuitest-test-healer.md +30 -0
- package/presets/mavis/ios-swift/agents/xcuitest-test-planner.md +48 -0
- package/presets/mavis/ios-swift/ai-local/conventions.md +21 -0
- package/presets/mavis/ios-swift/commands/README.md +49 -0
- package/presets/mavis/ios-swift/commands/spec-start.md +24 -0
- package/presets/mavis/ios-swift/commands/task-continue.md +50 -0
- package/presets/mavis/ios-swift/commands/task.md +49 -0
- package/presets/mavis/ios-swift/commands/technical-retro.md +80 -0
- package/presets/mavis/ios-swift/hooks/README.md +22 -0
- package/presets/mavis/ios-swift/hooks/chain-team-phases.sh +901 -0
- package/presets/mavis/ios-swift/mcp.json +11 -0
- package/presets/mavis/ios-swift/rules/README.md +16 -0
- package/presets/mavis/ios-swift/rules/agent-team-intake.md +11 -0
- package/presets/mavis/ios-swift/rules/agent-team-orchestrator.md +214 -0
- package/presets/mavis/ios-swift/rules/ai-local-overlay.md +37 -0
- package/presets/mavis/ios-swift/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/mavis/ios-swift/rules/architecture-boundaries.md +29 -0
- package/presets/mavis/ios-swift/rules/code-quality-and-refactoring.md +54 -0
- package/presets/mavis/ios-swift/rules/code-review-mr.md +79 -0
- package/presets/mavis/ios-swift/rules/design-guidance.md +104 -0
- package/presets/mavis/ios-swift/rules/feature-delivery-workflow.md +115 -0
- package/presets/mavis/ios-swift/rules/ios-app-core.md +16 -0
- package/presets/mavis/ios-swift/rules/mcp-usage.md +94 -0
- package/presets/mavis/ios-swift/rules/mockup-review.md +111 -0
- package/presets/mavis/ios-swift/rules/module-public-api.md +17 -0
- package/presets/mavis/ios-swift/rules/navigation-coordinators.md +18 -0
- package/presets/mavis/ios-swift/rules/networking-services.md +43 -0
- package/presets/mavis/ios-swift/rules/persistence-data.md +20 -0
- package/presets/mavis/ios-swift/rules/post-change-build.md +27 -0
- package/presets/mavis/ios-swift/rules/preset-layering.md +27 -0
- package/presets/mavis/ios-swift/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/mavis/ios-swift/rules/preset-pr-checklist.md +36 -0
- package/presets/mavis/ios-swift/rules/preset-token-budget.md +39 -0
- package/presets/mavis/ios-swift/rules/preset-twin-sync.md +99 -0
- package/presets/mavis/ios-swift/rules/product-specs-authoring.md +118 -0
- package/presets/mavis/ios-swift/rules/product-specs.md +61 -0
- package/presets/mavis/ios-swift/rules/reference-features.md +94 -0
- package/presets/mavis/ios-swift/rules/security-ios.md +24 -0
- package/presets/mavis/ios-swift/rules/state-and-viewmodels.md +37 -0
- package/presets/mavis/ios-swift/rules/swift-conventions.md +55 -0
- package/presets/mavis/ios-swift/rules/swiftui-ui.md +70 -0
- package/presets/mavis/ios-swift/rules/technical-retro.md +11 -0
- package/presets/mavis/ios-swift/rules/tests-ui.md +37 -0
- package/presets/mavis/ios-swift/rules/tests-unit.md +35 -0
- package/presets/mavis/ios-swift/rules/ux-design.md +103 -0
- package/presets/mavis/ios-swift/rules/xcode-tooling.md +15 -0
- package/presets/mavis/ios-swift/skills/README.md +18 -0
- package/presets/mavis/ios-swift/skills/ci-investigation/SKILL.md +42 -0
- package/presets/mavis/ios-swift/skills/code-review/SKILL.md +40 -0
- package/presets/mavis/ios-swift/skills/debug-investigation/SKILL.md +65 -0
- package/presets/mavis/ios-swift/skills/feature-delivery/SKILL.md +40 -0
- package/presets/mavis/ios-swift/skills/mockup-review/SKILL.md +24 -0
- package/presets/mavis/ios-swift/skills/spec-authoring/SKILL.md +21 -0
- package/presets/mavis/ios-swift/skills/spec-discovery/SKILL.md +53 -0
- package/presets/mavis/ios-swift/skills/technical-retro/SKILL.md +49 -0
- package/presets/mavis/ios-swift/skills/unit-testing/SKILL.md +27 -0
- package/presets/mavis/ios-swift/skills/ux-design/SKILL.md +31 -0
- package/presets/mavis/ios-swift/skills/write-adr/SKILL.md +36 -0
- package/presets/mavis/ios-swift/skills/xcuitest-e2e/SKILL.md +28 -0
- package/presets/mavis/ios-swift/team/README.md +77 -0
- package/presets/mavis/ios-swift/team/fixtures/artifact-manifest.example.json +25 -0
- package/presets/mavis/ios-swift/team/fixtures/bugfix-standard.json +33 -0
- package/presets/mavis/ios-swift/team/fixtures/feature-full.json +61 -0
- package/presets/mavis/ios-swift/team/fixtures/feature-light.json +17 -0
- package/presets/mavis/ios-swift/team/fixtures/feature-with-figma-url.json +17 -0
- package/presets/mavis/ios-swift/team/fixtures/feature-with-ux-no-figma.json +17 -0
- package/presets/mavis/ios-swift/team/fixtures/memlog.example.md +9 -0
- package/presets/mavis/ios-swift/team/fixtures/mockup-review-fail-embedded-status.json +8 -0
- package/presets/mavis/ios-swift/team/fixtures/mockup-review-standalone.json +14 -0
- package/presets/mavis/ios-swift/team/fixtures/ux-design-standalone.json +15 -0
- package/presets/mavis/java/MAVIS.md +56 -0
- package/presets/mavis/java/MCP.md +34 -0
- package/presets/mavis/java/README.md +16 -0
- package/presets/mavis/java/REPO_AGENTS.md +72 -0
- package/presets/mavis/java/adapter-map.json +755 -0
- package/presets/mavis/java/agents/README.md +48 -0
- package/presets/mavis/java/agents/api-contract-reviewer.md +17 -0
- package/presets/mavis/java/agents/build-verifier.md +64 -0
- package/presets/mavis/java/agents/ci-investigator.md +24 -0
- package/presets/mavis/java/agents/code-reviewer.md +48 -0
- package/presets/mavis/java/agents/codebase-analyzer.md +21 -0
- package/presets/mavis/java/agents/debugger.md +42 -0
- package/presets/mavis/java/agents/feature-developer.md +90 -0
- package/presets/mavis/java/agents/integration-test-generator.md +16 -0
- package/presets/mavis/java/agents/integration-test-healer.md +16 -0
- package/presets/mavis/java/agents/integration-test-planner.md +16 -0
- package/presets/mavis/java/agents/migration-specialist.md +31 -0
- package/presets/mavis/java/agents/openspec-author.md +157 -0
- package/presets/mavis/java/agents/performance-auditor.md +22 -0
- package/presets/mavis/java/agents/qa-tester.md +22 -0
- package/presets/mavis/java/agents/security-reviewer.md +14 -0
- package/presets/mavis/java/agents/solution-architect.md +28 -0
- package/presets/mavis/java/agents/task-analyst.md +71 -0
- package/presets/mavis/java/agents/task-router.md +133 -0
- package/presets/mavis/java/agents/tech-writer.md +17 -0
- package/presets/mavis/java/agents/unit-test-generator.md +15 -0
- package/presets/mavis/java/agents/unit-test-healer.md +7 -0
- package/presets/mavis/java/agents/unit-test-planner.md +20 -0
- package/presets/mavis/java/ai-local/conventions.md +21 -0
- package/presets/mavis/java/commands/README.md +52 -0
- package/presets/mavis/java/commands/spec-start.md +24 -0
- package/presets/mavis/java/commands/task-continue.md +48 -0
- package/presets/mavis/java/commands/task.md +47 -0
- package/presets/mavis/java/commands/technical-retro.md +80 -0
- package/presets/mavis/java/hooks/README.md +22 -0
- package/presets/mavis/java/hooks/chain-team-phases.sh +874 -0
- package/presets/mavis/java/mcp.json +11 -0
- package/presets/mavis/java/rules/README.md +16 -0
- package/presets/mavis/java/rules/adapters-driven.md +30 -0
- package/presets/mavis/java/rules/adapters-driving.md +30 -0
- package/presets/mavis/java/rules/agent-team-intake.md +15 -0
- package/presets/mavis/java/rules/agent-team-orchestrator.md +214 -0
- package/presets/mavis/java/rules/ai-local-overlay.md +37 -0
- package/presets/mavis/java/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/mavis/java/rules/api-grpc.md +22 -0
- package/presets/mavis/java/rules/api-http.md +28 -0
- package/presets/mavis/java/rules/application-usecases.md +26 -0
- package/presets/mavis/java/rules/architecture-boundaries.md +31 -0
- package/presets/mavis/java/rules/code-quality-and-refactoring.md +55 -0
- package/presets/mavis/java/rules/code-review-mr.md +49 -0
- package/presets/mavis/java/rules/composition-root.md +25 -0
- package/presets/mavis/java/rules/design-guidance.md +105 -0
- package/presets/mavis/java/rules/domain-layer.md +32 -0
- package/presets/mavis/java/rules/feature-delivery-workflow.md +49 -0
- package/presets/mavis/java/rules/java-app-core.md +28 -0
- package/presets/mavis/java/rules/java-conventions.md +47 -0
- package/presets/mavis/java/rules/java-tooling.md +24 -0
- package/presets/mavis/java/rules/mcp-usage.md +92 -0
- package/presets/mavis/java/rules/messaging-adapters.md +23 -0
- package/presets/mavis/java/rules/module-public-api.md +23 -0
- package/presets/mavis/java/rules/persistence-adapters.md +25 -0
- package/presets/mavis/java/rules/ports-interfaces.md +27 -0
- package/presets/mavis/java/rules/post-change-test.md +20 -0
- package/presets/mavis/java/rules/preset-layering.md +27 -0
- package/presets/mavis/java/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/mavis/java/rules/preset-pr-checklist.md +36 -0
- package/presets/mavis/java/rules/preset-token-budget.md +39 -0
- package/presets/mavis/java/rules/preset-twin-sync.md +99 -0
- package/presets/mavis/java/rules/product-specs-authoring.md +118 -0
- package/presets/mavis/java/rules/product-specs.md +62 -0
- package/presets/mavis/java/rules/reference-features.md +45 -0
- package/presets/mavis/java/rules/security-java.md +21 -0
- package/presets/mavis/java/rules/technical-retro.md +11 -0
- package/presets/mavis/java/rules/tests-e2e.md +15 -0
- package/presets/mavis/java/rules/tests-integration.md +19 -0
- package/presets/mavis/java/rules/tests-unit.md +26 -0
- package/presets/mavis/java/skills/README.md +5 -0
- package/presets/mavis/java/skills/ci-investigation/SKILL.md +13 -0
- package/presets/mavis/java/skills/code-review/SKILL.md +27 -0
- package/presets/mavis/java/skills/debug-investigation/SKILL.md +46 -0
- package/presets/mavis/java/skills/feature-delivery/SKILL.md +32 -0
- package/presets/mavis/java/skills/integration-testing/SKILL.md +10 -0
- package/presets/mavis/java/skills/spec-authoring/SKILL.md +21 -0
- package/presets/mavis/java/skills/spec-discovery/SKILL.md +53 -0
- package/presets/mavis/java/skills/technical-retro/SKILL.md +49 -0
- package/presets/mavis/java/skills/unit-testing/SKILL.md +9 -0
- package/presets/mavis/java/skills/write-adr/SKILL.md +36 -0
- package/presets/mavis/java/team/README.md +77 -0
- package/presets/mavis/java/team/fixtures/bugfix-standard.json +37 -0
- package/presets/mavis/java/team/fixtures/feature-full.json +61 -0
- package/presets/mavis/java/team/fixtures/feature-light.json +17 -0
- package/presets/mavis/java/team/fixtures/memlog.example.md +9 -0
- package/presets/mavis/mcp-ts/MAVIS.md +54 -0
- package/presets/mavis/mcp-ts/MCP.md +56 -0
- package/presets/mavis/mcp-ts/README.md +16 -0
- package/presets/mavis/mcp-ts/REPO_AGENTS.md +75 -0
- package/presets/mavis/mcp-ts/adapter-map.json +520 -0
- package/presets/mavis/mcp-ts/agents/README.md +44 -0
- package/presets/mavis/mcp-ts/agents/build-verifier.md +58 -0
- package/presets/mavis/mcp-ts/agents/feature-developer.md +89 -0
- package/presets/mavis/mcp-ts/agents/security-reviewer.md +15 -0
- package/presets/mavis/mcp-ts/agents/solution-architect.md +22 -0
- package/presets/mavis/mcp-ts/agents/task-analyst.md +74 -0
- package/presets/mavis/mcp-ts/agents/task-router.md +129 -0
- package/presets/mavis/mcp-ts/ai-local/conventions.md +14 -0
- package/presets/mavis/mcp-ts/commands/README.md +9 -0
- package/presets/mavis/mcp-ts/commands/spec-start.md +24 -0
- package/presets/mavis/mcp-ts/commands/task-continue.md +48 -0
- package/presets/mavis/mcp-ts/commands/task.md +47 -0
- package/presets/mavis/mcp-ts/commands/technical-retro.md +80 -0
- package/presets/mavis/mcp-ts/hooks/README.md +22 -0
- package/presets/mavis/mcp-ts/hooks/chain-team-phases.sh +819 -0
- package/presets/mavis/mcp-ts/mcp.json +11 -0
- package/presets/mavis/mcp-ts/rules/README.md +16 -0
- package/presets/mavis/mcp-ts/rules/agent-team-intake.md +16 -0
- package/presets/mavis/mcp-ts/rules/agent-team-orchestrator.md +214 -0
- package/presets/mavis/mcp-ts/rules/ai-local-overlay.md +37 -0
- package/presets/mavis/mcp-ts/rules/anti-sycophancy-discipline.md +27 -0
- package/presets/mavis/mcp-ts/rules/code-quality-and-refactoring.md +55 -0
- package/presets/mavis/mcp-ts/rules/code-review-mr.md +46 -0
- package/presets/mavis/mcp-ts/rules/design-guidance.md +104 -0
- package/presets/mavis/mcp-ts/rules/feature-delivery-workflow.md +49 -0
- package/presets/mavis/mcp-ts/rules/mcp-auth-secrets.md +35 -0
- package/presets/mavis/mcp-ts/rules/mcp-contract-testing.md +32 -0
- package/presets/mavis/mcp-ts/rules/mcp-server-boundaries.md +24 -0
- package/presets/mavis/mcp-ts/rules/mcp-tool-design.md +29 -0
- package/presets/mavis/mcp-ts/rules/mcp-transport-packaging.md +34 -0
- package/presets/mavis/mcp-ts/rules/mcp-ts-app-core.md +23 -0
- package/presets/mavis/mcp-ts/rules/mcp-ts-conventions.md +22 -0
- package/presets/mavis/mcp-ts/rules/mcp-ts-tooling.md +21 -0
- package/presets/mavis/mcp-ts/rules/mcp-usage.md +93 -0
- package/presets/mavis/mcp-ts/rules/post-change-test.md +21 -0
- package/presets/mavis/mcp-ts/rules/preset-layering.md +27 -0
- package/presets/mavis/mcp-ts/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/mavis/mcp-ts/rules/preset-pr-checklist.md +36 -0
- package/presets/mavis/mcp-ts/rules/preset-token-budget.md +39 -0
- package/presets/mavis/mcp-ts/rules/preset-twin-sync.md +99 -0
- package/presets/mavis/mcp-ts/rules/product-specs-authoring.md +118 -0
- package/presets/mavis/mcp-ts/rules/product-specs.md +62 -0
- package/presets/mavis/mcp-ts/rules/reference-features.md +45 -0
- package/presets/mavis/mcp-ts/rules/security-mcp.md +43 -0
- package/presets/mavis/mcp-ts/rules/technical-retro.md +11 -0
- package/presets/mavis/mcp-ts/rules/tests-unit.md +23 -0
- package/presets/mavis/mcp-ts/skills/README.md +14 -0
- package/presets/mavis/mcp-ts/skills/code-review/SKILL.md +12 -0
- package/presets/mavis/mcp-ts/skills/debug-investigation/SKILL.md +41 -0
- package/presets/mavis/mcp-ts/skills/feature-delivery/SKILL.md +31 -0
- package/presets/mavis/mcp-ts/skills/spec-authoring/SKILL.md +21 -0
- package/presets/mavis/mcp-ts/skills/spec-discovery/SKILL.md +53 -0
- package/presets/mavis/mcp-ts/skills/unit-testing/SKILL.md +11 -0
- package/presets/mavis/mcp-ts/team/README.md +77 -0
- package/presets/mavis/mcp-ts/team/fixtures/bugfix-standard.json +32 -0
- package/presets/mavis/mcp-ts/team/fixtures/feature-full.json +36 -0
- package/presets/mavis/mcp-ts/team/fixtures/feature-light.json +34 -0
- package/presets/mavis/mcp-ts/team/fixtures/memlog.example.md +9 -0
- package/presets/mavis/next/MAVIS.md +5 -4
- package/presets/mavis/next/README.md +4 -3
- package/presets/mavis/next/REPO_AGENTS.md +4 -4
- package/presets/mavis/next/adapter-map.json +26 -26
- package/presets/mavis/next/agents/README.md +2 -118
- package/presets/mavis/next/agents/accessibility-reviewer.md +4 -4
- package/presets/mavis/next/agents/api-contract-reviewer.md +3 -3
- package/presets/mavis/next/agents/build-verifier.md +6 -6
- package/presets/mavis/next/agents/ci-investigator.md +3 -3
- package/presets/mavis/next/agents/code-reviewer.md +5 -5
- package/presets/mavis/next/agents/debugger.md +4 -4
- package/presets/mavis/next/agents/feature-developer.md +3 -3
- package/presets/mavis/next/agents/migration-specialist.md +3 -3
- package/presets/mavis/next/agents/mockup-reviewer.md +4 -4
- package/presets/mavis/next/agents/openspec-author.md +5 -5
- package/presets/mavis/next/agents/performance-auditor.md +3 -3
- package/presets/mavis/next/agents/playwright-test-generator.md +1 -1
- package/presets/mavis/next/agents/qa-tester.md +3 -3
- package/presets/mavis/next/agents/security-reviewer.md +4 -4
- package/presets/mavis/next/agents/solution-architect.md +4 -4
- package/presets/mavis/next/agents/task-analyst.md +6 -6
- package/presets/mavis/next/agents/task-router.md +4 -4
- package/presets/mavis/next/agents/tech-writer.md +3 -3
- package/presets/mavis/next/agents/unit-test-generator.md +3 -3
- package/presets/mavis/next/agents/unit-test-healer.md +2 -2
- package/presets/mavis/next/agents/unit-test-planner.md +3 -3
- package/presets/mavis/next/ai-local/conventions.md +21 -0
- package/presets/mavis/next/commands/README.md +1 -1
- package/presets/mavis/next/commands/spec-start.md +4 -4
- package/presets/mavis/next/commands/task-continue.md +2 -2
- package/presets/mavis/next/commands/task.md +7 -7
- package/presets/mavis/next/commands/technical-retro.md +4 -4
- package/presets/mavis/next/hooks/README.md +1 -1
- package/presets/mavis/next/hooks/chain-team-phases.sh +70 -12
- package/presets/mavis/next/rules/agent-team-orchestrator.md +8 -4
- package/presets/mavis/next/rules/ai-local-overlay.md +2 -2
- package/presets/mavis/next/rules/api-services.md +6 -4
- package/presets/mavis/next/rules/code-quality-and-refactoring.md +13 -0
- package/presets/mavis/next/rules/code-review-mr.md +13 -0
- package/presets/mavis/next/rules/design-guidance.md +5 -0
- package/presets/mavis/next/rules/feature-delivery-workflow.md +85 -0
- package/presets/mavis/next/rules/mcp-usage.md +9 -0
- package/presets/mavis/next/rules/mockup-review.md +4 -0
- package/presets/mavis/next/rules/next-app-core.md +2 -1
- package/presets/mavis/next/rules/preset-layering.md +1 -1
- package/presets/mavis/next/rules/preset-pr-checklist.md +3 -3
- package/presets/mavis/next/rules/preset-token-budget.md +10 -10
- package/presets/mavis/next/rules/preset-twin-sync.md +26 -8
- package/presets/mavis/next/rules/product-specs-authoring.md +6 -0
- package/presets/mavis/next/rules/product-specs.md +6 -0
- package/presets/mavis/next/rules/react-ui.md +37 -1
- package/presets/mavis/next/rules/reference-features.md +37 -1
- package/presets/mavis/next/rules/store-rtk.md +6 -5
- package/presets/mavis/next/rules/tests-e2e-structure.md +15 -0
- package/presets/mavis/next/rules/tests-unit.md +33 -0
- package/presets/mavis/next/rules/ux-design.md +4 -0
- package/presets/mavis/next/skills/README.md +1 -1
- package/presets/mavis/next/skills/code-review/SKILL.md +2 -2
- package/presets/mavis/next/skills/debug-investigation/SKILL.md +28 -0
- package/presets/mavis/next/skills/mockup-review/SKILL.md +1 -1
- package/presets/mavis/next/skills/spec-discovery/SKILL.md +2 -2
- package/presets/mavis/next/skills/technical-retro/SKILL.md +2 -2
- package/presets/mavis/next/skills/unit-testing/SKILL.md +1 -1
- package/presets/mavis/next/skills/ux-design/SKILL.md +1 -1
- package/presets/mavis/next/skills/write-adr/SKILL.md +2 -2
- package/presets/mavis/next/team/README.md +35 -106
- package/presets/mavis/nuxt/MAVIS.md +69 -0
- package/presets/mavis/nuxt/MCP.md +36 -0
- package/presets/mavis/nuxt/README.md +16 -0
- package/presets/mavis/nuxt/REPO_AGENTS.md +75 -0
- package/presets/mavis/nuxt/adapter-map.json +959 -0
- package/presets/mavis/nuxt/agents/README.md +98 -0
- package/presets/mavis/nuxt/agents/accessibility-reviewer.md +61 -0
- package/presets/mavis/nuxt/agents/api-contract-reviewer.md +57 -0
- package/presets/mavis/nuxt/agents/build-verifier.md +100 -0
- package/presets/mavis/nuxt/agents/ci-investigator.md +63 -0
- package/presets/mavis/nuxt/agents/code-reviewer.md +62 -0
- package/presets/mavis/nuxt/agents/codebase-analyzer.md +21 -0
- package/presets/mavis/nuxt/agents/debugger.md +80 -0
- package/presets/mavis/nuxt/agents/feature-developer.md +101 -0
- package/presets/mavis/nuxt/agents/migration-specialist.md +67 -0
- package/presets/mavis/nuxt/agents/mockup-reviewer.md +53 -0
- package/presets/mavis/nuxt/agents/openspec-author.md +157 -0
- package/presets/mavis/nuxt/agents/performance-auditor.md +68 -0
- package/presets/mavis/nuxt/agents/playwright-test-generator.md +28 -0
- package/presets/mavis/nuxt/agents/playwright-test-healer.md +28 -0
- package/presets/mavis/nuxt/agents/playwright-test-planner.md +21 -0
- package/presets/mavis/nuxt/agents/qa-tester.md +52 -0
- package/presets/mavis/nuxt/agents/security-reviewer.md +54 -0
- package/presets/mavis/nuxt/agents/solution-architect.md +68 -0
- package/presets/mavis/nuxt/agents/task-analyst.md +166 -0
- package/presets/mavis/nuxt/agents/task-router.md +178 -0
- package/presets/mavis/nuxt/agents/tech-writer.md +57 -0
- package/presets/mavis/nuxt/agents/unit-test-generator.md +31 -0
- package/presets/mavis/nuxt/agents/unit-test-healer.md +32 -0
- package/presets/mavis/nuxt/agents/unit-test-planner.md +54 -0
- package/presets/mavis/nuxt/ai-local/conventions.md +21 -0
- package/presets/mavis/nuxt/commands/README.md +49 -0
- package/presets/mavis/nuxt/commands/spec-start.md +24 -0
- package/presets/mavis/nuxt/commands/task-continue.md +50 -0
- package/presets/mavis/nuxt/commands/task.md +49 -0
- package/presets/mavis/nuxt/commands/technical-retro.md +80 -0
- package/presets/mavis/nuxt/hooks/README.md +22 -0
- package/presets/mavis/nuxt/hooks/chain-team-phases.sh +903 -0
- package/presets/mavis/nuxt/mcp.json +19 -0
- package/presets/mavis/nuxt/rules/README.md +16 -0
- package/presets/mavis/nuxt/rules/agent-team-intake.md +11 -0
- package/presets/mavis/nuxt/rules/agent-team-orchestrator.md +214 -0
- package/presets/mavis/nuxt/rules/ai-local-overlay.md +37 -0
- package/presets/mavis/nuxt/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/mavis/nuxt/rules/api-services.md +72 -0
- package/presets/mavis/nuxt/rules/architecture-boundaries-ui.md +9 -0
- package/presets/mavis/nuxt/rules/architecture-boundaries.md +90 -0
- package/presets/mavis/nuxt/rules/code-quality-and-refactoring.md +53 -0
- package/presets/mavis/nuxt/rules/code-review-mr.md +53 -0
- package/presets/mavis/nuxt/rules/css-property-order-stylelint.md +6 -0
- package/presets/mavis/nuxt/rules/design-guidance.md +104 -0
- package/presets/mavis/nuxt/rules/feature-delivery-workflow.md +131 -0
- package/presets/mavis/nuxt/rules/http-client.md +9 -0
- package/presets/mavis/nuxt/rules/layer-barrel-exports.md +67 -0
- package/presets/mavis/nuxt/rules/mcp-usage.md +95 -0
- package/presets/mavis/nuxt/rules/mockup-review.md +111 -0
- package/presets/mavis/nuxt/rules/navigation-router-stack.md +55 -0
- package/presets/mavis/nuxt/rules/navigation-router-ui.md +10 -0
- package/presets/mavis/nuxt/rules/no-type-assertion-as-import-export.md +51 -0
- package/presets/mavis/nuxt/rules/no-v-bind-spread.md +7 -0
- package/presets/mavis/nuxt/rules/nuxt-app-core.md +40 -0
- package/presets/mavis/nuxt/rules/nuxt-pages-routing.md +31 -0
- package/presets/mavis/nuxt/rules/package-manager.md +13 -0
- package/presets/mavis/nuxt/rules/playwright-agents.md +74 -0
- package/presets/mavis/nuxt/rules/post-change-lint.md +37 -0
- package/presets/mavis/nuxt/rules/preset-layering.md +27 -0
- package/presets/mavis/nuxt/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/mavis/nuxt/rules/preset-pr-checklist.md +36 -0
- package/presets/mavis/nuxt/rules/preset-token-budget.md +39 -0
- package/presets/mavis/nuxt/rules/preset-twin-sync.md +99 -0
- package/presets/mavis/nuxt/rules/product-specs-authoring.md +118 -0
- package/presets/mavis/nuxt/rules/product-specs.md +61 -0
- package/presets/mavis/nuxt/rules/public-imports.md +50 -0
- package/presets/mavis/nuxt/rules/reference-features.md +81 -0
- package/presets/mavis/nuxt/rules/script-setup-conventions.md +7 -0
- package/presets/mavis/nuxt/rules/security-nuxt.md +28 -0
- package/presets/mavis/nuxt/rules/store-pinia.md +61 -0
- package/presets/mavis/nuxt/rules/technical-retro.md +11 -0
- package/presets/mavis/nuxt/rules/tests-e2e-structure.md +88 -0
- package/presets/mavis/nuxt/rules/tests-unit.md +83 -0
- package/presets/mavis/nuxt/rules/types-jsdoc.md +36 -0
- package/presets/mavis/nuxt/rules/ux-design.md +103 -0
- package/presets/mavis/nuxt/rules/vue-a11y-coding.md +9 -0
- package/presets/mavis/nuxt/rules/vue-nuxt-anti-hallucination.md +62 -0
- package/presets/mavis/nuxt/rules/vue-ui.md +34 -0
- package/presets/mavis/nuxt/skills/README.md +21 -0
- package/presets/mavis/nuxt/skills/ci-investigation/SKILL.md +39 -0
- package/presets/mavis/nuxt/skills/code-review/SKILL.md +39 -0
- package/presets/mavis/nuxt/skills/debug-investigation/SKILL.md +56 -0
- package/presets/mavis/nuxt/skills/feature-delivery/SKILL.md +41 -0
- package/presets/mavis/nuxt/skills/mockup-review/SKILL.md +24 -0
- package/presets/mavis/nuxt/skills/playwright-e2e/SKILL.md +32 -0
- package/presets/mavis/nuxt/skills/spec-authoring/SKILL.md +21 -0
- package/presets/mavis/nuxt/skills/spec-discovery/SKILL.md +53 -0
- package/presets/mavis/nuxt/skills/technical-retro/SKILL.md +49 -0
- package/presets/mavis/nuxt/skills/unit-testing/SKILL.md +27 -0
- package/presets/mavis/nuxt/skills/ux-design/SKILL.md +31 -0
- package/presets/mavis/nuxt/skills/vue-performance/SKILL.md +48 -0
- package/presets/mavis/nuxt/skills/write-adr/SKILL.md +36 -0
- package/presets/mavis/nuxt/team/README.md +77 -0
- package/presets/mavis/nuxt/team/fixtures/artifact-manifest.example.json +79 -0
- package/presets/mavis/nuxt/team/fixtures/bugfix-standard.json +25 -0
- package/presets/mavis/nuxt/team/fixtures/feature-full.json +62 -0
- package/presets/mavis/nuxt/team/fixtures/feature-light.json +27 -0
- package/presets/mavis/nuxt/team/fixtures/feature-with-figma-url.json +17 -0
- package/presets/mavis/nuxt/team/fixtures/feature-with-ux-no-figma.json +17 -0
- package/presets/mavis/nuxt/team/fixtures/memlog.example.md +9 -0
- package/presets/mavis/nuxt/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
- package/presets/mavis/nuxt/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
- package/presets/mavis/nuxt/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
- package/presets/mavis/nuxt/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
- package/presets/mavis/nuxt/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
- package/presets/mavis/nuxt/team/fixtures/metrics.example.json +54 -0
- package/presets/mavis/nuxt/team/fixtures/mockup-review-fail-embedded-status.json +8 -0
- package/presets/mavis/nuxt/team/fixtures/mockup-review-standalone.json +14 -0
- package/presets/mavis/nuxt/team/fixtures/ux-design-standalone.json +15 -0
- package/presets/mavis/nuxt/team/tasks/.gitkeep +0 -0
- package/presets/mavis/php-hexagonal/MAVIS.md +56 -0
- package/presets/mavis/php-hexagonal/MCP.md +34 -0
- package/presets/mavis/php-hexagonal/README.md +16 -0
- package/presets/mavis/php-hexagonal/REPO_AGENTS.md +73 -0
- package/presets/mavis/php-hexagonal/adapter-map.json +755 -0
- package/presets/mavis/php-hexagonal/agents/README.md +48 -0
- package/presets/mavis/php-hexagonal/agents/api-contract-reviewer.md +17 -0
- package/presets/mavis/php-hexagonal/agents/build-verifier.md +64 -0
- package/presets/mavis/php-hexagonal/agents/ci-investigator.md +24 -0
- package/presets/mavis/php-hexagonal/agents/code-reviewer.md +48 -0
- package/presets/mavis/php-hexagonal/agents/codebase-analyzer.md +21 -0
- package/presets/mavis/php-hexagonal/agents/debugger.md +42 -0
- package/presets/mavis/php-hexagonal/agents/feature-developer.md +90 -0
- package/presets/mavis/php-hexagonal/agents/integration-test-generator.md +16 -0
- package/presets/mavis/php-hexagonal/agents/integration-test-healer.md +16 -0
- package/presets/mavis/php-hexagonal/agents/integration-test-planner.md +16 -0
- package/presets/mavis/php-hexagonal/agents/migration-specialist.md +31 -0
- package/presets/mavis/php-hexagonal/agents/openspec-author.md +157 -0
- package/presets/mavis/php-hexagonal/agents/performance-auditor.md +22 -0
- package/presets/mavis/php-hexagonal/agents/qa-tester.md +22 -0
- package/presets/mavis/php-hexagonal/agents/security-reviewer.md +14 -0
- package/presets/mavis/php-hexagonal/agents/solution-architect.md +28 -0
- package/presets/mavis/php-hexagonal/agents/task-analyst.md +71 -0
- package/presets/mavis/php-hexagonal/agents/task-router.md +133 -0
- package/presets/mavis/php-hexagonal/agents/tech-writer.md +17 -0
- package/presets/mavis/php-hexagonal/agents/unit-test-generator.md +15 -0
- package/presets/mavis/php-hexagonal/agents/unit-test-healer.md +7 -0
- package/presets/mavis/php-hexagonal/agents/unit-test-planner.md +20 -0
- package/presets/mavis/php-hexagonal/ai-local/conventions.md +21 -0
- package/presets/mavis/php-hexagonal/commands/README.md +52 -0
- package/presets/mavis/php-hexagonal/commands/spec-start.md +24 -0
- package/presets/mavis/php-hexagonal/commands/task-continue.md +48 -0
- package/presets/mavis/php-hexagonal/commands/task.md +47 -0
- package/presets/mavis/php-hexagonal/commands/technical-retro.md +80 -0
- package/presets/mavis/php-hexagonal/hooks/README.md +22 -0
- package/presets/mavis/php-hexagonal/hooks/chain-team-phases.sh +875 -0
- package/presets/mavis/php-hexagonal/mcp.json +11 -0
- package/presets/mavis/php-hexagonal/rules/README.md +16 -0
- package/presets/mavis/php-hexagonal/rules/adapters-driven.md +30 -0
- package/presets/mavis/php-hexagonal/rules/adapters-driving.md +30 -0
- package/presets/mavis/php-hexagonal/rules/agent-team-intake.md +15 -0
- package/presets/mavis/php-hexagonal/rules/agent-team-orchestrator.md +214 -0
- package/presets/mavis/php-hexagonal/rules/ai-local-overlay.md +37 -0
- package/presets/mavis/php-hexagonal/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/mavis/php-hexagonal/rules/api-grpc.md +22 -0
- package/presets/mavis/php-hexagonal/rules/api-http.md +28 -0
- package/presets/mavis/php-hexagonal/rules/application-usecases.md +25 -0
- package/presets/mavis/php-hexagonal/rules/architecture-boundaries.md +31 -0
- package/presets/mavis/php-hexagonal/rules/code-quality-and-refactoring.md +55 -0
- package/presets/mavis/php-hexagonal/rules/code-review-mr.md +49 -0
- package/presets/mavis/php-hexagonal/rules/composition-root.md +27 -0
- package/presets/mavis/php-hexagonal/rules/design-guidance.md +105 -0
- package/presets/mavis/php-hexagonal/rules/domain-layer.md +31 -0
- package/presets/mavis/php-hexagonal/rules/feature-delivery-workflow.md +49 -0
- package/presets/mavis/php-hexagonal/rules/mcp-usage.md +92 -0
- package/presets/mavis/php-hexagonal/rules/messaging-adapters.md +29 -0
- package/presets/mavis/php-hexagonal/rules/module-public-api.md +24 -0
- package/presets/mavis/php-hexagonal/rules/persistence-adapters.md +25 -0
- package/presets/mavis/php-hexagonal/rules/php-app-core.md +32 -0
- package/presets/mavis/php-hexagonal/rules/php-conventions.md +46 -0
- package/presets/mavis/php-hexagonal/rules/php-tooling.md +26 -0
- package/presets/mavis/php-hexagonal/rules/ports-interfaces.md +27 -0
- package/presets/mavis/php-hexagonal/rules/post-change-test.md +20 -0
- package/presets/mavis/php-hexagonal/rules/preset-layering.md +27 -0
- package/presets/mavis/php-hexagonal/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/mavis/php-hexagonal/rules/preset-pr-checklist.md +36 -0
- package/presets/mavis/php-hexagonal/rules/preset-token-budget.md +39 -0
- package/presets/mavis/php-hexagonal/rules/preset-twin-sync.md +99 -0
- package/presets/mavis/php-hexagonal/rules/product-specs-authoring.md +118 -0
- package/presets/mavis/php-hexagonal/rules/product-specs.md +62 -0
- package/presets/mavis/php-hexagonal/rules/reference-features.md +45 -0
- package/presets/mavis/php-hexagonal/rules/security-php.md +21 -0
- package/presets/mavis/php-hexagonal/rules/technical-retro.md +11 -0
- package/presets/mavis/php-hexagonal/rules/tests-e2e.md +26 -0
- package/presets/mavis/php-hexagonal/rules/tests-integration.md +23 -0
- package/presets/mavis/php-hexagonal/rules/tests-unit.md +25 -0
- package/presets/mavis/php-hexagonal/skills/README.md +5 -0
- package/presets/mavis/php-hexagonal/skills/ci-investigation/SKILL.md +13 -0
- package/presets/mavis/php-hexagonal/skills/code-review/SKILL.md +27 -0
- package/presets/mavis/php-hexagonal/skills/debug-investigation/SKILL.md +46 -0
- package/presets/mavis/php-hexagonal/skills/feature-delivery/SKILL.md +32 -0
- package/presets/mavis/php-hexagonal/skills/integration-testing/SKILL.md +10 -0
- package/presets/mavis/php-hexagonal/skills/spec-authoring/SKILL.md +21 -0
- package/presets/mavis/php-hexagonal/skills/spec-discovery/SKILL.md +53 -0
- package/presets/mavis/php-hexagonal/skills/technical-retro/SKILL.md +49 -0
- package/presets/mavis/php-hexagonal/skills/unit-testing/SKILL.md +9 -0
- package/presets/mavis/php-hexagonal/skills/write-adr/SKILL.md +36 -0
- package/presets/mavis/php-hexagonal/team/README.md +77 -0
- package/presets/mavis/php-hexagonal/team/fixtures/bugfix-standard.json +37 -0
- package/presets/mavis/php-hexagonal/team/fixtures/feature-full.json +61 -0
- package/presets/mavis/php-hexagonal/team/fixtures/feature-light.json +17 -0
- package/presets/mavis/php-hexagonal/team/fixtures/memlog.example.md +9 -0
- package/presets/mavis/php-laravel/MAVIS.md +56 -0
- package/presets/mavis/php-laravel/MCP.md +26 -0
- package/presets/mavis/php-laravel/README.md +16 -0
- package/presets/mavis/php-laravel/REPO_AGENTS.md +74 -0
- package/presets/mavis/php-laravel/adapter-map.json +755 -0
- package/presets/mavis/php-laravel/agents/README.md +48 -0
- package/presets/mavis/php-laravel/agents/api-contract-reviewer.md +17 -0
- package/presets/mavis/php-laravel/agents/build-verifier.md +64 -0
- package/presets/mavis/php-laravel/agents/ci-investigator.md +24 -0
- package/presets/mavis/php-laravel/agents/code-reviewer.md +48 -0
- package/presets/mavis/php-laravel/agents/codebase-analyzer.md +21 -0
- package/presets/mavis/php-laravel/agents/debugger.md +42 -0
- package/presets/mavis/php-laravel/agents/feature-developer.md +90 -0
- package/presets/mavis/php-laravel/agents/integration-test-generator.md +16 -0
- package/presets/mavis/php-laravel/agents/integration-test-healer.md +16 -0
- package/presets/mavis/php-laravel/agents/integration-test-planner.md +16 -0
- package/presets/mavis/php-laravel/agents/migration-specialist.md +31 -0
- package/presets/mavis/php-laravel/agents/openspec-author.md +157 -0
- package/presets/mavis/php-laravel/agents/performance-auditor.md +22 -0
- package/presets/mavis/php-laravel/agents/qa-tester.md +28 -0
- package/presets/mavis/php-laravel/agents/security-reviewer.md +26 -0
- package/presets/mavis/php-laravel/agents/solution-architect.md +29 -0
- package/presets/mavis/php-laravel/agents/task-analyst.md +71 -0
- package/presets/mavis/php-laravel/agents/task-router.md +149 -0
- package/presets/mavis/php-laravel/agents/tech-writer.md +17 -0
- package/presets/mavis/php-laravel/agents/unit-test-generator.md +15 -0
- package/presets/mavis/php-laravel/agents/unit-test-healer.md +7 -0
- package/presets/mavis/php-laravel/agents/unit-test-planner.md +20 -0
- package/presets/mavis/php-laravel/ai-local/conventions.md +21 -0
- package/presets/mavis/php-laravel/commands/README.md +52 -0
- package/presets/mavis/php-laravel/commands/spec-start.md +24 -0
- package/presets/mavis/php-laravel/commands/task-continue.md +48 -0
- package/presets/mavis/php-laravel/commands/task.md +47 -0
- package/presets/mavis/php-laravel/commands/technical-retro.md +80 -0
- package/presets/mavis/php-laravel/hooks/README.md +22 -0
- package/presets/mavis/php-laravel/hooks/chain-team-phases.sh +875 -0
- package/presets/mavis/php-laravel/mcp.json +11 -0
- package/presets/mavis/php-laravel/rules/README.md +16 -0
- package/presets/mavis/php-laravel/rules/actions-services.md +25 -0
- package/presets/mavis/php-laravel/rules/agent-team-intake.md +15 -0
- package/presets/mavis/php-laravel/rules/agent-team-orchestrator.md +214 -0
- package/presets/mavis/php-laravel/rules/ai-local-overlay.md +37 -0
- package/presets/mavis/php-laravel/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/mavis/php-laravel/rules/architecture-boundaries.md +32 -0
- package/presets/mavis/php-laravel/rules/code-quality-and-refactoring.md +55 -0
- package/presets/mavis/php-laravel/rules/code-review-mr.md +50 -0
- package/presets/mavis/php-laravel/rules/design-guidance.md +105 -0
- package/presets/mavis/php-laravel/rules/domain-layer.md +19 -0
- package/presets/mavis/php-laravel/rules/eloquent-persistence.md +24 -0
- package/presets/mavis/php-laravel/rules/events-listeners.md +24 -0
- package/presets/mavis/php-laravel/rules/feature-delivery-workflow.md +49 -0
- package/presets/mavis/php-laravel/rules/form-requests.md +24 -0
- package/presets/mavis/php-laravel/rules/http-layer.md +25 -0
- package/presets/mavis/php-laravel/rules/jobs-queues.md +36 -0
- package/presets/mavis/php-laravel/rules/laravel-app-core.md +30 -0
- package/presets/mavis/php-laravel/rules/laravel-conventions.md +34 -0
- package/presets/mavis/php-laravel/rules/mcp-usage.md +92 -0
- package/presets/mavis/php-laravel/rules/module-public-api.md +23 -0
- package/presets/mavis/php-laravel/rules/php-tooling.md +26 -0
- package/presets/mavis/php-laravel/rules/policies-authorization.md +24 -0
- package/presets/mavis/php-laravel/rules/post-change-test.md +20 -0
- package/presets/mavis/php-laravel/rules/preset-layering.md +27 -0
- package/presets/mavis/php-laravel/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/mavis/php-laravel/rules/preset-pr-checklist.md +36 -0
- package/presets/mavis/php-laravel/rules/preset-token-budget.md +39 -0
- package/presets/mavis/php-laravel/rules/preset-twin-sync.md +99 -0
- package/presets/mavis/php-laravel/rules/product-specs-authoring.md +118 -0
- package/presets/mavis/php-laravel/rules/product-specs.md +62 -0
- package/presets/mavis/php-laravel/rules/reference-features.md +45 -0
- package/presets/mavis/php-laravel/rules/routes-api.md +24 -0
- package/presets/mavis/php-laravel/rules/security-php.md +47 -0
- package/presets/mavis/php-laravel/rules/service-providers.md +23 -0
- package/presets/mavis/php-laravel/rules/technical-retro.md +11 -0
- package/presets/mavis/php-laravel/rules/tests-e2e.md +26 -0
- package/presets/mavis/php-laravel/rules/tests-integration.md +23 -0
- package/presets/mavis/php-laravel/rules/tests-unit.md +24 -0
- package/presets/mavis/php-laravel/skills/README.md +5 -0
- package/presets/mavis/php-laravel/skills/ci-investigation/SKILL.md +13 -0
- package/presets/mavis/php-laravel/skills/code-review/SKILL.md +27 -0
- package/presets/mavis/php-laravel/skills/debug-investigation/SKILL.md +46 -0
- package/presets/mavis/php-laravel/skills/feature-delivery/SKILL.md +32 -0
- package/presets/mavis/php-laravel/skills/integration-testing/SKILL.md +10 -0
- package/presets/mavis/php-laravel/skills/spec-authoring/SKILL.md +21 -0
- package/presets/mavis/php-laravel/skills/spec-discovery/SKILL.md +53 -0
- package/presets/mavis/php-laravel/skills/technical-retro/SKILL.md +49 -0
- package/presets/mavis/php-laravel/skills/unit-testing/SKILL.md +9 -0
- package/presets/mavis/php-laravel/skills/write-adr/SKILL.md +36 -0
- package/presets/mavis/php-laravel/team/README.md +77 -0
- package/presets/mavis/php-laravel/team/fixtures/bugfix-standard.json +12 -0
- package/presets/mavis/php-laravel/team/fixtures/feature-full.json +44 -0
- package/presets/mavis/php-laravel/team/fixtures/feature-light.json +8 -0
- package/presets/mavis/php-laravel/team/fixtures/memlog.example.md +9 -0
- package/presets/mavis/platform-contract.json +13 -6
- package/presets/mavis/svelte/MAVIS.md +69 -0
- package/presets/mavis/svelte/MCP.md +36 -0
- package/presets/mavis/svelte/README.md +16 -0
- package/presets/mavis/svelte/REPO_AGENTS.md +75 -0
- package/presets/mavis/svelte/adapter-map.json +959 -0
- package/presets/mavis/svelte/agents/README.md +98 -0
- package/presets/mavis/svelte/agents/accessibility-reviewer.md +61 -0
- package/presets/mavis/svelte/agents/api-contract-reviewer.md +57 -0
- package/presets/mavis/svelte/agents/build-verifier.md +100 -0
- package/presets/mavis/svelte/agents/ci-investigator.md +63 -0
- package/presets/mavis/svelte/agents/code-reviewer.md +62 -0
- package/presets/mavis/svelte/agents/codebase-analyzer.md +21 -0
- package/presets/mavis/svelte/agents/debugger.md +80 -0
- package/presets/mavis/svelte/agents/feature-developer.md +101 -0
- package/presets/mavis/svelte/agents/migration-specialist.md +67 -0
- package/presets/mavis/svelte/agents/mockup-reviewer.md +53 -0
- package/presets/mavis/svelte/agents/openspec-author.md +157 -0
- package/presets/mavis/svelte/agents/performance-auditor.md +68 -0
- package/presets/mavis/svelte/agents/playwright-test-generator.md +28 -0
- package/presets/mavis/svelte/agents/playwright-test-healer.md +28 -0
- package/presets/mavis/svelte/agents/playwright-test-planner.md +21 -0
- package/presets/mavis/svelte/agents/qa-tester.md +52 -0
- package/presets/mavis/svelte/agents/security-reviewer.md +54 -0
- package/presets/mavis/svelte/agents/solution-architect.md +68 -0
- package/presets/mavis/svelte/agents/task-analyst.md +166 -0
- package/presets/mavis/svelte/agents/task-router.md +178 -0
- package/presets/mavis/svelte/agents/tech-writer.md +57 -0
- package/presets/mavis/svelte/agents/unit-test-generator.md +31 -0
- package/presets/mavis/svelte/agents/unit-test-healer.md +32 -0
- package/presets/mavis/svelte/agents/unit-test-planner.md +54 -0
- package/presets/mavis/svelte/ai-local/conventions.md +21 -0
- package/presets/mavis/svelte/commands/README.md +49 -0
- package/presets/mavis/svelte/commands/spec-start.md +24 -0
- package/presets/mavis/svelte/commands/task-continue.md +50 -0
- package/presets/mavis/svelte/commands/task.md +49 -0
- package/presets/mavis/svelte/commands/technical-retro.md +80 -0
- package/presets/mavis/svelte/hooks/README.md +22 -0
- package/presets/mavis/svelte/hooks/chain-team-phases.sh +903 -0
- package/presets/mavis/svelte/mcp.json +19 -0
- package/presets/mavis/svelte/rules/README.md +16 -0
- package/presets/mavis/svelte/rules/agent-team-intake.md +11 -0
- package/presets/mavis/svelte/rules/agent-team-orchestrator.md +214 -0
- package/presets/mavis/svelte/rules/ai-local-overlay.md +37 -0
- package/presets/mavis/svelte/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/mavis/svelte/rules/api-services.md +39 -0
- package/presets/mavis/svelte/rules/architecture-boundaries-ui.md +9 -0
- package/presets/mavis/svelte/rules/architecture-boundaries.md +54 -0
- package/presets/mavis/svelte/rules/code-quality-and-refactoring.md +53 -0
- package/presets/mavis/svelte/rules/code-review-mr.md +53 -0
- package/presets/mavis/svelte/rules/css-property-order-stylelint.md +6 -0
- package/presets/mavis/svelte/rules/design-guidance.md +104 -0
- package/presets/mavis/svelte/rules/feature-delivery-workflow.md +103 -0
- package/presets/mavis/svelte/rules/http-client.md +10 -0
- package/presets/mavis/svelte/rules/layer-barrel-exports.md +67 -0
- package/presets/mavis/svelte/rules/mcp-usage.md +95 -0
- package/presets/mavis/svelte/rules/mockup-review.md +111 -0
- package/presets/mavis/svelte/rules/navigation-router-stack.md +34 -0
- package/presets/mavis/svelte/rules/navigation-router-ui.md +19 -0
- package/presets/mavis/svelte/rules/no-rest-props-spread.md +26 -0
- package/presets/mavis/svelte/rules/no-type-assertion-as-import-export.md +51 -0
- package/presets/mavis/svelte/rules/package-manager.md +13 -0
- package/presets/mavis/svelte/rules/playwright-agents.md +74 -0
- package/presets/mavis/svelte/rules/post-change-lint.md +37 -0
- package/presets/mavis/svelte/rules/preset-layering.md +27 -0
- package/presets/mavis/svelte/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/mavis/svelte/rules/preset-pr-checklist.md +36 -0
- package/presets/mavis/svelte/rules/preset-token-budget.md +39 -0
- package/presets/mavis/svelte/rules/preset-twin-sync.md +99 -0
- package/presets/mavis/svelte/rules/product-specs-authoring.md +118 -0
- package/presets/mavis/svelte/rules/product-specs.md +61 -0
- package/presets/mavis/svelte/rules/public-imports.md +32 -0
- package/presets/mavis/svelte/rules/reference-features.md +82 -0
- package/presets/mavis/svelte/rules/security-sveltekit.md +32 -0
- package/presets/mavis/svelte/rules/store-svelte.md +59 -0
- package/presets/mavis/svelte/rules/svelte-a11y-coding.md +21 -0
- package/presets/mavis/svelte/rules/svelte-app-core.md +40 -0
- package/presets/mavis/svelte/rules/svelte-script-conventions.md +27 -0
- package/presets/mavis/svelte/rules/svelte-sveltekit-anti-hallucination.md +63 -0
- package/presets/mavis/svelte/rules/svelte-ui.md +38 -0
- package/presets/mavis/svelte/rules/sveltekit-routing.md +33 -0
- package/presets/mavis/svelte/rules/technical-retro.md +11 -0
- package/presets/mavis/svelte/rules/tests-e2e-structure.md +88 -0
- package/presets/mavis/svelte/rules/tests-unit.md +83 -0
- package/presets/mavis/svelte/rules/types-jsdoc.md +36 -0
- package/presets/mavis/svelte/rules/ux-design.md +103 -0
- package/presets/mavis/svelte/skills/README.md +21 -0
- package/presets/mavis/svelte/skills/ci-investigation/SKILL.md +39 -0
- package/presets/mavis/svelte/skills/code-review/SKILL.md +39 -0
- package/presets/mavis/svelte/skills/debug-investigation/SKILL.md +56 -0
- package/presets/mavis/svelte/skills/feature-delivery/SKILL.md +41 -0
- package/presets/mavis/svelte/skills/mockup-review/SKILL.md +24 -0
- package/presets/mavis/svelte/skills/playwright-e2e/SKILL.md +32 -0
- package/presets/mavis/svelte/skills/spec-authoring/SKILL.md +21 -0
- package/presets/mavis/svelte/skills/spec-discovery/SKILL.md +53 -0
- package/presets/mavis/svelte/skills/svelte-performance/SKILL.md +47 -0
- package/presets/mavis/svelte/skills/technical-retro/SKILL.md +49 -0
- package/presets/mavis/svelte/skills/unit-testing/SKILL.md +27 -0
- package/presets/mavis/svelte/skills/ux-design/SKILL.md +31 -0
- package/presets/mavis/svelte/skills/write-adr/SKILL.md +36 -0
- package/presets/mavis/svelte/team/README.md +77 -0
- package/presets/mavis/svelte/team/fixtures/artifact-manifest.example.json +79 -0
- package/presets/mavis/svelte/team/fixtures/bugfix-standard.json +25 -0
- package/presets/mavis/svelte/team/fixtures/feature-full.json +62 -0
- package/presets/mavis/svelte/team/fixtures/feature-light.json +27 -0
- package/presets/mavis/svelte/team/fixtures/feature-with-figma-url.json +17 -0
- package/presets/mavis/svelte/team/fixtures/feature-with-ux-no-figma.json +17 -0
- package/presets/mavis/svelte/team/fixtures/memlog.example.md +9 -0
- package/presets/mavis/svelte/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
- package/presets/mavis/svelte/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
- package/presets/mavis/svelte/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
- package/presets/mavis/svelte/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
- package/presets/mavis/svelte/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
- package/presets/mavis/svelte/team/fixtures/metrics.example.json +54 -0
- package/presets/mavis/svelte/team/fixtures/mockup-review-fail-embedded-status.json +8 -0
- package/presets/mavis/svelte/team/fixtures/mockup-review-standalone.json +14 -0
- package/presets/mavis/svelte/team/fixtures/ux-design-standalone.json +15 -0
- package/presets/mavis/svelte/team/tasks/.gitkeep +0 -0
- package/presets/opencode/README.md +8 -51
- package/presets/opencode/android-kotlin/MCP.md +35 -0
- package/presets/opencode/android-kotlin/OPENCODE.md +76 -0
- package/presets/opencode/android-kotlin/README.md +17 -0
- package/presets/opencode/android-kotlin/REPO_AGENTS.md +74 -0
- package/presets/opencode/android-kotlin/adapter-map.json +812 -0
- package/presets/opencode/android-kotlin/agents/README.md +60 -0
- package/presets/opencode/android-kotlin/agents/accessibility-reviewer.md +71 -0
- package/presets/opencode/android-kotlin/agents/api-contract-reviewer.md +75 -0
- package/presets/opencode/android-kotlin/agents/build-verifier.md +89 -0
- package/presets/opencode/android-kotlin/agents/ci-investigator.md +84 -0
- package/presets/opencode/android-kotlin/agents/code-reviewer.md +85 -0
- package/presets/opencode/android-kotlin/agents/codebase-analyzer.md +33 -0
- package/presets/opencode/android-kotlin/agents/debugger.md +92 -0
- package/presets/opencode/android-kotlin/agents/feature-developer.md +110 -0
- package/presets/opencode/android-kotlin/agents/instrumentation-test-generator.md +22 -0
- package/presets/opencode/android-kotlin/agents/instrumentation-test-healer.md +22 -0
- package/presets/opencode/android-kotlin/agents/instrumentation-test-planner.md +26 -0
- package/presets/opencode/android-kotlin/agents/migration-specialist.md +85 -0
- package/presets/opencode/android-kotlin/agents/mockup-reviewer.md +65 -0
- package/presets/opencode/android-kotlin/agents/openspec-author.md +170 -0
- package/presets/opencode/android-kotlin/agents/performance-auditor.md +78 -0
- package/presets/opencode/android-kotlin/agents/qa-tester.md +69 -0
- package/presets/opencode/android-kotlin/agents/security-reviewer.md +70 -0
- package/presets/opencode/android-kotlin/agents/solution-architect.md +32 -0
- package/presets/opencode/android-kotlin/agents/task-analyst.md +104 -0
- package/presets/opencode/android-kotlin/agents/task-router.md +156 -0
- package/presets/opencode/android-kotlin/agents/tech-writer.md +76 -0
- package/presets/opencode/android-kotlin/agents/unit-test-generator.md +56 -0
- package/presets/opencode/android-kotlin/agents/unit-test-healer.md +55 -0
- package/presets/opencode/android-kotlin/agents/unit-test-planner.md +70 -0
- package/presets/opencode/android-kotlin/ai-local/conventions.md +17 -0
- package/presets/opencode/android-kotlin/commands/README.md +49 -0
- package/presets/opencode/android-kotlin/commands/spec-start.md +32 -0
- package/presets/opencode/android-kotlin/commands/task-continue.md +58 -0
- package/presets/opencode/android-kotlin/commands/task.md +57 -0
- package/presets/opencode/android-kotlin/commands/technical-retro.md +88 -0
- package/presets/opencode/android-kotlin/hooks/README.md +22 -0
- package/presets/opencode/android-kotlin/hooks/chain-team-phases.sh +901 -0
- package/presets/opencode/android-kotlin/opencode.json +17 -0
- package/presets/opencode/android-kotlin/rules/README.md +20 -0
- package/presets/opencode/android-kotlin/rules/agent-team-intake.md +11 -0
- package/presets/opencode/android-kotlin/rules/agent-team-orchestrator.md +214 -0
- package/presets/opencode/android-kotlin/rules/ai-local-overlay.md +37 -0
- package/presets/opencode/android-kotlin/rules/android-app-core.md +23 -0
- package/presets/opencode/android-kotlin/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/opencode/android-kotlin/rules/architecture-boundaries.md +23 -0
- package/presets/opencode/android-kotlin/rules/code-quality-and-refactoring.md +54 -0
- package/presets/opencode/android-kotlin/rules/code-review-mr.md +79 -0
- package/presets/opencode/android-kotlin/rules/compose-ui.md +25 -0
- package/presets/opencode/android-kotlin/rules/design-guidance.md +104 -0
- package/presets/opencode/android-kotlin/rules/di-dagger-feature-holders.md +26 -0
- package/presets/opencode/android-kotlin/rules/feature-delivery-workflow.md +39 -0
- package/presets/opencode/android-kotlin/rules/gradle-tooling.md +22 -0
- package/presets/opencode/android-kotlin/rules/kotlin-conventions.md +24 -0
- package/presets/opencode/android-kotlin/rules/mcp-usage.md +94 -0
- package/presets/opencode/android-kotlin/rules/mockup-review.md +111 -0
- package/presets/opencode/android-kotlin/rules/module-public-api.md +22 -0
- package/presets/opencode/android-kotlin/rules/navigation-feature-launcher.md +23 -0
- package/presets/opencode/android-kotlin/rules/networking-data.md +23 -0
- package/presets/opencode/android-kotlin/rules/persistence-data.md +22 -0
- package/presets/opencode/android-kotlin/rules/post-change-build.md +25 -0
- package/presets/opencode/android-kotlin/rules/preset-layering.md +27 -0
- package/presets/opencode/android-kotlin/rules/preset-no-cross-stack-leakage.md +94 -0
- package/presets/opencode/android-kotlin/rules/preset-pr-checklist.md +36 -0
- package/presets/opencode/android-kotlin/rules/preset-token-budget.md +39 -0
- package/presets/opencode/android-kotlin/rules/preset-twin-sync.md +99 -0
- package/presets/opencode/android-kotlin/rules/product-specs-authoring.md +118 -0
- package/presets/opencode/android-kotlin/rules/product-specs.md +61 -0
- package/presets/opencode/android-kotlin/rules/reference-features.md +22 -0
- package/presets/opencode/android-kotlin/rules/security-android.md +21 -0
- package/presets/opencode/android-kotlin/rules/state-and-viewmodels.md +21 -0
- package/presets/opencode/android-kotlin/rules/technical-retro.md +11 -0
- package/presets/opencode/android-kotlin/rules/tests-ui.md +22 -0
- package/presets/opencode/android-kotlin/rules/tests-unit.md +22 -0
- package/presets/opencode/android-kotlin/rules/ux-design.md +103 -0
- package/presets/opencode/android-kotlin/skills/README.md +18 -0
- package/presets/opencode/android-kotlin/skills/ci-investigation/SKILL.md +47 -0
- package/presets/opencode/android-kotlin/skills/code-review/SKILL.md +45 -0
- package/presets/opencode/android-kotlin/skills/debug-investigation/SKILL.md +70 -0
- package/presets/opencode/android-kotlin/skills/feature-delivery/SKILL.md +45 -0
- package/presets/opencode/android-kotlin/skills/instrumentation-ui-e2e/SKILL.md +17 -0
- package/presets/opencode/android-kotlin/skills/mockup-review/SKILL.md +29 -0
- package/presets/opencode/android-kotlin/skills/spec-authoring/SKILL.md +26 -0
- package/presets/opencode/android-kotlin/skills/spec-discovery/SKILL.md +58 -0
- package/presets/opencode/android-kotlin/skills/technical-retro/SKILL.md +54 -0
- package/presets/opencode/android-kotlin/skills/unit-testing/SKILL.md +32 -0
- package/presets/opencode/android-kotlin/skills/ux-design/SKILL.md +36 -0
- package/presets/opencode/android-kotlin/skills/write-adr/SKILL.md +41 -0
- package/presets/opencode/android-kotlin/team/README.md +77 -0
- package/presets/opencode/android-kotlin/team/fixtures/artifact-manifest.example.json +25 -0
- package/presets/opencode/android-kotlin/team/fixtures/bugfix-standard.json +47 -0
- package/presets/opencode/android-kotlin/team/fixtures/feature-full.json +98 -0
- package/presets/opencode/android-kotlin/team/fixtures/feature-light.json +38 -0
- package/presets/opencode/android-kotlin/team/fixtures/feature-with-figma-url.json +17 -0
- package/presets/opencode/android-kotlin/team/fixtures/feature-with-ux-no-figma.json +17 -0
- package/presets/opencode/android-kotlin/team/fixtures/memlog.example.md +9 -0
- package/presets/opencode/android-kotlin/team/fixtures/mockup-review-fail-embedded-status.json +8 -0
- package/presets/opencode/android-kotlin/team/fixtures/mockup-review-standalone.json +14 -0
- package/presets/opencode/android-kotlin/team/fixtures/ux-design-standalone.json +15 -0
- package/presets/opencode/go/MCP.md +37 -0
- package/presets/opencode/go/OPENCODE.md +52 -0
- package/presets/opencode/go/README.md +17 -0
- package/presets/opencode/go/REPO_AGENTS.md +74 -0
- package/presets/opencode/go/adapter-map.json +755 -0
- package/presets/opencode/go/agents/README.md +49 -0
- package/presets/opencode/go/agents/api-contract-reviewer.md +29 -0
- package/presets/opencode/go/agents/build-verifier.md +66 -0
- package/presets/opencode/go/agents/ci-investigator.md +32 -0
- package/presets/opencode/go/agents/code-reviewer.md +60 -0
- package/presets/opencode/go/agents/codebase-analyzer.md +33 -0
- package/presets/opencode/go/agents/debugger.md +50 -0
- package/presets/opencode/go/agents/feature-developer.md +98 -0
- package/presets/opencode/go/agents/integration-test-generator.md +24 -0
- package/presets/opencode/go/agents/integration-test-healer.md +24 -0
- package/presets/opencode/go/agents/integration-test-planner.md +28 -0
- package/presets/opencode/go/agents/migration-specialist.md +43 -0
- package/presets/opencode/go/agents/openspec-author.md +170 -0
- package/presets/opencode/go/agents/performance-auditor.md +34 -0
- package/presets/opencode/go/agents/qa-tester.md +30 -0
- package/presets/opencode/go/agents/security-reviewer.md +26 -0
- package/presets/opencode/go/agents/solution-architect.md +40 -0
- package/presets/opencode/go/agents/task-analyst.md +83 -0
- package/presets/opencode/go/agents/task-router.md +145 -0
- package/presets/opencode/go/agents/tech-writer.md +30 -0
- package/presets/opencode/go/agents/unit-test-generator.md +23 -0
- package/presets/opencode/go/agents/unit-test-healer.md +15 -0
- package/presets/opencode/go/agents/unit-test-planner.md +32 -0
- package/presets/opencode/go/ai-local/conventions.md +21 -0
- package/presets/opencode/go/commands/README.md +52 -0
- package/presets/opencode/go/commands/spec-start.md +32 -0
- package/presets/opencode/go/commands/task-continue.md +56 -0
- package/presets/opencode/go/commands/task.md +55 -0
- package/presets/opencode/go/commands/technical-retro.md +88 -0
- package/presets/opencode/go/hooks/README.md +22 -0
- package/presets/opencode/go/hooks/chain-team-phases.sh +874 -0
- package/presets/opencode/go/opencode.json +17 -0
- package/presets/opencode/go/rules/README.md +20 -0
- package/presets/opencode/go/rules/adapters-driven.md +25 -0
- package/presets/opencode/go/rules/adapters-driving.md +26 -0
- package/presets/opencode/go/rules/agent-team-intake.md +15 -0
- package/presets/opencode/go/rules/agent-team-orchestrator.md +214 -0
- package/presets/opencode/go/rules/ai-local-overlay.md +37 -0
- package/presets/opencode/go/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/opencode/go/rules/api-grpc.md +20 -0
- package/presets/opencode/go/rules/api-http.md +25 -0
- package/presets/opencode/go/rules/application-usecases.md +26 -0
- package/presets/opencode/go/rules/architecture-boundaries.md +31 -0
- package/presets/opencode/go/rules/code-quality-and-refactoring.md +55 -0
- package/presets/opencode/go/rules/code-review-mr.md +47 -0
- package/presets/opencode/go/rules/composition-root.md +26 -0
- package/presets/opencode/go/rules/design-guidance.md +104 -0
- package/presets/opencode/go/rules/domain-layer.md +25 -0
- package/presets/opencode/go/rules/feature-delivery-workflow.md +49 -0
- package/presets/opencode/go/rules/go-app-core.md +27 -0
- package/presets/opencode/go/rules/go-conventions.md +45 -0
- package/presets/opencode/go/rules/go-tooling.md +28 -0
- package/presets/opencode/go/rules/mcp-usage.md +93 -0
- package/presets/opencode/go/rules/messaging-adapters.md +15 -0
- package/presets/opencode/go/rules/module-public-api.md +16 -0
- package/presets/opencode/go/rules/persistence-adapters.md +24 -0
- package/presets/opencode/go/rules/ports-interfaces.md +26 -0
- package/presets/opencode/go/rules/post-change-test.md +22 -0
- package/presets/opencode/go/rules/preset-layering.md +27 -0
- package/presets/opencode/go/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/opencode/go/rules/preset-pr-checklist.md +36 -0
- package/presets/opencode/go/rules/preset-token-budget.md +39 -0
- package/presets/opencode/go/rules/preset-twin-sync.md +99 -0
- package/presets/opencode/go/rules/product-specs-authoring.md +118 -0
- package/presets/opencode/go/rules/product-specs.md +62 -0
- package/presets/opencode/go/rules/reference-features.md +45 -0
- package/presets/opencode/go/rules/security-go.md +26 -0
- package/presets/opencode/go/rules/technical-retro.md +11 -0
- package/presets/opencode/go/rules/tests-e2e.md +13 -0
- package/presets/opencode/go/rules/tests-integration.md +22 -0
- package/presets/opencode/go/rules/tests-unit.md +18 -0
- package/presets/opencode/go/skills/README.md +5 -0
- package/presets/opencode/go/skills/ci-investigation/SKILL.md +18 -0
- package/presets/opencode/go/skills/code-review/SKILL.md +32 -0
- package/presets/opencode/go/skills/debug-investigation/SKILL.md +51 -0
- package/presets/opencode/go/skills/feature-delivery/SKILL.md +37 -0
- package/presets/opencode/go/skills/integration-testing/SKILL.md +15 -0
- package/presets/opencode/go/skills/spec-authoring/SKILL.md +26 -0
- package/presets/opencode/go/skills/spec-discovery/SKILL.md +58 -0
- package/presets/opencode/go/skills/technical-retro/SKILL.md +54 -0
- package/presets/opencode/go/skills/unit-testing/SKILL.md +14 -0
- package/presets/opencode/go/skills/write-adr/SKILL.md +41 -0
- package/presets/opencode/go/team/README.md +77 -0
- package/presets/opencode/go/team/fixtures/bugfix-standard.json +37 -0
- package/presets/opencode/go/team/fixtures/feature-full.json +61 -0
- package/presets/opencode/go/team/fixtures/feature-light.json +17 -0
- package/presets/opencode/go/team/fixtures/memlog.example.md +9 -0
- package/presets/opencode/ios-swift/MCP.md +35 -0
- package/presets/opencode/ios-swift/OPENCODE.md +76 -0
- package/presets/opencode/ios-swift/README.md +17 -0
- package/presets/opencode/ios-swift/REPO_AGENTS.md +72 -0
- package/presets/opencode/ios-swift/adapter-map.json +805 -0
- package/presets/opencode/ios-swift/agents/README.md +78 -0
- package/presets/opencode/ios-swift/agents/accessibility-reviewer.md +69 -0
- package/presets/opencode/ios-swift/agents/api-contract-reviewer.md +68 -0
- package/presets/opencode/ios-swift/agents/build-verifier.md +107 -0
- package/presets/opencode/ios-swift/agents/ci-investigator.md +78 -0
- package/presets/opencode/ios-swift/agents/code-reviewer.md +85 -0
- package/presets/opencode/ios-swift/agents/codebase-analyzer.md +33 -0
- package/presets/opencode/ios-swift/agents/debugger.md +86 -0
- package/presets/opencode/ios-swift/agents/feature-developer.md +110 -0
- package/presets/opencode/ios-swift/agents/migration-specialist.md +79 -0
- package/presets/opencode/ios-swift/agents/mockup-reviewer.md +65 -0
- package/presets/opencode/ios-swift/agents/openspec-author.md +170 -0
- package/presets/opencode/ios-swift/agents/performance-auditor.md +78 -0
- package/presets/opencode/ios-swift/agents/qa-tester.md +63 -0
- package/presets/opencode/ios-swift/agents/security-reviewer.md +65 -0
- package/presets/opencode/ios-swift/agents/solution-architect.md +32 -0
- package/presets/opencode/ios-swift/agents/task-analyst.md +104 -0
- package/presets/opencode/ios-swift/agents/task-router.md +156 -0
- package/presets/opencode/ios-swift/agents/tech-writer.md +60 -0
- package/presets/opencode/ios-swift/agents/unit-test-generator.md +50 -0
- package/presets/opencode/ios-swift/agents/unit-test-healer.md +49 -0
- package/presets/opencode/ios-swift/agents/unit-test-planner.md +64 -0
- package/presets/opencode/ios-swift/agents/xcuitest-test-generator.md +38 -0
- package/presets/opencode/ios-swift/agents/xcuitest-test-healer.md +38 -0
- package/presets/opencode/ios-swift/agents/xcuitest-test-planner.md +60 -0
- package/presets/opencode/ios-swift/ai-local/conventions.md +21 -0
- package/presets/opencode/ios-swift/commands/README.md +49 -0
- package/presets/opencode/ios-swift/commands/spec-start.md +32 -0
- package/presets/opencode/ios-swift/commands/task-continue.md +58 -0
- package/presets/opencode/ios-swift/commands/task.md +57 -0
- package/presets/opencode/ios-swift/commands/technical-retro.md +88 -0
- package/presets/opencode/ios-swift/hooks/README.md +22 -0
- package/presets/opencode/ios-swift/hooks/chain-team-phases.sh +901 -0
- package/presets/opencode/ios-swift/opencode.json +17 -0
- package/presets/opencode/ios-swift/rules/README.md +20 -0
- package/presets/opencode/ios-swift/rules/agent-team-intake.md +11 -0
- package/presets/opencode/ios-swift/rules/agent-team-orchestrator.md +214 -0
- package/presets/opencode/ios-swift/rules/ai-local-overlay.md +37 -0
- package/presets/opencode/ios-swift/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/opencode/ios-swift/rules/architecture-boundaries.md +29 -0
- package/presets/opencode/ios-swift/rules/code-quality-and-refactoring.md +54 -0
- package/presets/opencode/ios-swift/rules/code-review-mr.md +79 -0
- package/presets/opencode/ios-swift/rules/design-guidance.md +104 -0
- package/presets/opencode/ios-swift/rules/feature-delivery-workflow.md +115 -0
- package/presets/opencode/ios-swift/rules/ios-app-core.md +16 -0
- package/presets/opencode/ios-swift/rules/mcp-usage.md +94 -0
- package/presets/opencode/ios-swift/rules/mockup-review.md +111 -0
- package/presets/opencode/ios-swift/rules/module-public-api.md +17 -0
- package/presets/opencode/ios-swift/rules/navigation-coordinators.md +18 -0
- package/presets/opencode/ios-swift/rules/networking-services.md +43 -0
- package/presets/opencode/ios-swift/rules/persistence-data.md +20 -0
- package/presets/opencode/ios-swift/rules/post-change-build.md +27 -0
- package/presets/opencode/ios-swift/rules/preset-layering.md +27 -0
- package/presets/opencode/ios-swift/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/opencode/ios-swift/rules/preset-pr-checklist.md +36 -0
- package/presets/opencode/ios-swift/rules/preset-token-budget.md +39 -0
- package/presets/opencode/ios-swift/rules/preset-twin-sync.md +99 -0
- package/presets/opencode/ios-swift/rules/product-specs-authoring.md +118 -0
- package/presets/opencode/ios-swift/rules/product-specs.md +61 -0
- package/presets/opencode/ios-swift/rules/reference-features.md +94 -0
- package/presets/opencode/ios-swift/rules/security-ios.md +24 -0
- package/presets/opencode/ios-swift/rules/state-and-viewmodels.md +37 -0
- package/presets/opencode/ios-swift/rules/swift-conventions.md +55 -0
- package/presets/opencode/ios-swift/rules/swiftui-ui.md +70 -0
- package/presets/opencode/ios-swift/rules/technical-retro.md +11 -0
- package/presets/opencode/ios-swift/rules/tests-ui.md +37 -0
- package/presets/opencode/ios-swift/rules/tests-unit.md +35 -0
- package/presets/opencode/ios-swift/rules/ux-design.md +103 -0
- package/presets/opencode/ios-swift/rules/xcode-tooling.md +15 -0
- package/presets/opencode/ios-swift/skills/README.md +18 -0
- package/presets/opencode/ios-swift/skills/ci-investigation/SKILL.md +47 -0
- package/presets/opencode/ios-swift/skills/code-review/SKILL.md +45 -0
- package/presets/opencode/ios-swift/skills/debug-investigation/SKILL.md +70 -0
- package/presets/opencode/ios-swift/skills/feature-delivery/SKILL.md +45 -0
- package/presets/opencode/ios-swift/skills/mockup-review/SKILL.md +29 -0
- package/presets/opencode/ios-swift/skills/spec-authoring/SKILL.md +26 -0
- package/presets/opencode/ios-swift/skills/spec-discovery/SKILL.md +58 -0
- package/presets/opencode/ios-swift/skills/technical-retro/SKILL.md +54 -0
- package/presets/opencode/ios-swift/skills/unit-testing/SKILL.md +32 -0
- package/presets/opencode/ios-swift/skills/ux-design/SKILL.md +36 -0
- package/presets/opencode/ios-swift/skills/write-adr/SKILL.md +41 -0
- package/presets/opencode/ios-swift/skills/xcuitest-e2e/SKILL.md +33 -0
- package/presets/opencode/ios-swift/team/README.md +77 -0
- package/presets/opencode/ios-swift/team/fixtures/artifact-manifest.example.json +25 -0
- package/presets/opencode/ios-swift/team/fixtures/bugfix-standard.json +33 -0
- package/presets/opencode/ios-swift/team/fixtures/feature-full.json +61 -0
- package/presets/opencode/ios-swift/team/fixtures/feature-light.json +17 -0
- package/presets/opencode/ios-swift/team/fixtures/feature-with-figma-url.json +17 -0
- package/presets/opencode/ios-swift/team/fixtures/feature-with-ux-no-figma.json +17 -0
- package/presets/opencode/ios-swift/team/fixtures/memlog.example.md +9 -0
- package/presets/opencode/ios-swift/team/fixtures/mockup-review-fail-embedded-status.json +8 -0
- package/presets/opencode/ios-swift/team/fixtures/mockup-review-standalone.json +14 -0
- package/presets/opencode/ios-swift/team/fixtures/ux-design-standalone.json +15 -0
- package/presets/opencode/java/MCP.md +34 -0
- package/presets/opencode/java/OPENCODE.md +53 -0
- package/presets/opencode/java/README.md +17 -0
- package/presets/opencode/java/REPO_AGENTS.md +72 -0
- package/presets/opencode/java/adapter-map.json +755 -0
- package/presets/opencode/java/agents/README.md +49 -0
- package/presets/opencode/java/agents/api-contract-reviewer.md +29 -0
- package/presets/opencode/java/agents/build-verifier.md +76 -0
- package/presets/opencode/java/agents/ci-investigator.md +32 -0
- package/presets/opencode/java/agents/code-reviewer.md +60 -0
- package/presets/opencode/java/agents/codebase-analyzer.md +33 -0
- package/presets/opencode/java/agents/debugger.md +50 -0
- package/presets/opencode/java/agents/feature-developer.md +98 -0
- package/presets/opencode/java/agents/integration-test-generator.md +24 -0
- package/presets/opencode/java/agents/integration-test-healer.md +24 -0
- package/presets/opencode/java/agents/integration-test-planner.md +28 -0
- package/presets/opencode/java/agents/migration-specialist.md +43 -0
- package/presets/opencode/java/agents/openspec-author.md +170 -0
- package/presets/opencode/java/agents/performance-auditor.md +34 -0
- package/presets/opencode/java/agents/qa-tester.md +30 -0
- package/presets/opencode/java/agents/security-reviewer.md +26 -0
- package/presets/opencode/java/agents/solution-architect.md +40 -0
- package/presets/opencode/java/agents/task-analyst.md +83 -0
- package/presets/opencode/java/agents/task-router.md +145 -0
- package/presets/opencode/java/agents/tech-writer.md +30 -0
- package/presets/opencode/java/agents/unit-test-generator.md +23 -0
- package/presets/opencode/java/agents/unit-test-healer.md +15 -0
- package/presets/opencode/java/agents/unit-test-planner.md +32 -0
- package/presets/opencode/java/ai-local/conventions.md +21 -0
- package/presets/opencode/java/commands/README.md +52 -0
- package/presets/opencode/java/commands/spec-start.md +32 -0
- package/presets/opencode/java/commands/task-continue.md +56 -0
- package/presets/opencode/java/commands/task.md +55 -0
- package/presets/opencode/java/commands/technical-retro.md +88 -0
- package/presets/opencode/java/hooks/README.md +22 -0
- package/presets/opencode/java/hooks/chain-team-phases.sh +874 -0
- package/presets/opencode/java/opencode.json +13 -0
- package/presets/opencode/java/rules/README.md +20 -0
- package/presets/opencode/java/rules/adapters-driven.md +30 -0
- package/presets/opencode/java/rules/adapters-driving.md +30 -0
- package/presets/opencode/java/rules/agent-team-intake.md +15 -0
- package/presets/opencode/java/rules/agent-team-orchestrator.md +214 -0
- package/presets/opencode/java/rules/ai-local-overlay.md +37 -0
- package/presets/opencode/java/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/opencode/java/rules/api-grpc.md +22 -0
- package/presets/opencode/java/rules/api-http.md +28 -0
- package/presets/opencode/java/rules/application-usecases.md +26 -0
- package/presets/opencode/java/rules/architecture-boundaries.md +31 -0
- package/presets/opencode/java/rules/code-quality-and-refactoring.md +55 -0
- package/presets/opencode/java/rules/code-review-mr.md +49 -0
- package/presets/opencode/java/rules/composition-root.md +25 -0
- package/presets/opencode/java/rules/design-guidance.md +105 -0
- package/presets/opencode/java/rules/domain-layer.md +32 -0
- package/presets/opencode/java/rules/feature-delivery-workflow.md +49 -0
- package/presets/opencode/java/rules/java-app-core.md +28 -0
- package/presets/opencode/java/rules/java-conventions.md +47 -0
- package/presets/opencode/java/rules/java-tooling.md +24 -0
- package/presets/opencode/java/rules/mcp-usage.md +92 -0
- package/presets/opencode/java/rules/messaging-adapters.md +23 -0
- package/presets/opencode/java/rules/module-public-api.md +23 -0
- package/presets/opencode/java/rules/persistence-adapters.md +25 -0
- package/presets/opencode/java/rules/ports-interfaces.md +27 -0
- package/presets/opencode/java/rules/post-change-test.md +20 -0
- package/presets/opencode/java/rules/preset-layering.md +27 -0
- package/presets/opencode/java/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/opencode/java/rules/preset-pr-checklist.md +36 -0
- package/presets/opencode/java/rules/preset-token-budget.md +39 -0
- package/presets/opencode/java/rules/preset-twin-sync.md +99 -0
- package/presets/opencode/java/rules/product-specs-authoring.md +118 -0
- package/presets/opencode/java/rules/product-specs.md +62 -0
- package/presets/opencode/java/rules/reference-features.md +45 -0
- package/presets/opencode/java/rules/security-java.md +21 -0
- package/presets/opencode/java/rules/technical-retro.md +11 -0
- package/presets/opencode/java/rules/tests-e2e.md +15 -0
- package/presets/opencode/java/rules/tests-integration.md +19 -0
- package/presets/opencode/java/rules/tests-unit.md +26 -0
- package/presets/opencode/java/skills/README.md +5 -0
- package/presets/opencode/java/skills/ci-investigation/SKILL.md +18 -0
- package/presets/opencode/java/skills/code-review/SKILL.md +32 -0
- package/presets/opencode/java/skills/debug-investigation/SKILL.md +51 -0
- package/presets/opencode/java/skills/feature-delivery/SKILL.md +37 -0
- package/presets/opencode/java/skills/integration-testing/SKILL.md +15 -0
- package/presets/opencode/java/skills/spec-authoring/SKILL.md +26 -0
- package/presets/opencode/java/skills/spec-discovery/SKILL.md +58 -0
- package/presets/opencode/java/skills/technical-retro/SKILL.md +54 -0
- package/presets/opencode/java/skills/unit-testing/SKILL.md +14 -0
- package/presets/opencode/java/skills/write-adr/SKILL.md +41 -0
- package/presets/opencode/java/team/README.md +77 -0
- package/presets/opencode/java/team/fixtures/bugfix-standard.json +37 -0
- package/presets/opencode/java/team/fixtures/feature-full.json +61 -0
- package/presets/opencode/java/team/fixtures/feature-light.json +17 -0
- package/presets/opencode/java/team/fixtures/memlog.example.md +9 -0
- package/presets/opencode/mcp-ts/MCP.md +56 -0
- package/presets/opencode/mcp-ts/OPENCODE.md +51 -0
- package/presets/opencode/mcp-ts/README.md +17 -0
- package/presets/opencode/mcp-ts/REPO_AGENTS.md +75 -0
- package/presets/opencode/mcp-ts/adapter-map.json +520 -0
- package/presets/opencode/mcp-ts/agents/README.md +45 -0
- package/presets/opencode/mcp-ts/agents/build-verifier.md +70 -0
- package/presets/opencode/mcp-ts/agents/feature-developer.md +97 -0
- package/presets/opencode/mcp-ts/agents/security-reviewer.md +27 -0
- package/presets/opencode/mcp-ts/agents/solution-architect.md +34 -0
- package/presets/opencode/mcp-ts/agents/task-analyst.md +86 -0
- package/presets/opencode/mcp-ts/agents/task-router.md +141 -0
- package/presets/opencode/mcp-ts/ai-local/conventions.md +14 -0
- package/presets/opencode/mcp-ts/commands/README.md +9 -0
- package/presets/opencode/mcp-ts/commands/spec-start.md +32 -0
- package/presets/opencode/mcp-ts/commands/task-continue.md +56 -0
- package/presets/opencode/mcp-ts/commands/task.md +55 -0
- package/presets/opencode/mcp-ts/commands/technical-retro.md +88 -0
- package/presets/opencode/mcp-ts/hooks/README.md +22 -0
- package/presets/opencode/mcp-ts/hooks/chain-team-phases.sh +819 -0
- package/presets/opencode/mcp-ts/opencode.json +13 -0
- package/presets/opencode/mcp-ts/rules/README.md +20 -0
- package/presets/opencode/mcp-ts/rules/agent-team-intake.md +16 -0
- package/presets/opencode/mcp-ts/rules/agent-team-orchestrator.md +214 -0
- package/presets/opencode/mcp-ts/rules/ai-local-overlay.md +37 -0
- package/presets/opencode/mcp-ts/rules/anti-sycophancy-discipline.md +27 -0
- package/presets/opencode/mcp-ts/rules/code-quality-and-refactoring.md +55 -0
- package/presets/opencode/mcp-ts/rules/code-review-mr.md +46 -0
- package/presets/opencode/mcp-ts/rules/design-guidance.md +104 -0
- package/presets/opencode/mcp-ts/rules/feature-delivery-workflow.md +49 -0
- package/presets/opencode/mcp-ts/rules/mcp-auth-secrets.md +35 -0
- package/presets/opencode/mcp-ts/rules/mcp-contract-testing.md +32 -0
- package/presets/opencode/mcp-ts/rules/mcp-server-boundaries.md +24 -0
- package/presets/opencode/mcp-ts/rules/mcp-tool-design.md +29 -0
- package/presets/opencode/mcp-ts/rules/mcp-transport-packaging.md +34 -0
- package/presets/opencode/mcp-ts/rules/mcp-ts-app-core.md +23 -0
- package/presets/opencode/mcp-ts/rules/mcp-ts-conventions.md +22 -0
- package/presets/opencode/mcp-ts/rules/mcp-ts-tooling.md +21 -0
- package/presets/opencode/mcp-ts/rules/mcp-usage.md +93 -0
- package/presets/opencode/mcp-ts/rules/post-change-test.md +21 -0
- package/presets/opencode/mcp-ts/rules/preset-layering.md +27 -0
- package/presets/opencode/mcp-ts/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/opencode/mcp-ts/rules/preset-pr-checklist.md +36 -0
- package/presets/opencode/mcp-ts/rules/preset-token-budget.md +39 -0
- package/presets/opencode/mcp-ts/rules/preset-twin-sync.md +99 -0
- package/presets/opencode/mcp-ts/rules/product-specs-authoring.md +118 -0
- package/presets/opencode/mcp-ts/rules/product-specs.md +62 -0
- package/presets/opencode/mcp-ts/rules/reference-features.md +45 -0
- package/presets/opencode/mcp-ts/rules/security-mcp.md +43 -0
- package/presets/opencode/mcp-ts/rules/technical-retro.md +11 -0
- package/presets/opencode/mcp-ts/rules/tests-unit.md +23 -0
- package/presets/opencode/mcp-ts/skills/README.md +14 -0
- package/presets/opencode/mcp-ts/skills/code-review/SKILL.md +17 -0
- package/presets/opencode/mcp-ts/skills/debug-investigation/SKILL.md +46 -0
- package/presets/opencode/mcp-ts/skills/feature-delivery/SKILL.md +36 -0
- package/presets/opencode/mcp-ts/skills/spec-authoring/SKILL.md +26 -0
- package/presets/opencode/mcp-ts/skills/spec-discovery/SKILL.md +58 -0
- package/presets/opencode/mcp-ts/skills/unit-testing/SKILL.md +16 -0
- package/presets/opencode/mcp-ts/team/README.md +77 -0
- package/presets/opencode/mcp-ts/team/fixtures/bugfix-standard.json +32 -0
- package/presets/opencode/mcp-ts/team/fixtures/feature-full.json +36 -0
- package/presets/opencode/mcp-ts/team/fixtures/feature-light.json +34 -0
- package/presets/opencode/mcp-ts/team/fixtures/memlog.example.md +9 -0
- package/presets/opencode/next/OPENCODE.md +2 -2
- package/presets/opencode/next/README.md +4 -3
- package/presets/opencode/next/REPO_AGENTS.md +4 -4
- package/presets/opencode/next/adapter-map.json +26 -26
- package/presets/opencode/next/agents/README.md +9 -119
- package/presets/opencode/next/agents/accessibility-reviewer.md +6 -6
- package/presets/opencode/next/agents/api-contract-reviewer.md +5 -5
- package/presets/opencode/next/agents/build-verifier.md +8 -8
- package/presets/opencode/next/agents/ci-investigator.md +3 -3
- package/presets/opencode/next/agents/code-reviewer.md +7 -7
- package/presets/opencode/next/agents/codebase-analyzer.md +2 -2
- package/presets/opencode/next/agents/debugger.md +4 -4
- package/presets/opencode/next/agents/feature-developer.md +3 -3
- package/presets/opencode/next/agents/migration-specialist.md +5 -5
- package/presets/opencode/next/agents/mockup-reviewer.md +6 -6
- package/presets/opencode/next/agents/openspec-author.md +8 -7
- package/presets/opencode/next/agents/performance-auditor.md +5 -5
- package/presets/opencode/next/agents/playwright-test-generator.md +1 -1
- package/presets/opencode/next/agents/playwright-test-planner.md +2 -2
- package/presets/opencode/next/agents/qa-tester.md +3 -3
- package/presets/opencode/next/agents/security-reviewer.md +6 -6
- package/presets/opencode/next/agents/solution-architect.md +6 -6
- package/presets/opencode/next/agents/task-analyst.md +8 -8
- package/presets/opencode/next/agents/task-router.md +6 -6
- package/presets/opencode/next/agents/tech-writer.md +6 -5
- package/presets/opencode/next/agents/unit-test-generator.md +3 -3
- package/presets/opencode/next/agents/unit-test-healer.md +2 -2
- package/presets/opencode/next/agents/unit-test-planner.md +5 -5
- package/presets/opencode/next/ai-local/conventions.md +21 -0
- package/presets/opencode/next/commands/README.md +2 -2
- package/presets/opencode/next/commands/spec-start.md +3 -3
- package/presets/opencode/next/commands/task-continue.md +3 -3
- package/presets/opencode/next/commands/task.md +2 -2
- package/presets/opencode/next/commands/technical-retro.md +5 -5
- package/presets/opencode/next/hooks/README.md +1 -1
- package/presets/opencode/next/hooks/chain-team-phases.sh +70 -12
- package/presets/opencode/next/rules/agent-team-orchestrator.md +3 -3
- package/presets/opencode/next/rules/ai-local-overlay.md +2 -2
- package/presets/opencode/next/rules/api-services.md +6 -4
- package/presets/opencode/next/rules/code-quality-and-refactoring.md +13 -0
- package/presets/opencode/next/rules/code-review-mr.md +13 -0
- package/presets/opencode/next/rules/design-guidance.md +5 -0
- package/presets/opencode/next/rules/feature-delivery-workflow.md +85 -0
- package/presets/opencode/next/rules/mcp-usage.md +9 -0
- package/presets/opencode/next/rules/mockup-review.md +4 -0
- package/presets/opencode/next/rules/next-app-core.md +2 -1
- package/presets/opencode/next/rules/preset-layering.md +1 -1
- package/presets/opencode/next/rules/preset-pr-checklist.md +3 -3
- package/presets/opencode/next/rules/preset-token-budget.md +10 -10
- package/presets/opencode/next/rules/preset-twin-sync.md +26 -8
- package/presets/opencode/next/rules/product-specs-authoring.md +6 -0
- package/presets/opencode/next/rules/product-specs.md +6 -0
- package/presets/opencode/next/rules/react-ui.md +37 -1
- package/presets/opencode/next/rules/reference-features.md +37 -1
- package/presets/opencode/next/rules/store-rtk.md +6 -5
- package/presets/opencode/next/rules/tests-e2e-structure.md +15 -0
- package/presets/opencode/next/rules/tests-unit.md +33 -0
- package/presets/opencode/next/rules/ux-design.md +4 -0
- package/presets/opencode/next/skills/README.md +1 -1
- package/presets/opencode/next/skills/ci-investigation/SKILL.md +1 -1
- package/presets/opencode/next/skills/code-review/SKILL.md +3 -3
- package/presets/opencode/next/skills/debug-investigation/SKILL.md +2 -2
- package/presets/opencode/next/skills/feature-delivery/SKILL.md +1 -1
- package/presets/opencode/next/skills/mockup-review/SKILL.md +2 -2
- package/presets/opencode/next/skills/playwright-e2e/SKILL.md +1 -1
- package/presets/opencode/next/skills/react-performance/SKILL.md +1 -1
- package/presets/opencode/next/skills/spec-authoring/SKILL.md +1 -1
- package/presets/opencode/next/skills/spec-discovery/SKILL.md +3 -3
- package/presets/opencode/next/skills/technical-retro/SKILL.md +3 -3
- package/presets/opencode/next/skills/unit-testing/SKILL.md +2 -2
- package/presets/opencode/next/skills/ux-design/SKILL.md +2 -2
- package/presets/opencode/next/skills/write-adr/SKILL.md +3 -3
- package/presets/opencode/next/team/README.md +35 -106
- package/presets/opencode/nuxt/MCP.md +36 -0
- package/presets/opencode/nuxt/OPENCODE.md +65 -0
- package/presets/opencode/nuxt/README.md +17 -0
- package/presets/opencode/nuxt/REPO_AGENTS.md +75 -0
- package/presets/opencode/nuxt/adapter-map.json +959 -0
- package/presets/opencode/nuxt/agents/README.md +99 -0
- package/presets/opencode/nuxt/agents/accessibility-reviewer.md +73 -0
- package/presets/opencode/nuxt/agents/api-contract-reviewer.md +69 -0
- package/presets/opencode/nuxt/agents/build-verifier.md +112 -0
- package/presets/opencode/nuxt/agents/ci-investigator.md +71 -0
- package/presets/opencode/nuxt/agents/code-reviewer.md +74 -0
- package/presets/opencode/nuxt/agents/codebase-analyzer.md +33 -0
- package/presets/opencode/nuxt/agents/debugger.md +88 -0
- package/presets/opencode/nuxt/agents/feature-developer.md +109 -0
- package/presets/opencode/nuxt/agents/migration-specialist.md +79 -0
- package/presets/opencode/nuxt/agents/mockup-reviewer.md +65 -0
- package/presets/opencode/nuxt/agents/openspec-author.md +170 -0
- package/presets/opencode/nuxt/agents/performance-auditor.md +80 -0
- package/presets/opencode/nuxt/agents/playwright-test-generator.md +36 -0
- package/presets/opencode/nuxt/agents/playwright-test-healer.md +36 -0
- package/presets/opencode/nuxt/agents/playwright-test-planner.md +33 -0
- package/presets/opencode/nuxt/agents/qa-tester.md +60 -0
- package/presets/opencode/nuxt/agents/security-reviewer.md +66 -0
- package/presets/opencode/nuxt/agents/solution-architect.md +80 -0
- package/presets/opencode/nuxt/agents/task-analyst.md +178 -0
- package/presets/opencode/nuxt/agents/task-router.md +190 -0
- package/presets/opencode/nuxt/agents/tech-writer.md +70 -0
- package/presets/opencode/nuxt/agents/unit-test-generator.md +39 -0
- package/presets/opencode/nuxt/agents/unit-test-healer.md +40 -0
- package/presets/opencode/nuxt/agents/unit-test-planner.md +66 -0
- package/presets/opencode/nuxt/ai-local/conventions.md +21 -0
- package/presets/opencode/nuxt/commands/README.md +49 -0
- package/presets/opencode/nuxt/commands/spec-start.md +32 -0
- package/presets/opencode/nuxt/commands/task-continue.md +58 -0
- package/presets/opencode/nuxt/commands/task.md +57 -0
- package/presets/opencode/nuxt/commands/technical-retro.md +88 -0
- package/presets/opencode/nuxt/hooks/README.md +22 -0
- package/presets/opencode/nuxt/hooks/chain-team-phases.sh +903 -0
- package/presets/opencode/nuxt/opencode.json +33 -0
- package/presets/opencode/nuxt/rules/README.md +20 -0
- package/presets/opencode/nuxt/rules/agent-team-intake.md +11 -0
- package/presets/opencode/nuxt/rules/agent-team-orchestrator.md +214 -0
- package/presets/opencode/nuxt/rules/ai-local-overlay.md +37 -0
- package/presets/opencode/nuxt/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/opencode/nuxt/rules/api-services.md +72 -0
- package/presets/opencode/nuxt/rules/architecture-boundaries-ui.md +9 -0
- package/presets/opencode/nuxt/rules/architecture-boundaries.md +90 -0
- package/presets/opencode/nuxt/rules/code-quality-and-refactoring.md +53 -0
- package/presets/opencode/nuxt/rules/code-review-mr.md +53 -0
- package/presets/opencode/nuxt/rules/css-property-order-stylelint.md +6 -0
- package/presets/opencode/nuxt/rules/design-guidance.md +104 -0
- package/presets/opencode/nuxt/rules/feature-delivery-workflow.md +131 -0
- package/presets/opencode/nuxt/rules/http-client.md +9 -0
- package/presets/opencode/nuxt/rules/layer-barrel-exports.md +67 -0
- package/presets/opencode/nuxt/rules/mcp-usage.md +95 -0
- package/presets/opencode/nuxt/rules/mockup-review.md +111 -0
- package/presets/opencode/nuxt/rules/navigation-router-stack.md +55 -0
- package/presets/opencode/nuxt/rules/navigation-router-ui.md +10 -0
- package/presets/opencode/nuxt/rules/no-type-assertion-as-import-export.md +51 -0
- package/presets/opencode/nuxt/rules/no-v-bind-spread.md +7 -0
- package/presets/opencode/nuxt/rules/nuxt-app-core.md +40 -0
- package/presets/opencode/nuxt/rules/nuxt-pages-routing.md +31 -0
- package/presets/opencode/nuxt/rules/package-manager.md +13 -0
- package/presets/opencode/nuxt/rules/playwright-agents.md +74 -0
- package/presets/opencode/nuxt/rules/post-change-lint.md +37 -0
- package/presets/opencode/nuxt/rules/preset-layering.md +27 -0
- package/presets/opencode/nuxt/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/opencode/nuxt/rules/preset-pr-checklist.md +36 -0
- package/presets/opencode/nuxt/rules/preset-token-budget.md +39 -0
- package/presets/opencode/nuxt/rules/preset-twin-sync.md +99 -0
- package/presets/opencode/nuxt/rules/product-specs-authoring.md +118 -0
- package/presets/opencode/nuxt/rules/product-specs.md +61 -0
- package/presets/opencode/nuxt/rules/public-imports.md +50 -0
- package/presets/opencode/nuxt/rules/reference-features.md +81 -0
- package/presets/opencode/nuxt/rules/script-setup-conventions.md +7 -0
- package/presets/opencode/nuxt/rules/security-nuxt.md +28 -0
- package/presets/opencode/nuxt/rules/store-pinia.md +61 -0
- package/presets/opencode/nuxt/rules/technical-retro.md +11 -0
- package/presets/opencode/nuxt/rules/tests-e2e-structure.md +88 -0
- package/presets/opencode/nuxt/rules/tests-unit.md +83 -0
- package/presets/opencode/nuxt/rules/types-jsdoc.md +36 -0
- package/presets/opencode/nuxt/rules/ux-design.md +103 -0
- package/presets/opencode/nuxt/rules/vue-a11y-coding.md +9 -0
- package/presets/opencode/nuxt/rules/vue-nuxt-anti-hallucination.md +62 -0
- package/presets/opencode/nuxt/rules/vue-ui.md +34 -0
- package/presets/opencode/nuxt/skills/README.md +21 -0
- package/presets/opencode/nuxt/skills/ci-investigation/SKILL.md +44 -0
- package/presets/opencode/nuxt/skills/code-review/SKILL.md +44 -0
- package/presets/opencode/nuxt/skills/debug-investigation/SKILL.md +61 -0
- package/presets/opencode/nuxt/skills/feature-delivery/SKILL.md +46 -0
- package/presets/opencode/nuxt/skills/mockup-review/SKILL.md +29 -0
- package/presets/opencode/nuxt/skills/playwright-e2e/SKILL.md +37 -0
- package/presets/opencode/nuxt/skills/spec-authoring/SKILL.md +26 -0
- package/presets/opencode/nuxt/skills/spec-discovery/SKILL.md +58 -0
- package/presets/opencode/nuxt/skills/technical-retro/SKILL.md +54 -0
- package/presets/opencode/nuxt/skills/unit-testing/SKILL.md +32 -0
- package/presets/opencode/nuxt/skills/ux-design/SKILL.md +36 -0
- package/presets/opencode/nuxt/skills/vue-performance/SKILL.md +53 -0
- package/presets/opencode/nuxt/skills/write-adr/SKILL.md +41 -0
- package/presets/opencode/nuxt/team/README.md +77 -0
- package/presets/opencode/nuxt/team/fixtures/artifact-manifest.example.json +79 -0
- package/presets/opencode/nuxt/team/fixtures/bugfix-standard.json +25 -0
- package/presets/opencode/nuxt/team/fixtures/feature-full.json +62 -0
- package/presets/opencode/nuxt/team/fixtures/feature-light.json +27 -0
- package/presets/opencode/nuxt/team/fixtures/feature-with-figma-url.json +17 -0
- package/presets/opencode/nuxt/team/fixtures/feature-with-ux-no-figma.json +17 -0
- package/presets/opencode/nuxt/team/fixtures/memlog.example.md +9 -0
- package/presets/opencode/nuxt/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
- package/presets/opencode/nuxt/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
- package/presets/opencode/nuxt/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
- package/presets/opencode/nuxt/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
- package/presets/opencode/nuxt/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
- package/presets/opencode/nuxt/team/fixtures/metrics.example.json +54 -0
- package/presets/opencode/nuxt/team/fixtures/mockup-review-fail-embedded-status.json +8 -0
- package/presets/opencode/nuxt/team/fixtures/mockup-review-standalone.json +14 -0
- package/presets/opencode/nuxt/team/fixtures/ux-design-standalone.json +15 -0
- package/presets/opencode/nuxt/team/tasks/.gitkeep +0 -0
- package/presets/opencode/php-hexagonal/MCP.md +34 -0
- package/presets/opencode/php-hexagonal/OPENCODE.md +53 -0
- package/presets/opencode/php-hexagonal/README.md +17 -0
- package/presets/opencode/php-hexagonal/REPO_AGENTS.md +73 -0
- package/presets/opencode/php-hexagonal/adapter-map.json +755 -0
- package/presets/opencode/php-hexagonal/agents/README.md +49 -0
- package/presets/opencode/php-hexagonal/agents/api-contract-reviewer.md +29 -0
- package/presets/opencode/php-hexagonal/agents/build-verifier.md +76 -0
- package/presets/opencode/php-hexagonal/agents/ci-investigator.md +32 -0
- package/presets/opencode/php-hexagonal/agents/code-reviewer.md +60 -0
- package/presets/opencode/php-hexagonal/agents/codebase-analyzer.md +33 -0
- package/presets/opencode/php-hexagonal/agents/debugger.md +50 -0
- package/presets/opencode/php-hexagonal/agents/feature-developer.md +98 -0
- package/presets/opencode/php-hexagonal/agents/integration-test-generator.md +24 -0
- package/presets/opencode/php-hexagonal/agents/integration-test-healer.md +24 -0
- package/presets/opencode/php-hexagonal/agents/integration-test-planner.md +28 -0
- package/presets/opencode/php-hexagonal/agents/migration-specialist.md +43 -0
- package/presets/opencode/php-hexagonal/agents/openspec-author.md +170 -0
- package/presets/opencode/php-hexagonal/agents/performance-auditor.md +34 -0
- package/presets/opencode/php-hexagonal/agents/qa-tester.md +30 -0
- package/presets/opencode/php-hexagonal/agents/security-reviewer.md +26 -0
- package/presets/opencode/php-hexagonal/agents/solution-architect.md +40 -0
- package/presets/opencode/php-hexagonal/agents/task-analyst.md +83 -0
- package/presets/opencode/php-hexagonal/agents/task-router.md +145 -0
- package/presets/opencode/php-hexagonal/agents/tech-writer.md +30 -0
- package/presets/opencode/php-hexagonal/agents/unit-test-generator.md +23 -0
- package/presets/opencode/php-hexagonal/agents/unit-test-healer.md +15 -0
- package/presets/opencode/php-hexagonal/agents/unit-test-planner.md +32 -0
- package/presets/opencode/php-hexagonal/ai-local/conventions.md +21 -0
- package/presets/opencode/php-hexagonal/commands/README.md +52 -0
- package/presets/opencode/php-hexagonal/commands/spec-start.md +32 -0
- package/presets/opencode/php-hexagonal/commands/task-continue.md +56 -0
- package/presets/opencode/php-hexagonal/commands/task.md +55 -0
- package/presets/opencode/php-hexagonal/commands/technical-retro.md +88 -0
- package/presets/opencode/php-hexagonal/hooks/README.md +22 -0
- package/presets/opencode/php-hexagonal/hooks/chain-team-phases.sh +875 -0
- package/presets/opencode/php-hexagonal/opencode.json +13 -0
- package/presets/opencode/php-hexagonal/rules/README.md +20 -0
- package/presets/opencode/php-hexagonal/rules/adapters-driven.md +30 -0
- package/presets/opencode/php-hexagonal/rules/adapters-driving.md +30 -0
- package/presets/opencode/php-hexagonal/rules/agent-team-intake.md +15 -0
- package/presets/opencode/php-hexagonal/rules/agent-team-orchestrator.md +214 -0
- package/presets/opencode/php-hexagonal/rules/ai-local-overlay.md +37 -0
- package/presets/opencode/php-hexagonal/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/opencode/php-hexagonal/rules/api-grpc.md +22 -0
- package/presets/opencode/php-hexagonal/rules/api-http.md +28 -0
- package/presets/opencode/php-hexagonal/rules/application-usecases.md +25 -0
- package/presets/opencode/php-hexagonal/rules/architecture-boundaries.md +31 -0
- package/presets/opencode/php-hexagonal/rules/code-quality-and-refactoring.md +55 -0
- package/presets/opencode/php-hexagonal/rules/code-review-mr.md +49 -0
- package/presets/opencode/php-hexagonal/rules/composition-root.md +27 -0
- package/presets/opencode/php-hexagonal/rules/design-guidance.md +105 -0
- package/presets/opencode/php-hexagonal/rules/domain-layer.md +31 -0
- package/presets/opencode/php-hexagonal/rules/feature-delivery-workflow.md +49 -0
- package/presets/opencode/php-hexagonal/rules/mcp-usage.md +92 -0
- package/presets/opencode/php-hexagonal/rules/messaging-adapters.md +29 -0
- package/presets/opencode/php-hexagonal/rules/module-public-api.md +24 -0
- package/presets/opencode/php-hexagonal/rules/persistence-adapters.md +25 -0
- package/presets/opencode/php-hexagonal/rules/php-app-core.md +32 -0
- package/presets/opencode/php-hexagonal/rules/php-conventions.md +46 -0
- package/presets/opencode/php-hexagonal/rules/php-tooling.md +26 -0
- package/presets/opencode/php-hexagonal/rules/ports-interfaces.md +27 -0
- package/presets/opencode/php-hexagonal/rules/post-change-test.md +20 -0
- package/presets/opencode/php-hexagonal/rules/preset-layering.md +27 -0
- package/presets/opencode/php-hexagonal/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/opencode/php-hexagonal/rules/preset-pr-checklist.md +36 -0
- package/presets/opencode/php-hexagonal/rules/preset-token-budget.md +39 -0
- package/presets/opencode/php-hexagonal/rules/preset-twin-sync.md +99 -0
- package/presets/opencode/php-hexagonal/rules/product-specs-authoring.md +118 -0
- package/presets/opencode/php-hexagonal/rules/product-specs.md +62 -0
- package/presets/opencode/php-hexagonal/rules/reference-features.md +45 -0
- package/presets/opencode/php-hexagonal/rules/security-php.md +21 -0
- package/presets/opencode/php-hexagonal/rules/technical-retro.md +11 -0
- package/presets/opencode/php-hexagonal/rules/tests-e2e.md +26 -0
- package/presets/opencode/php-hexagonal/rules/tests-integration.md +23 -0
- package/presets/opencode/php-hexagonal/rules/tests-unit.md +25 -0
- package/presets/opencode/php-hexagonal/skills/README.md +5 -0
- package/presets/opencode/php-hexagonal/skills/ci-investigation/SKILL.md +18 -0
- package/presets/opencode/php-hexagonal/skills/code-review/SKILL.md +32 -0
- package/presets/opencode/php-hexagonal/skills/debug-investigation/SKILL.md +51 -0
- package/presets/opencode/php-hexagonal/skills/feature-delivery/SKILL.md +37 -0
- package/presets/opencode/php-hexagonal/skills/integration-testing/SKILL.md +15 -0
- package/presets/opencode/php-hexagonal/skills/spec-authoring/SKILL.md +26 -0
- package/presets/opencode/php-hexagonal/skills/spec-discovery/SKILL.md +58 -0
- package/presets/opencode/php-hexagonal/skills/technical-retro/SKILL.md +54 -0
- package/presets/opencode/php-hexagonal/skills/unit-testing/SKILL.md +14 -0
- package/presets/opencode/php-hexagonal/skills/write-adr/SKILL.md +41 -0
- package/presets/opencode/php-hexagonal/team/README.md +77 -0
- package/presets/opencode/php-hexagonal/team/fixtures/bugfix-standard.json +37 -0
- package/presets/opencode/php-hexagonal/team/fixtures/feature-full.json +61 -0
- package/presets/opencode/php-hexagonal/team/fixtures/feature-light.json +17 -0
- package/presets/opencode/php-hexagonal/team/fixtures/memlog.example.md +9 -0
- package/presets/opencode/php-laravel/MCP.md +26 -0
- package/presets/opencode/php-laravel/OPENCODE.md +53 -0
- package/presets/opencode/php-laravel/README.md +17 -0
- package/presets/opencode/php-laravel/REPO_AGENTS.md +74 -0
- package/presets/opencode/php-laravel/adapter-map.json +755 -0
- package/presets/opencode/php-laravel/agents/README.md +49 -0
- package/presets/opencode/php-laravel/agents/api-contract-reviewer.md +29 -0
- package/presets/opencode/php-laravel/agents/build-verifier.md +76 -0
- package/presets/opencode/php-laravel/agents/ci-investigator.md +32 -0
- package/presets/opencode/php-laravel/agents/code-reviewer.md +60 -0
- package/presets/opencode/php-laravel/agents/codebase-analyzer.md +33 -0
- package/presets/opencode/php-laravel/agents/debugger.md +50 -0
- package/presets/opencode/php-laravel/agents/feature-developer.md +98 -0
- package/presets/opencode/php-laravel/agents/integration-test-generator.md +24 -0
- package/presets/opencode/php-laravel/agents/integration-test-healer.md +24 -0
- package/presets/opencode/php-laravel/agents/integration-test-planner.md +28 -0
- package/presets/opencode/php-laravel/agents/migration-specialist.md +43 -0
- package/presets/opencode/php-laravel/agents/openspec-author.md +170 -0
- package/presets/opencode/php-laravel/agents/performance-auditor.md +34 -0
- package/presets/opencode/php-laravel/agents/qa-tester.md +36 -0
- package/presets/opencode/php-laravel/agents/security-reviewer.md +38 -0
- package/presets/opencode/php-laravel/agents/solution-architect.md +41 -0
- package/presets/opencode/php-laravel/agents/task-analyst.md +83 -0
- package/presets/opencode/php-laravel/agents/task-router.md +161 -0
- package/presets/opencode/php-laravel/agents/tech-writer.md +30 -0
- package/presets/opencode/php-laravel/agents/unit-test-generator.md +23 -0
- package/presets/opencode/php-laravel/agents/unit-test-healer.md +15 -0
- package/presets/opencode/php-laravel/agents/unit-test-planner.md +32 -0
- package/presets/opencode/php-laravel/ai-local/conventions.md +21 -0
- package/presets/opencode/php-laravel/commands/README.md +52 -0
- package/presets/opencode/php-laravel/commands/spec-start.md +32 -0
- package/presets/opencode/php-laravel/commands/task-continue.md +56 -0
- package/presets/opencode/php-laravel/commands/task.md +55 -0
- package/presets/opencode/php-laravel/commands/technical-retro.md +88 -0
- package/presets/opencode/php-laravel/hooks/README.md +22 -0
- package/presets/opencode/php-laravel/hooks/chain-team-phases.sh +875 -0
- package/presets/opencode/php-laravel/opencode.json +13 -0
- package/presets/opencode/php-laravel/rules/README.md +20 -0
- package/presets/opencode/php-laravel/rules/actions-services.md +25 -0
- package/presets/opencode/php-laravel/rules/agent-team-intake.md +15 -0
- package/presets/opencode/php-laravel/rules/agent-team-orchestrator.md +214 -0
- package/presets/opencode/php-laravel/rules/ai-local-overlay.md +37 -0
- package/presets/opencode/php-laravel/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/opencode/php-laravel/rules/architecture-boundaries.md +32 -0
- package/presets/opencode/php-laravel/rules/code-quality-and-refactoring.md +55 -0
- package/presets/opencode/php-laravel/rules/code-review-mr.md +50 -0
- package/presets/opencode/php-laravel/rules/design-guidance.md +105 -0
- package/presets/opencode/php-laravel/rules/domain-layer.md +19 -0
- package/presets/opencode/php-laravel/rules/eloquent-persistence.md +24 -0
- package/presets/opencode/php-laravel/rules/events-listeners.md +24 -0
- package/presets/opencode/php-laravel/rules/feature-delivery-workflow.md +49 -0
- package/presets/opencode/php-laravel/rules/form-requests.md +24 -0
- package/presets/opencode/php-laravel/rules/http-layer.md +25 -0
- package/presets/opencode/php-laravel/rules/jobs-queues.md +36 -0
- package/presets/opencode/php-laravel/rules/laravel-app-core.md +30 -0
- package/presets/opencode/php-laravel/rules/laravel-conventions.md +34 -0
- package/presets/opencode/php-laravel/rules/mcp-usage.md +92 -0
- package/presets/opencode/php-laravel/rules/module-public-api.md +23 -0
- package/presets/opencode/php-laravel/rules/php-tooling.md +26 -0
- package/presets/opencode/php-laravel/rules/policies-authorization.md +24 -0
- package/presets/opencode/php-laravel/rules/post-change-test.md +20 -0
- package/presets/opencode/php-laravel/rules/preset-layering.md +27 -0
- package/presets/opencode/php-laravel/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/opencode/php-laravel/rules/preset-pr-checklist.md +36 -0
- package/presets/opencode/php-laravel/rules/preset-token-budget.md +39 -0
- package/presets/opencode/php-laravel/rules/preset-twin-sync.md +99 -0
- package/presets/opencode/php-laravel/rules/product-specs-authoring.md +118 -0
- package/presets/opencode/php-laravel/rules/product-specs.md +62 -0
- package/presets/opencode/php-laravel/rules/reference-features.md +45 -0
- package/presets/opencode/php-laravel/rules/routes-api.md +24 -0
- package/presets/opencode/php-laravel/rules/security-php.md +47 -0
- package/presets/opencode/php-laravel/rules/service-providers.md +23 -0
- package/presets/opencode/php-laravel/rules/technical-retro.md +11 -0
- package/presets/opencode/php-laravel/rules/tests-e2e.md +26 -0
- package/presets/opencode/php-laravel/rules/tests-integration.md +23 -0
- package/presets/opencode/php-laravel/rules/tests-unit.md +24 -0
- package/presets/opencode/php-laravel/skills/README.md +5 -0
- package/presets/opencode/php-laravel/skills/ci-investigation/SKILL.md +18 -0
- package/presets/opencode/php-laravel/skills/code-review/SKILL.md +32 -0
- package/presets/opencode/php-laravel/skills/debug-investigation/SKILL.md +51 -0
- package/presets/opencode/php-laravel/skills/feature-delivery/SKILL.md +37 -0
- package/presets/opencode/php-laravel/skills/integration-testing/SKILL.md +15 -0
- package/presets/opencode/php-laravel/skills/spec-authoring/SKILL.md +26 -0
- package/presets/opencode/php-laravel/skills/spec-discovery/SKILL.md +58 -0
- package/presets/opencode/php-laravel/skills/technical-retro/SKILL.md +54 -0
- package/presets/opencode/php-laravel/skills/unit-testing/SKILL.md +14 -0
- package/presets/opencode/php-laravel/skills/write-adr/SKILL.md +41 -0
- package/presets/opencode/php-laravel/team/README.md +77 -0
- package/presets/opencode/php-laravel/team/fixtures/bugfix-standard.json +12 -0
- package/presets/opencode/php-laravel/team/fixtures/feature-full.json +44 -0
- package/presets/opencode/php-laravel/team/fixtures/feature-light.json +8 -0
- package/presets/opencode/php-laravel/team/fixtures/memlog.example.md +9 -0
- package/presets/opencode/platform-contract.json +13 -6
- package/presets/opencode/svelte/MCP.md +36 -0
- package/presets/opencode/svelte/OPENCODE.md +65 -0
- package/presets/opencode/svelte/README.md +17 -0
- package/presets/opencode/svelte/REPO_AGENTS.md +75 -0
- package/presets/opencode/svelte/adapter-map.json +959 -0
- package/presets/opencode/svelte/agents/README.md +99 -0
- package/presets/opencode/svelte/agents/accessibility-reviewer.md +73 -0
- package/presets/opencode/svelte/agents/api-contract-reviewer.md +69 -0
- package/presets/opencode/svelte/agents/build-verifier.md +112 -0
- package/presets/opencode/svelte/agents/ci-investigator.md +71 -0
- package/presets/opencode/svelte/agents/code-reviewer.md +74 -0
- package/presets/opencode/svelte/agents/codebase-analyzer.md +33 -0
- package/presets/opencode/svelte/agents/debugger.md +88 -0
- package/presets/opencode/svelte/agents/feature-developer.md +109 -0
- package/presets/opencode/svelte/agents/migration-specialist.md +79 -0
- package/presets/opencode/svelte/agents/mockup-reviewer.md +65 -0
- package/presets/opencode/svelte/agents/openspec-author.md +170 -0
- package/presets/opencode/svelte/agents/performance-auditor.md +80 -0
- package/presets/opencode/svelte/agents/playwright-test-generator.md +36 -0
- package/presets/opencode/svelte/agents/playwright-test-healer.md +36 -0
- package/presets/opencode/svelte/agents/playwright-test-planner.md +33 -0
- package/presets/opencode/svelte/agents/qa-tester.md +60 -0
- package/presets/opencode/svelte/agents/security-reviewer.md +66 -0
- package/presets/opencode/svelte/agents/solution-architect.md +80 -0
- package/presets/opencode/svelte/agents/task-analyst.md +178 -0
- package/presets/opencode/svelte/agents/task-router.md +190 -0
- package/presets/opencode/svelte/agents/tech-writer.md +70 -0
- package/presets/opencode/svelte/agents/unit-test-generator.md +39 -0
- package/presets/opencode/svelte/agents/unit-test-healer.md +40 -0
- package/presets/opencode/svelte/agents/unit-test-planner.md +66 -0
- package/presets/opencode/svelte/ai-local/conventions.md +21 -0
- package/presets/opencode/svelte/commands/README.md +49 -0
- package/presets/opencode/svelte/commands/spec-start.md +32 -0
- package/presets/opencode/svelte/commands/task-continue.md +58 -0
- package/presets/opencode/svelte/commands/task.md +57 -0
- package/presets/opencode/svelte/commands/technical-retro.md +88 -0
- package/presets/opencode/svelte/hooks/README.md +22 -0
- package/presets/opencode/svelte/hooks/chain-team-phases.sh +903 -0
- package/presets/opencode/svelte/opencode.json +33 -0
- package/presets/opencode/svelte/rules/README.md +20 -0
- package/presets/opencode/svelte/rules/agent-team-intake.md +11 -0
- package/presets/opencode/svelte/rules/agent-team-orchestrator.md +214 -0
- package/presets/opencode/svelte/rules/ai-local-overlay.md +37 -0
- package/presets/opencode/svelte/rules/anti-sycophancy-discipline.md +23 -0
- package/presets/opencode/svelte/rules/api-services.md +39 -0
- package/presets/opencode/svelte/rules/architecture-boundaries-ui.md +9 -0
- package/presets/opencode/svelte/rules/architecture-boundaries.md +54 -0
- package/presets/opencode/svelte/rules/code-quality-and-refactoring.md +53 -0
- package/presets/opencode/svelte/rules/code-review-mr.md +53 -0
- package/presets/opencode/svelte/rules/css-property-order-stylelint.md +6 -0
- package/presets/opencode/svelte/rules/design-guidance.md +104 -0
- package/presets/opencode/svelte/rules/feature-delivery-workflow.md +103 -0
- package/presets/opencode/svelte/rules/http-client.md +10 -0
- package/presets/opencode/svelte/rules/layer-barrel-exports.md +67 -0
- package/presets/opencode/svelte/rules/mcp-usage.md +95 -0
- package/presets/opencode/svelte/rules/mockup-review.md +111 -0
- package/presets/opencode/svelte/rules/navigation-router-stack.md +34 -0
- package/presets/opencode/svelte/rules/navigation-router-ui.md +19 -0
- package/presets/opencode/svelte/rules/no-rest-props-spread.md +26 -0
- package/presets/opencode/svelte/rules/no-type-assertion-as-import-export.md +51 -0
- package/presets/opencode/svelte/rules/package-manager.md +13 -0
- package/presets/opencode/svelte/rules/playwright-agents.md +74 -0
- package/presets/opencode/svelte/rules/post-change-lint.md +37 -0
- package/presets/opencode/svelte/rules/preset-layering.md +27 -0
- package/presets/opencode/svelte/rules/preset-no-cross-stack-leakage.md +90 -0
- package/presets/opencode/svelte/rules/preset-pr-checklist.md +36 -0
- package/presets/opencode/svelte/rules/preset-token-budget.md +39 -0
- package/presets/opencode/svelte/rules/preset-twin-sync.md +99 -0
- package/presets/opencode/svelte/rules/product-specs-authoring.md +118 -0
- package/presets/opencode/svelte/rules/product-specs.md +61 -0
- package/presets/opencode/svelte/rules/public-imports.md +32 -0
- package/presets/opencode/svelte/rules/reference-features.md +82 -0
- package/presets/opencode/svelte/rules/security-sveltekit.md +32 -0
- package/presets/opencode/svelte/rules/store-svelte.md +59 -0
- package/presets/opencode/svelte/rules/svelte-a11y-coding.md +21 -0
- package/presets/opencode/svelte/rules/svelte-app-core.md +40 -0
- package/presets/opencode/svelte/rules/svelte-script-conventions.md +27 -0
- package/presets/opencode/svelte/rules/svelte-sveltekit-anti-hallucination.md +63 -0
- package/presets/opencode/svelte/rules/svelte-ui.md +38 -0
- package/presets/opencode/svelte/rules/sveltekit-routing.md +33 -0
- package/presets/opencode/svelte/rules/technical-retro.md +11 -0
- package/presets/opencode/svelte/rules/tests-e2e-structure.md +88 -0
- package/presets/opencode/svelte/rules/tests-unit.md +83 -0
- package/presets/opencode/svelte/rules/types-jsdoc.md +36 -0
- package/presets/opencode/svelte/rules/ux-design.md +103 -0
- package/presets/opencode/svelte/skills/README.md +21 -0
- package/presets/opencode/svelte/skills/ci-investigation/SKILL.md +44 -0
- package/presets/opencode/svelte/skills/code-review/SKILL.md +44 -0
- package/presets/opencode/svelte/skills/debug-investigation/SKILL.md +61 -0
- package/presets/opencode/svelte/skills/feature-delivery/SKILL.md +46 -0
- package/presets/opencode/svelte/skills/mockup-review/SKILL.md +29 -0
- package/presets/opencode/svelte/skills/playwright-e2e/SKILL.md +37 -0
- package/presets/opencode/svelte/skills/spec-authoring/SKILL.md +26 -0
- package/presets/opencode/svelte/skills/spec-discovery/SKILL.md +58 -0
- package/presets/opencode/svelte/skills/svelte-performance/SKILL.md +52 -0
- package/presets/opencode/svelte/skills/technical-retro/SKILL.md +54 -0
- package/presets/opencode/svelte/skills/unit-testing/SKILL.md +32 -0
- package/presets/opencode/svelte/skills/ux-design/SKILL.md +36 -0
- package/presets/opencode/svelte/skills/write-adr/SKILL.md +41 -0
- package/presets/opencode/svelte/team/README.md +77 -0
- package/presets/opencode/svelte/team/fixtures/artifact-manifest.example.json +79 -0
- package/presets/opencode/svelte/team/fixtures/bugfix-standard.json +25 -0
- package/presets/opencode/svelte/team/fixtures/feature-full.json +62 -0
- package/presets/opencode/svelte/team/fixtures/feature-light.json +27 -0
- package/presets/opencode/svelte/team/fixtures/feature-with-figma-url.json +17 -0
- package/presets/opencode/svelte/team/fixtures/feature-with-ux-no-figma.json +17 -0
- package/presets/opencode/svelte/team/fixtures/memlog.example.md +9 -0
- package/presets/opencode/svelte/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
- package/presets/opencode/svelte/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
- package/presets/opencode/svelte/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
- package/presets/opencode/svelte/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
- package/presets/opencode/svelte/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
- package/presets/opencode/svelte/team/fixtures/metrics.example.json +54 -0
- package/presets/opencode/svelte/team/fixtures/mockup-review-fail-embedded-status.json +8 -0
- package/presets/opencode/svelte/team/fixtures/mockup-review-standalone.json +14 -0
- package/presets/opencode/svelte/team/fixtures/ux-design-standalone.json +15 -0
- package/presets/opencode/svelte/team/tasks/.gitkeep +0 -0
- package/scripts/aggregate-agent-task-metrics.mjs +4 -4
- package/scripts/capture-cli-golden.mjs +8 -5
- package/scripts/check-chain-hook-coverage.sh +15 -2
- package/scripts/check-frontmatter.mjs +83 -0
- package/scripts/check-generated-drift.mjs +106 -0
- package/scripts/check-local-overlay.sh +72 -0
- package/scripts/check-mavis-adapter-map.mjs +19 -7
- package/scripts/check-mavis-platform-contract.mjs +0 -1
- package/scripts/check-mavis-token-budget.mjs +1 -1
- package/scripts/check-opencode-adapter-map.mjs +19 -7
- package/scripts/check-opencode-platform-contract.mjs +0 -1
- package/scripts/check-opencode-token-budget.mjs +1 -1
- package/scripts/check-preset-leakage.sh +31 -0
- package/scripts/check-preset-structure.sh +27 -0
- package/scripts/check-preset-token-budget.sh +16 -17
- package/scripts/check-shared-core-drift.sh +10 -5
- package/scripts/close-agent-task-human-gate.mjs +20 -9
- package/scripts/fixtures/cli-golden/claude/next.json +79 -73
- package/scripts/fixtures/cli-golden/cursor/next.json +75 -75
- package/scripts/fixtures/cli-golden/mavis/android-kotlin.json +107 -0
- package/scripts/fixtures/cli-golden/mavis/go.json +100 -0
- package/scripts/fixtures/cli-golden/mavis/ios-swift.json +106 -0
- package/scripts/fixtures/cli-golden/mavis/java.json +100 -0
- package/scripts/fixtures/cli-golden/mavis/mcp-ts.json +71 -0
- package/scripts/fixtures/cli-golden/mavis/next.json +81 -81
- package/scripts/fixtures/cli-golden/mavis/nuxt.json +125 -0
- package/scripts/fixtures/cli-golden/mavis/php-hexagonal.json +100 -0
- package/scripts/fixtures/cli-golden/mavis/php-laravel.json +100 -0
- package/scripts/fixtures/cli-golden/mavis/svelte.json +125 -0
- package/scripts/fixtures/cli-golden/opencode/android-kotlin.json +107 -0
- package/scripts/fixtures/cli-golden/opencode/go.json +100 -0
- package/scripts/fixtures/cli-golden/opencode/ios-swift.json +106 -0
- package/scripts/fixtures/cli-golden/opencode/java.json +100 -0
- package/scripts/fixtures/cli-golden/opencode/mcp-ts.json +71 -0
- package/scripts/fixtures/cli-golden/opencode/next.json +88 -88
- package/scripts/fixtures/cli-golden/opencode/nuxt.json +125 -0
- package/scripts/fixtures/cli-golden/opencode/php-hexagonal.json +100 -0
- package/scripts/fixtures/cli-golden/opencode/php-laravel.json +100 -0
- package/scripts/fixtures/cli-golden/opencode/svelte.json +125 -0
- package/scripts/fixtures/mavis-platform-contract/invalid-minimax-destination.json +1 -1
- package/scripts/fixtures/mavis-platform-contract/invalid-missing-capability.json +1 -1
- package/scripts/fixtures/mavis-platform-contract/invalid-released-unknown-stack.json +1 -1
- package/scripts/fixtures/mavis-platform-contract/invalid-unknown-native-path.json +1 -1
- package/scripts/fixtures/mavis-platform-contract/invalid-version-pin.json +1 -1
- package/scripts/fixtures/mavis-platform-contract/valid.json +1 -5
- package/scripts/fixtures/opencode-platform-contract/invalid-home-destination.json +2 -2
- package/scripts/fixtures/opencode-platform-contract/invalid-missing-capability.json +2 -2
- package/scripts/fixtures/opencode-platform-contract/invalid-released-unknown-stack.json +2 -2
- package/scripts/fixtures/opencode-platform-contract/invalid-unknown-native-path.json +2 -2
- package/scripts/fixtures/opencode-platform-contract/invalid-version-pin.json +2 -2
- package/scripts/fixtures/opencode-platform-contract/valid.json +1 -5
- package/scripts/generate-mavis.mjs +14 -0
- package/scripts/generate-opencode.mjs +14 -0
- package/scripts/lib/generate-adapter-common.mjs +404 -0
- package/scripts/lib/generate-mavis-adapter.mjs +499 -0
- package/scripts/lib/generate-opencode-adapter.mjs +592 -0
- package/scripts/lib/stack-platform-profiles.mjs +148 -0
- package/scripts/sync-dogfood-cursor.sh +6 -26
- package/scripts/sync-dogfood-mavis.sh +10 -31
- package/scripts/sync-dogfood-opencode.sh +6 -24
- package/scripts/test-agent-task-metrics-hooks.mjs +65 -9
- package/scripts/test-chain-team-phases-coverage.mjs +182 -7
- package/scripts/test-cli-init-clean.mjs +398 -38
- package/scripts/test-mavis-context-budget.mjs +6 -11
- package/scripts/test-mavis-orchestration.mjs +2 -2
- package/scripts/test-opencode-context-budget.mjs +6 -10
- package/presets/claude/nuxt/team/conventions.md +0 -21
- package/presets/claude/php-hexagonal/team/conventions.md +0 -21
- package/presets/claude/php-laravel/team/conventions.md +0 -21
- package/presets/claude/svelte/team/conventions.md +0 -21
- package/presets/cursor/go/team/conventions.md +0 -21
- package/presets/cursor/ios-swift/team/conventions.md +0 -21
- package/presets/cursor/java/team/conventions.md +0 -21
- package/presets/cursor/next/team/conventions.md +0 -21
- package/presets/cursor/nuxt/team/conventions.md +0 -21
- package/presets/cursor/php-hexagonal/team/conventions.md +0 -21
- package/presets/cursor/php-laravel/team/conventions.md +0 -21
- package/presets/cursor/svelte/team/conventions.md +0 -21
- package/presets/mavis/next/team/conventions.md +0 -21
- package/presets/opencode/next/team/conventions.md +0 -21
- package/scripts/generate-mavis-next.mjs +0 -607
- package/scripts/generate-opencode-next.mjs +0 -730
|
@@ -0,0 +1,440 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Seed consumer `.ai.local/team/` (shared across Cursor, Claude, Mavis, OpenCode).
|
|
3
|
+
* Living task slugs are never overwritten. `clean` must not own this tree.
|
|
4
|
+
*
|
|
5
|
+
* Legacy `.<tool>/team/` migration is non-destructive: every non-`README.md`
|
|
6
|
+
* entry is migrated and backed up before it is removed, deletion happens only
|
|
7
|
+
* after the copies are verified, and symlinked paths are refused rather than
|
|
8
|
+
* followed (they would let `rmSync` escape the resolved `--cwd`).
|
|
9
|
+
*/
|
|
10
|
+
const fs = require('fs');
|
|
11
|
+
const path = require('path');
|
|
12
|
+
const { assertSafeDest } = require('./safe-path');
|
|
13
|
+
|
|
14
|
+
const LEGACY_TOOLS = ['cursor', 'claude', 'mavis', 'opencode'];
|
|
15
|
+
const POINTER_README = `# Agent team artifacts moved
|
|
16
|
+
|
|
17
|
+
Runtime artifacts now live at \`.ai.local/team/\` (shared across Cursor, Claude, Mavis, and OpenCode).
|
|
18
|
+
|
|
19
|
+
This leftover directory is safe to delete.
|
|
20
|
+
`;
|
|
21
|
+
|
|
22
|
+
function destTeamRoot(cwd) {
|
|
23
|
+
return path.join(cwd, '.ai.local', 'team');
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
function warn(message) {
|
|
27
|
+
console.warn(`Warning: ${message}`);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
function hasConsumerTaskSlugs(tasksDir) {
|
|
31
|
+
if (!fs.existsSync(tasksDir) || !fs.statSync(tasksDir).isDirectory()) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
return fs.readdirSync(tasksDir, { withFileTypes: true }).some(
|
|
35
|
+
(entry) => entry.isDirectory() && !entry.name.startsWith('.'),
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function copyFile(src, dest) {
|
|
40
|
+
fs.mkdirSync(path.dirname(dest), { recursive: true });
|
|
41
|
+
fs.copyFileSync(src, dest);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Copy a file or directory tree without ever following a symlink.
|
|
46
|
+
*
|
|
47
|
+
* @returns {{ copied: string[], skippedLinks: string[] }} relative paths, `.` for a plain file source
|
|
48
|
+
*/
|
|
49
|
+
function copyTree(src, dest) {
|
|
50
|
+
const copied = [];
|
|
51
|
+
const skippedLinks = [];
|
|
52
|
+
const visit = (from, to, rel) => {
|
|
53
|
+
const stat = fs.lstatSync(from);
|
|
54
|
+
if (stat.isSymbolicLink()) {
|
|
55
|
+
skippedLinks.push(rel);
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
if (stat.isDirectory()) {
|
|
59
|
+
fs.mkdirSync(to, { recursive: true });
|
|
60
|
+
for (const name of fs.readdirSync(from)) {
|
|
61
|
+
visit(path.join(from, name), path.join(to, name), rel === '.' ? name : `${rel}/${name}`);
|
|
62
|
+
}
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
if (stat.isFile()) {
|
|
66
|
+
copyFile(from, to);
|
|
67
|
+
copied.push(rel);
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
skippedLinks.push(rel);
|
|
71
|
+
};
|
|
72
|
+
visit(src, dest, '.');
|
|
73
|
+
return { copied, skippedLinks };
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/** Relative file paths under a file-or-directory path, without following symlinks. */
|
|
77
|
+
function listTree(target) {
|
|
78
|
+
const out = [];
|
|
79
|
+
const visit = (from, rel) => {
|
|
80
|
+
const stat = fs.lstatSync(from);
|
|
81
|
+
if (stat.isDirectory()) {
|
|
82
|
+
for (const name of fs.readdirSync(from)) {
|
|
83
|
+
visit(path.join(from, name), rel === '.' ? name : `${rel}/${name}`);
|
|
84
|
+
}
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
out.push(rel);
|
|
88
|
+
};
|
|
89
|
+
visit(target, '.');
|
|
90
|
+
return out.sort();
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
function sameContent(a, b) {
|
|
94
|
+
const aStat = fs.lstatSync(a);
|
|
95
|
+
const bStat = fs.lstatSync(b);
|
|
96
|
+
if (aStat.isDirectory() !== bStat.isDirectory()) {
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
if (!aStat.isDirectory()) {
|
|
100
|
+
return fs.readFileSync(a).equals(fs.readFileSync(b));
|
|
101
|
+
}
|
|
102
|
+
const aFiles = listTree(a);
|
|
103
|
+
const bFiles = listTree(b);
|
|
104
|
+
if (aFiles.length !== bFiles.length || aFiles.some((rel, i) => rel !== bFiles[i])) {
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
return aFiles.every((rel) =>
|
|
108
|
+
fs.readFileSync(path.join(a, rel)).equals(fs.readFileSync(path.join(b, rel))),
|
|
109
|
+
);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/** `notes.md` + `__from-claude` → `notes__from-claude.md`; directories get a plain suffix. */
|
|
113
|
+
function suffixedName(name, tool, isDirectory) {
|
|
114
|
+
const suffix = `__from-${tool}`;
|
|
115
|
+
if (isDirectory) {
|
|
116
|
+
return `${name}${suffix}`;
|
|
117
|
+
}
|
|
118
|
+
const ext = path.extname(name);
|
|
119
|
+
return ext ? `${path.basename(name, ext)}${suffix}${ext}` : `${name}${suffix}`;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
function freeDestination(dir, name, tool, isDirectory) {
|
|
123
|
+
let candidate = path.join(dir, suffixedName(name, tool, isDirectory));
|
|
124
|
+
let n = 2;
|
|
125
|
+
while (fs.existsSync(candidate)) {
|
|
126
|
+
const base = suffixedName(name, tool, isDirectory);
|
|
127
|
+
const ext = isDirectory ? '' : path.extname(base);
|
|
128
|
+
const stem = ext ? path.basename(base, ext) : base;
|
|
129
|
+
candidate = path.join(dir, `${stem}-${n}${ext}`);
|
|
130
|
+
n += 1;
|
|
131
|
+
}
|
|
132
|
+
return candidate;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Copy `src` to `preferredDest`; on collision keep both by writing the source to a
|
|
137
|
+
* `__from-<tool>` sibling. Never overwrites an existing destination.
|
|
138
|
+
*
|
|
139
|
+
* @returns {{ ok: boolean, copiedSomething: boolean }}
|
|
140
|
+
*/
|
|
141
|
+
function migrateEntry(src, preferredDest, tool, label) {
|
|
142
|
+
const isDirectory = fs.lstatSync(src).isDirectory();
|
|
143
|
+
if (fs.existsSync(preferredDest)) {
|
|
144
|
+
if (sameContent(src, preferredDest)) {
|
|
145
|
+
return { ok: true, copiedSomething: false };
|
|
146
|
+
}
|
|
147
|
+
const alternate = freeDestination(
|
|
148
|
+
path.dirname(preferredDest),
|
|
149
|
+
path.basename(preferredDest),
|
|
150
|
+
tool,
|
|
151
|
+
isDirectory,
|
|
152
|
+
);
|
|
153
|
+
const result = copyTree(src, alternate);
|
|
154
|
+
if (result.skippedLinks.length > 0) {
|
|
155
|
+
warn(
|
|
156
|
+
`${label}: ${result.skippedLinks.length} symlinked path(s) not migrated; left the source in place`,
|
|
157
|
+
);
|
|
158
|
+
return { ok: false, copiedSomething: result.copied.length > 0 };
|
|
159
|
+
}
|
|
160
|
+
warn(
|
|
161
|
+
`${label}: destination ${path.basename(preferredDest)} already exists with different content; kept the legacy copy as ${path.basename(alternate)}`,
|
|
162
|
+
);
|
|
163
|
+
return { ok: true, copiedSomething: true };
|
|
164
|
+
}
|
|
165
|
+
const result = copyTree(src, preferredDest);
|
|
166
|
+
if (result.skippedLinks.length > 0) {
|
|
167
|
+
warn(
|
|
168
|
+
`${label}: ${result.skippedLinks.length} symlinked path(s) not migrated; left the source in place`,
|
|
169
|
+
);
|
|
170
|
+
return { ok: false, copiedSomething: result.copied.length > 0 };
|
|
171
|
+
}
|
|
172
|
+
return { ok: true, copiedSomething: true };
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
/** Copy `src` under the timestamped backup root and verify the copy before the caller deletes. */
|
|
176
|
+
function backupEntry(src, backupDest, label) {
|
|
177
|
+
const result = copyTree(src, backupDest);
|
|
178
|
+
if (result.skippedLinks.length > 0) {
|
|
179
|
+
warn(`${label}: symlinked path(s) could not be backed up; left the source in place`);
|
|
180
|
+
return false;
|
|
181
|
+
}
|
|
182
|
+
if (!fs.existsSync(backupDest)) {
|
|
183
|
+
warn(`${label}: backup copy is missing; left the source in place`);
|
|
184
|
+
return false;
|
|
185
|
+
}
|
|
186
|
+
const expected = listTree(src);
|
|
187
|
+
const actual = listTree(backupDest);
|
|
188
|
+
if (expected.length !== actual.length || expected.some((rel, i) => rel !== actual[i])) {
|
|
189
|
+
warn(`${label}: backup copy is incomplete; left the source in place`);
|
|
190
|
+
return false;
|
|
191
|
+
}
|
|
192
|
+
return true;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
/**
|
|
196
|
+
* Make `.ai.local/.rollback/` self-ignoring so a consumer cannot accidentally
|
|
197
|
+
* commit migration backups. A `.gitignore` inside the directory is used instead
|
|
198
|
+
* of appending to the consumer's root `.gitignore`: the CLI never edits that
|
|
199
|
+
* file, and this works even in a repo that has no `.gitignore` at all.
|
|
200
|
+
*/
|
|
201
|
+
function ensureRollbackIgnored(rollbackRoot) {
|
|
202
|
+
const ignoreFile = path.join(rollbackRoot, '.gitignore');
|
|
203
|
+
if (fs.existsSync(ignoreFile)) {
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
206
|
+
fs.mkdirSync(rollbackRoot, { recursive: true });
|
|
207
|
+
fs.writeFileSync(
|
|
208
|
+
ignoreFile,
|
|
209
|
+
[
|
|
210
|
+
'# Backups written by @bonesofspring/ai-rules when it migrated a legacy',
|
|
211
|
+
'# `.<tool>/team/` into `.ai.local/team/`. Local safety net — never commit.',
|
|
212
|
+
'# Safe to delete once you have confirmed the migration.',
|
|
213
|
+
'*',
|
|
214
|
+
'',
|
|
215
|
+
].join('\n'),
|
|
216
|
+
);
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
function copyTemplates(presetTeamSrc, dest) {
|
|
220
|
+
if (!presetTeamSrc || !fs.existsSync(presetTeamSrc)) {
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
const readme = path.join(presetTeamSrc, 'README.md');
|
|
224
|
+
if (fs.existsSync(readme)) {
|
|
225
|
+
copyFile(readme, path.join(dest, 'README.md'));
|
|
226
|
+
}
|
|
227
|
+
const fixturesSrc = path.join(presetTeamSrc, 'fixtures');
|
|
228
|
+
if (fs.existsSync(fixturesSrc)) {
|
|
229
|
+
copyTree(fixturesSrc, path.join(dest, 'fixtures'));
|
|
230
|
+
}
|
|
231
|
+
const gitkeepSrc = path.join(presetTeamSrc, 'tasks', '.gitkeep');
|
|
232
|
+
if (fs.existsSync(gitkeepSrc) && !hasConsumerTaskSlugs(path.join(dest, 'tasks'))) {
|
|
233
|
+
copyFile(gitkeepSrc, path.join(dest, 'tasks', '.gitkeep'));
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* Seed `.ai.local/conventions.md` (the living-conventions file the overlay probes)
|
|
239
|
+
* from the preset template. Never overwrites an existing consumer file.
|
|
240
|
+
*/
|
|
241
|
+
function seedConventions(presetTeamSrc, cwd) {
|
|
242
|
+
if (!presetTeamSrc) {
|
|
243
|
+
return false;
|
|
244
|
+
}
|
|
245
|
+
const template = path.join(path.dirname(presetTeamSrc), 'ai-local', 'conventions.md');
|
|
246
|
+
if (!fs.existsSync(template)) {
|
|
247
|
+
return false;
|
|
248
|
+
}
|
|
249
|
+
const dest = path.join(cwd, '.ai.local', 'conventions.md');
|
|
250
|
+
if (fs.existsSync(dest)) {
|
|
251
|
+
return false;
|
|
252
|
+
}
|
|
253
|
+
copyFile(template, dest);
|
|
254
|
+
console.log('Seeded .ai.local/conventions.md');
|
|
255
|
+
return true;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
/**
|
|
259
|
+
* Resolve a legacy `.<tool>/team` directory, refusing symlinks and anything whose
|
|
260
|
+
* real path escapes the resolved `cwd`. `rmSync` through a link would delete the
|
|
261
|
+
* target, which lives outside the install scope.
|
|
262
|
+
*/
|
|
263
|
+
function resolveLegacyTeamDir(cwd, tool) {
|
|
264
|
+
const teamDir = path.join(cwd, `.${tool}`, 'team');
|
|
265
|
+
let stat;
|
|
266
|
+
try {
|
|
267
|
+
stat = fs.lstatSync(teamDir);
|
|
268
|
+
} catch {
|
|
269
|
+
return null;
|
|
270
|
+
}
|
|
271
|
+
if (stat.isSymbolicLink()) {
|
|
272
|
+
warn(`.${tool}/team is a symlink; refused to migrate or delete through it`);
|
|
273
|
+
return null;
|
|
274
|
+
}
|
|
275
|
+
if (!stat.isDirectory()) {
|
|
276
|
+
return null;
|
|
277
|
+
}
|
|
278
|
+
const cwdReal = fs.realpathSync(path.resolve(cwd));
|
|
279
|
+
const teamReal = fs.realpathSync(teamDir);
|
|
280
|
+
if (teamReal !== cwdReal && !teamReal.startsWith(cwdReal + path.sep)) {
|
|
281
|
+
warn(`.${tool}/team resolves outside ${cwdReal}; refused to migrate or delete it`);
|
|
282
|
+
return null;
|
|
283
|
+
}
|
|
284
|
+
return teamDir;
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
function migrateLegacyTool(tool, teamDir, cwd, dest, backupRoot) {
|
|
288
|
+
let copiedSomething = false;
|
|
289
|
+
const deletable = [];
|
|
290
|
+
let refused = 0;
|
|
291
|
+
|
|
292
|
+
for (const dirent of fs.readdirSync(teamDir, { withFileTypes: true })) {
|
|
293
|
+
const name = dirent.name;
|
|
294
|
+
if (name === 'README.md') {
|
|
295
|
+
continue;
|
|
296
|
+
}
|
|
297
|
+
const src = path.join(teamDir, name);
|
|
298
|
+
if (fs.lstatSync(src).isSymbolicLink()) {
|
|
299
|
+
warn(`.${tool}/team/${name} is a symlink; left it in place`);
|
|
300
|
+
refused += 1;
|
|
301
|
+
continue;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
// `tasks/` is migrated child-by-child so slugs merge across tools. Dot-prefixed
|
|
305
|
+
// slugs and loose files under `tasks/` are entries like any other.
|
|
306
|
+
if (name === 'tasks' && fs.lstatSync(src).isDirectory()) {
|
|
307
|
+
let allOk = true;
|
|
308
|
+
fs.mkdirSync(path.join(dest, 'tasks'), { recursive: true });
|
|
309
|
+
for (const child of fs.readdirSync(src)) {
|
|
310
|
+
const childSrc = path.join(src, child);
|
|
311
|
+
if (fs.lstatSync(childSrc).isSymbolicLink()) {
|
|
312
|
+
warn(`.${tool}/team/tasks/${child} is a symlink; left it in place`);
|
|
313
|
+
allOk = false;
|
|
314
|
+
continue;
|
|
315
|
+
}
|
|
316
|
+
const outcome = migrateEntry(
|
|
317
|
+
childSrc,
|
|
318
|
+
path.join(dest, 'tasks', child),
|
|
319
|
+
tool,
|
|
320
|
+
`.${tool}/team/tasks/${child}`,
|
|
321
|
+
);
|
|
322
|
+
copiedSomething = copiedSomething || outcome.copiedSomething;
|
|
323
|
+
allOk = allOk && outcome.ok;
|
|
324
|
+
}
|
|
325
|
+
if (allOk) {
|
|
326
|
+
deletable.push(name);
|
|
327
|
+
} else {
|
|
328
|
+
refused += 1;
|
|
329
|
+
}
|
|
330
|
+
continue;
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
const preferredDest =
|
|
334
|
+
name === 'conventions.md'
|
|
335
|
+
? path.join(cwd, '.ai.local', 'conventions.md')
|
|
336
|
+
: path.join(dest, name);
|
|
337
|
+
const outcome = migrateEntry(src, preferredDest, tool, `.${tool}/team/${name}`);
|
|
338
|
+
copiedSomething = copiedSomething || outcome.copiedSomething;
|
|
339
|
+
if (outcome.ok) {
|
|
340
|
+
deletable.push(name);
|
|
341
|
+
} else {
|
|
342
|
+
refused += 1;
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
// Back up first, verify, then delete — never the other way round.
|
|
347
|
+
let removed = 0;
|
|
348
|
+
for (const name of deletable) {
|
|
349
|
+
const src = path.join(teamDir, name);
|
|
350
|
+
if (!backupEntry(src, path.join(backupRoot, tool, name), `.${tool}/team/${name}`)) {
|
|
351
|
+
refused += 1;
|
|
352
|
+
continue;
|
|
353
|
+
}
|
|
354
|
+
fs.rmSync(src, { recursive: true, force: true });
|
|
355
|
+
removed += 1;
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
if (refused > 0) {
|
|
359
|
+
warn(
|
|
360
|
+
`.${tool}/team still holds ${refused} entr${refused === 1 ? 'y' : 'ies'} the migration could not account for; left the directory in place`,
|
|
361
|
+
);
|
|
362
|
+
} else {
|
|
363
|
+
fs.writeFileSync(path.join(teamDir, 'README.md'), POINTER_README);
|
|
364
|
+
}
|
|
365
|
+
return { copiedSomething, removed };
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
function migrateLegacyTeams(cwd, dest) {
|
|
369
|
+
const stamp = new Date().toISOString().replace(/[:.]/g, '-');
|
|
370
|
+
const backupRoot = path.join(cwd, '.ai.local', '.rollback', `legacy-team-${stamp}`);
|
|
371
|
+
let migrated = false;
|
|
372
|
+
let backedUp = 0;
|
|
373
|
+
|
|
374
|
+
for (const tool of LEGACY_TOOLS) {
|
|
375
|
+
const teamDir = resolveLegacyTeamDir(cwd, tool);
|
|
376
|
+
if (!teamDir) {
|
|
377
|
+
continue;
|
|
378
|
+
}
|
|
379
|
+
const result = migrateLegacyTool(tool, teamDir, cwd, dest, backupRoot);
|
|
380
|
+
migrated = migrated || result.copiedSomething;
|
|
381
|
+
backedUp += result.removed;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
if (backedUp > 0) {
|
|
385
|
+
ensureRollbackIgnored(path.dirname(backupRoot));
|
|
386
|
+
console.log(
|
|
387
|
+
`Backed up ${backedUp} legacy team entr${backedUp === 1 ? 'y' : 'ies'} → ${path.relative(cwd, backupRoot)} (git-ignored; safe to delete once the migration looks right)`,
|
|
388
|
+
);
|
|
389
|
+
}
|
|
390
|
+
return migrated;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
/**
|
|
394
|
+
* @param {{ cwd: string, presetTeamSrc?: string }} options
|
|
395
|
+
* @returns {{ created: boolean, migrated: boolean, refreshed: boolean, conventionsSeeded: boolean }}
|
|
396
|
+
*/
|
|
397
|
+
function seedAiLocalTeam({ cwd, presetTeamSrc }) {
|
|
398
|
+
const dest = destTeamRoot(cwd);
|
|
399
|
+
// `.ai.local` / `.ai.local/team` must be real paths under cwd: seeding through a
|
|
400
|
+
// symlink would write the shared runtime tree outside the install scope.
|
|
401
|
+
assertSafeDest(cwd, dest, '.ai.local/team');
|
|
402
|
+
assertSafeDest(cwd, path.join(cwd, '.ai.local', 'conventions.md'), '.ai.local/conventions.md');
|
|
403
|
+
const destExisted = fs.existsSync(dest);
|
|
404
|
+
const destHasSlugs = hasConsumerTaskSlugs(path.join(dest, 'tasks'));
|
|
405
|
+
const hadLegacy = LEGACY_TOOLS.some((tool) =>
|
|
406
|
+
fs.existsSync(path.join(cwd, `.${tool}`, 'team')),
|
|
407
|
+
);
|
|
408
|
+
|
|
409
|
+
if (!destExisted && !hadLegacy && (!presetTeamSrc || !fs.existsSync(presetTeamSrc))) {
|
|
410
|
+
console.log('Skipped .ai.local/team seed (preset team/ missing)');
|
|
411
|
+
return { created: false, migrated: false, refreshed: false, conventionsSeeded: false };
|
|
412
|
+
}
|
|
413
|
+
|
|
414
|
+
fs.mkdirSync(dest, { recursive: true });
|
|
415
|
+
const migrated = migrateLegacyTeams(cwd, dest);
|
|
416
|
+
copyTemplates(presetTeamSrc, dest);
|
|
417
|
+
const conventionsSeeded = seedConventions(presetTeamSrc, cwd);
|
|
418
|
+
|
|
419
|
+
if (migrated) {
|
|
420
|
+
console.log('Migrated legacy .{tool}/team → .ai.local/team');
|
|
421
|
+
}
|
|
422
|
+
|
|
423
|
+
if (!destExisted && !hadLegacy) {
|
|
424
|
+
console.log('Seeded .ai.local/team/');
|
|
425
|
+
return { created: true, migrated: false, refreshed: false, conventionsSeeded };
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
if (destHasSlugs || destExisted) {
|
|
429
|
+
console.log(
|
|
430
|
+
destHasSlugs
|
|
431
|
+
? 'Refreshed .ai.local/team templates (tasks preserved)'
|
|
432
|
+
: 'Refreshed .ai.local/team (no consumer task slugs)',
|
|
433
|
+
);
|
|
434
|
+
return { created: false, migrated, refreshed: true, conventionsSeeded };
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
return { created: false, migrated, refreshed: false, conventionsSeeded };
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
module.exports = { seedAiLocalTeam, destTeamRoot };
|
package/bin/mavis-install.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
const crypto = require('crypto');
|
|
5
5
|
const fs = require('fs');
|
|
6
6
|
const path = require('path');
|
|
7
|
+
const { assertSafeDest, resolveManagedPath } = require('./lib/safe-path');
|
|
7
8
|
|
|
8
9
|
const MANIFEST_REL = path.join('.mavis', '.ai-rules-install.json');
|
|
9
10
|
const CONTRACT_REL = path.join('presets', 'mavis', 'platform-contract.json');
|
|
@@ -202,7 +203,7 @@ function restoreRollback(overwritten, created, rollbackRoot, mavisRoot, mavisExi
|
|
|
202
203
|
}
|
|
203
204
|
|
|
204
205
|
function cmdInitMavis({ preset, cwdOption, helpers }) {
|
|
205
|
-
const { resolveTargetCwd, seedDocsSpecsIfAbsent, installMcpJson, getPackageRoot } = helpers;
|
|
206
|
+
const { resolveTargetCwd, seedDocsSpecsIfAbsent, seedAiLocalTeam, installMcpJson, getPackageRoot } = helpers;
|
|
206
207
|
const packageRoot = getPackageRoot();
|
|
207
208
|
const cwd = resolveTargetCwd(cwdOption);
|
|
208
209
|
const contract = loadContract(packageRoot);
|
|
@@ -211,7 +212,6 @@ function cmdInitMavis({ preset, cwdOption, helpers }) {
|
|
|
211
212
|
if (releasedStacks.length > 0 && !releasedStacks.includes(stack)) {
|
|
212
213
|
console.error(`Preset "${stack}" for mavis is not released yet.`);
|
|
213
214
|
console.error(`Released stacks: ${releasedStacks.join(', ')}`);
|
|
214
|
-
console.error('Additional stacks ship after the pilot human gate (WP-F).');
|
|
215
215
|
process.exit(1);
|
|
216
216
|
}
|
|
217
217
|
const sourceBase = path.join(packageRoot, contract.sourceRoot, stack);
|
|
@@ -222,6 +222,14 @@ function cmdInitMavis({ preset, cwdOption, helpers }) {
|
|
|
222
222
|
}
|
|
223
223
|
|
|
224
224
|
const mavisRoot = path.join(cwd, contract.managedRoot);
|
|
225
|
+
// Refuse to install through a symlinked `.mavis` (or any symlinked ancestor):
|
|
226
|
+
// writes would land outside the resolved --cwd.
|
|
227
|
+
try {
|
|
228
|
+
assertSafeDest(cwd, mavisRoot, contract.managedRoot);
|
|
229
|
+
} catch (err) {
|
|
230
|
+
console.error(`init failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
231
|
+
process.exit(1);
|
|
232
|
+
}
|
|
225
233
|
const mavisExisted = fs.existsSync(mavisRoot);
|
|
226
234
|
const docsSpecsDir = path.join(cwd, 'docs', 'specs');
|
|
227
235
|
const docsSpecsExisted = fs.existsSync(docsSpecsDir);
|
|
@@ -290,6 +298,15 @@ function cmdInitMavis({ preset, cwdOption, helpers }) {
|
|
|
290
298
|
if (seeded && !docsSpecsExisted) {
|
|
291
299
|
created.add(docsSpecsDir);
|
|
292
300
|
}
|
|
301
|
+
const teamDest = path.join(cwd, '.ai.local', 'team');
|
|
302
|
+
const teamExisted = fs.existsSync(teamDest);
|
|
303
|
+
const teamResult = seedAiLocalTeam({
|
|
304
|
+
cwd,
|
|
305
|
+
presetTeamSrc: path.join(sourceBase, 'team'),
|
|
306
|
+
});
|
|
307
|
+
if (teamResult.created && !teamExisted) {
|
|
308
|
+
created.add(teamDest);
|
|
309
|
+
}
|
|
293
310
|
|
|
294
311
|
throwIfPhase('manifest');
|
|
295
312
|
const managedFiles = {};
|
|
@@ -376,8 +393,8 @@ function removeEmptyDirs(dir) {
|
|
|
376
393
|
function cmdCleanMavis({ cwdOption, helpers }) {
|
|
377
394
|
const { resolveTargetCwd, otherToolInstallPresent } = helpers;
|
|
378
395
|
const cwd = resolveTargetCwd(cwdOption);
|
|
379
|
-
const manifestPath =
|
|
380
|
-
if (!fs.existsSync(manifestPath)) {
|
|
396
|
+
const manifestPath = resolveManagedPath(cwd, MANIFEST_REL);
|
|
397
|
+
if (!manifestPath || !fs.existsSync(manifestPath)) {
|
|
381
398
|
console.error(
|
|
382
399
|
'clean mavis: missing .mavis/.ai-rules-install.json; nothing removed (fail-safe).',
|
|
383
400
|
);
|
|
@@ -404,10 +421,19 @@ function cmdCleanMavis({ cwdOption, helpers }) {
|
|
|
404
421
|
if (rel === MANIFEST_REL) {
|
|
405
422
|
continue;
|
|
406
423
|
}
|
|
407
|
-
|
|
424
|
+
// Reject entries that escape cwd or traverse a symlink before touching disk.
|
|
425
|
+
const abs = resolveManagedPath(cwd, rel);
|
|
426
|
+
if (!abs) {
|
|
427
|
+
console.warn(`Ignored unsafe manifest entry ${rel} (outside target or symlinked)`);
|
|
428
|
+
continue;
|
|
429
|
+
}
|
|
408
430
|
if (!fs.existsSync(abs)) {
|
|
409
431
|
continue;
|
|
410
432
|
}
|
|
433
|
+
if (!fs.lstatSync(abs).isFile()) {
|
|
434
|
+
console.warn(`Ignored non-file manifest entry ${rel}`);
|
|
435
|
+
continue;
|
|
436
|
+
}
|
|
411
437
|
const current = sha256File(abs);
|
|
412
438
|
if (rel === 'AGENTS.md' && otherToolInstallPresent && otherToolInstallPresent(cwd, '.mavis')) {
|
|
413
439
|
console.log('Kept shared AGENTS.md (another tool install is still present)');
|
|
@@ -422,17 +448,26 @@ function cmdCleanMavis({ cwdOption, helpers }) {
|
|
|
422
448
|
}
|
|
423
449
|
|
|
424
450
|
if (preserved.includes('.mavis/mcp.json') && Array.isArray(manifest.shippedMcpServerIds)) {
|
|
425
|
-
|
|
451
|
+
const mcpAbs = resolveManagedPath(cwd, '.mavis/mcp.json');
|
|
452
|
+
if (mcpAbs) {
|
|
453
|
+
stripShippedMcp(mcpAbs, manifest.shippedMcpServerIds);
|
|
454
|
+
}
|
|
426
455
|
}
|
|
427
456
|
|
|
428
457
|
for (const dirRel of [...(manifest.managedDirectories || [])].sort((a, b) => b.length - a.length)) {
|
|
429
|
-
|
|
458
|
+
const dirAbs = resolveManagedPath(cwd, dirRel);
|
|
459
|
+
if (dirAbs) {
|
|
460
|
+
removeEmptyDirs(dirAbs);
|
|
461
|
+
}
|
|
430
462
|
}
|
|
431
463
|
|
|
432
464
|
fs.unlinkSync(manifestPath);
|
|
433
|
-
|
|
434
|
-
if (
|
|
435
|
-
|
|
465
|
+
const managedRoot = resolveManagedPath(cwd, '.mavis');
|
|
466
|
+
if (managedRoot) {
|
|
467
|
+
removeEmptyDirs(managedRoot);
|
|
468
|
+
if (fs.existsSync(managedRoot) && fs.readdirSync(managedRoot).length === 0) {
|
|
469
|
+
fs.rmdirSync(managedRoot);
|
|
470
|
+
}
|
|
436
471
|
}
|
|
437
472
|
|
|
438
473
|
console.log(
|
package/bin/opencode-install.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
const crypto = require('crypto');
|
|
5
5
|
const fs = require('fs');
|
|
6
6
|
const path = require('path');
|
|
7
|
+
const { assertSafeDest, resolveManagedPath } = require('./lib/safe-path');
|
|
7
8
|
|
|
8
9
|
const MANIFEST_REL = path.join('.opencode', '.ai-rules-install.json');
|
|
9
10
|
const CONTRACT_REL = path.join('presets', 'opencode', 'platform-contract.json');
|
|
@@ -297,7 +298,7 @@ function restoreRollback(overwritten, created, rollbackRoot, managedRoot, rootEx
|
|
|
297
298
|
}
|
|
298
299
|
|
|
299
300
|
function cmdInitOpencode({ preset, cwdOption, helpers }) {
|
|
300
|
-
const { resolveTargetCwd, seedDocsSpecsIfAbsent, getPackageRoot } = helpers;
|
|
301
|
+
const { resolveTargetCwd, seedDocsSpecsIfAbsent, seedAiLocalTeam, getPackageRoot } = helpers;
|
|
301
302
|
const packageRoot = getPackageRoot();
|
|
302
303
|
const cwd = resolveTargetCwd(cwdOption);
|
|
303
304
|
const contract = loadContract(packageRoot);
|
|
@@ -316,6 +317,13 @@ function cmdInitOpencode({ preset, cwdOption, helpers }) {
|
|
|
316
317
|
}
|
|
317
318
|
|
|
318
319
|
const managedRoot = path.join(cwd, contract.managedRoot);
|
|
320
|
+
// Refuse to install through a symlinked `.opencode` (or any symlinked ancestor).
|
|
321
|
+
try {
|
|
322
|
+
assertSafeDest(cwd, managedRoot, contract.managedRoot);
|
|
323
|
+
} catch (err) {
|
|
324
|
+
console.error(`init failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
325
|
+
process.exit(1);
|
|
326
|
+
}
|
|
319
327
|
const rootExisted = fs.existsSync(managedRoot);
|
|
320
328
|
const docsSpecsDir = path.join(cwd, 'docs', 'specs');
|
|
321
329
|
const docsSpecsExisted = fs.existsSync(docsSpecsDir);
|
|
@@ -381,6 +389,15 @@ function cmdInitOpencode({ preset, cwdOption, helpers }) {
|
|
|
381
389
|
if (seeded && !docsSpecsExisted) {
|
|
382
390
|
created.add(docsSpecsDir);
|
|
383
391
|
}
|
|
392
|
+
const teamDest = path.join(cwd, '.ai.local', 'team');
|
|
393
|
+
const teamExisted = fs.existsSync(teamDest);
|
|
394
|
+
const teamResult = seedAiLocalTeam({
|
|
395
|
+
cwd,
|
|
396
|
+
presetTeamSrc: path.join(sourceBase, 'team'),
|
|
397
|
+
});
|
|
398
|
+
if (teamResult.created && !teamExisted) {
|
|
399
|
+
created.add(teamDest);
|
|
400
|
+
}
|
|
384
401
|
|
|
385
402
|
throwIfPhase('manifest');
|
|
386
403
|
const managedFiles = {};
|
|
@@ -463,8 +480,8 @@ function removeEmptyDirs(dir) {
|
|
|
463
480
|
function cmdCleanOpencode({ cwdOption, helpers }) {
|
|
464
481
|
const { resolveTargetCwd, otherToolInstallPresent } = helpers;
|
|
465
482
|
const cwd = resolveTargetCwd(cwdOption);
|
|
466
|
-
const manifestPath =
|
|
467
|
-
if (!fs.existsSync(manifestPath)) {
|
|
483
|
+
const manifestPath = resolveManagedPath(cwd, MANIFEST_REL);
|
|
484
|
+
if (!manifestPath || !fs.existsSync(manifestPath)) {
|
|
468
485
|
console.error(
|
|
469
486
|
'clean opencode: missing .opencode/.ai-rules-install.json; nothing removed (fail-safe).',
|
|
470
487
|
);
|
|
@@ -491,10 +508,19 @@ function cmdCleanOpencode({ cwdOption, helpers }) {
|
|
|
491
508
|
if (rel === MANIFEST_REL) {
|
|
492
509
|
continue;
|
|
493
510
|
}
|
|
494
|
-
|
|
511
|
+
// Reject entries that escape cwd or traverse a symlink before touching disk.
|
|
512
|
+
const abs = resolveManagedPath(cwd, rel);
|
|
513
|
+
if (!abs) {
|
|
514
|
+
console.warn(`Ignored unsafe manifest entry ${rel} (outside target or symlinked)`);
|
|
515
|
+
continue;
|
|
516
|
+
}
|
|
495
517
|
if (!fs.existsSync(abs)) {
|
|
496
518
|
continue;
|
|
497
519
|
}
|
|
520
|
+
if (!fs.lstatSync(abs).isFile()) {
|
|
521
|
+
console.warn(`Ignored non-file manifest entry ${rel}`);
|
|
522
|
+
continue;
|
|
523
|
+
}
|
|
498
524
|
const current = sha256File(abs);
|
|
499
525
|
if (rel === 'AGENTS.md' && otherToolInstallPresent && otherToolInstallPresent(cwd, '.opencode')) {
|
|
500
526
|
console.log('Kept shared AGENTS.md (another tool install is still present)');
|
|
@@ -509,20 +535,26 @@ function cmdCleanOpencode({ cwdOption, helpers }) {
|
|
|
509
535
|
}
|
|
510
536
|
|
|
511
537
|
if (preserved.includes('opencode.json') && Array.isArray(manifest.shippedMcpServerIds)) {
|
|
512
|
-
|
|
538
|
+
const mcpAbs = resolveManagedPath(cwd, 'opencode.json');
|
|
539
|
+
if (mcpAbs) {
|
|
540
|
+
stripShippedMcp(mcpAbs, manifest.shippedMcpServerIds);
|
|
541
|
+
}
|
|
513
542
|
}
|
|
514
543
|
|
|
515
544
|
for (const dirRel of [...(manifest.managedDirectories || [])].sort((a, b) => b.length - a.length)) {
|
|
516
|
-
|
|
545
|
+
const dirAbs = resolveManagedPath(cwd, dirRel);
|
|
546
|
+
if (dirAbs) {
|
|
547
|
+
removeEmptyDirs(dirAbs);
|
|
548
|
+
}
|
|
517
549
|
}
|
|
518
550
|
|
|
519
551
|
fs.unlinkSync(manifestPath);
|
|
520
|
-
|
|
521
|
-
if (
|
|
522
|
-
|
|
523
|
-
fs.
|
|
524
|
-
|
|
525
|
-
|
|
552
|
+
const managedRoot = resolveManagedPath(cwd, '.opencode');
|
|
553
|
+
if (managedRoot) {
|
|
554
|
+
removeEmptyDirs(managedRoot);
|
|
555
|
+
if (fs.existsSync(managedRoot) && fs.readdirSync(managedRoot).length === 0) {
|
|
556
|
+
fs.rmdirSync(managedRoot);
|
|
557
|
+
}
|
|
526
558
|
}
|
|
527
559
|
|
|
528
560
|
console.log(
|