@event4u/agent-config 1.9.1
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/.agent-src/README.md +64 -0
- package/.agent-src/commands/agent-handoff.md +64 -0
- package/.agent-src/commands/agent-status.md +83 -0
- package/.agent-src/commands/agents-audit.md +243 -0
- package/.agent-src/commands/agents-cleanup.md +169 -0
- package/.agent-src/commands/agents-prepare.md +137 -0
- package/.agent-src/commands/analyze-reference-repo.md +191 -0
- package/.agent-src/commands/bug-fix.md +181 -0
- package/.agent-src/commands/bug-investigate.md +175 -0
- package/.agent-src/commands/commit.md +121 -0
- package/.agent-src/commands/compress.md +177 -0
- package/.agent-src/commands/config-agent-settings.md +126 -0
- package/.agent-src/commands/context-create.md +167 -0
- package/.agent-src/commands/context-refactor.md +170 -0
- package/.agent-src/commands/copilot-agents-init.md +150 -0
- package/.agent-src/commands/copilot-agents-optimize.md +251 -0
- package/.agent-src/commands/create-pr-description.md +112 -0
- package/.agent-src/commands/create-pr.md +76 -0
- package/.agent-src/commands/do-and-judge.md +114 -0
- package/.agent-src/commands/do-in-steps.md +84 -0
- package/.agent-src/commands/e2e-heal.md +98 -0
- package/.agent-src/commands/e2e-plan.md +85 -0
- package/.agent-src/commands/estimate-ticket.md +80 -0
- package/.agent-src/commands/feature-dev.md +111 -0
- package/.agent-src/commands/feature-explore.md +180 -0
- package/.agent-src/commands/feature-plan.md +288 -0
- package/.agent-src/commands/feature-refactor.md +181 -0
- package/.agent-src/commands/feature-roadmap.md +184 -0
- package/.agent-src/commands/fix-ci.md +48 -0
- package/.agent-src/commands/fix-portability.md +97 -0
- package/.agent-src/commands/fix-pr-bot-comments.md +146 -0
- package/.agent-src/commands/fix-pr-comments.md +58 -0
- package/.agent-src/commands/fix-pr-developer-comments.md +152 -0
- package/.agent-src/commands/fix-references.md +94 -0
- package/.agent-src/commands/fix-seeder.md +146 -0
- package/.agent-src/commands/implement-ticket.md +133 -0
- package/.agent-src/commands/jira-ticket.md +71 -0
- package/.agent-src/commands/judge.md +86 -0
- package/.agent-src/commands/memory-add.md +130 -0
- package/.agent-src/commands/memory-full.md +97 -0
- package/.agent-src/commands/memory-promote.md +144 -0
- package/.agent-src/commands/mode.md +121 -0
- package/.agent-src/commands/module-create.md +132 -0
- package/.agent-src/commands/module-explore.md +157 -0
- package/.agent-src/commands/optimize-agents.md +139 -0
- package/.agent-src/commands/optimize-augmentignore.md +262 -0
- package/.agent-src/commands/optimize-rtk-filters.md +120 -0
- package/.agent-src/commands/optimize-skills.md +121 -0
- package/.agent-src/commands/override-create.md +97 -0
- package/.agent-src/commands/override-manage.md +96 -0
- package/.agent-src/commands/package-reset.md +154 -0
- package/.agent-src/commands/package-test.md +154 -0
- package/.agent-src/commands/prepare-for-review.md +91 -0
- package/.agent-src/commands/project-analyze.md +300 -0
- package/.agent-src/commands/project-health.md +95 -0
- package/.agent-src/commands/propose-memory.md +108 -0
- package/.agent-src/commands/quality-fix.md +106 -0
- package/.agent-src/commands/refine-ticket.md +81 -0
- package/.agent-src/commands/review-changes.md +130 -0
- package/.agent-src/commands/review-routing.md +111 -0
- package/.agent-src/commands/roadmap-create.md +110 -0
- package/.agent-src/commands/roadmap-execute.md +68 -0
- package/.agent-src/commands/rule-compliance-audit.md +139 -0
- package/.agent-src/commands/tests-create.md +73 -0
- package/.agent-src/commands/tests-execute.md +58 -0
- package/.agent-src/commands/threat-model.md +115 -0
- package/.agent-src/commands/update-form-request-messages.md +189 -0
- package/.agent-src/commands/upstream-contribute.md +171 -0
- package/.agent-src/contexts/augment-infrastructure.md +181 -0
- package/.agent-src/contexts/documentation-hierarchy.md +142 -0
- package/.agent-src/contexts/model-recommendations.md +142 -0
- package/.agent-src/contexts/override-system.md +187 -0
- package/.agent-src/contexts/skills-and-commands.md +154 -0
- package/.agent-src/contexts/subagent-configuration.md +62 -0
- package/.agent-src/guidelines/agent-infra/agent-interaction-and-decision-quality.md +110 -0
- package/.agent-src/guidelines/agent-infra/break-glass-usage.md +113 -0
- package/.agent-src/guidelines/agent-infra/developer-judgment.md +82 -0
- package/.agent-src/guidelines/agent-infra/engineering-memory-data-format.md +117 -0
- package/.agent-src/guidelines/agent-infra/layered-settings.md +158 -0
- package/.agent-src/guidelines/agent-infra/memory-access.md +121 -0
- package/.agent-src/guidelines/agent-infra/naming.md +69 -0
- package/.agent-src/guidelines/agent-infra/output-patterns.md +117 -0
- package/.agent-src/guidelines/agent-infra/review-routing-data-format.md +144 -0
- package/.agent-src/guidelines/agent-infra/role-contracts.md +211 -0
- package/.agent-src/guidelines/agent-infra/role-mode-router.md +89 -0
- package/.agent-src/guidelines/agent-infra/runtime-layer.md +89 -0
- package/.agent-src/guidelines/agent-infra/self-improvement-pipeline.md +135 -0
- package/.agent-src/guidelines/agent-infra/size-and-scope.md +189 -0
- package/.agent-src/guidelines/agent-infra/tool-integration.md +73 -0
- package/.agent-src/guidelines/docs/readme-size-and-splitting.md +153 -0
- package/.agent-src/guidelines/e2e/playwright.md +363 -0
- package/.agent-src/guidelines/php/api-design.md +115 -0
- package/.agent-src/guidelines/php/artisan-commands.md +81 -0
- package/.agent-src/guidelines/php/blade-ui.md +78 -0
- package/.agent-src/guidelines/php/controllers.md +90 -0
- package/.agent-src/guidelines/php/database.md +111 -0
- package/.agent-src/guidelines/php/eloquent.md +208 -0
- package/.agent-src/guidelines/php/flux.md +80 -0
- package/.agent-src/guidelines/php/general.md +191 -0
- package/.agent-src/guidelines/php/git.md +96 -0
- package/.agent-src/guidelines/php/jobs.md +111 -0
- package/.agent-src/guidelines/php/livewire.md +71 -0
- package/.agent-src/guidelines/php/logging.md +79 -0
- package/.agent-src/guidelines/php/naming.md +89 -0
- package/.agent-src/guidelines/php/patterns/dependency-injection.md +57 -0
- package/.agent-src/guidelines/php/patterns/dtos.md +199 -0
- package/.agent-src/guidelines/php/patterns/events.md +67 -0
- package/.agent-src/guidelines/php/patterns/factory.md +53 -0
- package/.agent-src/guidelines/php/patterns/pipelines.md +66 -0
- package/.agent-src/guidelines/php/patterns/policies.md +66 -0
- package/.agent-src/guidelines/php/patterns/repositories.md +122 -0
- package/.agent-src/guidelines/php/patterns/service-layer.md +64 -0
- package/.agent-src/guidelines/php/patterns/strategy.md +69 -0
- package/.agent-src/guidelines/php/patterns.md +28 -0
- package/.agent-src/guidelines/php/performance.md +92 -0
- package/.agent-src/guidelines/php/resources.md +100 -0
- package/.agent-src/guidelines/php/security.md +110 -0
- package/.agent-src/guidelines/php/sql.md +97 -0
- package/.agent-src/guidelines/php/validations.md +119 -0
- package/.agent-src/guidelines/php/websocket.md +100 -0
- package/.agent-src/personas/README.md +104 -0
- package/.agent-src/personas/ai-agent.md +77 -0
- package/.agent-src/personas/critical-challenger.md +73 -0
- package/.agent-src/personas/developer.md +73 -0
- package/.agent-src/personas/product-owner.md +78 -0
- package/.agent-src/personas/qa.md +67 -0
- package/.agent-src/personas/senior-engineer.md +77 -0
- package/.agent-src/personas/stakeholder.md +78 -0
- package/.agent-src/rules/agent-docs.md +61 -0
- package/.agent-src/rules/analysis-skill-routing.md +48 -0
- package/.agent-src/rules/architecture.md +62 -0
- package/.agent-src/rules/artifact-drafting-protocol.md +73 -0
- package/.agent-src/rules/ask-when-uncertain.md +52 -0
- package/.agent-src/rules/augment-portability.md +38 -0
- package/.agent-src/rules/augment-source-of-truth.md +128 -0
- package/.agent-src/rules/capture-learnings.md +89 -0
- package/.agent-src/rules/cli-output-handling.md +94 -0
- package/.agent-src/rules/commit-conventions.md +64 -0
- package/.agent-src/rules/context-hygiene.md +90 -0
- package/.agent-src/rules/docker-commands.md +55 -0
- package/.agent-src/rules/docs-sync.md +79 -0
- package/.agent-src/rules/downstream-changes.md +70 -0
- package/.agent-src/rules/e2e-testing.md +53 -0
- package/.agent-src/rules/guidelines.md +90 -0
- package/.agent-src/rules/improve-before-implement.md +94 -0
- package/.agent-src/rules/language-and-tone.md +104 -0
- package/.agent-src/rules/laravel-translations.md +48 -0
- package/.agent-src/rules/markdown-safe-codeblocks.md +18 -0
- package/.agent-src/rules/minimal-safe-diff.md +87 -0
- package/.agent-src/rules/missing-tool-handling.md +62 -0
- package/.agent-src/rules/model-recommendation.md +70 -0
- package/.agent-src/rules/package-ci-checks.md +80 -0
- package/.agent-src/rules/php-coding.md +63 -0
- package/.agent-src/rules/preservation-guard.md +29 -0
- package/.agent-src/rules/review-routing-awareness.md +125 -0
- package/.agent-src/rules/reviewer-awareness.md +92 -0
- package/.agent-src/rules/roadmap-progress-sync.md +56 -0
- package/.agent-src/rules/role-mode-adherence.md +54 -0
- package/.agent-src/rules/rule-type-governance.md +46 -0
- package/.agent-src/rules/runtime-safety.md +42 -0
- package/.agent-src/rules/scope-control.md +40 -0
- package/.agent-src/rules/security-sensitive-stop.md +77 -0
- package/.agent-src/rules/size-enforcement.md +29 -0
- package/.agent-src/rules/skill-improvement-trigger.md +58 -0
- package/.agent-src/rules/skill-quality.md +110 -0
- package/.agent-src/rules/slash-commands.md +30 -0
- package/.agent-src/rules/think-before-action.md +91 -0
- package/.agent-src/rules/token-efficiency.md +99 -0
- package/.agent-src/rules/tool-safety.md +36 -0
- package/.agent-src/rules/upstream-proposal.md +76 -0
- package/.agent-src/rules/user-interaction.md +79 -0
- package/.agent-src/rules/verify-before-complete.md +120 -0
- package/.agent-src/scripts/scan-seeder-violations.php +145 -0
- package/.agent-src/scripts/update_roadmap_progress.py +244 -0
- package/.agent-src/skills/adversarial-review/SKILL.md +149 -0
- package/.agent-src/skills/agent-docs-writing/SKILL.md +234 -0
- package/.agent-src/skills/analysis-autonomous-mode/SKILL.md +197 -0
- package/.agent-src/skills/analysis-skill-router/SKILL.md +134 -0
- package/.agent-src/skills/api-design/SKILL.md +104 -0
- package/.agent-src/skills/api-endpoint/SKILL.md +185 -0
- package/.agent-src/skills/api-testing/SKILL.md +206 -0
- package/.agent-src/skills/artisan-commands/SKILL.md +78 -0
- package/.agent-src/skills/authz-review/SKILL.md +171 -0
- package/.agent-src/skills/aws-infrastructure/SKILL.md +152 -0
- package/.agent-src/skills/blade-ui/SKILL.md +75 -0
- package/.agent-src/skills/blast-radius-analyzer/SKILL.md +185 -0
- package/.agent-src/skills/bug-analyzer/SKILL.md +256 -0
- package/.agent-src/skills/check-refs/SKILL.md +72 -0
- package/.agent-src/skills/code-refactoring/SKILL.md +200 -0
- package/.agent-src/skills/code-review/SKILL.md +214 -0
- package/.agent-src/skills/command-routing/SKILL.md +96 -0
- package/.agent-src/skills/command-writing/SKILL.md +143 -0
- package/.agent-src/skills/composer-packages/SKILL.md +172 -0
- package/.agent-src/skills/context-authoring/SKILL.md +157 -0
- package/.agent-src/skills/context-document/SKILL.md +153 -0
- package/.agent-src/skills/conventional-commits-writing/SKILL.md +70 -0
- package/.agent-src/skills/copilot-agents-optimization/SKILL.md +220 -0
- package/.agent-src/skills/copilot-config/SKILL.md +203 -0
- package/.agent-src/skills/dashboard-design/SKILL.md +116 -0
- package/.agent-src/skills/data-flow-mapper/SKILL.md +160 -0
- package/.agent-src/skills/database/SKILL.md +91 -0
- package/.agent-src/skills/dependency-upgrade/SKILL.md +204 -0
- package/.agent-src/skills/description-assist/SKILL.md +169 -0
- package/.agent-src/skills/design-review/SKILL.md +228 -0
- package/.agent-src/skills/devcontainer/SKILL.md +121 -0
- package/.agent-src/skills/developer-like-execution/SKILL.md +276 -0
- package/.agent-src/skills/docker/SKILL.md +245 -0
- package/.agent-src/skills/dto-creator/SKILL.md +117 -0
- package/.agent-src/skills/eloquent/SKILL.md +92 -0
- package/.agent-src/skills/eloquent/evals/last-run.json +99 -0
- package/.agent-src/skills/eloquent/evals/triggers.json +16 -0
- package/.agent-src/skills/estimate-ticket/SKILL.md +186 -0
- package/.agent-src/skills/estimate-ticket/evals/output-schema.yml +20 -0
- package/.agent-src/skills/estimate-ticket/evals/triggers.json +18 -0
- package/.agent-src/skills/fe-design/SKILL.md +223 -0
- package/.agent-src/skills/feature-planning/SKILL.md +226 -0
- package/.agent-src/skills/file-editor/SKILL.md +129 -0
- package/.agent-src/skills/finishing-a-development-branch/SKILL.md +200 -0
- package/.agent-src/skills/flux/SKILL.md +64 -0
- package/.agent-src/skills/git-workflow/SKILL.md +102 -0
- package/.agent-src/skills/github-ci/SKILL.md +122 -0
- package/.agent-src/skills/grafana/SKILL.md +168 -0
- package/.agent-src/skills/guideline-writing/SKILL.md +147 -0
- package/.agent-src/skills/jira-integration/SKILL.md +182 -0
- package/.agent-src/skills/jobs-events/SKILL.md +87 -0
- package/.agent-src/skills/judge-bug-hunter/SKILL.md +157 -0
- package/.agent-src/skills/judge-code-quality/SKILL.md +158 -0
- package/.agent-src/skills/judge-security-auditor/SKILL.md +167 -0
- package/.agent-src/skills/judge-test-coverage/SKILL.md +154 -0
- package/.agent-src/skills/laravel/SKILL.md +195 -0
- package/.agent-src/skills/laravel-horizon/SKILL.md +169 -0
- package/.agent-src/skills/laravel-mail/SKILL.md +193 -0
- package/.agent-src/skills/laravel-middleware/SKILL.md +185 -0
- package/.agent-src/skills/laravel-notifications/SKILL.md +168 -0
- package/.agent-src/skills/laravel-pennant/SKILL.md +188 -0
- package/.agent-src/skills/laravel-pulse/SKILL.md +160 -0
- package/.agent-src/skills/laravel-reverb/SKILL.md +205 -0
- package/.agent-src/skills/laravel-scheduling/SKILL.md +167 -0
- package/.agent-src/skills/laravel-validation/SKILL.md +71 -0
- package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +249 -0
- package/.agent-src/skills/lint-skills/SKILL.md +72 -0
- package/.agent-src/skills/livewire/SKILL.md +79 -0
- package/.agent-src/skills/logging-monitoring/SKILL.md +100 -0
- package/.agent-src/skills/mcp/SKILL.md +193 -0
- package/.agent-src/skills/merge-conflicts/SKILL.md +158 -0
- package/.agent-src/skills/migration-creator/SKILL.md +160 -0
- package/.agent-src/skills/module-management/SKILL.md +154 -0
- package/.agent-src/skills/multi-tenancy/SKILL.md +129 -0
- package/.agent-src/skills/openapi/SKILL.md +154 -0
- package/.agent-src/skills/override-management/SKILL.md +186 -0
- package/.agent-src/skills/performance/SKILL.md +69 -0
- package/.agent-src/skills/performance-analysis/SKILL.md +118 -0
- package/.agent-src/skills/pest-testing/SKILL.md +321 -0
- package/.agent-src/skills/php-coder/SKILL.md +78 -0
- package/.agent-src/skills/php-coder/evals/triggers.json +16 -0
- package/.agent-src/skills/php-debugging/SKILL.md +184 -0
- package/.agent-src/skills/php-service/SKILL.md +96 -0
- package/.agent-src/skills/playwright-testing/SKILL.md +244 -0
- package/.agent-src/skills/project-analysis-core/SKILL.md +138 -0
- package/.agent-src/skills/project-analysis-hypothesis-driven/SKILL.md +130 -0
- package/.agent-src/skills/project-analysis-laravel/SKILL.md +119 -0
- package/.agent-src/skills/project-analysis-nextjs/SKILL.md +123 -0
- package/.agent-src/skills/project-analysis-node-express/SKILL.md +111 -0
- package/.agent-src/skills/project-analysis-react/SKILL.md +119 -0
- package/.agent-src/skills/project-analysis-symfony/SKILL.md +111 -0
- package/.agent-src/skills/project-analysis-zend-laminas/SKILL.md +108 -0
- package/.agent-src/skills/project-analyzer/SKILL.md +341 -0
- package/.agent-src/skills/project-docs/SKILL.md +137 -0
- package/.agent-src/skills/quality-tools/SKILL.md +411 -0
- package/.agent-src/skills/readme-reviewer/SKILL.md +187 -0
- package/.agent-src/skills/readme-writing/SKILL.md +142 -0
- package/.agent-src/skills/readme-writing-package/SKILL.md +185 -0
- package/.agent-src/skills/receiving-code-review/SKILL.md +190 -0
- package/.agent-src/skills/refine-ticket/SKILL.md +310 -0
- package/.agent-src/skills/refine-ticket/detection-map.yml +124 -0
- package/.agent-src/skills/refine-ticket/evals/output-schema.yml +16 -0
- package/.agent-src/skills/refine-ticket/evals/triggers.json +16 -0
- package/.agent-src/skills/requesting-code-review/SKILL.md +199 -0
- package/.agent-src/skills/review-routing/SKILL.md +195 -0
- package/.agent-src/skills/roadmap-management/SKILL.md +303 -0
- package/.agent-src/skills/rtk-output-filtering/SKILL.md +184 -0
- package/.agent-src/skills/rule-writing/SKILL.md +148 -0
- package/.agent-src/skills/security/SKILL.md +79 -0
- package/.agent-src/skills/security-audit/SKILL.md +123 -0
- package/.agent-src/skills/sentry-integration/SKILL.md +170 -0
- package/.agent-src/skills/sequential-thinking/SKILL.md +158 -0
- package/.agent-src/skills/skill-improvement-pipeline/SKILL.md +155 -0
- package/.agent-src/skills/skill-management/SKILL.md +121 -0
- package/.agent-src/skills/skill-reviewer/SKILL.md +218 -0
- package/.agent-src/skills/skill-writing/SKILL.md +291 -0
- package/.agent-src/skills/skill-writing/evals/triggers.json +16 -0
- package/.agent-src/skills/sql-writing/SKILL.md +74 -0
- package/.agent-src/skills/subagent-orchestration/SKILL.md +190 -0
- package/.agent-src/skills/systematic-debugging/SKILL.md +244 -0
- package/.agent-src/skills/technical-specification/SKILL.md +185 -0
- package/.agent-src/skills/terraform/SKILL.md +137 -0
- package/.agent-src/skills/terragrunt/SKILL.md +217 -0
- package/.agent-src/skills/test-driven-development/SKILL.md +252 -0
- package/.agent-src/skills/test-performance/SKILL.md +172 -0
- package/.agent-src/skills/threat-modeling/SKILL.md +189 -0
- package/.agent-src/skills/traefik/SKILL.md +319 -0
- package/.agent-src/skills/universal-project-analysis/SKILL.md +179 -0
- package/.agent-src/skills/upstream-contribute/SKILL.md +255 -0
- package/.agent-src/skills/using-git-worktrees/SKILL.md +148 -0
- package/.agent-src/skills/validate-feature-fit/SKILL.md +113 -0
- package/.agent-src/skills/verify-before-complete/SKILL.md +188 -0
- package/.agent-src/skills/websocket/SKILL.md +75 -0
- package/.agent-src/templates/AGENTS.md +146 -0
- package/.agent-src/templates/agent-settings.md +256 -0
- package/.agent-src/templates/agents/.gitattributes.fragment +16 -0
- package/.agent-src/templates/agents/agent-project-settings.example.yml +138 -0
- package/.agent-src/templates/agents/memory/architecture-decisions.example.yml +95 -0
- package/.agent-src/templates/agents/memory/domain-invariants.example.yml +80 -0
- package/.agent-src/templates/agents/memory/historical-patterns.example.yml +82 -0
- package/.agent-src/templates/agents/memory/incident-learnings.example.yml +113 -0
- package/.agent-src/templates/agents/memory/ownership.example.yml +75 -0
- package/.agent-src/templates/agents/memory/product-rules.example.yml +87 -0
- package/.agent-src/templates/agents/proposal.example.md +143 -0
- package/.agent-src/templates/command.md +84 -0
- package/.agent-src/templates/contexts/auth-model.md +59 -0
- package/.agent-src/templates/contexts/data-sensitivity.md +60 -0
- package/.agent-src/templates/contexts/deployment-order.md +72 -0
- package/.agent-src/templates/contexts/observability.md +64 -0
- package/.agent-src/templates/contexts/tenant-boundaries.md +68 -0
- package/.agent-src/templates/contexts.md +116 -0
- package/.agent-src/templates/copilot-instructions.md +115 -0
- package/.agent-src/templates/features.md +125 -0
- package/.agent-src/templates/github-workflows/memory-hygiene.yml +133 -0
- package/.agent-src/templates/github-workflows/pr-risk-review.yml +123 -0
- package/.agent-src/templates/github-workflows/proposal-drift.yml +118 -0
- package/.agent-src/templates/overrides/command.md +24 -0
- package/.agent-src/templates/overrides/guideline.md +21 -0
- package/.agent-src/templates/overrides/rule.md +19 -0
- package/.agent-src/templates/overrides/skill.md +24 -0
- package/.agent-src/templates/overrides/template.md +21 -0
- package/.agent-src/templates/persona.md +99 -0
- package/.agent-src/templates/roadmaps.md +109 -0
- package/.agent-src/templates/scripts/README.md +195 -0
- package/.agent-src/templates/scripts/check_memory.py +283 -0
- package/.agent-src/templates/scripts/check_memory_proposal.py +180 -0
- package/.agent-src/templates/scripts/historical-bug-patterns.example.yml +84 -0
- package/.agent-src/templates/scripts/implement_ticket/__init__.py +57 -0
- package/.agent-src/templates/scripts/implement_ticket/__main__.py +9 -0
- package/.agent-src/templates/scripts/implement_ticket/cli.py +171 -0
- package/.agent-src/templates/scripts/implement_ticket/delivery_state.py +130 -0
- package/.agent-src/templates/scripts/implement_ticket/dispatcher.py +134 -0
- package/.agent-src/templates/scripts/implement_ticket/persona_policy.py +85 -0
- package/.agent-src/templates/scripts/implement_ticket/steps/__init__.py +49 -0
- package/.agent-src/templates/scripts/implement_ticket/steps/analyze.py +98 -0
- package/.agent-src/templates/scripts/implement_ticket/steps/implement.py +145 -0
- package/.agent-src/templates/scripts/implement_ticket/steps/memory.py +136 -0
- package/.agent-src/templates/scripts/implement_ticket/steps/plan.py +175 -0
- package/.agent-src/templates/scripts/implement_ticket/steps/refine.py +140 -0
- package/.agent-src/templates/scripts/implement_ticket/steps/report.py +195 -0
- package/.agent-src/templates/scripts/implement_ticket/steps/test.py +180 -0
- package/.agent-src/templates/scripts/implement_ticket/steps/verify.py +170 -0
- package/.agent-src/templates/scripts/memory_hash.py +75 -0
- package/.agent-src/templates/scripts/memory_lookup.py +216 -0
- package/.agent-src/templates/scripts/memory_report.py +184 -0
- package/.agent-src/templates/scripts/memory_signal.py +167 -0
- package/.agent-src/templates/scripts/memory_status.py +156 -0
- package/.agent-src/templates/scripts/ownership-map.example.yml +87 -0
- package/.agent-src/templates/scripts/pr-risk-config.example.yml +76 -0
- package/.agent-src/templates/scripts/pr_review_routing.py +340 -0
- package/.agent-src/templates/scripts/pr_risk_review.py +211 -0
- package/.agent-src/templates/skill.md +136 -0
- package/.augment-plugin/marketplace.json +32 -0
- package/.augment-plugin/plugin.json +21 -0
- package/.claude-plugin/marketplace.json +119 -0
- package/AGENTS.md +121 -0
- package/CHANGELOG.md +279 -0
- package/CONTRIBUTING.md +176 -0
- package/LICENSE +21 -0
- package/README.md +357 -0
- package/bin/install.php +38 -0
- package/composer.json +29 -0
- package/config/agent-settings.template.yml +96 -0
- package/config/profiles/balanced.ini +10 -0
- package/config/profiles/full.ini +10 -0
- package/config/profiles/minimal.ini +10 -0
- package/docs/architecture.md +144 -0
- package/docs/customization.md +88 -0
- package/docs/development.md +171 -0
- package/docs/getting-started.md +130 -0
- package/docs/github-topics.md +84 -0
- package/docs/installation.md +376 -0
- package/docs/mcp.md +133 -0
- package/docs/quality.md +98 -0
- package/docs/skills-catalog.md +136 -0
- package/docs/troubleshooting.md +167 -0
- package/llms.txt +130 -0
- package/package.json +31 -0
- package/scripts/audit_skill_descriptions.py +168 -0
- package/scripts/check_compression.py +221 -0
- package/scripts/check_memory.py +341 -0
- package/scripts/check_memory_proposal.py +180 -0
- package/scripts/check_portability.py +320 -0
- package/scripts/check_proposal.py +269 -0
- package/scripts/check_references.py +400 -0
- package/scripts/ci_summary.py +131 -0
- package/scripts/compress.py +671 -0
- package/scripts/compress.sh +18 -0
- package/scripts/first-run.sh +109 -0
- package/scripts/generate_catalog.py +116 -0
- package/scripts/install +151 -0
- package/scripts/install-hooks.sh +29 -0
- package/scripts/install.py +487 -0
- package/scripts/install.sh +637 -0
- package/scripts/install_anthropic_key.sh +101 -0
- package/scripts/inventory_frontmatter.py +164 -0
- package/scripts/lint_marketplace.py +142 -0
- package/scripts/lint_regression.py +232 -0
- package/scripts/mcp_render.py +159 -0
- package/scripts/measure_patterns.py +376 -0
- package/scripts/memory_hash.py +75 -0
- package/scripts/memory_lookup.py +441 -0
- package/scripts/memory_report.py +336 -0
- package/scripts/memory_signal.py +210 -0
- package/scripts/memory_status.py +195 -0
- package/scripts/postinstall.sh +60 -0
- package/scripts/readme_linter.py +580 -0
- package/scripts/refine_ticket_detect.py +623 -0
- package/scripts/requirements-evals.txt +7 -0
- package/scripts/runtime_dispatcher.py +265 -0
- package/scripts/runtime_handler.py +148 -0
- package/scripts/runtime_registry.py +166 -0
- package/scripts/schemas/command.schema.json +32 -0
- package/scripts/schemas/persona.schema.json +42 -0
- package/scripts/schemas/rule.schema.json +28 -0
- package/scripts/schemas/skill.schema.json +73 -0
- package/scripts/setup.sh +230 -0
- package/scripts/setup_eval_venv.sh +58 -0
- package/scripts/skill_linter.py +2175 -0
- package/scripts/skill_trigger_eval.py +651 -0
- package/scripts/tool_registry.py +146 -0
- package/scripts/tools/__init__.py +1 -0
- package/scripts/tools/adapter_errors.py +63 -0
- package/scripts/tools/base_adapter.py +91 -0
- package/scripts/tools/github_adapter.py +128 -0
- package/scripts/tools/jira_adapter.py +115 -0
- package/scripts/update_counts.py +147 -0
- package/scripts/validate_frontmatter.py +424 -0
- package/templates/consumer-settings/README.md +46 -0
- package/templates/consumer-settings/augment-settings.json +12 -0
- package/templates/consumer-settings/claude-settings.json +9 -0
- package/templates/consumer-settings/copilot-settings.json +14 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: memory-full
|
|
3
|
+
description: Load ALL curated entries of a given memory type into the current context β opt-in full load for deep analysis, never auto-triggered
|
|
4
|
+
skills: []
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# /memory-full
|
|
9
|
+
|
|
10
|
+
Loads every entry of a single memory type into the current conversation
|
|
11
|
+
as a formatted block. Use when the normal `memory_lookup` filter is too
|
|
12
|
+
narrow and you need the full type for an architecture decision, audit,
|
|
13
|
+
or migration.
|
|
14
|
+
|
|
15
|
+
Opt-in only. Agents must never call this implicitly β the cost is linear
|
|
16
|
+
in the entry count and the signal-to-noise degrades fast on large types.
|
|
17
|
+
|
|
18
|
+
## Prerequisites
|
|
19
|
+
|
|
20
|
+
- Consumer project has `agents/memory/<type>/` or
|
|
21
|
+
`agents/memory/<type>.yml`.
|
|
22
|
+
- User explicitly asked for the full view (e.g. "show me everything we
|
|
23
|
+
know about `domain-invariants`").
|
|
24
|
+
|
|
25
|
+
## Steps
|
|
26
|
+
|
|
27
|
+
### 1. Pick the type
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
> Which memory type should I load in full?
|
|
31
|
+
>
|
|
32
|
+
> 1. domain-invariants
|
|
33
|
+
> 2. architecture-decisions
|
|
34
|
+
> 3. incident-learnings
|
|
35
|
+
> 4. product-rules
|
|
36
|
+
> 5. historical-patterns
|
|
37
|
+
> 6. ownership
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### 2. Warn about volume
|
|
41
|
+
|
|
42
|
+
Before loading, count the entries:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
python3 scripts/memory_lookup.py --types <type> --format json | \
|
|
46
|
+
python3 -c "import sys, json; print(len(json.load(sys.stdin)))"
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
If the count exceeds 25, warn:
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
> This will load {N} entries (~{NΓ200} tokens).
|
|
53
|
+
>
|
|
54
|
+
> 1. Continue β load everything
|
|
55
|
+
> 2. Narrow by key β run /memory-full with --key pattern
|
|
56
|
+
> 3. Cancel
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### 3. Load
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
python3 scripts/memory_lookup.py --types <type> --format yaml
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Render the output verbatim, grouped by status (`active` first, then
|
|
66
|
+
`deprecated`, then `archived`). Each entry shows `id`, `confidence`,
|
|
67
|
+
`last_validated`, and the rule body. Skip `archived` unless the user
|
|
68
|
+
opts in.
|
|
69
|
+
|
|
70
|
+
### 4. Confirm absorption
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
β
Loaded {N} {type} entries into context.
|
|
74
|
+
Active: {n_active} Β· Deprecated: {n_dep} Β· Archived skipped: {n_arch}
|
|
75
|
+
Source: agents/memory/{type}/ (or agents/memory/{type}.yml)
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
The agent should now treat every loaded entry as an authority signal
|
|
79
|
+
with its declared `confidence` β see
|
|
80
|
+
[`memory-access`](../guidelines/agent-infra/memory-access.md) for
|
|
81
|
+
how entries modulate edits.
|
|
82
|
+
|
|
83
|
+
## When to reject
|
|
84
|
+
|
|
85
|
+
- User is mid-implementation and asks for the full load as a shortcut
|
|
86
|
+
around a targeted `memory_lookup` call β redirect to the narrower
|
|
87
|
+
lookup; full load is for analysis/audit, not coding.
|
|
88
|
+
- Type directory is empty β respond with "no entries yet, use
|
|
89
|
+
`/memory-add` to start".
|
|
90
|
+
|
|
91
|
+
## See also
|
|
92
|
+
|
|
93
|
+
- [`memory-add`](memory-add.md) β add a single entry
|
|
94
|
+
- [`memory-promote`](memory-promote.md) β promote an intake signal to
|
|
95
|
+
a curated entry
|
|
96
|
+
- [`memory-access`](../guidelines/agent-infra/memory-access.md) β
|
|
97
|
+
how entries flow into agent decisions
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: memory-promote
|
|
3
|
+
description: Promote an intake signal (or provisional proposal) into a curated memory entry β opens a PR and runs the admission gate.
|
|
4
|
+
skills: [file-editor]
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# /memory-promote
|
|
9
|
+
|
|
10
|
+
Moves an entry from the provisional layer (intake JSONL) into the
|
|
11
|
+
curated layer (`agents/memory/<type>.yml` or sharded). Promotion is
|
|
12
|
+
gated by
|
|
13
|
+
[`scripts/check_memory_proposal.py`](../../../scripts/check_memory_proposal.py),
|
|
14
|
+
which enforces the **pattern-vs-one-off** discipline: either β₯ 2
|
|
15
|
+
distinct paths share the root-cause signature, or the submitter
|
|
16
|
+
supplies β₯ 3 concrete future decisions that will be steered by the
|
|
17
|
+
entry.
|
|
18
|
+
|
|
19
|
+
## Prerequisites
|
|
20
|
+
|
|
21
|
+
- The signal already exists in `agents/memory/intake/signals-*.jsonl`
|
|
22
|
+
via [`/propose-memory`](propose-memory.md) or a producer
|
|
23
|
+
(`/bug-fix`, `/do-and-judge`, incident-role exit).
|
|
24
|
+
- The user can name the intake `id` (e.g., `sig-abc123`). If not,
|
|
25
|
+
route to the read side:
|
|
26
|
+
`python3 scripts/memory_lookup.py --types <type> --key <hint>` to
|
|
27
|
+
surface candidates.
|
|
28
|
+
|
|
29
|
+
## Steps
|
|
30
|
+
|
|
31
|
+
### 1. Confirm the signal id
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
> Which intake signal are we promoting?
|
|
35
|
+
>
|
|
36
|
+
> 1. Paste `sig-xxxxxx`
|
|
37
|
+
> 2. Search by path/body β I'll list candidates
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### 2. Run the admission gate
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
python3 scripts/check_memory_proposal.py --intake-id <sig-id>
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
If the gate reports failures, show them to the user numbered and ask:
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
> 1. Strengthen evidence β run /propose-memory again to add sibling paths
|
|
50
|
+
> 2. Fill `future_decisions:` β I'll edit the intake entry's metadata
|
|
51
|
+
> 3. Abandon promotion β the finding stays as intake
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
**Do NOT bypass the gate.** If the user insists, stop and require
|
|
55
|
+
explicit confirmation with `--force` intent. Never silently edit the
|
|
56
|
+
gate script to lower the bar.
|
|
57
|
+
|
|
58
|
+
### 3. Draft the curated entry
|
|
59
|
+
|
|
60
|
+
Using the schema in
|
|
61
|
+
[`engineering-memory-data-format`](../guidelines/agent-infra/engineering-memory-data-format.md),
|
|
62
|
+
hydrate the full frontmatter:
|
|
63
|
+
|
|
64
|
+
- `id` β kebab-case slug (not the `sig-*` id β that is an intake marker).
|
|
65
|
+
- `status: active`, `confidence: medium` (unless the pattern is old
|
|
66
|
+
and well-validated β then `high`).
|
|
67
|
+
- `source:` β at minimum the intake jsonl file + line number.
|
|
68
|
+
- `owner:`, `last_validated: <today>`, `review_after_days:`.
|
|
69
|
+
- Type-specific fields (`rule`, `symptom`, `path`, β¦).
|
|
70
|
+
|
|
71
|
+
Show the YAML draft and ask for confirmation before writing.
|
|
72
|
+
|
|
73
|
+
### 4. Write the curated entry (content-addressed)
|
|
74
|
+
|
|
75
|
+
Compute the content hash and write a **one-entry file** at
|
|
76
|
+
`agents/memory/<type>/<hash>.yml`:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
HASH=$(python3 scripts/memory_hash.py --yaml /tmp/draft.yml)
|
|
80
|
+
mkdir -p agents/memory/<type>
|
|
81
|
+
mv /tmp/draft.yml agents/memory/<type>/${HASH}.yml
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
- **One entry per file** β the filename is the sha256(canonical-JSON
|
|
85
|
+
of the entry, first 12 hex chars). Two branches promoting the same
|
|
86
|
+
entry converge to the same filename and `git merge` sees an
|
|
87
|
+
unchanged file, not a conflict.
|
|
88
|
+
- **Never append** to `<type>.yml` single-file mode in content-
|
|
89
|
+
addressed layouts. If the consumer still uses single-file (legacy),
|
|
90
|
+
the command MUST detect that via `agents/memory/<type>.yml`
|
|
91
|
+
existence and refuse with a migration hint:
|
|
92
|
+
`β οΈ agents/memory/<type>.yml exists β migrate to content-
|
|
93
|
+
addressed first (`/memory-migrate <type>`)`.
|
|
94
|
+
- **Schema validation** β run `python3 scripts/check_memory.py
|
|
95
|
+
--path agents/memory/<type>/${HASH}.yml` before commit. On failure,
|
|
96
|
+
delete the file and stop.
|
|
97
|
+
|
|
98
|
+
### 5. Record the supersede link
|
|
99
|
+
|
|
100
|
+
Append a `type: supersede` line to the monthly intake JSONL:
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
echo '{"type":"supersede","supersedes":"<sig-id>","promoted_to":"<curated id>"}' \
|
|
104
|
+
>> agents/memory/intake/signals-$(date +%Y-%m).jsonl
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
This keeps the intake stream truthful β lookups will ignore the
|
|
108
|
+
superseded signal.
|
|
109
|
+
|
|
110
|
+
### 6. Open a promotion PR
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
git checkout -b memory/promote-<curated-id>
|
|
114
|
+
git add agents/memory/ && git commit -m "memory: promote <sig-id> β <curated-id>"
|
|
115
|
+
git push -u origin memory/promote-<curated-id>
|
|
116
|
+
# Then route to /create-pr with the memory-promote template hint.
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
### 7. Report
|
|
120
|
+
|
|
121
|
+
```
|
|
122
|
+
> β
Promotion drafted.
|
|
123
|
+
> - Signal: <sig-id>
|
|
124
|
+
> - Curated: <curated-id> in agents/memory/<type>.yml
|
|
125
|
+
> - PR: <url or branch name>
|
|
126
|
+
> - Next: review + merge
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Safety
|
|
130
|
+
|
|
131
|
+
- **Never** rewrite existing curated entries β conflicts go through
|
|
132
|
+
supersede-chains, not overwrites.
|
|
133
|
+
- **Never** promote without the gate passing β the discipline is the
|
|
134
|
+
value of the curated layer.
|
|
135
|
+
- **Never** batch-promote more than one signal per PR β each entry
|
|
136
|
+
deserves a focused review.
|
|
137
|
+
|
|
138
|
+
## See also
|
|
139
|
+
|
|
140
|
+
- [`/propose-memory`](propose-memory.md) β write-side entry point.
|
|
141
|
+
- [`/memory-add`](memory-add.md) β direct curated write (skips intake).
|
|
142
|
+
- [`engineering-memory-data-format`](../guidelines/agent-infra/engineering-memory-data-format.md)
|
|
143
|
+
- [`road-to-agent-memory-integration`](../../../agents/roadmaps/road-to-agent-memory-integration.md)
|
|
144
|
+
β Phase 3.
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mode
|
|
3
|
+
description: Set the active role mode β prints the contract, lists default skills, and refuses work outside the contract (see role-contracts)
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# /mode
|
|
8
|
+
|
|
9
|
+
Sets `roles.active_role` in `.agent-settings.yml` and surfaces the active
|
|
10
|
+
contract before any work. Six modes are defined in
|
|
11
|
+
[`role-contracts`](../guidelines/agent-infra/role-contracts.md):
|
|
12
|
+
|
|
13
|
+
- `developer` Β· `reviewer` Β· `tester` Β· `po` Β· `incident` Β· `planner`
|
|
14
|
+
|
|
15
|
+
`/mode none` clears the active role. `/mode` without an argument prints
|
|
16
|
+
the current state (active role, default role, contract summary).
|
|
17
|
+
|
|
18
|
+
## When NOT to use
|
|
19
|
+
|
|
20
|
+
- The mode should be set automatically by the router in Phase 3 β use
|
|
21
|
+
`/mode` only for explicit override or debugging.
|
|
22
|
+
- Do NOT invent new modes. If the work does not fit a contract, say so
|
|
23
|
+
and fall back to no mode (per `ask-when-uncertain`).
|
|
24
|
+
|
|
25
|
+
## Steps
|
|
26
|
+
|
|
27
|
+
### 1. Parse argument
|
|
28
|
+
|
|
29
|
+
- `/mode` β show status only (steps 3β4).
|
|
30
|
+
- `/mode none` β clear `roles.active_role` (step 5).
|
|
31
|
+
- `/mode <name>` β validate against the six defined modes (step 2).
|
|
32
|
+
|
|
33
|
+
Anything else: refuse. List the valid values and stop.
|
|
34
|
+
|
|
35
|
+
### 2. Validate the mode name
|
|
36
|
+
|
|
37
|
+
Read [`role-contracts.md`](../guidelines/agent-infra/role-contracts.md).
|
|
38
|
+
Extract H3 headings under `## Contract skeletons` and lowercase them.
|
|
39
|
+
If `<name>` is not in that set, refuse and print the valid list.
|
|
40
|
+
|
|
41
|
+
### 3. Read settings
|
|
42
|
+
|
|
43
|
+
Read `.agent-settings.yml`. If missing, tell the user to run
|
|
44
|
+
`/config-agent-settings` first and stop β do not create the file here.
|
|
45
|
+
|
|
46
|
+
Extract `roles.default_role` and `roles.active_role`.
|
|
47
|
+
|
|
48
|
+
### 4. Print the contract
|
|
49
|
+
|
|
50
|
+
Echo the full contract body for the target mode from `role-contracts.md`:
|
|
51
|
+
|
|
52
|
+
- Goal / Constraints / Output fields
|
|
53
|
+
- Default skills the mode loads first
|
|
54
|
+
- Structured mode marker the agent will emit when closing
|
|
55
|
+
|
|
56
|
+
Format: rendered Markdown excerpt, not a paraphrase. The user must see
|
|
57
|
+
exactly what the contract demands.
|
|
58
|
+
|
|
59
|
+
### 5. Write the active role
|
|
60
|
+
|
|
61
|
+
Update `roles.active_role` in `.agent-settings.yml` using the same
|
|
62
|
+
section-aware merge rules as `/config-agent-settings` (preserve comments,
|
|
63
|
+
preserve key order, touch only the changed field).
|
|
64
|
+
|
|
65
|
+
For `/mode none`: set `active_role: ""`.
|
|
66
|
+
|
|
67
|
+
Do NOT write anything for `/mode` without an argument (status only).
|
|
68
|
+
|
|
69
|
+
### 6. Refuse work outside the contract
|
|
70
|
+
|
|
71
|
+
Announce the switch as:
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
> entering {mode} mode β contract: {goal-field} / {constraints-field} / {output-field}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
From this point in the session: the rule
|
|
78
|
+
[`role-mode-adherence`](../rules/role-mode-adherence.md) auto-triggers on
|
|
79
|
+
every closing output. If the user asks for work the contract forbids
|
|
80
|
+
(e.g. "just ship this fix" while in reviewer mode), reply with a single
|
|
81
|
+
numbered prompt:
|
|
82
|
+
|
|
83
|
+
```
|
|
84
|
+
> Current mode: {mode} β contract forbids {forbidden-action}.
|
|
85
|
+
>
|
|
86
|
+
> 1. Switch mode β run /mode <other>
|
|
87
|
+
> 2. Stay in {mode} and scope the work to the contract
|
|
88
|
+
> 3. Clear mode β run /mode none
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Output format
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
> entering {mode} mode β contract: β¦
|
|
95
|
+
>
|
|
96
|
+
> Default skills: {skill-a}, {skill-b}, {skill-c}
|
|
97
|
+
> Closing marker: <!-- role-mode: {mode} | contract: β¦ -->
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
For `/mode` (status only):
|
|
101
|
+
|
|
102
|
+
```
|
|
103
|
+
> Active role: {active_role or "(none)"}
|
|
104
|
+
> Default role: {default_role or "(none)"}
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Gotchas
|
|
108
|
+
|
|
109
|
+
- `.agent-settings.yml` is git-ignored. `/mode` never commits the file.
|
|
110
|
+
- If the file is missing the `roles:` section, add it in the correct
|
|
111
|
+
place (between `subagents:` and EOF) using the template layout.
|
|
112
|
+
- Mode names are case-sensitive in the file; case-insensitive on input.
|
|
113
|
+
- The contract is the source of truth, not this command β if the
|
|
114
|
+
guideline changes, this command reflects the new contract on next run.
|
|
115
|
+
|
|
116
|
+
## See also
|
|
117
|
+
|
|
118
|
+
- [`role-contracts`](../guidelines/agent-infra/role-contracts.md) β the six modes
|
|
119
|
+
- [`role-mode-adherence`](../rules/role-mode-adherence.md) β closing-output gate
|
|
120
|
+
- [`config-agent-settings`](config-agent-settings.md) β baseline settings writer
|
|
121
|
+
- [`ask-when-uncertain`](../rules/ask-when-uncertain.md) β never invent modes
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: module-create
|
|
3
|
+
skills: [laravel]
|
|
4
|
+
description: Create a new module from .module-template with interactive setup
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# module-create
|
|
9
|
+
|
|
10
|
+
## Instructions
|
|
11
|
+
|
|
12
|
+
### 1. Check for module support
|
|
13
|
+
|
|
14
|
+
- Check if `app/Modules/` exists.
|
|
15
|
+
- If not:
|
|
16
|
+
```
|
|
17
|
+
β οΈ No module system found (no app/Modules/ directory).
|
|
18
|
+
Should I set up the module structure? (y/n)
|
|
19
|
+
```
|
|
20
|
+
If yes β create `app/Modules/` and check if `ModuleServiceProvider` is registered.
|
|
21
|
+
If no β stop.
|
|
22
|
+
|
|
23
|
+
### 2. Check for template
|
|
24
|
+
|
|
25
|
+
- Check if `app/Modules/.module-template/` exists.
|
|
26
|
+
- If not:
|
|
27
|
+
```
|
|
28
|
+
β οΈ No module template found (.module-template/).
|
|
29
|
+
I'll create the module manually based on the standard structure.
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### 3. Ask for module details
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
π¦ Create new module
|
|
36
|
+
|
|
37
|
+
1. Module name (PascalCase, e.g. UserProfile, Reporting):
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Wait for name. Validate:
|
|
41
|
+
- Must be PascalCase
|
|
42
|
+
- Must not already exist in `app/Modules/`
|
|
43
|
+
- Must not contain special characters
|
|
44
|
+
|
|
45
|
+
Then ask:
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
2. Route-Prefix (kebab-case, z.B. user-profile, reporting):
|
|
49
|
+
Suggestion: {auto-generated-from-name}
|
|
50
|
+
|
|
51
|
+
3. Short description (one sentence):
|
|
52
|
+
|
|
53
|
+
4. Which route files should be created?
|
|
54
|
+
[x] API Routes (Routes/api.php)
|
|
55
|
+
[ ] Web Routes (Routes/web.php)
|
|
56
|
+
[x] Console Routes (Routes/console.php)
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### 4. Create the module
|
|
60
|
+
|
|
61
|
+
Copy `.module-template/` to `app/Modules/{ModuleName}/`:
|
|
62
|
+
|
|
63
|
+
1. Copy all files and directories.
|
|
64
|
+
2. Replace placeholders in all files:
|
|
65
|
+
- `[MODULE_NAME]` β `{ModuleName}`
|
|
66
|
+
- `[module-prefix]` β `{route-prefix}`
|
|
67
|
+
3. Update `README.md` with the module description.
|
|
68
|
+
4. Remove unchecked route files.
|
|
69
|
+
5. Create agent directories:
|
|
70
|
+
```
|
|
71
|
+
app/Modules/{ModuleName}/agents/
|
|
72
|
+
βββ features/.gitkeep
|
|
73
|
+
βββ roadmaps/.gitkeep
|
|
74
|
+
βββ contexts/.gitkeep
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 5. Verify namespace
|
|
78
|
+
|
|
79
|
+
Check that PSR-4 autoloading is configured for the new module:
|
|
80
|
+
|
|
81
|
+
```php
|
|
82
|
+
// composer.json β autoload β psr-4
|
|
83
|
+
"App\\Modules\\{ModuleName}\\": "app/Modules/{ModuleName}/"
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
If not configured, warn:
|
|
87
|
+
```
|
|
88
|
+
β οΈ PSR-4 autoloading not configured for App\Modules\{ModuleName}.
|
|
89
|
+
Please run `composer dump-autoload` or check if a wildcard mapping exists.
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 6. Show result
|
|
93
|
+
|
|
94
|
+
```
|
|
95
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
96
|
+
β
MODULE CREATED: {ModuleName}
|
|
97
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
98
|
+
|
|
99
|
+
π app/Modules/{ModuleName}/
|
|
100
|
+
App/ β
|
|
101
|
+
Routes/ β
(api.php, console.php)
|
|
102
|
+
Tests/ β
(Component/, Integration/, Unit/)
|
|
103
|
+
agents/ β
(features/, roadmaps/, contexts/)
|
|
104
|
+
README.md β
|
|
105
|
+
|
|
106
|
+
π Namespace: App\Modules\{ModuleName}\App\
|
|
107
|
+
π Route-Prefix: /api/v1/{route-prefix}
|
|
108
|
+
|
|
109
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### 7. Offer context and feature creation
|
|
113
|
+
|
|
114
|
+
```
|
|
115
|
+
What would you like to do next?
|
|
116
|
+
|
|
117
|
+
1. π Create module context β /context-create (documents structure & purpose)
|
|
118
|
+
2. π Plan first feature β /feature-plan (Module: {ModuleName})
|
|
119
|
+
3. β
Done for now β continue later
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
- **Option 1:** Transition to `/context-create` with the module pre-selected.
|
|
123
|
+
- **Option 2:** Transition to `/feature-plan` with the module pre-selected.
|
|
124
|
+
- **Option 3:** Remind about `composer dump-autoload` if needed, then stop.
|
|
125
|
+
|
|
126
|
+
### Rules
|
|
127
|
+
|
|
128
|
+
- **Do NOT commit or push.**
|
|
129
|
+
- **Do NOT modify existing modules.**
|
|
130
|
+
- **Do NOT run `composer dump-autoload`** β only suggest it.
|
|
131
|
+
- **Always use PascalCase** for module names.
|
|
132
|
+
- **Always create agent directories** with `.gitkeep`.
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: module-explore
|
|
3
|
+
skills: [laravel]
|
|
4
|
+
description: Explore a module β load its structure, docs, and context into the current conversation
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# module-explore
|
|
9
|
+
|
|
10
|
+
## Instructions
|
|
11
|
+
|
|
12
|
+
### 1. Check for modules
|
|
13
|
+
|
|
14
|
+
- **Laravel projects**: Check if `app/Modules/` exists.
|
|
15
|
+
- **Composer projects / packages**: Check `./agents/` or `src/` for domain directories.
|
|
16
|
+
- If neither exists:
|
|
17
|
+
```
|
|
18
|
+
β οΈ No module system found (no app/Modules/ directory).
|
|
19
|
+
```
|
|
20
|
+
Stop.
|
|
21
|
+
|
|
22
|
+
### 2. List available modules
|
|
23
|
+
|
|
24
|
+
Scan `app/Modules/` and show all modules (skip `.module-template` and hidden dirs):
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
π¦ Available modules:
|
|
28
|
+
|
|
29
|
+
# Module Directories Agent Docs Context
|
|
30
|
+
β ββββββββββββββββ ββββββββββββββ ββββββββββ βββββββ
|
|
31
|
+
1 ApiClient App, Routes β β
|
|
32
|
+
2 ClientSoftware App, Routes β
(roadmaps) β
|
|
33
|
+
3 Grafana App, Routes β
(roadmaps) β
|
|
34
|
+
4 Stubbing App β β
|
|
35
|
+
|
|
36
|
+
Which module do you want to explore? (number or name)
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### 3. Analyze the module
|
|
40
|
+
|
|
41
|
+
For the selected module, gather in parallel:
|
|
42
|
+
|
|
43
|
+
**Structure:**
|
|
44
|
+
- List all directories and files (2 levels deep)
|
|
45
|
+
- Count PHP files per directory (Controllers, Services, Models, Jobs, Commands, etc.)
|
|
46
|
+
- List route files and their contents
|
|
47
|
+
|
|
48
|
+
**Code:**
|
|
49
|
+
- Use `codebase-retrieval` to understand the module's purpose and key classes
|
|
50
|
+
- Read `README.md` if it exists
|
|
51
|
+
- Read agent docs (`agents/`) if they exist β including features, roadmaps, contexts
|
|
52
|
+
- Read `Docs/` if it exists (human-facing documentation)
|
|
53
|
+
|
|
54
|
+
**Tests:**
|
|
55
|
+
- Count test files per suite (Unit, Component, Integration)
|
|
56
|
+
|
|
57
|
+
**Roadmaps:**
|
|
58
|
+
- Check `agents/roadmaps/*.md` for active roadmaps
|
|
59
|
+
- For each: count completed vs total steps (e.g. "3/7 steps done")
|
|
60
|
+
- Highlight the next open step
|
|
61
|
+
|
|
62
|
+
**Context:**
|
|
63
|
+
- Check `agents/contexts/` for existing context docs (project-root and module-level)
|
|
64
|
+
- Check `agents/features/` for related feature plans
|
|
65
|
+
|
|
66
|
+
### 4. Display module overview
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
70
|
+
π¦ MODULE: {ModuleName}
|
|
71
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
72
|
+
|
|
73
|
+
{Description from README or auto-detected}
|
|
74
|
+
|
|
75
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
76
|
+
STRUCTURE:
|
|
77
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
78
|
+
|
|
79
|
+
App/
|
|
80
|
+
Console/Commands/ {count} Commands
|
|
81
|
+
Enums/ {count} Enums
|
|
82
|
+
Http/Controllers/ {count} Controllers
|
|
83
|
+
Http/Requests/ {count} Requests
|
|
84
|
+
Jobs/ {count} Jobs
|
|
85
|
+
Models/ {count} Models
|
|
86
|
+
Services/ {count} Services
|
|
87
|
+
|
|
88
|
+
Routes/
|
|
89
|
+
api.php {route count} Routes
|
|
90
|
+
console.php {command count} Commands
|
|
91
|
+
web.php {route count} Routes
|
|
92
|
+
|
|
93
|
+
Tests/
|
|
94
|
+
Unit/ {count} Tests
|
|
95
|
+
Component/ {count} Tests
|
|
96
|
+
Integration/ {count} Tests
|
|
97
|
+
|
|
98
|
+
Migrations/ {count} Migrations
|
|
99
|
+
Config/ {exists or not}
|
|
100
|
+
|
|
101
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
102
|
+
NAMESPACE:
|
|
103
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
104
|
+
|
|
105
|
+
App\Modules\{ModuleName}\App\
|
|
106
|
+
|
|
107
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
108
|
+
KEY CLASSES:
|
|
109
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
110
|
+
|
|
111
|
+
Services:
|
|
112
|
+
β’ {ServiceName} β {brief description}
|
|
113
|
+
β’ {ServiceName} β {brief description}
|
|
114
|
+
|
|
115
|
+
Controllers:
|
|
116
|
+
β’ {ControllerName} β {brief description}
|
|
117
|
+
|
|
118
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
119
|
+
AGENT DOCS:
|
|
120
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
121
|
+
|
|
122
|
+
{List of agent docs or "No agent docs found"}
|
|
123
|
+
|
|
124
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
125
|
+
ROADMAPS:
|
|
126
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
127
|
+
|
|
128
|
+
β’ {roadmap title} β {completed}/{total} steps (next: {next step title})
|
|
129
|
+
β’ "No roadmaps found" if none
|
|
130
|
+
|
|
131
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
132
|
+
CONTEXT:
|
|
133
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
134
|
+
|
|
135
|
+
{Existing context doc summary or "No context found"}
|
|
136
|
+
|
|
137
|
+
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### 5. Offer next steps
|
|
141
|
+
|
|
142
|
+
```
|
|
143
|
+
What would you like to do?
|
|
144
|
+
|
|
145
|
+
1. π Dive deeper β analyze a specific class/service
|
|
146
|
+
2. π Create context β /context-create
|
|
147
|
+
3. π Plan feature β /feature-plan (Module: {ModuleName})
|
|
148
|
+
4. πΊοΈ View roadmap (if available)
|
|
149
|
+
5. β
Done β module context is loaded
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Rules
|
|
153
|
+
|
|
154
|
+
- **Do NOT modify any code** β this command is read-only.
|
|
155
|
+
- **Do NOT commit or push.**
|
|
156
|
+
- **Load the module context** into your understanding for the rest of the conversation.
|
|
157
|
+
- **Remember the module** for follow-up commands (feature-plan, context-create, etc.).
|