@bonesofspring/ai-rules 0.2.10 → 0.2.12
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 +40 -0
- package/README.md +7 -1
- package/bin/cli.js +6 -0
- package/package.json +1 -1
- package/presets/_shared/README.md +1 -1
- package/presets/_shared/core/agent-team/agent-task-metrics.md +30 -0
- package/presets/_shared/core/agent-team/agent-team-orchestrator.md +9 -1
- package/presets/_shared/core/meta/preset-layering.md +1 -1
- package/presets/_shared/core/meta/preset-no-cross-stack-leakage.md +18 -5
- package/presets/_shared/core/meta/preset-pr-checklist.md +1 -1
- package/presets/_shared/core/meta/preset-twin-sync.md +6 -0
- package/presets/_shared/core/review/technical-retro.md +2 -0
- package/presets/claude/go/agents/build-verifier.md +2 -2
- package/presets/claude/go/agents/task-router.md +4 -0
- package/presets/claude/go/commands/task-continue.md +17 -16
- package/presets/claude/go/commands/task.md +4 -0
- package/presets/claude/go/commands/technical-retro.md +4 -0
- package/presets/claude/go/hooks/chain-team-phases.sh +226 -26
- package/presets/claude/go/rules/README.md +6 -0
- package/presets/claude/go/rules/tooling-and-review/agent-team-orchestrator.md +4 -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 +18 -5
- 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 +6 -0
- package/presets/claude/go/rules/tooling-and-review/technical-retro.md +2 -0
- package/presets/claude/go/team/README.md +8 -0
- package/presets/claude/ios-swift/agents/build-verifier.md +3 -3
- package/presets/claude/ios-swift/agents/task-router.md +4 -0
- package/presets/claude/ios-swift/commands/task-continue.md +17 -16
- package/presets/claude/ios-swift/commands/task.md +4 -0
- package/presets/claude/ios-swift/commands/technical-retro.md +4 -0
- package/presets/claude/ios-swift/hooks/chain-team-phases.sh +226 -26
- package/presets/claude/ios-swift/rules/README.md +6 -0
- package/presets/claude/ios-swift/rules/tooling-and-review/agent-team-orchestrator.md +4 -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 +18 -5
- 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 +6 -0
- package/presets/claude/ios-swift/rules/tooling-and-review/technical-retro.md +2 -0
- package/presets/claude/ios-swift/team/README.md +8 -0
- package/presets/claude/java/agents/build-verifier.md +3 -3
- package/presets/claude/java/agents/task-router.md +4 -0
- package/presets/claude/java/commands/task-continue.md +17 -16
- package/presets/claude/java/commands/task.md +4 -0
- package/presets/claude/java/commands/technical-retro.md +4 -0
- package/presets/claude/java/hooks/chain-team-phases.sh +226 -26
- package/presets/claude/java/rules/README.md +6 -0
- package/presets/claude/java/rules/tooling-and-review/agent-team-orchestrator.md +4 -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 +18 -5
- 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 +6 -0
- package/presets/claude/java/rules/tooling-and-review/technical-retro.md +2 -0
- package/presets/claude/java/team/README.md +8 -0
- package/presets/claude/mcp-ts/CLAUDE.md +13 -0
- package/presets/claude/mcp-ts/MCP.md +37 -0
- package/presets/claude/mcp-ts/README.md +11 -0
- package/presets/claude/mcp-ts/REPO_AGENTS.md +49 -0
- package/presets/claude/mcp-ts/agents/README.md +21 -0
- package/presets/claude/mcp-ts/agents/build-verifier.md +39 -0
- package/presets/claude/mcp-ts/agents/feature-developer.md +47 -0
- package/presets/claude/mcp-ts/agents/security-reviewer.md +21 -0
- package/presets/claude/mcp-ts/agents/solution-architect.md +23 -0
- package/presets/claude/mcp-ts/agents/task-analyst.md +25 -0
- package/presets/claude/mcp-ts/agents/task-router.md +77 -0
- package/presets/claude/mcp-ts/commands/README.md +11 -0
- package/presets/claude/mcp-ts/commands/feature-continue.md +19 -0
- package/presets/claude/mcp-ts/commands/feature-start.md +33 -0
- package/presets/claude/mcp-ts/commands/task-continue.md +50 -0
- package/presets/claude/mcp-ts/commands/task.md +53 -0
- package/presets/claude/mcp-ts/commands/technical-retro.md +85 -0
- package/presets/claude/mcp-ts/hooks/README.md +12 -0
- package/presets/claude/mcp-ts/hooks/chain-team-phases.sh +546 -0
- package/presets/claude/mcp-ts/hooks/examples/README.md +11 -0
- package/presets/claude/mcp-ts/hooks/examples/format-edited.example.sh +16 -0
- package/presets/claude/mcp-ts/hooks/examples/secret-guard.example.sh +10 -0
- package/presets/claude/mcp-ts/hooks/examples/test-on-save.example.sh +25 -0
- package/presets/claude/mcp-ts/hooks/guard-shell-command.sh +79 -0
- package/presets/claude/mcp-ts/mcp.json +11 -0
- package/presets/claude/mcp-ts/rules/README.md +58 -0
- package/presets/claude/mcp-ts/rules/api-and-data/README.md +3 -0
- package/presets/claude/mcp-ts/rules/api-and-data/mcp-auth-secrets.md +44 -0
- package/presets/claude/mcp-ts/rules/api-and-data/mcp-contract-testing.md +42 -0
- package/presets/claude/mcp-ts/rules/api-and-data/mcp-tool-design.md +37 -0
- package/presets/claude/mcp-ts/rules/api-and-data/mcp-transport-packaging.md +43 -0
- package/presets/claude/mcp-ts/rules/architecture/README.md +3 -0
- package/presets/claude/mcp-ts/rules/architecture/feature-delivery.md +45 -0
- package/presets/claude/mcp-ts/rules/architecture/mcp-server-boundaries.md +28 -0
- package/presets/claude/mcp-ts/rules/architecture/reference-features.md +33 -0
- package/presets/claude/mcp-ts/rules/stack/README.md +3 -0
- package/presets/claude/mcp-ts/rules/stack/mcp-ts-app-core.md +27 -0
- package/presets/claude/mcp-ts/rules/stack/mcp-ts-conventions.md +29 -0
- package/presets/claude/mcp-ts/rules/testing/README.md +3 -0
- package/presets/claude/mcp-ts/rules/testing/unit.md +30 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/README.md +3 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-intake.md +23 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-orchestrator.md +165 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/anti-sycophancy-discipline.md +34 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/code-quality.md +52 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/code-review.md +51 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/design-guidance.md +109 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/mcp-ts-tooling.md +31 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/post-change-test.md +30 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-layering.md +36 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-no-cross-stack-leakage.md +69 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-pr-checklist.md +39 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-token-budget.md +41 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-twin-sync.md +50 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/security-mcp.md +52 -0
- package/presets/claude/mcp-ts/rules/tooling-and-review/technical-retro.md +18 -0
- package/presets/claude/mcp-ts/rules/ui-and-accessibility/README.md +3 -0
- package/presets/claude/mcp-ts/skills/README.md +12 -0
- package/presets/claude/mcp-ts/skills/code-review/SKILL.md +10 -0
- package/presets/claude/mcp-ts/skills/debug-investigation/SKILL.md +11 -0
- package/presets/claude/mcp-ts/skills/feature-delivery/SKILL.md +29 -0
- package/presets/claude/mcp-ts/skills/unit-testing/SKILL.md +16 -0
- package/presets/claude/mcp-ts/team/README.md +25 -0
- package/presets/claude/mcp-ts/team/conventions.md +14 -0
- package/presets/claude/mcp-ts/team/fixtures/bugfix-standard.json +32 -0
- package/presets/claude/mcp-ts/team/fixtures/feature-full.json +33 -0
- package/presets/claude/mcp-ts/team/fixtures/feature-light.json +34 -0
- package/presets/claude/next/agents/build-verifier.md +3 -3
- package/presets/claude/next/agents/task-router.md +4 -0
- package/presets/claude/next/commands/task-continue.md +17 -16
- package/presets/claude/next/commands/task.md +4 -0
- package/presets/claude/next/commands/technical-retro.md +4 -0
- package/presets/claude/next/hooks/chain-team-phases.sh +226 -26
- package/presets/claude/next/rules/README.md +6 -0
- package/presets/claude/next/rules/tooling-and-review/agent-team-orchestrator.md +4 -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 +18 -5
- 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 +6 -0
- package/presets/claude/next/rules/tooling-and-review/technical-retro.md +2 -0
- package/presets/claude/next/team/README.md +19 -0
- package/presets/claude/php-hexagonal/CLAUDE.md +31 -0
- package/presets/claude/php-hexagonal/MCP.md +15 -0
- package/presets/claude/php-hexagonal/README.md +26 -0
- package/presets/claude/php-hexagonal/REPO_AGENTS.md +46 -0
- package/presets/claude/php-hexagonal/agents/README.md +32 -0
- package/presets/claude/php-hexagonal/agents/api-contract-reviewer.md +23 -0
- package/presets/claude/php-hexagonal/agents/build-verifier.md +45 -0
- package/presets/claude/php-hexagonal/agents/ci-investigator.md +21 -0
- package/presets/claude/php-hexagonal/agents/code-reviewer.md +40 -0
- package/presets/claude/php-hexagonal/agents/codebase-analyzer.md +28 -0
- package/presets/claude/php-hexagonal/agents/debugger.md +29 -0
- package/presets/claude/php-hexagonal/agents/feature-developer.md +47 -0
- package/presets/claude/php-hexagonal/agents/integration-test-generator.md +22 -0
- package/presets/claude/php-hexagonal/agents/integration-test-healer.md +22 -0
- package/presets/claude/php-hexagonal/agents/integration-test-planner.md +22 -0
- package/presets/claude/php-hexagonal/agents/migration-specialist.md +31 -0
- package/presets/claude/php-hexagonal/agents/performance-auditor.md +22 -0
- package/presets/claude/php-hexagonal/agents/qa-tester.md +24 -0
- package/presets/claude/php-hexagonal/agents/security-reviewer.md +20 -0
- package/presets/claude/php-hexagonal/agents/solution-architect.md +28 -0
- package/presets/claude/php-hexagonal/agents/task-analyst.md +25 -0
- package/presets/claude/php-hexagonal/agents/task-router.md +73 -0
- package/presets/claude/php-hexagonal/agents/tech-writer.md +15 -0
- package/presets/claude/php-hexagonal/agents/unit-test-generator.md +21 -0
- package/presets/claude/php-hexagonal/agents/unit-test-healer.md +13 -0
- package/presets/claude/php-hexagonal/agents/unit-test-planner.md +26 -0
- package/presets/claude/php-hexagonal/commands/README.md +13 -0
- package/presets/claude/php-hexagonal/commands/feature-continue.md +51 -0
- package/presets/claude/php-hexagonal/commands/feature-start.md +30 -0
- package/presets/claude/php-hexagonal/commands/task-continue.md +50 -0
- package/presets/claude/php-hexagonal/commands/task.md +53 -0
- package/presets/claude/php-hexagonal/commands/technical-retro.md +62 -0
- package/presets/claude/php-hexagonal/hooks/README.md +16 -0
- package/presets/claude/php-hexagonal/hooks/chain-team-phases.sh +582 -0
- package/presets/claude/php-hexagonal/hooks/examples/README.md +18 -0
- package/presets/claude/php-hexagonal/hooks/examples/format-edited.example.sh +11 -0
- package/presets/claude/php-hexagonal/hooks/examples/secret-guard.example.sh +10 -0
- package/presets/claude/php-hexagonal/hooks/examples/test-on-save.example.sh +19 -0
- package/presets/claude/php-hexagonal/hooks/guard-shell-command.sh +80 -0
- package/presets/claude/php-hexagonal/mcp.json +11 -0
- package/presets/claude/php-hexagonal/rules/README.md +67 -0
- package/presets/claude/php-hexagonal/rules/api-and-data/README.md +14 -0
- package/presets/claude/php-hexagonal/rules/api-and-data/adapters-driven.md +38 -0
- package/presets/claude/php-hexagonal/rules/api-and-data/adapters-driving.md +38 -0
- package/presets/claude/php-hexagonal/rules/api-and-data/api-grpc.md +29 -0
- package/presets/claude/php-hexagonal/rules/api-and-data/api-http.md +36 -0
- package/presets/claude/php-hexagonal/rules/api-and-data/messaging-adapters.md +37 -0
- package/presets/claude/php-hexagonal/rules/api-and-data/persistence-adapters.md +33 -0
- package/presets/claude/php-hexagonal/rules/architecture/README.md +16 -0
- package/presets/claude/php-hexagonal/rules/architecture/application-usecases.md +31 -0
- package/presets/claude/php-hexagonal/rules/architecture/boundaries.md +34 -0
- package/presets/claude/php-hexagonal/rules/architecture/composition-root.md +33 -0
- package/presets/claude/php-hexagonal/rules/architecture/domain-layer.md +37 -0
- package/presets/claude/php-hexagonal/rules/architecture/feature-delivery.md +53 -0
- package/presets/claude/php-hexagonal/rules/architecture/module-public-api.md +31 -0
- package/presets/claude/php-hexagonal/rules/architecture/ports-interfaces.md +34 -0
- package/presets/claude/php-hexagonal/rules/architecture/reference-features.md +39 -0
- package/presets/claude/php-hexagonal/rules/stack/README.md +10 -0
- package/presets/claude/php-hexagonal/rules/stack/php-app-core.md +35 -0
- package/presets/claude/php-hexagonal/rules/stack/php-conventions.md +51 -0
- package/presets/claude/php-hexagonal/rules/testing/README.md +11 -0
- package/presets/claude/php-hexagonal/rules/testing/e2e.md +35 -0
- package/presets/claude/php-hexagonal/rules/testing/integration.md +31 -0
- package/presets/claude/php-hexagonal/rules/testing/unit.md +32 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/README.md +21 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-intake.md +26 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-orchestrator.md +183 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/anti-sycophancy-discipline.md +29 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/code-quality.md +53 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/code-review.md +60 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/design-guidance.md +111 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/php-tooling.md +39 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/post-change-test.md +31 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-layering.md +36 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-no-cross-stack-leakage.md +69 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-pr-checklist.md +39 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-token-budget.md +41 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-twin-sync.md +50 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/security-php.md +29 -0
- package/presets/claude/php-hexagonal/rules/tooling-and-review/technical-retro.md +22 -0
- package/presets/claude/php-hexagonal/rules/ui-and-accessibility/README.md +5 -0
- package/presets/claude/php-hexagonal/skills/README.md +5 -0
- package/presets/claude/php-hexagonal/skills/ci-investigation/SKILL.md +11 -0
- package/presets/claude/php-hexagonal/skills/code-review/SKILL.md +25 -0
- package/presets/claude/php-hexagonal/skills/debug-investigation/SKILL.md +15 -0
- package/presets/claude/php-hexagonal/skills/feature-delivery/SKILL.md +30 -0
- package/presets/claude/php-hexagonal/skills/integration-testing/SKILL.md +15 -0
- package/presets/claude/php-hexagonal/skills/technical-retro/SKILL.md +54 -0
- package/presets/claude/php-hexagonal/skills/unit-testing/SKILL.md +14 -0
- package/presets/claude/php-hexagonal/skills/write-adr/SKILL.md +41 -0
- package/presets/claude/php-hexagonal/team/README.md +37 -0
- package/presets/claude/php-hexagonal/team/conventions.md +21 -0
- package/presets/claude/php-hexagonal/team/fixtures/bugfix-standard.json +37 -0
- package/presets/claude/php-hexagonal/team/fixtures/feature-full.json +25 -0
- package/presets/claude/php-hexagonal/team/fixtures/feature-light.json +17 -0
- package/presets/claude/php-laravel/CLAUDE.md +20 -0
- package/presets/claude/php-laravel/MCP.md +5 -0
- package/presets/claude/php-laravel/README.md +30 -0
- package/presets/claude/php-laravel/REPO_AGENTS.md +47 -0
- package/presets/claude/php-laravel/agents/README.md +32 -0
- package/presets/claude/php-laravel/agents/api-contract-reviewer.md +23 -0
- package/presets/claude/php-laravel/agents/build-verifier.md +45 -0
- package/presets/claude/php-laravel/agents/ci-investigator.md +21 -0
- package/presets/claude/php-laravel/agents/code-reviewer.md +40 -0
- package/presets/claude/php-laravel/agents/codebase-analyzer.md +28 -0
- package/presets/claude/php-laravel/agents/debugger.md +29 -0
- package/presets/claude/php-laravel/agents/feature-developer.md +47 -0
- package/presets/claude/php-laravel/agents/integration-test-generator.md +22 -0
- package/presets/claude/php-laravel/agents/integration-test-healer.md +22 -0
- package/presets/claude/php-laravel/agents/integration-test-planner.md +22 -0
- package/presets/claude/php-laravel/agents/migration-specialist.md +31 -0
- package/presets/claude/php-laravel/agents/performance-auditor.md +22 -0
- package/presets/claude/php-laravel/agents/qa-tester.md +30 -0
- package/presets/claude/php-laravel/agents/security-reviewer.md +32 -0
- package/presets/claude/php-laravel/agents/solution-architect.md +29 -0
- package/presets/claude/php-laravel/agents/task-analyst.md +25 -0
- package/presets/claude/php-laravel/agents/task-router.md +92 -0
- package/presets/claude/php-laravel/agents/tech-writer.md +15 -0
- package/presets/claude/php-laravel/agents/unit-test-generator.md +21 -0
- package/presets/claude/php-laravel/agents/unit-test-healer.md +13 -0
- package/presets/claude/php-laravel/agents/unit-test-planner.md +26 -0
- package/presets/claude/php-laravel/commands/README.md +13 -0
- package/presets/claude/php-laravel/commands/feature-continue.md +51 -0
- package/presets/claude/php-laravel/commands/feature-start.md +30 -0
- package/presets/claude/php-laravel/commands/task-continue.md +50 -0
- package/presets/claude/php-laravel/commands/task.md +53 -0
- package/presets/claude/php-laravel/commands/technical-retro.md +62 -0
- package/presets/claude/php-laravel/hooks/README.md +16 -0
- package/presets/claude/php-laravel/hooks/chain-team-phases.sh +582 -0
- package/presets/claude/php-laravel/hooks/examples/README.md +18 -0
- package/presets/claude/php-laravel/hooks/examples/format-edited.example.sh +11 -0
- package/presets/claude/php-laravel/hooks/examples/secret-guard.example.sh +10 -0
- package/presets/claude/php-laravel/hooks/examples/test-on-save.example.sh +19 -0
- package/presets/claude/php-laravel/hooks/guard-shell-command.sh +80 -0
- package/presets/claude/php-laravel/mcp.json +11 -0
- package/presets/claude/php-laravel/rules/README.md +67 -0
- package/presets/claude/php-laravel/rules/api-and-data/README.md +3 -0
- package/presets/claude/php-laravel/rules/api-and-data/eloquent-persistence.md +31 -0
- package/presets/claude/php-laravel/rules/api-and-data/events-listeners.md +31 -0
- package/presets/claude/php-laravel/rules/api-and-data/form-requests.md +29 -0
- package/presets/claude/php-laravel/rules/api-and-data/http-layer.md +32 -0
- package/presets/claude/php-laravel/rules/api-and-data/jobs-queues.md +41 -0
- package/presets/claude/php-laravel/rules/api-and-data/policies-authorization.md +29 -0
- package/presets/claude/php-laravel/rules/api-and-data/routes-api.md +29 -0
- package/presets/claude/php-laravel/rules/architecture/README.md +3 -0
- package/presets/claude/php-laravel/rules/architecture/actions-services.md +30 -0
- package/presets/claude/php-laravel/rules/architecture/boundaries.md +34 -0
- package/presets/claude/php-laravel/rules/architecture/domain-layer.md +24 -0
- package/presets/claude/php-laravel/rules/architecture/feature-delivery.md +51 -0
- package/presets/claude/php-laravel/rules/architecture/module-public-api.md +29 -0
- package/presets/claude/php-laravel/rules/architecture/reference-features.md +40 -0
- package/presets/claude/php-laravel/rules/architecture/service-providers.md +28 -0
- package/presets/claude/php-laravel/rules/stack/README.md +3 -0
- package/presets/claude/php-laravel/rules/stack/laravel-app-core.md +32 -0
- package/presets/claude/php-laravel/rules/stack/laravel-conventions.md +38 -0
- package/presets/claude/php-laravel/rules/testing/README.md +3 -0
- package/presets/claude/php-laravel/rules/testing/e2e.md +34 -0
- package/presets/claude/php-laravel/rules/testing/integration.md +30 -0
- package/presets/claude/php-laravel/rules/testing/unit.md +30 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/README.md +3 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-intake.md +21 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-orchestrator.md +180 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/anti-sycophancy-discipline.md +29 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/code-quality.md +52 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/code-review.md +58 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/design-guidance.md +111 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/php-tooling.md +37 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/post-change-test.md +29 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-layering.md +33 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-no-cross-stack-leakage.md +66 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-pr-checklist.md +36 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-token-budget.md +38 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-twin-sync.md +47 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/security-php.md +58 -0
- package/presets/claude/php-laravel/rules/tooling-and-review/technical-retro.md +17 -0
- package/presets/claude/php-laravel/rules/ui-and-accessibility/README.md +3 -0
- package/presets/claude/php-laravel/skills/README.md +5 -0
- package/presets/claude/php-laravel/skills/ci-investigation/SKILL.md +11 -0
- package/presets/claude/php-laravel/skills/code-review/SKILL.md +25 -0
- package/presets/claude/php-laravel/skills/debug-investigation/SKILL.md +15 -0
- package/presets/claude/php-laravel/skills/feature-delivery/SKILL.md +30 -0
- package/presets/claude/php-laravel/skills/integration-testing/SKILL.md +15 -0
- package/presets/claude/php-laravel/skills/technical-retro/SKILL.md +54 -0
- package/presets/claude/php-laravel/skills/unit-testing/SKILL.md +14 -0
- package/presets/claude/php-laravel/skills/write-adr/SKILL.md +41 -0
- package/presets/claude/php-laravel/team/README.md +17 -0
- package/presets/claude/php-laravel/team/conventions.md +21 -0
- package/presets/claude/php-laravel/team/fixtures/bugfix-standard.json +12 -0
- package/presets/claude/php-laravel/team/fixtures/feature-full.json +15 -0
- package/presets/claude/php-laravel/team/fixtures/feature-light.json +8 -0
- package/presets/cursor/go/agents/build-verifier.md +2 -2
- package/presets/cursor/go/agents/task-router.md +4 -0
- package/presets/cursor/go/commands/task-continue.md +17 -16
- package/presets/cursor/go/commands/task.md +4 -0
- package/presets/cursor/go/commands/technical-retro.md +4 -0
- package/presets/cursor/go/hooks/chain-team-phases.sh +226 -26
- package/presets/cursor/go/rules/README.md +6 -0
- package/presets/cursor/go/rules/agent-team-orchestrator.mdc +4 -0
- package/presets/cursor/go/rules/preset-layering.mdc +1 -1
- package/presets/cursor/go/rules/preset-no-cross-stack-leakage.mdc +18 -5
- package/presets/cursor/go/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/go/rules/preset-twin-sync.mdc +6 -0
- package/presets/cursor/go/rules/technical-retro.mdc +2 -0
- package/presets/cursor/go/team/README.md +8 -0
- package/presets/cursor/ios-swift/agents/build-verifier.md +3 -3
- package/presets/cursor/ios-swift/agents/task-router.md +4 -0
- package/presets/cursor/ios-swift/commands/task-continue.md +17 -16
- package/presets/cursor/ios-swift/commands/task.md +4 -0
- package/presets/cursor/ios-swift/commands/technical-retro.md +4 -0
- package/presets/cursor/ios-swift/hooks/chain-team-phases.sh +226 -26
- package/presets/cursor/ios-swift/rules/README.md +6 -0
- package/presets/cursor/ios-swift/rules/agent-team-orchestrator.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 +18 -5
- package/presets/cursor/ios-swift/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/ios-swift/rules/preset-twin-sync.mdc +6 -0
- package/presets/cursor/ios-swift/rules/technical-retro.mdc +2 -0
- package/presets/cursor/ios-swift/team/README.md +8 -0
- package/presets/cursor/java/agents/build-verifier.md +3 -3
- package/presets/cursor/java/agents/task-router.md +4 -0
- package/presets/cursor/java/commands/task-continue.md +17 -16
- package/presets/cursor/java/commands/task.md +4 -0
- package/presets/cursor/java/commands/technical-retro.md +4 -0
- package/presets/cursor/java/hooks/chain-team-phases.sh +226 -26
- package/presets/cursor/java/rules/README.md +6 -0
- package/presets/cursor/java/rules/agent-team-orchestrator.mdc +4 -0
- package/presets/cursor/java/rules/preset-layering.mdc +1 -1
- package/presets/cursor/java/rules/preset-no-cross-stack-leakage.mdc +18 -5
- package/presets/cursor/java/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/java/rules/preset-twin-sync.mdc +6 -0
- package/presets/cursor/java/rules/technical-retro.mdc +2 -0
- package/presets/cursor/java/team/README.md +8 -0
- package/presets/cursor/mcp-ts/AGENTS.md +25 -0
- package/presets/cursor/mcp-ts/BUGBOT.md +9 -0
- package/presets/cursor/mcp-ts/MCP.md +37 -0
- package/presets/cursor/mcp-ts/README.md +19 -0
- package/presets/cursor/mcp-ts/REPO_AGENTS.md +49 -0
- package/presets/cursor/mcp-ts/agents/README.md +21 -0
- package/presets/cursor/mcp-ts/agents/build-verifier.md +39 -0
- package/presets/cursor/mcp-ts/agents/feature-developer.md +47 -0
- package/presets/cursor/mcp-ts/agents/security-reviewer.md +21 -0
- package/presets/cursor/mcp-ts/agents/solution-architect.md +23 -0
- package/presets/cursor/mcp-ts/agents/task-analyst.md +25 -0
- package/presets/cursor/mcp-ts/agents/task-router.md +77 -0
- package/presets/cursor/mcp-ts/commands/README.md +11 -0
- package/presets/cursor/mcp-ts/commands/feature-continue.md +19 -0
- package/presets/cursor/mcp-ts/commands/feature-start.md +33 -0
- package/presets/cursor/mcp-ts/commands/task-continue.md +50 -0
- package/presets/cursor/mcp-ts/commands/task.md +53 -0
- package/presets/cursor/mcp-ts/commands/technical-retro.md +85 -0
- package/presets/cursor/mcp-ts/hooks/README.md +12 -0
- package/presets/cursor/mcp-ts/hooks/chain-team-phases.sh +546 -0
- package/presets/cursor/mcp-ts/hooks/examples/README.md +11 -0
- package/presets/cursor/mcp-ts/hooks/examples/format-edited.example.sh +16 -0
- package/presets/cursor/mcp-ts/hooks/examples/secret-guard.example.sh +10 -0
- package/presets/cursor/mcp-ts/hooks/examples/test-on-save.example.sh +25 -0
- package/presets/cursor/mcp-ts/hooks/guard-shell-command.sh +79 -0
- package/presets/cursor/mcp-ts/hooks.json +17 -0
- package/presets/cursor/mcp-ts/mcp.json +11 -0
- package/presets/cursor/mcp-ts/rules/README.md +58 -0
- package/presets/cursor/mcp-ts/rules/agent-team-intake.mdc +21 -0
- package/presets/cursor/mcp-ts/rules/agent-team-orchestrator.mdc +163 -0
- package/presets/cursor/mcp-ts/rules/anti-sycophancy-discipline.mdc +35 -0
- package/presets/cursor/mcp-ts/rules/code-quality-and-refactoring.mdc +53 -0
- package/presets/cursor/mcp-ts/rules/code-review-mr.mdc +50 -0
- package/presets/cursor/mcp-ts/rules/design-guidance.mdc +108 -0
- package/presets/cursor/mcp-ts/rules/feature-delivery-workflow.mdc +43 -0
- package/presets/cursor/mcp-ts/rules/mcp-auth-secrets.mdc +45 -0
- package/presets/cursor/mcp-ts/rules/mcp-contract-testing.mdc +43 -0
- package/presets/cursor/mcp-ts/rules/mcp-server-boundaries.mdc +29 -0
- package/presets/cursor/mcp-ts/rules/mcp-tool-design.mdc +38 -0
- package/presets/cursor/mcp-ts/rules/mcp-transport-packaging.mdc +44 -0
- package/presets/cursor/mcp-ts/rules/mcp-ts-app-core.mdc +28 -0
- package/presets/cursor/mcp-ts/rules/mcp-ts-conventions.mdc +30 -0
- package/presets/cursor/mcp-ts/rules/mcp-ts-tooling.mdc +32 -0
- package/presets/cursor/mcp-ts/rules/post-change-test.mdc +26 -0
- package/presets/cursor/mcp-ts/rules/preset-layering.mdc +36 -0
- package/presets/cursor/mcp-ts/rules/preset-no-cross-stack-leakage.mdc +69 -0
- package/presets/cursor/mcp-ts/rules/preset-pr-checklist.mdc +39 -0
- package/presets/cursor/mcp-ts/rules/preset-token-budget.mdc +41 -0
- package/presets/cursor/mcp-ts/rules/preset-twin-sync.mdc +50 -0
- package/presets/cursor/mcp-ts/rules/reference-features.mdc +34 -0
- package/presets/cursor/mcp-ts/rules/security-mcp.mdc +53 -0
- package/presets/cursor/mcp-ts/rules/technical-retro.mdc +16 -0
- package/presets/cursor/mcp-ts/rules/tests-unit.mdc +31 -0
- package/presets/cursor/mcp-ts/skills/README.md +12 -0
- package/presets/cursor/mcp-ts/skills/code-review/SKILL.md +10 -0
- package/presets/cursor/mcp-ts/skills/debug-investigation/SKILL.md +11 -0
- package/presets/cursor/mcp-ts/skills/feature-delivery/SKILL.md +29 -0
- package/presets/cursor/mcp-ts/skills/unit-testing/SKILL.md +16 -0
- package/presets/cursor/mcp-ts/team/README.md +25 -0
- package/presets/cursor/mcp-ts/team/conventions.md +14 -0
- package/presets/cursor/mcp-ts/team/fixtures/bugfix-standard.json +32 -0
- package/presets/cursor/mcp-ts/team/fixtures/feature-full.json +33 -0
- package/presets/cursor/mcp-ts/team/fixtures/feature-light.json +34 -0
- package/presets/cursor/next/agents/build-verifier.md +3 -3
- package/presets/cursor/next/agents/task-router.md +4 -0
- package/presets/cursor/next/commands/task-continue.md +17 -16
- package/presets/cursor/next/commands/task.md +4 -0
- package/presets/cursor/next/commands/technical-retro.md +4 -0
- package/presets/cursor/next/hooks/chain-team-phases.sh +230 -26
- package/presets/cursor/next/rules/README.md +6 -0
- package/presets/cursor/next/rules/agent-team-orchestrator.mdc +4 -0
- package/presets/cursor/next/rules/preset-layering.mdc +1 -1
- package/presets/cursor/next/rules/preset-no-cross-stack-leakage.mdc +18 -5
- package/presets/cursor/next/rules/preset-pr-checklist.mdc +1 -1
- package/presets/cursor/next/rules/preset-twin-sync.mdc +6 -0
- package/presets/cursor/next/rules/technical-retro.mdc +2 -0
- package/presets/cursor/next/team/README.md +19 -0
- package/presets/cursor/next/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
- package/presets/cursor/next/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
- package/presets/cursor/next/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
- package/presets/cursor/next/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
- package/presets/cursor/next/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
- package/presets/cursor/next/team/fixtures/metrics.example.json +54 -0
- package/presets/cursor/php-hexagonal/AGENTS.md +39 -0
- package/presets/cursor/php-hexagonal/BUGBOT.md +11 -0
- package/presets/cursor/php-hexagonal/MCP.md +15 -0
- package/presets/cursor/php-hexagonal/README.md +26 -0
- package/presets/cursor/php-hexagonal/REPO_AGENTS.md +46 -0
- package/presets/cursor/php-hexagonal/agents/README.md +36 -0
- package/presets/cursor/php-hexagonal/agents/api-contract-reviewer.md +23 -0
- package/presets/cursor/php-hexagonal/agents/build-verifier.md +45 -0
- package/presets/cursor/php-hexagonal/agents/ci-investigator.md +21 -0
- package/presets/cursor/php-hexagonal/agents/code-reviewer.md +40 -0
- package/presets/cursor/php-hexagonal/agents/codebase-analyzer.md +28 -0
- package/presets/cursor/php-hexagonal/agents/debugger.md +29 -0
- package/presets/cursor/php-hexagonal/agents/feature-developer.md +47 -0
- package/presets/cursor/php-hexagonal/agents/integration-test-generator.md +22 -0
- package/presets/cursor/php-hexagonal/agents/integration-test-healer.md +22 -0
- package/presets/cursor/php-hexagonal/agents/integration-test-planner.md +22 -0
- package/presets/cursor/php-hexagonal/agents/migration-specialist.md +31 -0
- package/presets/cursor/php-hexagonal/agents/performance-auditor.md +22 -0
- package/presets/cursor/php-hexagonal/agents/qa-tester.md +24 -0
- package/presets/cursor/php-hexagonal/agents/security-reviewer.md +20 -0
- package/presets/cursor/php-hexagonal/agents/solution-architect.md +28 -0
- package/presets/cursor/php-hexagonal/agents/task-analyst.md +25 -0
- package/presets/cursor/php-hexagonal/agents/task-router.md +73 -0
- package/presets/cursor/php-hexagonal/agents/tech-writer.md +15 -0
- package/presets/cursor/php-hexagonal/agents/unit-test-generator.md +21 -0
- package/presets/cursor/php-hexagonal/agents/unit-test-healer.md +13 -0
- package/presets/cursor/php-hexagonal/agents/unit-test-planner.md +26 -0
- package/presets/cursor/php-hexagonal/commands/README.md +54 -0
- package/presets/cursor/php-hexagonal/commands/feature-continue.md +19 -0
- package/presets/cursor/php-hexagonal/commands/feature-start.md +33 -0
- package/presets/cursor/php-hexagonal/commands/task-continue.md +50 -0
- package/presets/cursor/php-hexagonal/commands/task.md +53 -0
- package/presets/cursor/php-hexagonal/commands/technical-retro.md +85 -0
- package/presets/cursor/php-hexagonal/hooks/README.md +12 -0
- package/presets/cursor/php-hexagonal/hooks/chain-team-phases.sh +582 -0
- package/presets/cursor/php-hexagonal/hooks/examples/README.md +18 -0
- package/presets/cursor/php-hexagonal/hooks/examples/format-edited.example.sh +11 -0
- package/presets/cursor/php-hexagonal/hooks/examples/secret-guard.example.sh +10 -0
- package/presets/cursor/php-hexagonal/hooks/examples/test-on-save.example.sh +19 -0
- package/presets/cursor/php-hexagonal/hooks/guard-shell-command.sh +80 -0
- package/presets/cursor/php-hexagonal/hooks.json +17 -0
- package/presets/cursor/php-hexagonal/mcp.json +11 -0
- package/presets/cursor/php-hexagonal/rules/README.md +106 -0
- package/presets/cursor/php-hexagonal/rules/adapters-driven.mdc +41 -0
- package/presets/cursor/php-hexagonal/rules/adapters-driving.mdc +42 -0
- package/presets/cursor/php-hexagonal/rules/agent-team-intake.mdc +20 -0
- package/presets/cursor/php-hexagonal/rules/agent-team-orchestrator.mdc +177 -0
- package/presets/cursor/php-hexagonal/rules/anti-sycophancy-discipline.mdc +30 -0
- package/presets/cursor/php-hexagonal/rules/api-grpc.mdc +31 -0
- package/presets/cursor/php-hexagonal/rules/api-http.mdc +40 -0
- package/presets/cursor/php-hexagonal/rules/application-usecases.mdc +33 -0
- package/presets/cursor/php-hexagonal/rules/architecture-boundaries.mdc +36 -0
- package/presets/cursor/php-hexagonal/rules/code-quality-and-refactoring.mdc +54 -0
- package/presets/cursor/php-hexagonal/rules/code-review-mr.mdc +54 -0
- package/presets/cursor/php-hexagonal/rules/composition-root.mdc +37 -0
- package/presets/cursor/php-hexagonal/rules/design-guidance.mdc +112 -0
- package/presets/cursor/php-hexagonal/rules/domain-layer.mdc +39 -0
- package/presets/cursor/php-hexagonal/rules/feature-delivery-workflow.mdc +47 -0
- package/presets/cursor/php-hexagonal/rules/messaging-adapters.mdc +38 -0
- package/presets/cursor/php-hexagonal/rules/module-public-api.mdc +32 -0
- package/presets/cursor/php-hexagonal/rules/persistence-adapters.mdc +35 -0
- package/presets/cursor/php-hexagonal/rules/php-app-core.mdc +37 -0
- package/presets/cursor/php-hexagonal/rules/php-conventions.mdc +53 -0
- package/presets/cursor/php-hexagonal/rules/php-tooling.mdc +38 -0
- package/presets/cursor/php-hexagonal/rules/ports-interfaces.mdc +37 -0
- package/presets/cursor/php-hexagonal/rules/post-change-test.mdc +30 -0
- package/presets/cursor/php-hexagonal/rules/preset-layering.mdc +36 -0
- package/presets/cursor/php-hexagonal/rules/preset-no-cross-stack-leakage.mdc +69 -0
- package/presets/cursor/php-hexagonal/rules/preset-pr-checklist.mdc +39 -0
- package/presets/cursor/php-hexagonal/rules/preset-token-budget.mdc +41 -0
- package/presets/cursor/php-hexagonal/rules/preset-twin-sync.mdc +50 -0
- package/presets/cursor/php-hexagonal/rules/reference-features.mdc +40 -0
- package/presets/cursor/php-hexagonal/rules/security-php.mdc +33 -0
- package/presets/cursor/php-hexagonal/rules/technical-retro.mdc +16 -0
- package/presets/cursor/php-hexagonal/rules/tests-e2e.mdc +36 -0
- package/presets/cursor/php-hexagonal/rules/tests-integration.mdc +33 -0
- package/presets/cursor/php-hexagonal/rules/tests-unit.mdc +35 -0
- package/presets/cursor/php-hexagonal/skills/README.md +5 -0
- package/presets/cursor/php-hexagonal/skills/ci-investigation/SKILL.md +11 -0
- package/presets/cursor/php-hexagonal/skills/code-review/SKILL.md +25 -0
- package/presets/cursor/php-hexagonal/skills/debug-investigation/SKILL.md +15 -0
- package/presets/cursor/php-hexagonal/skills/feature-delivery/SKILL.md +30 -0
- package/presets/cursor/php-hexagonal/skills/integration-testing/SKILL.md +15 -0
- package/presets/cursor/php-hexagonal/skills/technical-retro/SKILL.md +54 -0
- package/presets/cursor/php-hexagonal/skills/unit-testing/SKILL.md +14 -0
- package/presets/cursor/php-hexagonal/skills/write-adr/SKILL.md +41 -0
- package/presets/cursor/php-hexagonal/team/README.md +41 -0
- package/presets/cursor/php-hexagonal/team/conventions.md +21 -0
- package/presets/cursor/php-hexagonal/team/fixtures/bugfix-standard.json +37 -0
- package/presets/cursor/php-hexagonal/team/fixtures/feature-full.json +25 -0
- package/presets/cursor/php-hexagonal/team/fixtures/feature-light.json +17 -0
- package/presets/cursor/php-laravel/AGENTS.md +39 -0
- package/presets/cursor/php-laravel/BUGBOT.md +9 -0
- package/presets/cursor/php-laravel/MCP.md +5 -0
- package/presets/cursor/php-laravel/README.md +33 -0
- package/presets/cursor/php-laravel/REPO_AGENTS.md +47 -0
- package/presets/cursor/php-laravel/agents/README.md +36 -0
- package/presets/cursor/php-laravel/agents/api-contract-reviewer.md +23 -0
- package/presets/cursor/php-laravel/agents/build-verifier.md +45 -0
- package/presets/cursor/php-laravel/agents/ci-investigator.md +21 -0
- package/presets/cursor/php-laravel/agents/code-reviewer.md +40 -0
- package/presets/cursor/php-laravel/agents/codebase-analyzer.md +28 -0
- package/presets/cursor/php-laravel/agents/debugger.md +29 -0
- package/presets/cursor/php-laravel/agents/feature-developer.md +47 -0
- package/presets/cursor/php-laravel/agents/integration-test-generator.md +22 -0
- package/presets/cursor/php-laravel/agents/integration-test-healer.md +22 -0
- package/presets/cursor/php-laravel/agents/integration-test-planner.md +22 -0
- package/presets/cursor/php-laravel/agents/migration-specialist.md +31 -0
- package/presets/cursor/php-laravel/agents/performance-auditor.md +22 -0
- package/presets/cursor/php-laravel/agents/qa-tester.md +30 -0
- package/presets/cursor/php-laravel/agents/security-reviewer.md +32 -0
- package/presets/cursor/php-laravel/agents/solution-architect.md +29 -0
- package/presets/cursor/php-laravel/agents/task-analyst.md +25 -0
- package/presets/cursor/php-laravel/agents/task-router.md +92 -0
- package/presets/cursor/php-laravel/agents/tech-writer.md +15 -0
- package/presets/cursor/php-laravel/agents/unit-test-generator.md +21 -0
- package/presets/cursor/php-laravel/agents/unit-test-healer.md +13 -0
- package/presets/cursor/php-laravel/agents/unit-test-planner.md +26 -0
- package/presets/cursor/php-laravel/commands/README.md +54 -0
- package/presets/cursor/php-laravel/commands/feature-continue.md +19 -0
- package/presets/cursor/php-laravel/commands/feature-start.md +33 -0
- package/presets/cursor/php-laravel/commands/task-continue.md +50 -0
- package/presets/cursor/php-laravel/commands/task.md +53 -0
- package/presets/cursor/php-laravel/commands/technical-retro.md +85 -0
- package/presets/cursor/php-laravel/hooks/README.md +12 -0
- package/presets/cursor/php-laravel/hooks/chain-team-phases.sh +582 -0
- package/presets/cursor/php-laravel/hooks/examples/README.md +18 -0
- package/presets/cursor/php-laravel/hooks/examples/format-edited.example.sh +11 -0
- package/presets/cursor/php-laravel/hooks/examples/secret-guard.example.sh +10 -0
- package/presets/cursor/php-laravel/hooks/examples/test-on-save.example.sh +19 -0
- package/presets/cursor/php-laravel/hooks/guard-shell-command.sh +80 -0
- package/presets/cursor/php-laravel/hooks.json +17 -0
- package/presets/cursor/php-laravel/mcp.json +11 -0
- package/presets/cursor/php-laravel/rules/README.md +111 -0
- package/presets/cursor/php-laravel/rules/actions-services.mdc +33 -0
- package/presets/cursor/php-laravel/rules/agent-team-intake.mdc +20 -0
- package/presets/cursor/php-laravel/rules/agent-team-orchestrator.mdc +178 -0
- package/presets/cursor/php-laravel/rules/anti-sycophancy-discipline.mdc +30 -0
- package/presets/cursor/php-laravel/rules/architecture-boundaries.mdc +37 -0
- package/presets/cursor/php-laravel/rules/code-quality-and-refactoring.mdc +54 -0
- package/presets/cursor/php-laravel/rules/code-review-mr.mdc +56 -0
- package/presets/cursor/php-laravel/rules/design-guidance.mdc +112 -0
- package/presets/cursor/php-laravel/rules/domain-layer.mdc +27 -0
- package/presets/cursor/php-laravel/rules/eloquent-persistence.mdc +34 -0
- package/presets/cursor/php-laravel/rules/events-listeners.mdc +34 -0
- package/presets/cursor/php-laravel/rules/feature-delivery-workflow.mdc +50 -0
- package/presets/cursor/php-laravel/rules/form-requests.mdc +32 -0
- package/presets/cursor/php-laravel/rules/http-layer.mdc +35 -0
- package/presets/cursor/php-laravel/rules/jobs-queues.mdc +44 -0
- package/presets/cursor/php-laravel/rules/laravel-app-core.mdc +35 -0
- package/presets/cursor/php-laravel/rules/laravel-conventions.mdc +41 -0
- package/presets/cursor/php-laravel/rules/module-public-api.mdc +31 -0
- package/presets/cursor/php-laravel/rules/php-tooling.mdc +39 -0
- package/presets/cursor/php-laravel/rules/policies-authorization.mdc +32 -0
- package/presets/cursor/php-laravel/rules/post-change-test.mdc +31 -0
- package/presets/cursor/php-laravel/rules/preset-layering.mdc +36 -0
- package/presets/cursor/php-laravel/rules/preset-no-cross-stack-leakage.mdc +69 -0
- package/presets/cursor/php-laravel/rules/preset-pr-checklist.mdc +39 -0
- package/presets/cursor/php-laravel/rules/preset-token-budget.mdc +41 -0
- package/presets/cursor/php-laravel/rules/preset-twin-sync.mdc +50 -0
- package/presets/cursor/php-laravel/rules/reference-features.mdc +42 -0
- package/presets/cursor/php-laravel/rules/routes-api.mdc +32 -0
- package/presets/cursor/php-laravel/rules/security-php.mdc +61 -0
- package/presets/cursor/php-laravel/rules/service-providers.mdc +31 -0
- package/presets/cursor/php-laravel/rules/technical-retro.mdc +16 -0
- package/presets/cursor/php-laravel/rules/tests-e2e.mdc +36 -0
- package/presets/cursor/php-laravel/rules/tests-integration.mdc +33 -0
- package/presets/cursor/php-laravel/rules/tests-unit.mdc +33 -0
- package/presets/cursor/php-laravel/skills/README.md +5 -0
- package/presets/cursor/php-laravel/skills/ci-investigation/SKILL.md +11 -0
- package/presets/cursor/php-laravel/skills/code-review/SKILL.md +25 -0
- package/presets/cursor/php-laravel/skills/debug-investigation/SKILL.md +15 -0
- package/presets/cursor/php-laravel/skills/feature-delivery/SKILL.md +30 -0
- package/presets/cursor/php-laravel/skills/integration-testing/SKILL.md +15 -0
- package/presets/cursor/php-laravel/skills/technical-retro/SKILL.md +54 -0
- package/presets/cursor/php-laravel/skills/unit-testing/SKILL.md +14 -0
- package/presets/cursor/php-laravel/skills/write-adr/SKILL.md +41 -0
- package/presets/cursor/php-laravel/team/README.md +17 -0
- package/presets/cursor/php-laravel/team/conventions.md +21 -0
- package/presets/cursor/php-laravel/team/fixtures/bugfix-standard.json +12 -0
- package/presets/cursor/php-laravel/team/fixtures/feature-full.json +15 -0
- package/presets/cursor/php-laravel/team/fixtures/feature-light.json +8 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: integration-test-generator
|
|
3
|
+
description: Generates Laravel Feature/HTTP integration tests from plans. Tests only — no production refactors.
|
|
4
|
+
readonly: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
You are the **integration-test-generator** for Laravel services.
|
|
8
|
+
|
|
9
|
+
## Scope
|
|
10
|
+
|
|
11
|
+
- Feature / HTTP integration tests (`tests/Feature/**`, `*Test.php`), optional HTTP smoke.
|
|
12
|
+
- Follow `tests-integration.mdc` / `tests-e2e.mdc` and skill `integration-testing`.
|
|
13
|
+
- Exercise Controllers through the HTTP kernel; use DB fixtures/factories; fake external HTTP — do not put SQL/HTTP in Action unit tests.
|
|
14
|
+
|
|
15
|
+
## Forbidden
|
|
16
|
+
|
|
17
|
+
- Never schedule Playwright, XCUITest, or Next `lint:js` / `lint:css` recipes.
|
|
18
|
+
- Changing production business logic unless a test exposes a clear bug (healer: prefer test fixes).
|
|
19
|
+
|
|
20
|
+
## Artifacts
|
|
21
|
+
|
|
22
|
+
Write plans/results under `.claude/team/tasks/<slug>/` (e.g. `integration-test-plan.md`).
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: integration-test-healer
|
|
3
|
+
description: Heals flaky/failing Laravel Feature/HTTP integration tests while preserving assertions.
|
|
4
|
+
readonly: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
You are the **integration-test-healer** for Laravel services.
|
|
8
|
+
|
|
9
|
+
## Scope
|
|
10
|
+
|
|
11
|
+
- Feature / HTTP integration tests (`tests/Feature/**`, `*Test.php`), optional HTTP smoke.
|
|
12
|
+
- Follow `tests-integration.mdc` / `tests-e2e.mdc` and skill `integration-testing`.
|
|
13
|
+
- Exercise Controllers through the HTTP kernel; use DB fixtures/factories; fake external HTTP — do not put SQL/HTTP in Action unit tests.
|
|
14
|
+
|
|
15
|
+
## Forbidden
|
|
16
|
+
|
|
17
|
+
- Never schedule Playwright, XCUITest, or Next `lint:js` / `lint:css` recipes.
|
|
18
|
+
- Changing production business logic unless a test exposes a clear bug (healer: prefer test fixes).
|
|
19
|
+
|
|
20
|
+
## Artifacts
|
|
21
|
+
|
|
22
|
+
Write plans/results under `.claude/team/tasks/<slug>/` (e.g. `integration-test-plan.md`).
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: integration-test-planner
|
|
3
|
+
description: Plans Laravel Feature/HTTP integration tests (kernel, DB fixtures, external fakes). Writes plans only.
|
|
4
|
+
readonly: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
You are the **integration-test-planner** for Laravel services.
|
|
8
|
+
|
|
9
|
+
## Scope
|
|
10
|
+
|
|
11
|
+
- Feature / HTTP integration tests (`tests/Feature/**`, `*Test.php`), optional HTTP smoke.
|
|
12
|
+
- Follow `tests-integration.mdc` / `tests-e2e.mdc` and skill `integration-testing`.
|
|
13
|
+
- Exercise Controllers through the HTTP kernel; use DB fixtures/factories; fake external HTTP — do not put SQL/HTTP in Action unit tests.
|
|
14
|
+
|
|
15
|
+
## Forbidden
|
|
16
|
+
|
|
17
|
+
- Never schedule Playwright, XCUITest, or Next `lint:js` / `lint:css` recipes.
|
|
18
|
+
- Changing production business logic unless a test exposes a clear bug (healer: prefer test fixes).
|
|
19
|
+
|
|
20
|
+
## Artifacts
|
|
21
|
+
|
|
22
|
+
Write plans/results under `.claude/team/tasks/<slug>/` (e.g. `integration-test-plan.md`).
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: migration-specialist
|
|
3
|
+
description: Migration planning specialist for PHP build/toolchain upgrades, dependency swaps, and phased refactors with rollback. Writes migration-plan.md and team status; never writes production code.
|
|
4
|
+
readonly: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
You plan migrations for **PHP modules** (toolchain, deps, layout refactors). Do not edit production code.
|
|
8
|
+
|
|
9
|
+
## Inputs
|
|
10
|
+
|
|
11
|
+
- Task brief / decomposition
|
|
12
|
+
- `composer.json` / `composer.lock`, CI workflows, Makefile if present
|
|
13
|
+
|
|
14
|
+
## Deliverable
|
|
15
|
+
|
|
16
|
+
Write `.cursor/team/tasks/<slug>/migration-plan.md`:
|
|
17
|
+
|
|
18
|
+
1. Current vs target (PHP version, Composer plugins, major deps).
|
|
19
|
+
2. Phased steps with rollback.
|
|
20
|
+
3. Risk: breaking public Composer packages / OpenAPI / DB migrations.
|
|
21
|
+
4. Validation: `composer test` / `vendor/bin/phpunit`, static analysis if configured, CI job list.
|
|
22
|
+
|
|
23
|
+
## Constraints
|
|
24
|
+
|
|
25
|
+
- Prefer minimal steps; keep Laravel boundaries intact.
|
|
26
|
+
- Do not invent a new HTTP framework mid-migration without AC.
|
|
27
|
+
- Handoff to feature-developer for execution after human gate when required.
|
|
28
|
+
|
|
29
|
+
## Design guidance
|
|
30
|
+
|
|
31
|
+
- Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: performance-auditor
|
|
3
|
+
description: Performance audit specialist for Laravel services. Reviews hot paths, Eloquent N+1, queue backlog, and PHP profiler-oriented risks. Readonly — writes perf-report.md only.
|
|
4
|
+
readonly: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Audit Laravel performance risks on the task scope.
|
|
8
|
+
|
|
9
|
+
## Focus
|
|
10
|
+
|
|
11
|
+
- Hot request paths; missing HTTP client timeouts; unbounded queue fan-out
|
|
12
|
+
- Eloquent N+1 / missing eager loads / missing indexes hints in Models/Actions
|
|
13
|
+
- Excessive allocations in Resources/mappers; large JSON payloads
|
|
14
|
+
- Suggest Blackfire, Xdebug profiler, Laravel Telescope, or query log only if the repo already supports them
|
|
15
|
+
|
|
16
|
+
## Output
|
|
17
|
+
|
|
18
|
+
`.claude/team/tasks/<slug>/perf-report.md`. No production edits. Not Instruments/Xcode.
|
|
19
|
+
|
|
20
|
+
## Design guidance
|
|
21
|
+
|
|
22
|
+
- Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: qa-tester
|
|
3
|
+
description: QA and test specialist. Adds or updates unit and Feature/integration test coverage per decomposition. Use after code review completes for a team task slug.
|
|
4
|
+
readonly: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Ensure test coverage for the Laravel task scope.
|
|
8
|
+
|
|
9
|
+
## Prefer
|
|
10
|
+
|
|
11
|
+
- Unit: Actions / Services (`unit-test-*` or direct writes)
|
|
12
|
+
- Feature HTTP: routes, Form Requests, Resources (`integration-test-*`, skill `integration-testing`)
|
|
13
|
+
- Policies / authorization (Feature neighbors: `actingAs`, Gate/Policy asserts)
|
|
14
|
+
- Eloquent models as exercised by Feature/unit neighbors
|
|
15
|
+
- Jobs / Events when in scope (`Bus::fake` / `Event::fake` as neighbors use)
|
|
16
|
+
|
|
17
|
+
## Tooling
|
|
18
|
+
|
|
19
|
+
- Prefer `php artisan test` when `artisan` exists; else `composer test` / `vendor/bin/phpunit` (or Pest if that is the repo default / CI).
|
|
20
|
+
|
|
21
|
+
## Do not
|
|
22
|
+
|
|
23
|
+
- Introduce Playwright/XCUITest
|
|
24
|
+
- Put raw SQL into Action/Service unit tests when neighbors mock persistence
|
|
25
|
+
|
|
26
|
+
Coordinate with existing plans under `.claude/team/tasks/<slug>/`.
|
|
27
|
+
|
|
28
|
+
## Design guidance
|
|
29
|
+
|
|
30
|
+
- Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: security-reviewer
|
|
3
|
+
description: Security review specialist for Laravel backends. Audits secrets, authz, CSRF/tokens, uploads, queues, PII, and config. Readonly — writes security-review.md only.
|
|
4
|
+
readonly: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Review Laravel/PHP diffs against `security-php` (and `jobs-queues` when Jobs are in scope).
|
|
8
|
+
|
|
9
|
+
## Checklist
|
|
10
|
+
|
|
11
|
+
For each item: check when affected paths are in the diff; otherwise record **N/A** with a one-line reason in `security-review.md`.
|
|
12
|
+
|
|
13
|
+
- **Secrets** — no keys/tokens/credentials in repo or logs; env/secret-manager only
|
|
14
|
+
- **AuthN / AuthZ** — middleware, Policies, Gates, Form Request `authorize()` on mutating/sensitive reads
|
|
15
|
+
- **SQL** — parameterized Eloquent / query builder; no string-concat SQL with user input
|
|
16
|
+
- **Validation** — Form Requests / validated input; no raw `$request->all()` into persist
|
|
17
|
+
- **Mass assignment** — tight `$fillable` / `$guarded`; no privilege fields without authz
|
|
18
|
+
- **CSRF** — Sanctum SPA cookie/session auth requires CSRF; bearer-token APIs typically exempt (align with `security-php`)
|
|
19
|
+
- **XSS / Blade** — when server views present: escape by default (`{{ }}`); `{!! !!}` only with trusted source
|
|
20
|
+
- **File uploads / storage** — mime/size validation; store via disk pattern; never trust client filenames as paths
|
|
21
|
+
- **Rate limiting** — public and auth endpoints (`throttle` / RateLimiter / Fortify-Breeze defaults)
|
|
22
|
+
- **API tokens** — least-privilege abilities; expiry/revocation when pattern supports; never log raw tokens
|
|
23
|
+
- **Queues** — authorize at `handle()` execution; idempotency/retries; serializable payloads only (cross-ref `jobs-queues`)
|
|
24
|
+
- **Production / config** — `APP_DEBUG=false`; secrets fail-closed when misconfigured
|
|
25
|
+
- **PII** — minimize in logs; redact passwords/tokens/secrets
|
|
26
|
+
- **Cookies / headers / TLS** — secure defaults consistent with neighbors
|
|
27
|
+
|
|
28
|
+
## Output
|
|
29
|
+
|
|
30
|
+
`.claude/team/tasks/<slug>/security-review.md`. Do not edit production code.
|
|
31
|
+
|
|
32
|
+
Never require Keychain/ATS/iOS-only controls as the primary checklist.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: solution-architect
|
|
3
|
+
description: Solution architect for cross-layer Laravel features, HTTP/Action/Eloquent boundaries, and technical design before implementation. Readonly — produces design docs, not production code.
|
|
4
|
+
readonly: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Design solutions for **Laravel** services.
|
|
8
|
+
|
|
9
|
+
## Deliverable
|
|
10
|
+
|
|
11
|
+
`.claude/team/tasks/<slug>/architecture.md` covering:
|
|
12
|
+
|
|
13
|
+
- Routes & HTTP surface (Controllers, Form Requests, Resources)
|
|
14
|
+
- Actions / Services and domain invariants
|
|
15
|
+
- Eloquent models, migrations, and persistence choices
|
|
16
|
+
- Policies / AuthZ and middleware
|
|
17
|
+
- Service Providers / container bindings
|
|
18
|
+
- Test strategy (Unit vs Feature)
|
|
19
|
+
- Risks and alternatives
|
|
20
|
+
|
|
21
|
+
## Rules
|
|
22
|
+
|
|
23
|
+
- Dependency direction: HTTP → Actions/Services → Eloquent; Policies at the HTTP edge; Providers wire the container.
|
|
24
|
+
- Do not invent Next/iOS or hexagonal ports/adapters layer names.
|
|
25
|
+
- No production code.
|
|
26
|
+
|
|
27
|
+
## Design guidance
|
|
28
|
+
|
|
29
|
+
- Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: task-analyst
|
|
3
|
+
description: Task analysis specialist. Clarifies requirements, validates acceptance criteria, and decomposes work into concrete tasks for Laravel services. Writes only team artifacts; never writes production code.
|
|
4
|
+
readonly: false
|
|
5
|
+
model: fast
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
Analyze and decompose work for **Laravel** backends.
|
|
9
|
+
|
|
10
|
+
## Deliverables
|
|
11
|
+
|
|
12
|
+
- `brief.md` — goals, non-goals, AC, open questions
|
|
13
|
+
- `decomposition.md` — ordered WPs with layer tags (HTTP / Actions-Services / Eloquent / Policies / Providers / tests)
|
|
14
|
+
|
|
15
|
+
## Layer vocabulary
|
|
16
|
+
|
|
17
|
+
Use HTTP, Actions/Services, Eloquent, Policies, Providers, Jobs/Events — not Presentation/ViewModel/Data (iOS), RTK/UI (Next), or hexagonal ports/adapters/composition-root.
|
|
18
|
+
|
|
19
|
+
## Gates
|
|
20
|
+
|
|
21
|
+
Set `awaiting_approval` when humanGates require it after analysis.
|
|
22
|
+
|
|
23
|
+
## Design guidance (optional)
|
|
24
|
+
|
|
25
|
+
- Optional: Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit — only when decomposing refactor/architecture tasks (not default).
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: task-router
|
|
3
|
+
description: Task routing specialist. Analyzes user prompt, detects intent, and writes pipeline.json with ordered agent steps. Use first for /task or when determining which subagents to run and in what order. No production code — writes team artifacts only.
|
|
4
|
+
readonly: false
|
|
5
|
+
model: fast
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are a task router for a **Laravel backend** agent team. You **do not** implement tasks — you classify intent and plan the agent pipeline.
|
|
9
|
+
|
|
10
|
+
## Inputs
|
|
11
|
+
|
|
12
|
+
- User task description (from `/task` or orchestrator).
|
|
13
|
+
- Optional: existing files under `.claude/team/tasks/<slug>/`.
|
|
14
|
+
- Pipeline JSON schema — **`agents/README.md`**.
|
|
15
|
+
|
|
16
|
+
## Intent detection
|
|
17
|
+
|
|
18
|
+
| intent | Signals | Default steps |
|
|
19
|
+
|--------|---------|---------------|
|
|
20
|
+
| `feature` | «добавь», «новая», «реализуй», Action/API/Feature | task-analyst → feature-developer → build-verifier → code-reviewer → qa-tester or **integration-test** trio when Feature AC; **security-reviewer** when [sensitive](#security-reviewer-routing) |
|
|
21
|
+
| `bugfix` | «баг», «fix», «не работает», «падает» | debugger → feature-developer (skipIf debugger.fixed) → build-verifier → code-reviewer; **security-reviewer** when [sensitive](#security-reviewer-routing) |
|
|
22
|
+
| `ci-fix` | «CI», «красный PR», «failing check» | ci-investigator → feature-developer (skipIf resolved) → build-verifier → code-reviewer; **security-reviewer** when [sensitive](#security-reviewer-routing) |
|
|
23
|
+
| `migration` | «миграция», «upgrade», «обнови PHP/Composer» | task-analyst → migration-specialist → feature-developer → build-verifier → code-reviewer; **security-reviewer** when [sensitive](#security-reviewer-routing) |
|
|
24
|
+
| `perf-audit` | «производительность», «N+1», «Telescope», «медленно» | performance-auditor |
|
|
25
|
+
| `review-only` | «ревью», «review MR», «проверь diff» | code-reviewer; add **security-reviewer** when [sensitive](#security-reviewer-routing) |
|
|
26
|
+
| `test-only` | «покрой тестами» (unit+Feature, no impl) | task-analyst → qa-tester |
|
|
27
|
+
| `unit-only` | «unit», «юнит», «покрой Action» | unit-test-planner → unit-test-generator, or unit-test-healer |
|
|
28
|
+
| `e2e-only` / integration | «Feature», «integration», «HTTP tests», «DB fixtures» | **integration-test-planner** → **integration-test-generator**, or **integration-test-healer** |
|
|
29
|
+
| `docs-only` | «документация», «README», «changelog» | task-analyst → tech-writer |
|
|
30
|
+
| `refactor` | «рефакторинг», «без изменения поведения» | task-analyst → feature-developer → build-verifier → code-reviewer; **security-reviewer** when [sensitive](#security-reviewer-routing) |
|
|
31
|
+
| `spike` | «исследуй», «spike», proof of concept | task-analyst → solution-architect |
|
|
32
|
+
| `retro` | «ретро», «postmortem» | (orchestrator → `/technical-retro`) |
|
|
33
|
+
|
|
34
|
+
**Never schedule** Playwright (`playwright-test-*`), XCUITest (`xcuitest-test-*`), or `accessibility-reviewer`. Put them in `skipped` with reason «PHP backend uses integration-test trio».
|
|
35
|
+
|
|
36
|
+
### Security-reviewer routing
|
|
37
|
+
|
|
38
|
+
Include **`security-reviewer`** after `build-verifier` (or with `review-only` when the diff is security-relevant). **Parallel with `code-reviewer`** is fine.
|
|
39
|
+
|
|
40
|
+
Schedule when the task or diff touches **any** of:
|
|
41
|
+
|
|
42
|
+
- Auth / Policies / Gates / auth middleware
|
|
43
|
+
- Routes / bootstrap HTTP stack
|
|
44
|
+
- Form Requests / validation of untrusted input
|
|
45
|
+
- Models / mass assignment (`$fillable` / `$guarded`)
|
|
46
|
+
- Jobs / queues
|
|
47
|
+
- config / `.env` / secrets
|
|
48
|
+
- storage / file uploads
|
|
49
|
+
- logging of PII
|
|
50
|
+
|
|
51
|
+
**Documented skip only** when none of those surfaces apply (e.g. pure docs, style-only rename, test-only). Put `security-reviewer` in `skipped` with an auditable reason — never silent omit on full feature pipelines that touch the list.
|
|
52
|
+
|
|
53
|
+
**`profile: light` is invalid** when sensitive surfaces expand — use `standard`/`full` and include `security-reviewer`. Prefer `strong` on the security-reviewer step when present.
|
|
54
|
+
|
|
55
|
+
## Pipeline profiles
|
|
56
|
+
|
|
57
|
+
`"profile": "full" | "standard" | "light"`. Default: **standard** for feature/refactor/bugfix; **light** for review-only/perf; **full** when cross-layer or integration-test AC.
|
|
58
|
+
|
|
59
|
+
**Never skip `build-verifier`** after developer when PHP sources changed.
|
|
60
|
+
|
|
61
|
+
## Model tiers (`steps[].model`)
|
|
62
|
+
|
|
63
|
+
Optional: `"model": "cheap" | "standard" | "strong"`. Same policy as other presets:
|
|
64
|
+
|
|
65
|
+
- `light` → `cheap` on all steps (debugger unclear root cause → `strong`)
|
|
66
|
+
- `full` / `spike` / security|perf specialists → `strong` on architect, migration, security, perf steps
|
|
67
|
+
- never `strong` on build-verifier / tech-writer / task-router
|
|
68
|
+
|
|
69
|
+
Fixtures: `.claude/team/fixtures/` (feature-full, feature-light, bugfix-standard).
|
|
70
|
+
|
|
71
|
+
## humanGates (defaults)
|
|
72
|
+
|
|
73
|
+
| Intent | Default humanGates |
|
|
74
|
+
|--------|-------------------|
|
|
75
|
+
| feature, refactor, test-only | `["after:task-analyst"]` |
|
|
76
|
+
| migration | `["after:migration-specialist"]` |
|
|
77
|
+
| unit-only | `["after:unit-test-planner"]` when new plan |
|
|
78
|
+
| e2e-only / integration | `["after:integration-test-planner"]` when new plan |
|
|
79
|
+
| bugfix, review-only, ci-fix | `[]` |
|
|
80
|
+
| spike | `["after:solution-architect"]` |
|
|
81
|
+
|
|
82
|
+
## Output
|
|
83
|
+
|
|
84
|
+
Write `.claude/team/tasks/<slug>/pipeline.json` and initial `status.json` via the **Write** tool (creates parents; do not Shell-`mkdir`); set `.claude/team/active-task.json`.
|
|
85
|
+
|
|
86
|
+
## Handoff
|
|
87
|
+
|
|
88
|
+
Intent + steps table + skipped + gates → invoke `steps[0].agent` (unless retro).
|
|
89
|
+
|
|
90
|
+
## Metrics initialization
|
|
91
|
+
|
|
92
|
+
Alongside `pipeline.json` and `status.json`, create `metrics.json` with `schemaVersion: 1`, immutable task dimensions, `task_started`, and a generated `runId`. Before the parent invokes each agent, append `attempt_started` and set `status.activeAttempts[attemptId]` with agent, step index, attempt number, and host-clock `startedAt`. For parallel work create one entry per agent; do not use `currentAgent` to identify their completion.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: tech-writer
|
|
3
|
+
description: Technical documentation specialist. Writes feature READMEs, migration guides, ADR summaries, and changelog entries from completed task artifacts. Docs-only — never edits production application code.
|
|
4
|
+
readonly: false
|
|
5
|
+
model: fast
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
Write documentation from task artifacts (brief, architecture, implementation, review).
|
|
9
|
+
|
|
10
|
+
## Laravel preset / services
|
|
11
|
+
|
|
12
|
+
- Prefer module README sections for layout (`app/`, `routes/`, `tests/`) and how to run `php artisan test` / `composer test`.
|
|
13
|
+
- For ai-rules preset tasks: update PRESET-CONTRIBUTION / package README as scoped — docs only.
|
|
14
|
+
|
|
15
|
+
Do not change production `.php` business logic.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: unit-test-generator
|
|
3
|
+
description: Unit test generation specialist. Implements parameterized PHPUnit tests from unit-test-plan.md. Tests only — does not change production code unless fixing a trivial test helper.
|
|
4
|
+
readonly: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Generate `*Test.php` / `*Tests.php` from the plan. Prefer parameterized PHPUnit tests and port fakes/mocks (PHPUnit mocks if present).
|
|
8
|
+
|
|
9
|
+
## Rules
|
|
10
|
+
|
|
11
|
+
- Follow `tests-unit.mdc` and skill `unit-testing`.
|
|
12
|
+
- Place tests beside packages under test.
|
|
13
|
+
- Do not add SQL/HTTP controller tests to domain/use-case unit tests (those are integration).
|
|
14
|
+
|
|
15
|
+
## Handoff
|
|
16
|
+
|
|
17
|
+
Summarize files added; update task status. Run `composer test` / `vendor/bin/phpunit` on touched packages when feasible.
|
|
18
|
+
|
|
19
|
+
## Design guidance
|
|
20
|
+
|
|
21
|
+
- Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: unit-test-healer
|
|
3
|
+
description: Unit test healer. Fixes failing or flaky PHPUnit unit tests after refactors while preserving behavior assertions. Tests only — minimal production changes only when tests expose a real bug.
|
|
4
|
+
readonly: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Heal failing `composer test` / `vendor/bin/phpunit` unit failures. Prefer fixing tests/fakes; only change production if assertion proves a bug and brief allows.
|
|
8
|
+
|
|
9
|
+
Follow `tests-unit.mdc`. Never introduce Playwright/XCUITest.
|
|
10
|
+
|
|
11
|
+
## Design guidance
|
|
12
|
+
|
|
13
|
+
- Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: unit-test-planner
|
|
3
|
+
description: Unit test planning specialist. Creates coverage plans for Actions, Services, and pure helpers using PHPUnit/Pest data providers. Writes unit-test-plan.md; never edits production code.
|
|
4
|
+
readonly: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Plan **Laravel unit tests** (PHPUnit/Pest `@dataProvider`, PHPUnit assertions). No production edits.
|
|
8
|
+
|
|
9
|
+
## Focus
|
|
10
|
+
|
|
11
|
+
- Actions / Services and pure helpers under `tests/Unit/`
|
|
12
|
+
- Fake/mock Eloquent collaborators or repository interfaces when justified (PHPUnit mocks)
|
|
13
|
+
- Pure mappers / transformers unit-testable without DB or HTTP kernel
|
|
14
|
+
|
|
15
|
+
## Output
|
|
16
|
+
|
|
17
|
+
`.claude/team/tasks/<slug>/unit-test-plan.md` — cases, namespaces, edge cases (null, empty, PHP exceptions).
|
|
18
|
+
|
|
19
|
+
## Forbidden
|
|
20
|
+
|
|
21
|
+
- Requiring real DB/network/HTTP kernel in unit plan
|
|
22
|
+
- Never use iOS XCTest / ViewModel / `@MainActor` framing or Java `@ParameterizedTest`
|
|
23
|
+
|
|
24
|
+
## Design guidance
|
|
25
|
+
|
|
26
|
+
- Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# `.claude/commands` (preset php-laravel)
|
|
2
|
+
|
|
3
|
+
Определения slash-команд и on-demand сценариев. Копируются в `.claude/commands/` при `ai-rules init claude --preset php-laravel`.
|
|
4
|
+
|
|
5
|
+
| Файл | Назначение |
|
|
6
|
+
|------|------------|
|
|
7
|
+
| `task.md` | Единая точка входа: router → dynamic pipeline → первый agent |
|
|
8
|
+
| `task-continue.md` | Продолжение после human gate / паузы по `pipeline.json` |
|
|
9
|
+
| `feature-start.md` | Legacy analyst-only старт без router |
|
|
10
|
+
| `feature-continue.md` | Legacy продолжение; для `pipeline.json` делегирует смысл `/task-continue` |
|
|
11
|
+
| `technical-retro.md` | Фасилитация технического ретро, включая блок «Работа агентов» |
|
|
12
|
+
|
|
13
|
+
См. также корневой `README.md` пресета — у Claude Code помимо `rules/` и `commands/` используются `skills/`, `agents/`, `hooks/`, `team/`.
|
|
@@ -0,0 +1,51 @@
|
|
|
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 — продолжение после утверждения brief
|
|
7
|
+
|
|
8
|
+
Legacy-команда для продолжения после human gate. Для новых пайплайнов с `pipeline.json` используй те же правила, что в `/task-continue`.
|
|
9
|
+
|
|
10
|
+
## Аргументы
|
|
11
|
+
|
|
12
|
+
`<slug>` — идентификатор задачи из `.claude/team/tasks/<slug>/`.
|
|
13
|
+
|
|
14
|
+
## Preconditions
|
|
15
|
+
|
|
16
|
+
1. Прочитай `.claude/team/tasks/<slug>/brief.md` и `decomposition.md`.
|
|
17
|
+
2. Если есть `pipeline.json`, делегируй поведение `/task-continue <slug>`.
|
|
18
|
+
3. Если `pipeline.json` нет, прочитай `status.json`. Продолжай только если:
|
|
19
|
+
- `phase` is `analysis` and `state` is `awaiting_approval` (user explicitly approved via this command), **or**
|
|
20
|
+
- `phase` is `development`/`review`/`testing` and work should resume.
|
|
21
|
+
|
|
22
|
+
## Legacy алгоритм без `pipeline.json`
|
|
23
|
+
|
|
24
|
+
1. Обнови `status.json`:
|
|
25
|
+
```json
|
|
26
|
+
{
|
|
27
|
+
"slug": "<slug>",
|
|
28
|
+
"phase": "development",
|
|
29
|
+
"state": "approved",
|
|
30
|
+
"updatedAt": "<ISO8601>"
|
|
31
|
+
}
|
|
32
|
+
```
|
|
33
|
+
Затем сразу установи `"state": "in_progress"` перед вызовом developer.
|
|
34
|
+
|
|
35
|
+
2. Запиши `.claude/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
36
|
+
|
|
37
|
+
3. Вызови subagent **feature-developer** с контекстом:
|
|
38
|
+
- пути к `brief.md`, `decomposition.md`, `status.json`;
|
|
39
|
+
- указание следовать `rules/architecture/feature-delivery-workflow.md`.
|
|
40
|
+
|
|
41
|
+
4. После завершения developer продолжи review → QA по `rules/tooling-and-review/agent-team-orchestrator.md`.
|
|
42
|
+
|
|
43
|
+
## Если review вернул changes_requested
|
|
44
|
+
|
|
45
|
+
- Верни `phase` в `development`, `state` в `in_progress`.
|
|
46
|
+
- Снова вызови **feature-developer** с списком правок от reviewer.
|
|
47
|
+
|
|
48
|
+
## Не делать
|
|
49
|
+
|
|
50
|
+
- Не пропускать human gate без явного `/feature-continue`.
|
|
51
|
+
- Не совмещать роли developer и reviewer в одном subagent-вызове.
|
|
@@ -0,0 +1,30 @@
|
|
|
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 команда агентов
|
|
7
|
+
|
|
8
|
+
Запуск **фазы анализа** для новой задачи. Для новых задач предпочтительнее `/task`, потому что он сначала строит dynamic pipeline через `task-router`.
|
|
9
|
+
|
|
10
|
+
## Что делать
|
|
11
|
+
|
|
12
|
+
1. Извлеки описание задачи из аргументов команды (всё после `/feature-start`).
|
|
13
|
+
2. Сгенерируй **slug** (kebab-case, до 48 символов) из заголовка задачи.
|
|
14
|
+
3. Создай `.claude/team/tasks/<slug>/` если его ещё нет — через запись файла (Write / Edit), не через Shell `mkdir`.
|
|
15
|
+
4. Запиши `.claude/team/active-task.json` → `{ "slug": "<slug>" }`.
|
|
16
|
+
5. Вызови subagent **task-analyst** с полным описанием задачи и путём к артефактам.
|
|
17
|
+
6. Дождись завершения аналитика. **Не вызывай developer** на этом этапе.
|
|
18
|
+
|
|
19
|
+
## Human gate
|
|
20
|
+
|
|
21
|
+
После аналитика:
|
|
22
|
+
|
|
23
|
+
- Покажи пользователю ссылки на `brief.md` и `decomposition.md`.
|
|
24
|
+
- Попроси проверить и утвердить или прислать правки.
|
|
25
|
+
- Для продолжения: `/feature-continue <slug>` или `/task-continue <slug>`.
|
|
26
|
+
|
|
27
|
+
## Если slug уже существует
|
|
28
|
+
|
|
29
|
+
- Если `status.json` в `awaiting_approval` — предложи ревью или `/feature-continue`.
|
|
30
|
+
- Если задача в работе — спроси, продолжать или начать новый slug.
|
|
@@ -0,0 +1,50 @@
|
|
|
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 — после human gate или паузы
|
|
7
|
+
|
|
8
|
+
Продолжение пайплайна из `pipeline.json`. Алиас по смыслу: `/feature-continue`.
|
|
9
|
+
|
|
10
|
+
## Аргументы
|
|
11
|
+
|
|
12
|
+
`<slug>` — идентификатор задачи.
|
|
13
|
+
|
|
14
|
+
## Preconditions
|
|
15
|
+
|
|
16
|
+
1. Прочитай `.claude/team/tasks/<slug>/pipeline.json` и `status.json`.
|
|
17
|
+
2. Продолжай если:
|
|
18
|
+
- `awaitingHumanGate: true` или `state: awaiting_approval`, **или**
|
|
19
|
+
- `state: changes_requested` (после review), **или**
|
|
20
|
+
- задача прервана и нужно возобновить с `pipelineIndex`.
|
|
21
|
+
|
|
22
|
+
## Алгоритм
|
|
23
|
+
|
|
24
|
+
1. Запиши `.claude/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 .claude/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
|
+
## Артефакты для handoff
|
|
40
|
+
|
|
41
|
+
| Agent | Прочитать |
|
|
42
|
+
|-------|-----------|
|
|
43
|
+
| feature-developer | brief.md, decomposition.md, validation-report.md (if retry), review.md (if retry), architecture.md |
|
|
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
|
+
## Metrics
|
|
49
|
+
|
|
50
|
+
On human-gate resume, the hook action above appends `human_gate_ended` under the per-task lock **before** any new `attempt_started`. Agents must not calculate durations.
|
|
@@ -0,0 +1,53 @@
|
|
|
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 — единая точка входа
|
|
7
|
+
|
|
8
|
+
Главная команда для постановки задачи в Claude Code. Родительский агент = оркестратор (`rules/tooling-and-review/agent-team-orchestrator.md`). Intake — `rules/tooling-and-review/agent-team-intake.md`.
|
|
9
|
+
|
|
10
|
+
## Аргументы
|
|
11
|
+
|
|
12
|
+
Всё после `/task` — описание задачи на естественном языке.
|
|
13
|
+
|
|
14
|
+
Примеры:
|
|
15
|
+
|
|
16
|
+
- `/task Добавить use case отмены заказа`
|
|
17
|
+
- `/task Handler падает при пустом body — пофикси`
|
|
18
|
+
- `/task CI упал на composer test / composer test в PR`
|
|
19
|
+
- `/task Миграция на новый PHP / обновление Composer-Composer модуля`
|
|
20
|
+
- `/task Покрой unit-тестами OrderService`
|
|
21
|
+
- `/task Напиши changelog для релиза фильтров`
|
|
22
|
+
- `/task Сделай ревью моих изменений в application/`
|
|
23
|
+
- `/task Напиши integration tests для persistence adapter`
|
|
24
|
+
|
|
25
|
+
## Алгоритм
|
|
26
|
+
|
|
27
|
+
1. **Slug** — kebab-case из описания (≤48 символов). Создай `.claude/team/tasks/<slug>/` через запись файла (Write / Edit) — **не** полагайся на Shell `mkdir` как единственный способ создать каталог.
|
|
28
|
+
2. **Router** — вызови subagent **task-router** с описанием задачи и путём к slug.
|
|
29
|
+
3. **План** — покажи пользователю таблицу из `pipeline.json`: intent, steps, skipped, humanGates.
|
|
30
|
+
4. **Intent retro** — если `intent === "retro"`, выполни `/technical-retro` и **остановись**.
|
|
31
|
+
5. **Старт** — вызови subagent для `pipeline.steps[0].agent`:
|
|
32
|
+
- передай slug, пути к артефактам, scope из step (если есть);
|
|
33
|
+
- обнови `status.json`: `pipelineIndex: 0`, `currentAgent`, `state: in_progress`.
|
|
34
|
+
6. **Human gate** — если после текущего шага есть gate в `humanGates` (`after:<agent>`), после завершения агента **остановись** и попроси `/task-continue <slug>` (или `/feature-continue <slug>`).
|
|
35
|
+
|
|
36
|
+
## Не делать
|
|
37
|
+
|
|
38
|
+
- Не вызывать developer до router и (если в pipeline) analyst/architect.
|
|
39
|
+
- Не hardcode порядок ролей — только `pipeline.json`.
|
|
40
|
+
- Не пропускать human gate без явного continue.
|
|
41
|
+
|
|
42
|
+
## Если slug занят
|
|
43
|
+
|
|
44
|
+
- `awaitingHumanGate` / `state: awaiting_approval` → предложи ревью артефактов или `/task-continue <slug>`.
|
|
45
|
+
- `in_progress` → спроси: продолжить или новый slug.
|
|
46
|
+
|
|
47
|
+
## Legacy
|
|
48
|
+
|
|
49
|
+
`/feature-start` и `/feature-continue` остаются совместимыми; для новых задач предпочитай `/task`.
|
|
50
|
+
|
|
51
|
+
## Metrics
|
|
52
|
+
|
|
53
|
+
Initialize `metrics.json` before the first invocation with frozen task dimensions and `task_started`; add one `activeAttempts[attemptId]` entry plus `attempt_started` per scheduled agent. On `/task-continue`, append `human_gate_ended` (referencing the stored gate event) before activating the next attempt. Do not calculate durations in agents.
|