@bonesofspring/ai-rules 0.2.15 → 0.2.17
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 -0
- package/README.md +22 -3
- package/bin/cli.js +41 -0
- package/package.json +3 -1
- package/presets/_shared/README.md +2 -2
- package/presets/_shared/assets/docs-specs/INDEX.md +9 -0
- package/presets/_shared/assets/docs-specs/_templates/feature.md +32 -0
- package/presets/_shared/assets/docs-specs/_templates/page.md +47 -0
- package/presets/_shared/assets/docs-specs/schemas/frontmatter-v1.schema.json +22 -0
- package/presets/_shared/core/architecture/product-specs-authoring.md +107 -0
- package/presets/_shared/core/architecture/product-specs.md +49 -0
- package/presets/_shared/core/meta/preset-layering.md +1 -1
- package/presets/_shared/core/meta/preset-no-cross-stack-leakage.md +25 -12
- package/presets/_shared/core/meta/preset-pr-checklist.md +1 -1
- package/presets/_shared/core/meta/preset-twin-sync.md +2 -0
- package/presets/claude/android-kotlin/CLAUDE.md +38 -0
- package/presets/claude/android-kotlin/MCP.md +16 -0
- package/presets/claude/android-kotlin/README.md +32 -0
- package/presets/claude/android-kotlin/REPO_AGENTS.md +48 -0
- package/presets/claude/android-kotlin/agents/README.md +44 -0
- package/presets/claude/android-kotlin/agents/accessibility-reviewer.md +60 -0
- package/presets/claude/android-kotlin/agents/api-contract-reviewer.md +70 -0
- package/presets/claude/android-kotlin/agents/build-verifier.md +70 -0
- package/presets/claude/android-kotlin/agents/ci-investigator.md +74 -0
- package/presets/claude/android-kotlin/agents/code-reviewer.md +76 -0
- package/presets/claude/android-kotlin/agents/codebase-analyzer.md +28 -0
- package/presets/claude/android-kotlin/agents/debugger.md +77 -0
- package/presets/claude/android-kotlin/agents/feature-developer.md +70 -0
- package/presets/claude/android-kotlin/agents/instrumentation-test-generator.md +19 -0
- package/presets/claude/android-kotlin/agents/instrumentation-test-healer.md +19 -0
- package/presets/claude/android-kotlin/agents/instrumentation-test-planner.md +19 -0
- package/presets/claude/android-kotlin/agents/migration-specialist.md +74 -0
- package/presets/claude/android-kotlin/agents/performance-auditor.md +67 -0
- package/presets/claude/android-kotlin/agents/qa-tester.md +66 -0
- package/presets/claude/android-kotlin/agents/security-reviewer.md +65 -0
- package/presets/claude/android-kotlin/agents/solution-architect.md +21 -0
- package/presets/claude/android-kotlin/agents/task-analyst.md +55 -0
- package/presets/claude/android-kotlin/agents/task-router.md +114 -0
- package/presets/claude/android-kotlin/agents/tech-writer.md +66 -0
- package/presets/claude/android-kotlin/agents/unit-test-generator.md +55 -0
- package/presets/claude/android-kotlin/agents/unit-test-healer.md +54 -0
- package/presets/claude/android-kotlin/agents/unit-test-planner.md +65 -0
- package/presets/claude/android-kotlin/commands/README.md +51 -0
- package/presets/claude/android-kotlin/commands/feature-continue.md +23 -0
- package/presets/claude/android-kotlin/commands/feature-start.md +41 -0
- package/presets/claude/android-kotlin/commands/spec-start.md +29 -0
- package/presets/claude/android-kotlin/commands/task-continue.md +53 -0
- package/presets/claude/android-kotlin/commands/task.md +56 -0
- package/presets/claude/android-kotlin/commands/technical-retro.md +85 -0
- package/presets/claude/android-kotlin/hooks/README.md +16 -0
- package/presets/claude/android-kotlin/hooks/chain-team-phases.sh +705 -0
- package/presets/claude/android-kotlin/hooks/examples/README.md +18 -0
- package/presets/claude/android-kotlin/hooks/examples/format-edited.example.sh +13 -0
- package/presets/claude/android-kotlin/hooks/examples/secret-guard.example.sh +10 -0
- package/presets/claude/android-kotlin/hooks/examples/test-on-save.example.sh +8 -0
- package/presets/claude/android-kotlin/hooks/guard-shell-command.sh +80 -0
- package/presets/claude/android-kotlin/mcp.json +12 -0
- package/presets/claude/android-kotlin/rules/README.md +65 -0
- package/presets/claude/android-kotlin/rules/api-and-data/README.md +10 -0
- package/presets/claude/android-kotlin/rules/api-and-data/networking.md +30 -0
- package/presets/claude/android-kotlin/rules/api-and-data/persistence.md +29 -0
- package/presets/claude/android-kotlin/rules/architecture/README.md +9 -0
- package/presets/claude/android-kotlin/rules/architecture/boundaries.md +27 -0
- package/presets/claude/android-kotlin/rules/architecture/di-dagger-feature-holders.md +34 -0
- package/presets/claude/android-kotlin/rules/architecture/feature-delivery.md +45 -0
- package/presets/claude/android-kotlin/rules/architecture/module-public-api.md +29 -0
- package/presets/claude/android-kotlin/rules/architecture/product-specs-authoring.md +121 -0
- package/presets/claude/android-kotlin/rules/architecture/product-specs.md +62 -0
- package/presets/claude/android-kotlin/rules/architecture/reference-features.md +28 -0
- package/presets/claude/android-kotlin/rules/stack/README.md +6 -0
- package/presets/claude/android-kotlin/rules/stack/android-app-core.md +27 -0
- package/presets/claude/android-kotlin/rules/stack/kotlin-conventions.md +30 -0
- package/presets/claude/android-kotlin/rules/testing/README.md +10 -0
- package/presets/claude/android-kotlin/rules/testing/ui.md +28 -0
- package/presets/claude/android-kotlin/rules/testing/unit.md +29 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/README.md +19 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/agent-team-intake.md +18 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/agent-team-orchestrator.md +129 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/anti-sycophancy-discipline.md +29 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/code-quality.md +52 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/code-review.md +88 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/design-guidance.md +110 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/gradle-tooling.md +30 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/post-change-build.md +34 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-layering.md +36 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-no-cross-stack-leakage.md +100 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-pr-checklist.md +39 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-token-budget.md +41 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-twin-sync.md +56 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/security-android.md +29 -0
- package/presets/claude/android-kotlin/rules/tooling-and-review/technical-retro.md +18 -0
- package/presets/claude/android-kotlin/rules/ui-and-accessibility/README.md +7 -0
- package/presets/claude/android-kotlin/rules/ui-and-accessibility/compose.md +31 -0
- package/presets/claude/android-kotlin/rules/ui-and-accessibility/navigation.md +30 -0
- package/presets/claude/android-kotlin/rules/ui-and-accessibility/viewmodels.md +27 -0
- package/presets/claude/android-kotlin/skills/README.md +14 -0
- package/presets/claude/android-kotlin/skills/ci-investigation/SKILL.md +39 -0
- package/presets/claude/android-kotlin/skills/code-review/SKILL.md +39 -0
- package/presets/claude/android-kotlin/skills/debug-investigation/SKILL.md +34 -0
- package/presets/claude/android-kotlin/skills/feature-delivery/SKILL.md +36 -0
- package/presets/claude/android-kotlin/skills/instrumentation-ui-e2e/SKILL.md +17 -0
- package/presets/claude/android-kotlin/skills/spec-authoring/SKILL.md +26 -0
- package/presets/claude/android-kotlin/skills/technical-retro/SKILL.md +54 -0
- package/presets/claude/android-kotlin/skills/unit-testing/SKILL.md +32 -0
- package/presets/claude/android-kotlin/skills/write-adr/SKILL.md +41 -0
- package/presets/claude/android-kotlin/team/README.md +54 -0
- package/presets/claude/android-kotlin/team/conventions.md +17 -0
- package/presets/claude/android-kotlin/team/fixtures/bugfix-standard.json +47 -0
- package/presets/claude/android-kotlin/team/fixtures/feature-full.json +97 -0
- package/presets/claude/android-kotlin/team/fixtures/feature-light.json +38 -0
- package/presets/claude/go/agents/build-verifier.md +3 -0
- package/presets/claude/go/agents/code-reviewer.md +2 -0
- package/presets/claude/go/agents/feature-developer.md +7 -0
- package/presets/claude/go/agents/task-analyst.md +19 -0
- package/presets/claude/go/agents/task-router.md +11 -0
- package/presets/claude/go/agents/tech-writer.md +5 -0
- package/presets/claude/go/commands/feature-continue.md +1 -0
- package/presets/claude/go/commands/feature-start.md +8 -0
- package/presets/claude/go/commands/spec-start.md +29 -0
- package/presets/claude/go/commands/task-continue.md +6 -3
- package/presets/claude/go/rules/README.md +2 -0
- package/presets/claude/go/rules/architecture/feature-delivery.md +4 -0
- package/presets/claude/go/rules/architecture/product-specs-authoring.md +121 -0
- package/presets/claude/go/rules/architecture/product-specs.md +63 -0
- package/presets/claude/go/rules/tooling-and-review/agent-team-orchestrator.md +2 -0
- package/presets/claude/go/rules/tooling-and-review/preset-layering.md +1 -1
- package/presets/claude/go/rules/tooling-and-review/preset-no-cross-stack-leakage.md +25 -12
- package/presets/claude/go/rules/tooling-and-review/preset-pr-checklist.md +1 -1
- package/presets/claude/go/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/go/skills/feature-delivery/SKILL.md +5 -4
- package/presets/claude/go/skills/spec-authoring/SKILL.md +26 -0
- package/presets/claude/ios-swift/agents/build-verifier.md +3 -0
- package/presets/claude/ios-swift/agents/code-reviewer.md +2 -0
- package/presets/claude/ios-swift/agents/feature-developer.md +7 -0
- package/presets/claude/ios-swift/agents/task-analyst.md +19 -0
- package/presets/claude/ios-swift/agents/task-router.md +11 -0
- package/presets/claude/ios-swift/agents/tech-writer.md +2 -15
- package/presets/claude/ios-swift/commands/feature-continue.md +4 -0
- package/presets/claude/ios-swift/commands/feature-start.md +8 -0
- package/presets/claude/ios-swift/commands/spec-start.md +29 -0
- package/presets/claude/ios-swift/commands/task-continue.md +6 -3
- package/presets/claude/ios-swift/rules/README.md +3 -0
- package/presets/claude/ios-swift/rules/architecture/feature-delivery.md +4 -0
- package/presets/claude/ios-swift/rules/architecture/product-specs-authoring.md +121 -0
- package/presets/claude/ios-swift/rules/architecture/product-specs.md +62 -0
- package/presets/claude/ios-swift/rules/tooling-and-review/agent-team-orchestrator.md +2 -0
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-layering.md +1 -1
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-no-cross-stack-leakage.md +25 -12
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-pr-checklist.md +1 -1
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/ios-swift/skills/feature-delivery/SKILL.md +5 -4
- package/presets/claude/ios-swift/skills/spec-authoring/SKILL.md +26 -0
- package/presets/claude/java/agents/build-verifier.md +3 -0
- package/presets/claude/java/agents/code-reviewer.md +2 -0
- package/presets/claude/java/agents/feature-developer.md +7 -0
- package/presets/claude/java/agents/task-analyst.md +19 -0
- package/presets/claude/java/agents/task-router.md +11 -0
- package/presets/claude/java/agents/tech-writer.md +5 -0
- package/presets/claude/java/commands/feature-continue.md +1 -0
- package/presets/claude/java/commands/feature-start.md +8 -0
- package/presets/claude/java/commands/spec-start.md +29 -0
- package/presets/claude/java/commands/task-continue.md +6 -3
- package/presets/claude/java/rules/README.md +2 -0
- package/presets/claude/java/rules/architecture/feature-delivery.md +4 -0
- package/presets/claude/java/rules/architecture/product-specs-authoring.md +121 -0
- package/presets/claude/java/rules/architecture/product-specs.md +63 -0
- package/presets/claude/java/rules/tooling-and-review/agent-team-orchestrator.md +2 -0
- package/presets/claude/java/rules/tooling-and-review/preset-layering.md +1 -1
- package/presets/claude/java/rules/tooling-and-review/preset-no-cross-stack-leakage.md +25 -12
- package/presets/claude/java/rules/tooling-and-review/preset-pr-checklist.md +1 -1
- package/presets/claude/java/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/java/skills/feature-delivery/SKILL.md +5 -4
- package/presets/claude/java/skills/spec-authoring/SKILL.md +26 -0
- package/presets/claude/mcp-ts/agents/build-verifier.md +3 -0
- package/presets/claude/mcp-ts/agents/feature-developer.md +7 -0
- package/presets/claude/mcp-ts/agents/task-analyst.md +21 -0
- package/presets/claude/mcp-ts/agents/task-router.md +11 -0
- package/presets/claude/mcp-ts/commands/feature-continue.md +4 -0
- package/presets/claude/mcp-ts/commands/feature-start.md +8 -0
- package/presets/claude/mcp-ts/commands/spec-start.md +29 -0
- package/presets/claude/mcp-ts/commands/task-continue.md +6 -3
- package/presets/claude/mcp-ts/rules/README.md +2 -0
- package/presets/claude/mcp-ts/rules/architecture/feature-delivery.md +4 -0
- package/presets/claude/mcp-ts/rules/architecture/product-specs-authoring.md +121 -0
- package/presets/claude/mcp-ts/rules/architecture/product-specs.md +63 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-orchestrator.md +2 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-layering.md +1 -1
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-no-cross-stack-leakage.md +25 -12
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-pr-checklist.md +1 -1
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/mcp-ts/skills/feature-delivery/SKILL.md +4 -3
- package/presets/claude/mcp-ts/skills/spec-authoring/SKILL.md +26 -0
- package/presets/claude/next/agents/build-verifier.md +3 -0
- package/presets/claude/next/agents/code-reviewer.md +1 -0
- package/presets/claude/next/agents/feature-developer.md +7 -0
- package/presets/claude/next/agents/task-analyst.md +19 -0
- package/presets/claude/next/agents/task-router.md +11 -0
- package/presets/claude/next/agents/tech-writer.md +5 -0
- package/presets/claude/next/commands/feature-continue.md +1 -0
- package/presets/claude/next/commands/feature-start.md +8 -0
- package/presets/claude/next/commands/spec-start.md +29 -0
- package/presets/claude/next/commands/task-continue.md +6 -3
- package/presets/claude/next/rules/README.md +3 -0
- package/presets/claude/next/rules/architecture/feature-delivery-workflow.md +4 -0
- package/presets/claude/next/rules/architecture/product-specs-authoring.md +121 -0
- package/presets/claude/next/rules/architecture/product-specs.md +63 -0
- package/presets/claude/next/rules/tooling-and-review/agent-team-orchestrator.md +2 -0
- package/presets/claude/next/rules/tooling-and-review/preset-layering.md +1 -1
- package/presets/claude/next/rules/tooling-and-review/preset-no-cross-stack-leakage.md +25 -12
- package/presets/claude/next/rules/tooling-and-review/preset-pr-checklist.md +1 -1
- package/presets/claude/next/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/next/skills/feature-delivery/SKILL.md +4 -3
- package/presets/claude/next/skills/spec-authoring/SKILL.md +26 -0
- package/presets/claude/nuxt/agents/build-verifier.md +3 -0
- package/presets/claude/nuxt/agents/code-reviewer.md +2 -0
- package/presets/claude/nuxt/agents/feature-developer.md +7 -0
- package/presets/claude/nuxt/agents/task-analyst.md +19 -0
- package/presets/claude/nuxt/agents/task-router.md +11 -0
- package/presets/claude/nuxt/agents/tech-writer.md +5 -0
- package/presets/claude/nuxt/commands/feature-continue.md +4 -0
- package/presets/claude/nuxt/commands/feature-start.md +8 -0
- package/presets/claude/nuxt/commands/spec-start.md +29 -0
- package/presets/claude/nuxt/commands/task-continue.md +6 -3
- package/presets/claude/nuxt/rules/README.md +3 -0
- package/presets/claude/nuxt/rules/architecture/feature-delivery-workflow.md +4 -0
- package/presets/claude/nuxt/rules/architecture/product-specs-authoring.md +121 -0
- package/presets/claude/nuxt/rules/architecture/product-specs.md +62 -0
- package/presets/claude/nuxt/rules/tooling-and-review/agent-team-orchestrator.md +2 -0
- package/presets/claude/nuxt/rules/tooling-and-review/preset-layering.md +1 -1
- package/presets/claude/nuxt/rules/tooling-and-review/preset-no-cross-stack-leakage.md +25 -12
- package/presets/claude/nuxt/rules/tooling-and-review/preset-pr-checklist.md +1 -1
- package/presets/claude/nuxt/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/nuxt/skills/feature-delivery/SKILL.md +4 -3
- package/presets/claude/nuxt/skills/spec-authoring/SKILL.md +26 -0
- package/presets/claude/php-hexagonal/agents/build-verifier.md +3 -0
- package/presets/claude/php-hexagonal/agents/code-reviewer.md +2 -0
- package/presets/claude/php-hexagonal/agents/feature-developer.md +7 -0
- package/presets/claude/php-hexagonal/agents/task-analyst.md +19 -0
- package/presets/claude/php-hexagonal/agents/task-router.md +11 -0
- package/presets/claude/php-hexagonal/agents/tech-writer.md +5 -0
- package/presets/claude/php-hexagonal/commands/feature-continue.md +1 -0
- package/presets/claude/php-hexagonal/commands/feature-start.md +8 -0
- package/presets/claude/php-hexagonal/commands/spec-start.md +29 -0
- package/presets/claude/php-hexagonal/commands/task-continue.md +6 -3
- package/presets/claude/php-hexagonal/rules/README.md +2 -0
- package/presets/claude/php-hexagonal/rules/architecture/feature-delivery.md +4 -0
- package/presets/claude/php-hexagonal/rules/architecture/product-specs-authoring.md +121 -0
- package/presets/claude/php-hexagonal/rules/architecture/product-specs.md +63 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-orchestrator.md +2 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-layering.md +1 -1
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-no-cross-stack-leakage.md +25 -12
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-pr-checklist.md +1 -1
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/php-hexagonal/skills/feature-delivery/SKILL.md +5 -4
- package/presets/claude/php-hexagonal/skills/spec-authoring/SKILL.md +26 -0
- package/presets/claude/php-laravel/agents/build-verifier.md +3 -0
- package/presets/claude/php-laravel/agents/code-reviewer.md +2 -0
- package/presets/claude/php-laravel/agents/feature-developer.md +7 -0
- package/presets/claude/php-laravel/agents/task-analyst.md +19 -0
- package/presets/claude/php-laravel/agents/task-router.md +11 -0
- package/presets/claude/php-laravel/agents/tech-writer.md +5 -0
- package/presets/claude/php-laravel/commands/feature-continue.md +1 -0
- package/presets/claude/php-laravel/commands/feature-start.md +8 -0
- package/presets/claude/php-laravel/commands/spec-start.md +29 -0
- package/presets/claude/php-laravel/commands/task-continue.md +6 -3
- package/presets/claude/php-laravel/rules/README.md +2 -0
- package/presets/claude/php-laravel/rules/architecture/feature-delivery.md +4 -0
- package/presets/claude/php-laravel/rules/architecture/product-specs-authoring.md +121 -0
- package/presets/claude/php-laravel/rules/architecture/product-specs.md +63 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-orchestrator.md +2 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-layering.md +1 -1
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-no-cross-stack-leakage.md +25 -12
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-pr-checklist.md +1 -1
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/php-laravel/skills/feature-delivery/SKILL.md +5 -4
- package/presets/claude/php-laravel/skills/spec-authoring/SKILL.md +26 -0
- package/presets/claude/svelte/agents/build-verifier.md +3 -0
- package/presets/claude/svelte/agents/code-reviewer.md +2 -0
- package/presets/claude/svelte/agents/feature-developer.md +7 -0
- package/presets/claude/svelte/agents/task-analyst.md +19 -0
- package/presets/claude/svelte/agents/task-router.md +11 -0
- package/presets/claude/svelte/agents/tech-writer.md +5 -0
- package/presets/claude/svelte/commands/feature-continue.md +4 -0
- package/presets/claude/svelte/commands/feature-start.md +8 -0
- package/presets/claude/svelte/commands/spec-start.md +29 -0
- package/presets/claude/svelte/commands/task-continue.md +6 -3
- package/presets/claude/svelte/rules/README.md +3 -0
- package/presets/claude/svelte/rules/architecture/feature-delivery-workflow.md +4 -0
- package/presets/claude/svelte/rules/architecture/product-specs-authoring.md +121 -0
- package/presets/claude/svelte/rules/architecture/product-specs.md +62 -0
- package/presets/claude/svelte/rules/tooling-and-review/agent-team-orchestrator.md +2 -0
- package/presets/claude/svelte/rules/tooling-and-review/preset-layering.md +1 -1
- package/presets/claude/svelte/rules/tooling-and-review/preset-no-cross-stack-leakage.md +25 -12
- package/presets/claude/svelte/rules/tooling-and-review/preset-pr-checklist.md +1 -1
- package/presets/claude/svelte/rules/tooling-and-review/preset-twin-sync.md +2 -0
- package/presets/claude/svelte/skills/feature-delivery/SKILL.md +4 -3
- package/presets/claude/svelte/skills/spec-authoring/SKILL.md +26 -0
- package/presets/cursor/android-kotlin/AGENTS.md +50 -0
- package/presets/cursor/android-kotlin/BUGBOT.md +16 -0
- package/presets/cursor/android-kotlin/MCP.md +16 -0
- package/presets/cursor/android-kotlin/README.md +35 -0
- package/presets/cursor/android-kotlin/REPO_AGENTS.md +48 -0
- package/presets/cursor/android-kotlin/agents/README.md +44 -0
- package/presets/cursor/android-kotlin/agents/accessibility-reviewer.md +60 -0
- package/presets/cursor/android-kotlin/agents/api-contract-reviewer.md +70 -0
- package/presets/cursor/android-kotlin/agents/build-verifier.md +70 -0
- package/presets/cursor/android-kotlin/agents/ci-investigator.md +74 -0
- package/presets/cursor/android-kotlin/agents/code-reviewer.md +76 -0
- package/presets/cursor/android-kotlin/agents/codebase-analyzer.md +28 -0
- package/presets/cursor/android-kotlin/agents/debugger.md +77 -0
- package/presets/cursor/android-kotlin/agents/feature-developer.md +70 -0
- package/presets/cursor/android-kotlin/agents/instrumentation-test-generator.md +19 -0
- package/presets/cursor/android-kotlin/agents/instrumentation-test-healer.md +19 -0
- package/presets/cursor/android-kotlin/agents/instrumentation-test-planner.md +19 -0
- package/presets/cursor/android-kotlin/agents/migration-specialist.md +74 -0
- package/presets/cursor/android-kotlin/agents/performance-auditor.md +67 -0
- package/presets/cursor/android-kotlin/agents/qa-tester.md +66 -0
- package/presets/cursor/android-kotlin/agents/security-reviewer.md +65 -0
- package/presets/cursor/android-kotlin/agents/solution-architect.md +21 -0
- package/presets/cursor/android-kotlin/agents/task-analyst.md +55 -0
- package/presets/cursor/android-kotlin/agents/task-router.md +114 -0
- package/presets/cursor/android-kotlin/agents/tech-writer.md +66 -0
- package/presets/cursor/android-kotlin/agents/unit-test-generator.md +55 -0
- package/presets/cursor/android-kotlin/agents/unit-test-healer.md +54 -0
- package/presets/cursor/android-kotlin/agents/unit-test-planner.md +65 -0
- package/presets/cursor/android-kotlin/commands/README.md +51 -0
- package/presets/cursor/android-kotlin/commands/feature-continue.md +23 -0
- package/presets/cursor/android-kotlin/commands/feature-start.md +41 -0
- package/presets/cursor/android-kotlin/commands/spec-start.md +29 -0
- package/presets/cursor/android-kotlin/commands/task-continue.md +53 -0
- package/presets/cursor/android-kotlin/commands/task.md +56 -0
- package/presets/cursor/android-kotlin/commands/technical-retro.md +85 -0
- package/presets/cursor/android-kotlin/hooks/README.md +12 -0
- package/presets/cursor/android-kotlin/hooks/chain-team-phases.sh +723 -0
- package/presets/cursor/android-kotlin/hooks/examples/README.md +18 -0
- package/presets/cursor/android-kotlin/hooks/examples/format-edited.example.sh +13 -0
- package/presets/cursor/android-kotlin/hooks/examples/secret-guard.example.sh +10 -0
- package/presets/cursor/android-kotlin/hooks/examples/test-on-save.example.sh +8 -0
- package/presets/cursor/android-kotlin/hooks/guard-shell-command.sh +80 -0
- package/presets/cursor/android-kotlin/hooks.json +17 -0
- package/presets/cursor/android-kotlin/mcp.json +11 -0
- package/presets/cursor/android-kotlin/rules/README.md +64 -0
- package/presets/cursor/android-kotlin/rules/agent-team-intake.mdc +16 -0
- package/presets/cursor/android-kotlin/rules/agent-team-orchestrator.mdc +126 -0
- package/presets/cursor/android-kotlin/rules/android-app-core.mdc +28 -0
- package/presets/cursor/android-kotlin/rules/anti-sycophancy-discipline.mdc +30 -0
- package/presets/cursor/android-kotlin/rules/architecture-boundaries.mdc +28 -0
- package/presets/cursor/android-kotlin/rules/code-quality-and-refactoring.mdc +53 -0
- package/presets/cursor/android-kotlin/rules/code-review-mr.mdc +84 -0
- package/presets/cursor/android-kotlin/rules/compose-ui.mdc +32 -0
- package/presets/cursor/android-kotlin/rules/design-guidance.mdc +111 -0
- package/presets/cursor/android-kotlin/rules/di-dagger-feature-holders.mdc +35 -0
- package/presets/cursor/android-kotlin/rules/feature-delivery-workflow.mdc +40 -0
- package/presets/cursor/android-kotlin/rules/gradle-tooling.mdc +31 -0
- package/presets/cursor/android-kotlin/rules/kotlin-conventions.mdc +31 -0
- package/presets/cursor/android-kotlin/rules/module-public-api.mdc +30 -0
- package/presets/cursor/android-kotlin/rules/navigation-feature-launcher.mdc +31 -0
- package/presets/cursor/android-kotlin/rules/networking-data.mdc +31 -0
- package/presets/cursor/android-kotlin/rules/persistence-data.mdc +30 -0
- package/presets/cursor/android-kotlin/rules/post-change-build.mdc +30 -0
- package/presets/cursor/android-kotlin/rules/preset-layering.mdc +36 -0
- package/presets/cursor/android-kotlin/rules/preset-no-cross-stack-leakage.mdc +100 -0
- package/presets/cursor/android-kotlin/rules/preset-pr-checklist.mdc +39 -0
- package/presets/cursor/android-kotlin/rules/preset-token-budget.mdc +41 -0
- package/presets/cursor/android-kotlin/rules/preset-twin-sync.mdc +56 -0
- package/presets/cursor/android-kotlin/rules/product-specs-authoring.mdc +123 -0
- package/presets/cursor/android-kotlin/rules/product-specs.mdc +64 -0
- package/presets/cursor/android-kotlin/rules/reference-features.mdc +29 -0
- package/presets/cursor/android-kotlin/rules/security-android.mdc +30 -0
- package/presets/cursor/android-kotlin/rules/state-and-viewmodels.mdc +28 -0
- package/presets/cursor/android-kotlin/rules/technical-retro.mdc +16 -0
- package/presets/cursor/android-kotlin/rules/tests-ui.mdc +29 -0
- package/presets/cursor/android-kotlin/rules/tests-unit.mdc +30 -0
- package/presets/cursor/android-kotlin/skills/README.md +14 -0
- package/presets/cursor/android-kotlin/skills/ci-investigation/SKILL.md +39 -0
- package/presets/cursor/android-kotlin/skills/code-review/SKILL.md +39 -0
- package/presets/cursor/android-kotlin/skills/debug-investigation/SKILL.md +34 -0
- package/presets/cursor/android-kotlin/skills/feature-delivery/SKILL.md +36 -0
- package/presets/cursor/android-kotlin/skills/instrumentation-ui-e2e/SKILL.md +17 -0
- package/presets/cursor/android-kotlin/skills/spec-authoring/SKILL.md +26 -0
- package/presets/cursor/android-kotlin/skills/technical-retro/SKILL.md +54 -0
- package/presets/cursor/android-kotlin/skills/unit-testing/SKILL.md +32 -0
- package/presets/cursor/android-kotlin/skills/write-adr/SKILL.md +41 -0
- package/presets/cursor/android-kotlin/team/README.md +54 -0
- package/presets/cursor/android-kotlin/team/conventions.md +17 -0
- package/presets/cursor/android-kotlin/team/fixtures/bugfix-standard.json +47 -0
- package/presets/cursor/android-kotlin/team/fixtures/feature-full.json +97 -0
- package/presets/cursor/android-kotlin/team/fixtures/feature-light.json +38 -0
- package/presets/cursor/go/agents/build-verifier.md +3 -0
- package/presets/cursor/go/agents/code-reviewer.md +2 -0
- package/presets/cursor/go/agents/feature-developer.md +7 -0
- package/presets/cursor/go/agents/task-analyst.md +19 -0
- package/presets/cursor/go/agents/task-router.md +11 -0
- package/presets/cursor/go/agents/tech-writer.md +5 -0
- package/presets/cursor/go/commands/feature-continue.md +4 -0
- package/presets/cursor/go/commands/feature-start.md +8 -0
- package/presets/cursor/go/commands/spec-start.md +29 -0
- package/presets/cursor/go/commands/task-continue.md +6 -3
- package/presets/cursor/go/rules/README.md +4 -1
- package/presets/cursor/go/rules/agent-team-orchestrator.mdc +2 -0
- package/presets/cursor/go/rules/feature-delivery-workflow.mdc +4 -0
- package/presets/cursor/go/rules/preset-layering.mdc +1 -1
- package/presets/cursor/go/rules/preset-no-cross-stack-leakage.mdc +25 -12
- package/presets/cursor/go/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/go/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/go/rules/product-specs-authoring.mdc +123 -0
- package/presets/cursor/go/rules/product-specs.mdc +65 -0
- package/presets/cursor/go/skills/feature-delivery/SKILL.md +5 -4
- package/presets/cursor/go/skills/spec-authoring/SKILL.md +26 -0
- package/presets/cursor/ios-swift/agents/build-verifier.md +3 -0
- package/presets/cursor/ios-swift/agents/code-reviewer.md +2 -0
- package/presets/cursor/ios-swift/agents/feature-developer.md +7 -0
- package/presets/cursor/ios-swift/agents/task-analyst.md +19 -0
- package/presets/cursor/ios-swift/agents/task-router.md +11 -0
- package/presets/cursor/ios-swift/agents/tech-writer.md +2 -15
- package/presets/cursor/ios-swift/commands/feature-continue.md +4 -0
- package/presets/cursor/ios-swift/commands/feature-start.md +8 -0
- package/presets/cursor/ios-swift/commands/spec-start.md +29 -0
- package/presets/cursor/ios-swift/commands/task-continue.md +6 -3
- package/presets/cursor/ios-swift/rules/README.md +4 -1
- package/presets/cursor/ios-swift/rules/agent-team-orchestrator.mdc +2 -0
- package/presets/cursor/ios-swift/rules/feature-delivery-workflow.mdc +4 -0
- package/presets/cursor/ios-swift/rules/preset-layering.mdc +1 -1
- package/presets/cursor/ios-swift/rules/preset-no-cross-stack-leakage.mdc +25 -12
- package/presets/cursor/ios-swift/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/ios-swift/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/ios-swift/rules/product-specs-authoring.mdc +123 -0
- package/presets/cursor/ios-swift/rules/product-specs.mdc +64 -0
- package/presets/cursor/ios-swift/skills/feature-delivery/SKILL.md +5 -4
- package/presets/cursor/ios-swift/skills/spec-authoring/SKILL.md +26 -0
- package/presets/cursor/java/agents/build-verifier.md +3 -0
- package/presets/cursor/java/agents/code-reviewer.md +2 -0
- package/presets/cursor/java/agents/feature-developer.md +7 -0
- package/presets/cursor/java/agents/task-analyst.md +19 -0
- package/presets/cursor/java/agents/task-router.md +11 -0
- package/presets/cursor/java/agents/tech-writer.md +5 -0
- package/presets/cursor/java/commands/feature-continue.md +4 -0
- package/presets/cursor/java/commands/feature-start.md +8 -0
- package/presets/cursor/java/commands/spec-start.md +29 -0
- package/presets/cursor/java/commands/task-continue.md +6 -3
- package/presets/cursor/java/rules/README.md +4 -1
- package/presets/cursor/java/rules/agent-team-orchestrator.mdc +2 -0
- package/presets/cursor/java/rules/feature-delivery-workflow.mdc +4 -0
- package/presets/cursor/java/rules/preset-layering.mdc +1 -1
- package/presets/cursor/java/rules/preset-no-cross-stack-leakage.mdc +25 -12
- package/presets/cursor/java/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/java/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/java/rules/product-specs-authoring.mdc +123 -0
- package/presets/cursor/java/rules/product-specs.mdc +65 -0
- package/presets/cursor/java/skills/feature-delivery/SKILL.md +5 -4
- package/presets/cursor/java/skills/spec-authoring/SKILL.md +26 -0
- package/presets/cursor/mcp-ts/agents/build-verifier.md +3 -0
- package/presets/cursor/mcp-ts/agents/feature-developer.md +7 -0
- package/presets/cursor/mcp-ts/agents/task-analyst.md +21 -0
- package/presets/cursor/mcp-ts/agents/task-router.md +11 -0
- package/presets/cursor/mcp-ts/commands/feature-continue.md +4 -0
- package/presets/cursor/mcp-ts/commands/feature-start.md +8 -0
- package/presets/cursor/mcp-ts/commands/spec-start.md +29 -0
- package/presets/cursor/mcp-ts/commands/task-continue.md +6 -3
- package/presets/cursor/mcp-ts/rules/README.md +2 -0
- package/presets/cursor/mcp-ts/rules/agent-team-orchestrator.mdc +2 -0
- package/presets/cursor/mcp-ts/rules/feature-delivery-workflow.mdc +4 -0
- package/presets/cursor/mcp-ts/rules/preset-layering.mdc +1 -1
- package/presets/cursor/mcp-ts/rules/preset-no-cross-stack-leakage.mdc +25 -12
- package/presets/cursor/mcp-ts/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/mcp-ts/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/mcp-ts/rules/product-specs-authoring.mdc +123 -0
- package/presets/cursor/mcp-ts/rules/product-specs.mdc +65 -0
- package/presets/cursor/mcp-ts/skills/feature-delivery/SKILL.md +4 -3
- package/presets/cursor/mcp-ts/skills/spec-authoring/SKILL.md +26 -0
- package/presets/cursor/next/agents/build-verifier.md +3 -0
- package/presets/cursor/next/agents/code-reviewer.md +1 -0
- package/presets/cursor/next/agents/feature-developer.md +7 -0
- package/presets/cursor/next/agents/task-analyst.md +19 -0
- package/presets/cursor/next/agents/task-router.md +11 -0
- package/presets/cursor/next/agents/tech-writer.md +5 -0
- package/presets/cursor/next/commands/feature-continue.md +4 -0
- package/presets/cursor/next/commands/feature-start.md +8 -0
- package/presets/cursor/next/commands/spec-start.md +29 -0
- package/presets/cursor/next/commands/task-continue.md +6 -3
- package/presets/cursor/next/rules/README.md +3 -1
- package/presets/cursor/next/rules/agent-team-orchestrator.mdc +2 -0
- package/presets/cursor/next/rules/feature-delivery-workflow.mdc +4 -0
- package/presets/cursor/next/rules/preset-layering.mdc +1 -1
- package/presets/cursor/next/rules/preset-no-cross-stack-leakage.mdc +25 -12
- package/presets/cursor/next/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/next/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/next/rules/product-specs-authoring.mdc +123 -0
- package/presets/cursor/next/rules/product-specs.mdc +65 -0
- package/presets/cursor/next/skills/feature-delivery/SKILL.md +4 -3
- package/presets/cursor/next/skills/spec-authoring/SKILL.md +26 -0
- package/presets/cursor/nuxt/agents/build-verifier.md +3 -0
- package/presets/cursor/nuxt/agents/code-reviewer.md +2 -0
- package/presets/cursor/nuxt/agents/feature-developer.md +7 -0
- package/presets/cursor/nuxt/agents/task-analyst.md +19 -0
- package/presets/cursor/nuxt/agents/task-router.md +11 -0
- package/presets/cursor/nuxt/agents/tech-writer.md +5 -0
- package/presets/cursor/nuxt/commands/feature-continue.md +4 -0
- package/presets/cursor/nuxt/commands/feature-start.md +8 -0
- package/presets/cursor/nuxt/commands/spec-start.md +29 -0
- package/presets/cursor/nuxt/commands/task-continue.md +6 -3
- package/presets/cursor/nuxt/rules/README.md +3 -1
- package/presets/cursor/nuxt/rules/agent-team-orchestrator.mdc +2 -0
- package/presets/cursor/nuxt/rules/feature-delivery-workflow.mdc +4 -0
- package/presets/cursor/nuxt/rules/preset-layering.mdc +1 -1
- package/presets/cursor/nuxt/rules/preset-no-cross-stack-leakage.mdc +25 -12
- package/presets/cursor/nuxt/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/nuxt/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/nuxt/rules/product-specs-authoring.mdc +123 -0
- package/presets/cursor/nuxt/rules/product-specs.mdc +64 -0
- package/presets/cursor/nuxt/skills/feature-delivery/SKILL.md +4 -3
- package/presets/cursor/nuxt/skills/spec-authoring/SKILL.md +26 -0
- package/presets/cursor/php-hexagonal/agents/build-verifier.md +3 -0
- package/presets/cursor/php-hexagonal/agents/code-reviewer.md +2 -0
- package/presets/cursor/php-hexagonal/agents/feature-developer.md +7 -0
- package/presets/cursor/php-hexagonal/agents/task-analyst.md +19 -0
- package/presets/cursor/php-hexagonal/agents/task-router.md +11 -0
- package/presets/cursor/php-hexagonal/agents/tech-writer.md +5 -0
- package/presets/cursor/php-hexagonal/commands/feature-continue.md +4 -0
- package/presets/cursor/php-hexagonal/commands/feature-start.md +8 -0
- package/presets/cursor/php-hexagonal/commands/spec-start.md +29 -0
- package/presets/cursor/php-hexagonal/commands/task-continue.md +6 -3
- package/presets/cursor/php-hexagonal/rules/README.md +4 -1
- package/presets/cursor/php-hexagonal/rules/agent-team-orchestrator.mdc +2 -0
- package/presets/cursor/php-hexagonal/rules/feature-delivery-workflow.mdc +4 -0
- package/presets/cursor/php-hexagonal/rules/preset-layering.mdc +1 -1
- package/presets/cursor/php-hexagonal/rules/preset-no-cross-stack-leakage.mdc +25 -12
- package/presets/cursor/php-hexagonal/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/php-hexagonal/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/php-hexagonal/rules/product-specs-authoring.mdc +123 -0
- package/presets/cursor/php-hexagonal/rules/product-specs.mdc +65 -0
- package/presets/cursor/php-hexagonal/skills/feature-delivery/SKILL.md +5 -4
- package/presets/cursor/php-hexagonal/skills/spec-authoring/SKILL.md +26 -0
- package/presets/cursor/php-laravel/agents/build-verifier.md +3 -0
- package/presets/cursor/php-laravel/agents/code-reviewer.md +2 -0
- package/presets/cursor/php-laravel/agents/feature-developer.md +7 -0
- package/presets/cursor/php-laravel/agents/task-analyst.md +19 -0
- package/presets/cursor/php-laravel/agents/task-router.md +11 -0
- package/presets/cursor/php-laravel/agents/tech-writer.md +5 -0
- package/presets/cursor/php-laravel/commands/feature-continue.md +4 -0
- package/presets/cursor/php-laravel/commands/feature-start.md +8 -0
- package/presets/cursor/php-laravel/commands/spec-start.md +29 -0
- package/presets/cursor/php-laravel/commands/task-continue.md +6 -3
- package/presets/cursor/php-laravel/rules/README.md +4 -1
- package/presets/cursor/php-laravel/rules/agent-team-orchestrator.mdc +2 -0
- package/presets/cursor/php-laravel/rules/feature-delivery-workflow.mdc +4 -0
- package/presets/cursor/php-laravel/rules/preset-layering.mdc +1 -1
- package/presets/cursor/php-laravel/rules/preset-no-cross-stack-leakage.mdc +25 -12
- package/presets/cursor/php-laravel/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/php-laravel/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/php-laravel/rules/product-specs-authoring.mdc +123 -0
- package/presets/cursor/php-laravel/rules/product-specs.mdc +65 -0
- package/presets/cursor/php-laravel/skills/feature-delivery/SKILL.md +5 -4
- package/presets/cursor/php-laravel/skills/spec-authoring/SKILL.md +26 -0
- package/presets/cursor/svelte/agents/build-verifier.md +3 -0
- package/presets/cursor/svelte/agents/code-reviewer.md +2 -0
- package/presets/cursor/svelte/agents/feature-developer.md +7 -0
- package/presets/cursor/svelte/agents/task-analyst.md +19 -0
- package/presets/cursor/svelte/agents/task-router.md +11 -0
- package/presets/cursor/svelte/agents/tech-writer.md +5 -0
- package/presets/cursor/svelte/commands/feature-continue.md +4 -0
- package/presets/cursor/svelte/commands/feature-start.md +8 -0
- package/presets/cursor/svelte/commands/spec-start.md +29 -0
- package/presets/cursor/svelte/commands/task-continue.md +6 -3
- package/presets/cursor/svelte/rules/README.md +3 -1
- package/presets/cursor/svelte/rules/agent-team-orchestrator.mdc +2 -0
- package/presets/cursor/svelte/rules/feature-delivery-workflow.mdc +4 -0
- package/presets/cursor/svelte/rules/preset-layering.mdc +1 -1
- package/presets/cursor/svelte/rules/preset-no-cross-stack-leakage.mdc +25 -12
- package/presets/cursor/svelte/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/svelte/rules/preset-twin-sync.mdc +2 -0
- package/presets/cursor/svelte/rules/product-specs-authoring.mdc +123 -0
- package/presets/cursor/svelte/rules/product-specs.mdc +64 -0
- package/presets/cursor/svelte/skills/feature-delivery/SKILL.md +4 -3
- package/presets/cursor/svelte/skills/spec-authoring/SKILL.md +26 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Cursor commands (android-kotlin preset)
|
|
2
|
+
|
|
3
|
+
Slash commands are copied to `.cursor/commands/` on `ai-rules init cursor --preset android-kotlin`.
|
|
4
|
+
|
|
5
|
+
## Agent commands
|
|
6
|
+
|
|
7
|
+
| Command | Purpose |
|
|
8
|
+
|---------|---------|
|
|
9
|
+
| **`/task <description>`** | **Main entry point:** router → pipeline.json → roles in order |
|
|
10
|
+
| `/task-continue <slug>` | After a human gate or pause |
|
|
11
|
+
| `/feature-start <description>` | Legacy: analyst only (no router) |
|
|
12
|
+
| `/feature-continue <slug>` | Alias of task-continue |
|
|
13
|
+
| `/technical-retro [slug]` | Retro; with slug — “Agent work” block |
|
|
14
|
+
|
|
15
|
+
## `/task` examples
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
/task Add a date filter to Order History
|
|
19
|
+
→ analyst → developer → reviewer → QA
|
|
20
|
+
|
|
21
|
+
/task Order History crashes on an empty list
|
|
22
|
+
→ debugger → developer → reviewer → QA (regression)
|
|
23
|
+
|
|
24
|
+
/task CI failed on lint in PR #142
|
|
25
|
+
→ ci-investigator → developer → reviewer
|
|
26
|
+
|
|
27
|
+
/task Migrate to Android Kotlin 15
|
|
28
|
+
→ analyst → migration-specialist → developer → reviewer → QA
|
|
29
|
+
|
|
30
|
+
/task Check accessibility of the payment modal
|
|
31
|
+
→ analyst → developer → a11y-reviewer → code-reviewer
|
|
32
|
+
|
|
33
|
+
/task Cover the orders mapper with unit tests
|
|
34
|
+
→ unit-planner → unit-generator
|
|
35
|
+
|
|
36
|
+
/task Write a README for the new filters feature
|
|
37
|
+
→ analyst → tech-writer
|
|
38
|
+
|
|
39
|
+
/task Review changes in features/Orders
|
|
40
|
+
→ reviewer only
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Related files
|
|
44
|
+
|
|
45
|
+
- Subagents: `../agents/` (22 roles, including `task-router.md`, `codebase-analyzer.md`, and `instrumentation-test-{planner,generator,healer}`)
|
|
46
|
+
- Orchestrator: `../rules/agent-team-orchestrator.mdc`
|
|
47
|
+
- Skills: `../skills/` (`feature-delivery`, `code-review`, `debug-investigation`, `ci-investigation`, `unit-testing`, `instrumentation-ui-e2e`, `technical-retro`)
|
|
48
|
+
- Artifacts: `../team/README.md` (`pipeline.json`, `status.json`)
|
|
49
|
+
- Hooks: `../hooks.json`, `../hooks/chain-team-phases.sh`
|
|
50
|
+
|
|
51
|
+
Create and edit commands via `/commands` in Cursor or directly in this preset folder.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: feature-continue
|
|
3
|
+
description: Legacy alias for /task-continue that resumes a feature pipeline after human approval or pause.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Feature continue — legacy alias
|
|
7
|
+
|
|
8
|
+
> **Prefer:** `/task-continue <slug>` — same behavior, respects `pipeline.json`.
|
|
9
|
+
|
|
10
|
+
Continue after a human gate. Full logic is in **`task-continue.md`**.
|
|
11
|
+
|
|
12
|
+
## Short version
|
|
13
|
+
|
|
14
|
+
1. Read `pipeline.json` (if present) and `status.json`.
|
|
15
|
+
2. Clear `awaitingHumanGate`; determine the next step from `pipelineIndex`.
|
|
16
|
+
3. Invoke the subagent for `currentAgent`.
|
|
17
|
+
4. The hook continues the chain when `autoChain: true`.
|
|
18
|
+
|
|
19
|
+
See `task-continue.md` for details and the handoff table.
|
|
20
|
+
|
|
21
|
+
## Product specs (docs/specs)
|
|
22
|
+
|
|
23
|
+
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists, instruct them to load **`product-specs`** and honor **Related specs** from `brief.md` (behavior SoT). Soft-fail on miss; never invent product behavior. No-op if INDEX is absent.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: feature-start
|
|
3
|
+
description: Legacy analyst-only feature intake. Prefer /task for new work because it uses router and dynamic pipeline.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Feature start — legacy (analyst only)
|
|
7
|
+
|
|
8
|
+
> **Prefer:** `/task <description>` — the router chooses roles and order automatically.
|
|
9
|
+
|
|
10
|
+
Starts the **analysis phase** without the router. The parent agent acts as orchestrator (see `agent-team-orchestrator.mdc`).
|
|
11
|
+
|
|
12
|
+
## What to do
|
|
13
|
+
|
|
14
|
+
1. Extract the task description from the command arguments (everything after `/feature-start`).
|
|
15
|
+
2. Generate a **slug** (kebab-case, up to 48 characters) from the task title.
|
|
16
|
+
3. Create `.cursor/team/tasks/<slug>/` if it does not exist yet — via **Write** of an artifact (not Shell `mkdir`).
|
|
17
|
+
4. Write `.cursor/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
18
|
+
5. Optional: minimal `pipeline.json` with fixed steps (analyst → developer → reviewer → qa-tester).
|
|
19
|
+
6. Invoke subagent **task-analyst** (Task tool) with the full task description and artifact paths.
|
|
20
|
+
7. Wait for the analyst to finish. **Do not invoke developer** at this stage.
|
|
21
|
+
|
|
22
|
+
## Product specs (docs/specs)
|
|
23
|
+
|
|
24
|
+
When invoking **task-analyst**: if `docs/specs/INDEX.md` exists, instruct consume via **`product-specs`** and cite **Related specs**. Soft-fail on miss; never invent behavior.
|
|
25
|
+
|
|
26
|
+
If the user/AC requests generation or bootstrap, or INDEX is missing **with** bootstrap AC / `/spec-start` intent: instruct **author mode** inside the same analyst step — load **`product-specs-authoring`** + skill **`spec-authoring`**. Authoring is **not** a separate pipeline agent. Handoff must list created paths + INDEX diff; human gate must approve generated specs before feature-developer.
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
## Human gate
|
|
30
|
+
|
|
31
|
+
After the analyst:
|
|
32
|
+
|
|
33
|
+
- Show the user links to `brief.md` and `decomposition.md`.
|
|
34
|
+
- Also ask them to check **Related specs** in `brief.md` when `docs/specs/INDEX.md` exists.
|
|
35
|
+
- Ask them to review and approve or send edits.
|
|
36
|
+
- To continue: `/task-continue <slug>` or `/feature-continue <slug>`.
|
|
37
|
+
|
|
38
|
+
## If the slug already exists
|
|
39
|
+
|
|
40
|
+
- If `status.json` is `awaiting_approval` — offer review or continue.
|
|
41
|
+
- If the task is in progress — ask whether to continue or start a new slug.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: spec-start
|
|
3
|
+
description: Bootstrap or generate docs/specs (INDEX + page/feature) via task-analyst author mode. Optional docs-only path with human gate.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Spec start — generate / bootstrap product specs
|
|
7
|
+
|
|
8
|
+
Routes intent **`spec-gen`** (or bootstrap) → **task-analyst** in **author mode** → human gate (`after:task-analyst`) → stop, or continue to feature-developer if the user asked to implement after.
|
|
9
|
+
|
|
10
|
+
## What to do
|
|
11
|
+
|
|
12
|
+
1. Extract description from arguments after `/spec-start` (domain, page/feature ids, sources).
|
|
13
|
+
2. Generate a **slug** (kebab-case, ≤48 chars), e.g. `spec-<domain>-<id>`.
|
|
14
|
+
3. Ensure `.cursor/team/tasks/<slug>/` exists (Write artifacts; not Shell mkdir).
|
|
15
|
+
4. Write `.cursor/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
16
|
+
5. Write minimal `pipeline.json`: task-analyst → (optional stop) → feature-developer only if user asked implement-after. **No separate spec-author agent.**
|
|
17
|
+
6. Invoke **task-analyst** with: author mode; load **`product-specs`** + **`product-specs-authoring`** + skill **`spec-authoring`**; Bootstrap if `docs/specs/` absent, else Generate.
|
|
18
|
+
7. Wait for analyst. **Do not** invoke feature-developer until human gate passes.
|
|
19
|
+
|
|
20
|
+
## Human gate
|
|
21
|
+
|
|
22
|
+
- Show created/updated spec paths and INDEX diff.
|
|
23
|
+
- Ask user to approve drafts (`status: draft` → promote) or send edits.
|
|
24
|
+
- Continue: `/task-continue <slug>` only after approval when implementation follows; otherwise stop after docs.
|
|
25
|
+
|
|
26
|
+
## Notes
|
|
27
|
+
|
|
28
|
+
- Greenfield invent of INDEX is allowed **only** via this command, explicit ask, or AC bootstrap language.
|
|
29
|
+
- mcp-ts: analyst-only author/sync (no tech-writer).
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: task-continue
|
|
3
|
+
description: Continue an agent-team task after a human gate, pause, or review changes request using pipeline.json and status.json.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Task continue — after a human gate or pause
|
|
7
|
+
|
|
8
|
+
Resume the pipeline from `pipeline.json`. Semantic alias: `/feature-continue`.
|
|
9
|
+
|
|
10
|
+
## Arguments
|
|
11
|
+
|
|
12
|
+
`<slug>` — task identifier.
|
|
13
|
+
|
|
14
|
+
## Preconditions
|
|
15
|
+
|
|
16
|
+
1. Read `.cursor/team/tasks/<slug>/pipeline.json` and `status.json`.
|
|
17
|
+
2. Continue if:
|
|
18
|
+
- `awaitingHumanGate: true` or `state: awaiting_approval`, **or**
|
|
19
|
+
- `state: changes_requested` (after review), **or**
|
|
20
|
+
- the task was interrupted and must resume from `pipelineIndex`.
|
|
21
|
+
|
|
22
|
+
## Algorithm
|
|
23
|
+
|
|
24
|
+
1. Write `.cursor/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
25
|
+
2. **Human gate resume** (`awaitingHumanGate` / `awaiting_approval`):
|
|
26
|
+
1. **Do not** manually increment `pipelineIndex` or invent `currentAgent` first.
|
|
27
|
+
2. Close the gate + activate the next attempt via the **installed** hook (single authority for ledger + status):
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
printf '%s\n' '{"status":"completed","action":"end_human_gate","activateNext":true}' | bash .cursor/hooks/chain-team-phases.sh
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
3. Re-read `status.json` (and the hook `followup_message`).
|
|
34
|
+
4. Invoke the subagent named in `status.currentAgent` / followup — do **not** advance the pipeline a second time.
|
|
35
|
+
3. **Review `changes_requested`** (not a human gate): set `currentAgent` to `feature-developer` (same index / find developer in steps), `state: in_progress`, then invoke developer. Do **not** call `end_human_gate` unless `activeHumanGateEventId` is set.
|
|
36
|
+
4. **Other resume**: restore `pipelineIndex` / `currentAgent` from status and invoke that agent.
|
|
37
|
+
5. After the invoked agent completes, `chain-team-phases.sh` on `subagentStop` continues the chain when `autoChain: true`.
|
|
38
|
+
|
|
39
|
+
## Artifacts for handoff
|
|
40
|
+
|
|
41
|
+
| Agent | Read |
|
|
42
|
+
|-------|------|
|
|
43
|
+
| feature-developer | brief.md (incl. **Related specs**), decomposition.md, validation-report.md (if retry), review.md (if retry), architecture.md; if `docs/specs/INDEX.md` exists → load **`product-specs`** |
|
|
44
|
+
| build-verifier | git diff, decomposition.md |
|
|
45
|
+
| code-reviewer | brief.md, validation-report.md, git diff |
|
|
46
|
+
| qa-tester | brief.md, decomposition.md, scope from pipeline step |
|
|
47
|
+
|
|
48
|
+
## Product specs (docs/specs)
|
|
49
|
+
|
|
50
|
+
When the next agent is **feature-developer** (or other implementer): if `docs/specs/INDEX.md` exists or brief lists approved specs, instruct them to load **`product-specs`** and honor **Related specs** / approved generated specs as behavior SoT. Soft-fail on miss; never invent product behavior.
|
|
51
|
+
|
|
52
|
+
If analyst ran **author mode**, confirm human approved drafts before developer. Pass spec paths + INDEX diff in the handoff. No-op if INDEX is absent and no approved specs.
|
|
53
|
+
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: task
|
|
3
|
+
description: Route a natural-language task through the agent-team pipeline: task-router, pipeline.json, and the first planned specialist.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Task — single entry point (router + pipeline)
|
|
7
|
+
|
|
8
|
+
Main command for filing work. Parent agent = orchestrator (`agent-team-orchestrator.mdc`). Intake for work requests without `/task` — `agent-team-intake.mdc`.
|
|
9
|
+
|
|
10
|
+
## Arguments
|
|
11
|
+
|
|
12
|
+
Everything after `/task` is a natural-language task description.
|
|
13
|
+
|
|
14
|
+
Examples:
|
|
15
|
+
|
|
16
|
+
- `/task Add a date filter to Order History`
|
|
17
|
+
- `/task Order History crashes on an empty list — fix it`
|
|
18
|
+
- `/task CI failed on ./gradlew in a PR`
|
|
19
|
+
- `/task Migrate the network client / Gradle modules dependency`
|
|
20
|
+
- `/task Check a11y of the login form`
|
|
21
|
+
- `/task Cover OrderMapper with unit tests`
|
|
22
|
+
- `/task Write a changelog for the filters release`
|
|
23
|
+
- `/task Review my changes in features/Orders`
|
|
24
|
+
- `/task Write an Android instrumentation for the payment flow`
|
|
25
|
+
|
|
26
|
+
## Algorithm
|
|
27
|
+
|
|
28
|
+
1. **Slug** — kebab-case from the description (≤48 characters). Create `.cursor/team/tasks/<slug>/` via **Write** (e.g. placeholder `pipeline.json` or empty marker) — the runtime/hook owns `status.json` — **not** via Shell `mkdir` (sandbox → `Operation not permitted`).
|
|
29
|
+
2. **Router** — invoke subagent **task-router** with the task description and slug path.
|
|
30
|
+
3. **Plan** — show the user the table from `pipeline.json`: intent, steps, skipped, humanGates.
|
|
31
|
+
4. **Intent retro** — if `intent === "retro"`, run `/technical-retro` and **stop**.
|
|
32
|
+
5. **Start** — after the router:
|
|
33
|
+
- confirm `pipeline.json` and `active-task.json`;
|
|
34
|
+
- do **not** write `status.json` / `metrics.json` lifecycle fields yourself — the orchestration runtime/hook owns them (see **agent-artifact-contracts**). If `status.json` is missing, only a minimal bootstrap is allowed (`slug`, `intent`, `pipelineIndex: 0`, `currentAgent: steps[0]`, `state: in_progress`) — do **not** increment `pipelineIndex` manually;
|
|
35
|
+
- invoke the subagent for `pipeline.steps[0].agent` (slug, artifact paths, scope).
|
|
36
|
+
6. **After each agent** — wait for hook handoff / reconciliation of the terminal receipt → `status.state`; do not start the next step until `status.json` reflects the handoff (or until there is a hook `followup_message`).
|
|
37
|
+
7. **Human gate** — if after the current step there is a gate in `humanGates` (`after:<agent>`), after the agent finishes **stop** and ask for `/task-continue <slug>` (or `/feature-continue <slug>`).
|
|
38
|
+
|
|
39
|
+
## Do not
|
|
40
|
+
|
|
41
|
+
- Do not invoke developer before the router and (if in the pipeline) analyst/architect.
|
|
42
|
+
- Do not hardcode role order — only `pipeline.json`.
|
|
43
|
+
- Do not skip a human gate without an explicit continue.
|
|
44
|
+
|
|
45
|
+
## If the slug is taken
|
|
46
|
+
|
|
47
|
+
- `awaitingHumanGate` / `state: awaiting_approval` → offer artifact review or `/task-continue <slug>`.
|
|
48
|
+
- `in_progress` → ask: continue or new slug.
|
|
49
|
+
|
|
50
|
+
## Legacy
|
|
51
|
+
|
|
52
|
+
`/feature-start` and `/feature-continue` remain compatible; prefer `/task` for new work.
|
|
53
|
+
|
|
54
|
+
## Metrics
|
|
55
|
+
|
|
56
|
+
Runtime/hook owns `metrics.json` and `status.json` attempt ledgers. Before the first invocation ensure `task_started` and one `activeAttempts[attemptId]` + `attempt_started` exist (router/runtime bootstrap — parent must not invent parallel indices). On `/task-continue`, run the installed chain hook `end_human_gate` action (or wrapper) so `human_gate_ended` lands before the next attempt. Do not calculate durations in agents.
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: technical-retro
|
|
3
|
+
description: Facilitate a technical retrospective for a period, incident, release, or completed agent-team task slug.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Technical retro
|
|
7
|
+
|
|
8
|
+
Act as a **neutral technical retrospective facilitator**, not a code reviewer or people evaluator. Use skill **`technical-retro`** as the primary playbook.
|
|
9
|
+
|
|
10
|
+
## When to run
|
|
11
|
+
|
|
12
|
+
- User asks for: “retro”, “technical retro”, “sprint/iteration review”, “action items after release”.
|
|
13
|
+
- After an agent-team pipeline completes (`/feature-start` → `/feature-continue`).
|
|
14
|
+
- Context exists: period, topic (release, incident), task slug, notes.
|
|
15
|
+
|
|
16
|
+
## Inputs (collect, do not invent)
|
|
17
|
+
|
|
18
|
+
Ask when missing:
|
|
19
|
+
|
|
20
|
+
- **Period and focus**.
|
|
21
|
+
- **Task slug** (if the retro covers agent-team work).
|
|
22
|
+
- **Participants/roles** (when relevant).
|
|
23
|
+
- **Constraints**: time, format (async vs sync).
|
|
24
|
+
|
|
25
|
+
### Agent-team artifacts (when there is a slug)
|
|
26
|
+
|
|
27
|
+
Read from the repository:
|
|
28
|
+
|
|
29
|
+
- `.cursor/team/tasks/<slug>/pipeline.json`
|
|
30
|
+
- `.cursor/team/tasks/<slug>/brief.md`
|
|
31
|
+
- `.cursor/team/tasks/<slug>/decomposition.md`
|
|
32
|
+
- `.cursor/team/tasks/<slug>/status.json`
|
|
33
|
+
- Git diff / `git status` for changed files
|
|
34
|
+
|
|
35
|
+
Do not attribute facts that are not in artifacts, the diff, or the user message.
|
|
36
|
+
|
|
37
|
+
## Facilitation principles
|
|
38
|
+
|
|
39
|
+
- **Safety**: process and system, not “blame”.
|
|
40
|
+
- **Specifics**: from abstractions to observable events.
|
|
41
|
+
- **Balance**: positives and growth areas.
|
|
42
|
+
- **Action items**: owner and due date for each.
|
|
43
|
+
- **Do not mix with code review** — keep blocks separate if both are requested.
|
|
44
|
+
|
|
45
|
+
## Default session structure
|
|
46
|
+
|
|
47
|
+
1. **Goal and frame**.
|
|
48
|
+
2. **Gather facts**: went well / got in the way / surprises.
|
|
49
|
+
3. **Theme clustering** (3–7).
|
|
50
|
+
4. **Root causes** for 1–2 painful themes.
|
|
51
|
+
5. **Experiments** (1–3 process changes).
|
|
52
|
+
6. **Action items**: what / owner / by when / success criterion.
|
|
53
|
+
|
|
54
|
+
## “Agent work” block (required when there is a slug)
|
|
55
|
+
|
|
56
|
+
If the retro relates to a `/feature-start` pipeline:
|
|
57
|
+
|
|
58
|
+
| Question | What to capture |
|
|
59
|
+
|----------|-----------------|
|
|
60
|
+
| Router | Wrong intent, extra/missing steps in pipeline |
|
|
61
|
+
| Analyst | Bad assumptions, missed AC, extra/missing tasks |
|
|
62
|
+
| Decomposition | Incomplete layer coverage, wrong order, blocked dependencies |
|
|
63
|
+
| Developer | Scope creep, missed rules, lint/type gaps |
|
|
64
|
+
| Reviewer | Missed defects, false positives, checklist quality |
|
|
65
|
+
| QA | AC coverage by tests, flakiness, gaps in e2e plans |
|
|
66
|
+
|
|
67
|
+
**Action items** in this block — improve **prompts, subagents, and rules** (not only code).
|
|
68
|
+
|
|
69
|
+
## Response format
|
|
70
|
+
|
|
71
|
+
- Header: period, focus, slug (if any), assumptions.
|
|
72
|
+
- Agenda by stages.
|
|
73
|
+
- **“Agent work”** block (when applicable).
|
|
74
|
+
- Themes — bullets; disputed items — **questions for the team**.
|
|
75
|
+
- **Action items** at the end.
|
|
76
|
+
|
|
77
|
+
## Constraints
|
|
78
|
+
|
|
79
|
+
- Do not invent quotes and facts without input.
|
|
80
|
+
- Do not give HR recommendations.
|
|
81
|
+
- If only a template is requested — **agenda template** without invented content.
|
|
82
|
+
|
|
83
|
+
### Metrics evidence
|
|
84
|
+
|
|
85
|
+
When `metrics.json` exists, run the local aggregation script and report the cohort, sample size, incomplete artifacts, attribution confidence, active attempt duration, and human-gate wait separately. Do not treat gate wait or malformed ledgers as agent duration.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# `.cursor/hooks` (preset android-kotlin)
|
|
2
|
+
|
|
3
|
+
| File | Purpose |
|
|
4
|
+
|------|---------|
|
|
5
|
+
| `guard-shell-command.sh` | Destructive git / JS package-manager mismatch; **does not** block `./gradlew` / `simctl` / `xcrun` |
|
|
6
|
+
| `chain-team-phases.sh` | Auto-chain pipeline steps on `subagentStop` |
|
|
7
|
+
|
|
8
|
+
See root `hooks.json` for registration (`beforeShellExecution`, `subagentStop`).
|
|
9
|
+
|
|
10
|
+
## Optional cookbook
|
|
11
|
+
|
|
12
|
+
See `hooks/examples/README.md` — secret-guard / format-edited / test-on-save. **Not** in default `hooks.json`.
|