@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,137 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agents-prepare
|
|
3
|
+
skills: [agent-docs-writing]
|
|
4
|
+
description: Scaffold the agents/ directory structure with all required subdirectories and .gitkeep files
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# agents-prepare
|
|
9
|
+
|
|
10
|
+
## Instructions
|
|
11
|
+
|
|
12
|
+
### 1. Check project root
|
|
13
|
+
|
|
14
|
+
Verify you're in the project root (look for `composer.json`, `artisan`, or `package.json`).
|
|
15
|
+
|
|
16
|
+
### 2. Create directory structure
|
|
17
|
+
|
|
18
|
+
Create the following directories if they don't exist, with a `.gitkeep` in each **empty** directory:
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
agents/
|
|
22
|
+
├── roadmaps/
|
|
23
|
+
│ └── .gitkeep
|
|
24
|
+
├── features/
|
|
25
|
+
│ └── .gitkeep
|
|
26
|
+
└── contexts/
|
|
27
|
+
└── .gitkeep
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Also create the guidelines directory in `.augment/` if it doesn't exist:
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
.augment/guidelines/
|
|
34
|
+
└── php/
|
|
35
|
+
└── .gitkeep
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
**Rules:**
|
|
39
|
+
- Only add `.gitkeep` to directories that have **no other files** in them.
|
|
40
|
+
- Do NOT overwrite existing files.
|
|
41
|
+
- Do NOT create directories that already exist with content.
|
|
42
|
+
|
|
43
|
+
### 3. Check for module support
|
|
44
|
+
|
|
45
|
+
Check if the project has a module system (`app/Modules/` directory):
|
|
46
|
+
|
|
47
|
+
- If `app/Modules/` exists → list all modules.
|
|
48
|
+
- For each module, create the agent directories if they don't exist:
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
app/Modules/{Module}/agents/
|
|
52
|
+
├── roadmaps/
|
|
53
|
+
│ └── .gitkeep
|
|
54
|
+
├── features/
|
|
55
|
+
│ └── .gitkeep
|
|
56
|
+
├── contexts/
|
|
57
|
+
│ └── .gitkeep
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### 4. Verify templates exist
|
|
61
|
+
|
|
62
|
+
Check that `.augment/templates/` contains the required templates:
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
.augment/templates/
|
|
66
|
+
├── features.md # Feature plan template
|
|
67
|
+
├── roadmaps.md # Roadmap template
|
|
68
|
+
└── contexts.md # Context document template
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
If any template is missing, warn:
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
⚠️ Missing templates in .augment/templates/:
|
|
75
|
+
- {missing-file}
|
|
76
|
+
|
|
77
|
+
These templates are required by the Feature/Roadmap commands.
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### 5. Clean up old templates
|
|
81
|
+
|
|
82
|
+
Check for **old template files** in the agents directories and offer to remove them:
|
|
83
|
+
|
|
84
|
+
```
|
|
85
|
+
agents/features/template.md
|
|
86
|
+
agents/roadmaps/template.md
|
|
87
|
+
app/Modules/*/agents/roadmaps/template.md
|
|
88
|
+
app/Modules/*/agents/features/template.md
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
If any are found:
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
ℹ️ Old template files found (now in .augment/templates/):
|
|
95
|
+
|
|
96
|
+
- agents/features/template.md
|
|
97
|
+
- agents/roadmaps/template.md
|
|
98
|
+
|
|
99
|
+
Delete these? (y/n)
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
If yes → delete them.
|
|
103
|
+
|
|
104
|
+
### 6. Show summary
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
═══════════════════════════════════════════════
|
|
108
|
+
✅ AGENTS-VERZEICHNIS VORBEREITET
|
|
109
|
+
═══════════════════════════════════════════════
|
|
110
|
+
|
|
111
|
+
📁 Projekt-Root:
|
|
112
|
+
agents/roadmaps/ {✅ existiert | 🆕 erstellt}
|
|
113
|
+
agents/features/ {✅ existiert | 🆕 erstellt}
|
|
114
|
+
.augment/guidelines/ {✅ existiert | 🆕 erstellt}
|
|
115
|
+
|
|
116
|
+
📁 Templates:
|
|
117
|
+
.augment/templates/features.md {✅ | ⚠️ fehlt}
|
|
118
|
+
.augment/templates/roadmaps.md {✅ | ⚠️ fehlt}
|
|
119
|
+
|
|
120
|
+
{If modules exist:}
|
|
121
|
+
📁 Module:
|
|
122
|
+
{Module}/agents/roadmaps/ {✅ | 🆕}
|
|
123
|
+
{Module}/agents/features/ {✅ | 🆕}
|
|
124
|
+
...
|
|
125
|
+
|
|
126
|
+
{If old templates were cleaned up:}
|
|
127
|
+
🗑️ Old templates removed: {count}
|
|
128
|
+
|
|
129
|
+
═══════════════════════════════════════════════
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Rules
|
|
133
|
+
|
|
134
|
+
- **Do NOT commit or push.**
|
|
135
|
+
- **Do NOT overwrite existing files.**
|
|
136
|
+
- **Do NOT create `.gitkeep` in directories that already have files.**
|
|
137
|
+
- **Always ask before deleting** old template files.
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: analyze-reference-repo
|
|
3
|
+
skills: [project-analyzer, learning-to-rule-or-skill]
|
|
4
|
+
description: Analyze an external reference repository (competitor, inspiration, peer) and produce a structured comparison + adoption plan for this project.
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# analyze-reference-repo
|
|
9
|
+
|
|
10
|
+
Analyze a **different** repository (a competitor, a reference implementation, or a
|
|
11
|
+
project the user admires) and produce a structured document that:
|
|
12
|
+
|
|
13
|
+
- maps what the reference does well,
|
|
14
|
+
- compares it against **this** project,
|
|
15
|
+
- classifies each finding (adopt / adapt / reject / already-have),
|
|
16
|
+
- proposes concrete adoption items,
|
|
17
|
+
- optionally generates a roadmap draft for the adopt items.
|
|
18
|
+
|
|
19
|
+
**Not** for analyzing the current project — use `/project-analyze` for that.
|
|
20
|
+
**Not** for importing external skills wholesale — out of scope for this
|
|
21
|
+
package; fork the reference repo or maintain the content in your own.
|
|
22
|
+
|
|
23
|
+
## Inputs
|
|
24
|
+
|
|
25
|
+
The user provides a repository URL. Accept:
|
|
26
|
+
|
|
27
|
+
- Full GitHub URL (`https://github.com/owner/repo`)
|
|
28
|
+
- `owner/repo` shorthand
|
|
29
|
+
- A raw archive URL (zip/tar) for private or mirrored repos
|
|
30
|
+
|
|
31
|
+
Optional arguments:
|
|
32
|
+
|
|
33
|
+
- `--focus=<area>` — restrict analysis to one axis (e.g. `installer`,
|
|
34
|
+
`skills`, `mcp`, `governance`, `ci`). Default: full-surface.
|
|
35
|
+
- `--no-roadmap` — skip the roadmap-draft step.
|
|
36
|
+
|
|
37
|
+
## Steps
|
|
38
|
+
|
|
39
|
+
### 1. Confirm scope
|
|
40
|
+
|
|
41
|
+
Before touching anything, ask:
|
|
42
|
+
|
|
43
|
+
> Found reference: `<owner/repo>`.
|
|
44
|
+
>
|
|
45
|
+
> 1. Full comparison — all axes (default)
|
|
46
|
+
> 2. Focused — one axis (I'll ask which)
|
|
47
|
+
> 3. Quick scan — README + top-level layout only
|
|
48
|
+
> 4. Cancel
|
|
49
|
+
|
|
50
|
+
Wait for the user's choice.
|
|
51
|
+
|
|
52
|
+
### 2. Fetch the reference surface
|
|
53
|
+
|
|
54
|
+
Do **not** clone or execute the target repo. Fetch only:
|
|
55
|
+
|
|
56
|
+
- `README.md`, `AGENTS.md`, `CHANGELOG.md`, `LICENSE`
|
|
57
|
+
- `package.json` / `composer.json` / `pyproject.toml` / `Cargo.toml`
|
|
58
|
+
- Top-level file listing (1 level deep)
|
|
59
|
+
- One level of key directories: `docs/`, `scripts/`, `commands/`, `skills/`,
|
|
60
|
+
`rules/`, `.github/workflows/`
|
|
61
|
+
- Any file the README explicitly points to
|
|
62
|
+
|
|
63
|
+
Use `web-fetch` for rendered files, GitHub REST
|
|
64
|
+
(`/repos/{o}/{r}/contents/{p}`) for listings. **Max 40 fetches** — if more is
|
|
65
|
+
needed, ask which subtree to expand.
|
|
66
|
+
|
|
67
|
+
### 3. Extract structured facts
|
|
68
|
+
|
|
69
|
+
For each axis, record **one line** of verified fact or "not found":
|
|
70
|
+
|
|
71
|
+
| Axis | What to capture |
|
|
72
|
+
|---|---|
|
|
73
|
+
| **Distribution** | How is it installed? (npm global / composer / pip / manual) |
|
|
74
|
+
| **Scope** | User-scoped, project-scoped, both? |
|
|
75
|
+
| **Skill model** | What is a "skill" here? Folder shape, frontmatter, size? |
|
|
76
|
+
| **Rule model** | How are rules triggered? Auto / manual / always-on? |
|
|
77
|
+
| **Installer** | One script or many? Idempotent? Uninstall? |
|
|
78
|
+
| **Multi-tool** | Which AI tools are supported? How is the output generated? |
|
|
79
|
+
| **MCP** | MCP server config generation? Secret handling? |
|
|
80
|
+
| **Governance** | Linters? Size limits? Quality gates? |
|
|
81
|
+
| **External sources** | Can users add third-party skills? |
|
|
82
|
+
| **CI** | Auto-sync? Quality checks? Release automation? |
|
|
83
|
+
| **Docs** | README structure, examples, architecture docs |
|
|
84
|
+
| **Community** | Contribution docs, maintainers, license, activity |
|
|
85
|
+
|
|
86
|
+
Reject anything you cannot verify from the fetched files — write "not found"
|
|
87
|
+
rather than guess.
|
|
88
|
+
|
|
89
|
+
### 4. Compare against this project
|
|
90
|
+
|
|
91
|
+
Add a **this-repo** column per axis. Sources of truth:
|
|
92
|
+
`.agent-src.uncompressed/` (skills/rules/commands), `docs/architecture.md`
|
|
93
|
+
(stable/experimental), `scripts/` (installer), `.github/workflows/` (CI).
|
|
94
|
+
Never invent capabilities — if we don't have it, say so.
|
|
95
|
+
|
|
96
|
+
### 5. Classify every finding
|
|
97
|
+
|
|
98
|
+
One label per row:
|
|
99
|
+
|
|
100
|
+
| Label | Meaning |
|
|
101
|
+
|---|---|
|
|
102
|
+
| **ADOPT** | Clear win. Implement. |
|
|
103
|
+
| **ADAPT** | Good idea, must fit our governance. |
|
|
104
|
+
| **REJECT** | Conflicts with our principles. |
|
|
105
|
+
| **ALREADY** | We already have it (possibly better). |
|
|
106
|
+
| **UNCLEAR** | Needs human judgement — flag. |
|
|
107
|
+
|
|
108
|
+
ADOPT/ADAPT rows must cite the reference source (file/line/URL).
|
|
109
|
+
|
|
110
|
+
### 6. Write the analysis document
|
|
111
|
+
|
|
112
|
+
Target: `agents/analysis/compare-<slug>.md`.
|
|
113
|
+
Slug rule: `<owner>-<repo>` lowercased, non-alphanumeric → `-`, collapse runs.
|
|
114
|
+
|
|
115
|
+
Document structure (copy into the file):
|
|
116
|
+
|
|
117
|
+
```markdown
|
|
118
|
+
# Reference analysis: {owner}/{repo}
|
|
119
|
+
|
|
120
|
+
> One-sentence framing of why this reference matters.
|
|
121
|
+
|
|
122
|
+
- **Source:** https://github.com/{owner}/{repo}
|
|
123
|
+
- **Fetched commit:** {sha} ({date})
|
|
124
|
+
- **Focus:** {full | area}
|
|
125
|
+
- **Analyst:** agent via `/analyze-reference-repo`
|
|
126
|
+
|
|
127
|
+
## TL;DR
|
|
128
|
+
|
|
129
|
+
- Top 3 things to ADOPT
|
|
130
|
+
- Top 3 things to REJECT (and why)
|
|
131
|
+
- Top 3 things we ALREADY do better
|
|
132
|
+
|
|
133
|
+
## Comparison matrix
|
|
134
|
+
|
|
135
|
+
| Axis | Reference | This repo | Label | Notes |
|
|
136
|
+
|---|---|---|---|---|
|
|
137
|
+
|
|
138
|
+
## Findings
|
|
139
|
+
|
|
140
|
+
### ADOPT
|
|
141
|
+
### ADAPT
|
|
142
|
+
### REJECT
|
|
143
|
+
### ALREADY
|
|
144
|
+
### UNCLEAR
|
|
145
|
+
|
|
146
|
+
## Proposed roadmap items
|
|
147
|
+
|
|
148
|
+
{Only if --no-roadmap was not set.}
|
|
149
|
+
|
|
150
|
+
## Open questions for the maintainer
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
### 7. Offer next steps
|
|
154
|
+
|
|
155
|
+
After writing the file, present:
|
|
156
|
+
|
|
157
|
+
> Analysis written to `agents/analysis/compare-{slug}.md`.
|
|
158
|
+
>
|
|
159
|
+
> 1. Draft roadmap from ADOPT/ADAPT — `agents/roadmaps/adopt-{slug}.md`
|
|
160
|
+
> 2. Merge findings into an existing roadmap — say which
|
|
161
|
+
> 3. Stop here
|
|
162
|
+
> 4. Deep-dive on one axis — say which
|
|
163
|
+
|
|
164
|
+
Never create the roadmap without explicit confirmation.
|
|
165
|
+
|
|
166
|
+
## Output location
|
|
167
|
+
|
|
168
|
+
`agents/analysis/` (create if missing, with `.gitkeep`). Same convention as
|
|
169
|
+
`project-analyzer`.
|
|
170
|
+
|
|
171
|
+
## Safety
|
|
172
|
+
|
|
173
|
+
- Read-only on the reference. Never clone, execute, or submit PRs to it.
|
|
174
|
+
- No credentials in fetches. Public GitHub API is enough. For private mirrors,
|
|
175
|
+
take a PAT via env var and never echo it.
|
|
176
|
+
- Max 40 fetches without explicit extension.
|
|
177
|
+
- No auto-commits — the analysis is a draft until the user accepts.
|
|
178
|
+
|
|
179
|
+
## When **not** to use
|
|
180
|
+
|
|
181
|
+
- Analyzing the current repo → `/project-analyze`.
|
|
182
|
+
- Importing external skills wholesale → out of scope; fork or maintain your own.
|
|
183
|
+
- Security audit of a dependency → `security-audit` skill.
|
|
184
|
+
- Framework migration → `project-analysis-*` skill family.
|
|
185
|
+
|
|
186
|
+
## Related
|
|
187
|
+
|
|
188
|
+
- Skill: `project-analyzer` — base analysis workflow.
|
|
189
|
+
- Skill: `learning-to-rule-or-skill` — turn adopt items into content.
|
|
190
|
+
- Skill: `upstream-contribute` — push learnings back to this package.
|
|
191
|
+
- Roadmaps: `agents/roadmaps/` — consumers of findings (e.g. `archive/road-to-anthropic-alignment.md`).
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: bug-fix
|
|
3
|
+
skills: [bug-analyzer, pest-testing]
|
|
4
|
+
description: Plan and implement a bug fix — based on investigation, with quality checks and test verification
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# bug-fix
|
|
9
|
+
|
|
10
|
+
## Instructions
|
|
11
|
+
|
|
12
|
+
### 1. Check for prior investigation
|
|
13
|
+
|
|
14
|
+
- Check if `/bug-investigate` was run in this conversation (context should be loaded).
|
|
15
|
+
- If not, ask:
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
⚠️ Has the bug already been analyzed?
|
|
19
|
+
|
|
20
|
+
1. Yes — I have the context from the previous analysis
|
|
21
|
+
2. No — run /bug-investigate first
|
|
22
|
+
3. I already know the root cause — start fixing directly
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
If option 3, ask for a brief description of the root cause and affected files.
|
|
26
|
+
|
|
27
|
+
### 2. Plan the fix
|
|
28
|
+
|
|
29
|
+
Based on the root cause analysis, create a fix plan:
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
═══════════════════════════════════════════════
|
|
33
|
+
🔧 FIX-PLAN
|
|
34
|
+
═══════════════════════════════════════════════
|
|
35
|
+
|
|
36
|
+
🐛 Bug: {brief description}
|
|
37
|
+
📍 Ursache: {root cause}
|
|
38
|
+
🎫 Ticket: {ticket ID or "none"}
|
|
39
|
+
|
|
40
|
+
───────────────────────────────────────────────
|
|
41
|
+
CHANGES:
|
|
42
|
+
───────────────────────────────────────────────
|
|
43
|
+
|
|
44
|
+
1. 📁 {file1.php}
|
|
45
|
+
→ {what to change and why}
|
|
46
|
+
|
|
47
|
+
2. 📁 {file2.php}
|
|
48
|
+
→ {what to change and why}
|
|
49
|
+
|
|
50
|
+
3. 🧪 Tests
|
|
51
|
+
→ {which tests to add/update}
|
|
52
|
+
|
|
53
|
+
───────────────────────────────────────────────
|
|
54
|
+
RISIKO-CHECK:
|
|
55
|
+
───────────────────────────────────────────────
|
|
56
|
+
|
|
57
|
+
Side effects: {potential side effects}
|
|
58
|
+
Similar spots: {other code that might need the same fix}
|
|
59
|
+
Migration needed: {yes/no}
|
|
60
|
+
Breaking change: {yes/no}
|
|
61
|
+
|
|
62
|
+
═══════════════════════════════════════════════
|
|
63
|
+
|
|
64
|
+
> 1. Yes — start implementing
|
|
65
|
+
> 2. No — adjust the plan
|
|
66
|
+
> 3. Cancel
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### 3. Implement the fix
|
|
70
|
+
|
|
71
|
+
For each change:
|
|
72
|
+
|
|
73
|
+
1. **Read the file** before modifying.
|
|
74
|
+
2. **Make the change** using `str-replace-editor`.
|
|
75
|
+
3. **Check for downstream effects** — use `codebase-retrieval` to find callers.
|
|
76
|
+
4. **Update related code** if signatures or behavior changed.
|
|
77
|
+
|
|
78
|
+
### 4. Quality checks
|
|
79
|
+
|
|
80
|
+
After all changes, run quality tools:
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
vendor/bin/phpstan analyse # 1. Check for type errors
|
|
84
|
+
vendor/bin/rector process # 2. Auto-fix refactoring
|
|
85
|
+
vendor/bin/ecs check --fix # 3. Auto-fix code style
|
|
86
|
+
vendor/bin/phpstan analyse # 4. Re-check after Rector/ECS
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Show results and fix any issues.
|
|
90
|
+
|
|
91
|
+
### 5. Tests
|
|
92
|
+
|
|
93
|
+
Check for existing tests that cover the affected code:
|
|
94
|
+
|
|
95
|
+
```
|
|
96
|
+
🧪 Existing tests:
|
|
97
|
+
• {TestFile}::{testMethod} — {what it tests}
|
|
98
|
+
• ...
|
|
99
|
+
|
|
100
|
+
> 1. Run these tests
|
|
101
|
+
> 2. Write new tests for the fix
|
|
102
|
+
> 3. Both
|
|
103
|
+
> 4. Skip tests for now
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
- **Run affected tests** to verify the fix doesn't break anything.
|
|
107
|
+
- **Write new tests** if the bug scenario isn't covered.
|
|
108
|
+
- **Run all tests** at the end.
|
|
109
|
+
|
|
110
|
+
### 6. Show result
|
|
111
|
+
|
|
112
|
+
```
|
|
113
|
+
═══════════════════════════════════════════════
|
|
114
|
+
✅ FIX IMPLEMENTED
|
|
115
|
+
═══════════════════════════════════════════════
|
|
116
|
+
|
|
117
|
+
🐛 Bug: {description}
|
|
118
|
+
🎫 Ticket: {ticket ID}
|
|
119
|
+
|
|
120
|
+
───────────────────────────────────────────────
|
|
121
|
+
CHANGES:
|
|
122
|
+
───────────────────────────────────────────────
|
|
123
|
+
|
|
124
|
+
✏️ {file1.php} — {summary of change}
|
|
125
|
+
✏️ {file2.php} — {summary of change}
|
|
126
|
+
🧪 {TestFile.php} — {new/updated test}
|
|
127
|
+
|
|
128
|
+
───────────────────────────────────────────────
|
|
129
|
+
QUALITY:
|
|
130
|
+
───────────────────────────────────────────────
|
|
131
|
+
|
|
132
|
+
PHPStan: {✅ passed | ❌ errors}
|
|
133
|
+
Rector: {✅ no changes | ✏️ auto-fixed}
|
|
134
|
+
Tests: {✅ all passed | ❌ failures}
|
|
135
|
+
|
|
136
|
+
═══════════════════════════════════════════════
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### 7. Emit a memory signal (post-resolution)
|
|
140
|
+
|
|
141
|
+
If the root cause is a recognizable pattern (not a one-off typo),
|
|
142
|
+
drop a `historical-patterns` signal so future work benefits:
|
|
143
|
+
|
|
144
|
+
```bash
|
|
145
|
+
python3 scripts/memory_signal.py \
|
|
146
|
+
--type historical-patterns \
|
|
147
|
+
--path "<primary affected file>" \
|
|
148
|
+
--body "<root cause → fix, one sentence>" \
|
|
149
|
+
--origin "bug-fix" \
|
|
150
|
+
--extra '{"symptom":"<observed symptom>","severity":"<low|medium|high>"}'
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
The helper deduplicates within a 7-day window, so repeated fixes of
|
|
154
|
+
the same symptom only emit once. See
|
|
155
|
+
[`/propose-memory`](propose-memory.md) for the universal write path.
|
|
156
|
+
|
|
157
|
+
Skip this step for trivial fixes (typos, comment updates).
|
|
158
|
+
|
|
159
|
+
### 8. Offer next steps
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
What next?
|
|
163
|
+
|
|
164
|
+
1. 🧪 Write more tests
|
|
165
|
+
2. 🔍 Check and fix similar spots in the code
|
|
166
|
+
3. ✅ Done
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### Rules
|
|
170
|
+
|
|
171
|
+
- **Do NOT commit or push** without permission.
|
|
172
|
+
- **Always run PHPStan** after changes.
|
|
173
|
+
- **Always run affected tests** before declaring the fix done.
|
|
174
|
+
- **Check for similar patterns** — if the bug exists in one place, it likely exists elsewhere.
|
|
175
|
+
- **Present the fix plan** before implementing — let the user confirm.
|
|
176
|
+
- **Update existing tests** that are affected by the change.
|
|
177
|
+
- **Write new tests** for the specific bug scenario (regression test).
|
|
178
|
+
|
|
179
|
+
## See also
|
|
180
|
+
|
|
181
|
+
- [`role-contracts`](../guidelines/agent-infra/role-contracts.md#developer) — Developer mode output contract (Goal / Plan / Changes / Tests / Open questions)
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: bug-investigate
|
|
3
|
+
skills: [bug-analyzer, sentry-integration]
|
|
4
|
+
description: Investigate a bug — auto-detect ticket from branch, gather Jira/Sentry/description context, trace root cause
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# bug-investigate
|
|
9
|
+
|
|
10
|
+
## Instructions
|
|
11
|
+
|
|
12
|
+
### 1. Auto-detect ticket from branch
|
|
13
|
+
|
|
14
|
+
Run `git branch --show-current` and extract ticket IDs:
|
|
15
|
+
|
|
16
|
+
- Match pattern: `[A-Z]+-[0-9]+` (e.g., `DEV-1234`, `PROJ-567`)
|
|
17
|
+
- Common branch formats: `fix/DEV-1234/description`, `hotfix/DEV-999`, `fix/bug-description`
|
|
18
|
+
|
|
19
|
+
If a ticket ID is found:
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
🔀 Branch: {branch-name}
|
|
23
|
+
🎫 Ticket detected: {TICKET-ID}
|
|
24
|
+
|
|
25
|
+
> 1. Yes — load ticket
|
|
26
|
+
> 2. No — skip
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
If yes → fetch via Jira API and show summary (see step 2).
|
|
30
|
+
If no ticket found → continue to step 2.
|
|
31
|
+
|
|
32
|
+
### 2. Ask for bug sources
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
🐛 Bug Investigation
|
|
36
|
+
|
|
37
|
+
What information do you have? (multiple allowed)
|
|
38
|
+
|
|
39
|
+
1. 🎫 Jira ticket(s) — provide key(s) (e.g. DEV-1234)
|
|
40
|
+
2. 🔴 Sentry issue — provide URL or issue ID
|
|
41
|
+
3. 💬 Bug description — describe the bug manually
|
|
42
|
+
4. 📋 Error message — paste error message or stacktrace
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Accept **multiple sources** — the more context, the better.
|
|
46
|
+
|
|
47
|
+
### 3. Gather context from each source
|
|
48
|
+
|
|
49
|
+
**Jira ticket (if provided):**
|
|
50
|
+
- Fetch via Jira API (`/issue/{key}`).
|
|
51
|
+
- Extract: title, description, priority, status, comments, linked issues.
|
|
52
|
+
- Check for linked Sentry issues in comments or description.
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
🎫 Jira: {KEY} — {title}
|
|
56
|
+
|
|
57
|
+
Status: {status} | Priority: {priority}
|
|
58
|
+
Description: {summary}
|
|
59
|
+
Comments: {count} ({key points})
|
|
60
|
+
Sentry links: {extracted URLs or "none found"}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
**Sentry issue (if provided):**
|
|
64
|
+
- Use `get_issue_details` with the URL or issue ID.
|
|
65
|
+
- Use `get_issue_tag_values` for environment, browser, URL distribution.
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
🔴 Sentry: {issue-title}
|
|
69
|
+
|
|
70
|
+
Events: {count} | Users: {count}
|
|
71
|
+
Erste: {first seen} | Letzte: {last seen}
|
|
72
|
+
Environment: {distribution}
|
|
73
|
+
Stacktrace: {top 3-5 frames}
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
**Error message (if provided):**
|
|
77
|
+
- Search codebase for the exact message string.
|
|
78
|
+
- Show matching files and line numbers.
|
|
79
|
+
|
|
80
|
+
**User description (if provided):**
|
|
81
|
+
- Note reproduction steps and expected vs. actual behavior.
|
|
82
|
+
|
|
83
|
+
### 4. Analyze the code
|
|
84
|
+
|
|
85
|
+
Based on gathered context:
|
|
86
|
+
|
|
87
|
+
1. **Read the stacktrace** (if available) — trace from top frame down.
|
|
88
|
+
2. **Use `codebase-retrieval`** to find related code.
|
|
89
|
+
3. **Read each file** in the call chain.
|
|
90
|
+
4. **Check for context docs** — `agents/contexts/` or module `agents/contexts/`.
|
|
91
|
+
5. **Read `agents/memory/incident-learnings.yml`** (if it exists) for
|
|
92
|
+
entries whose `scope:` overlaps with the touched files or the error
|
|
93
|
+
signature. A prior incident may already describe the root cause,
|
|
94
|
+
the fix, and the regression test that should have caught it. Cite
|
|
95
|
+
the matching `id:` in the root-cause report.
|
|
96
|
+
6. **Identify the data flow** — where does the bad data/state come from?
|
|
97
|
+
|
|
98
|
+
**Share findings as you go:**
|
|
99
|
+
|
|
100
|
+
```
|
|
101
|
+
🔍 Code-Analyse:
|
|
102
|
+
|
|
103
|
+
Einstiegspunkt: {controller/command/job}
|
|
104
|
+
→ {ServiceClass}::{method}() (Zeile {n})
|
|
105
|
+
→ {RepositoryClass}::{method}() (Zeile {n})
|
|
106
|
+
→ ❌ Hier passiert der Fehler: {description}
|
|
107
|
+
|
|
108
|
+
Affected files:
|
|
109
|
+
• {file1.php} — {role in the bug}
|
|
110
|
+
• {file2.php} — {role in the bug}
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### 5. Present root cause
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
═══════════════════════════════════════════════
|
|
117
|
+
🐛 ROOT CAUSE ANALYSE
|
|
118
|
+
═══════════════════════════════════════════════
|
|
119
|
+
|
|
120
|
+
📍 Fehler: {what happens}
|
|
121
|
+
🔍 Ursache: {why it happens — the root cause}
|
|
122
|
+
📁 Betroffen: {files and lines}
|
|
123
|
+
🌍 Impact: {how many users/events, which environments}
|
|
124
|
+
|
|
125
|
+
───────────────────────────────────────────────
|
|
126
|
+
EXPLANATION:
|
|
127
|
+
───────────────────────────────────────────────
|
|
128
|
+
|
|
129
|
+
{2-5 sentences explaining the root cause in plain language.
|
|
130
|
+
Trace the data flow that leads to the error.}
|
|
131
|
+
|
|
132
|
+
───────────────────────────────────────────────
|
|
133
|
+
SUGGESTED FIX:
|
|
134
|
+
───────────────────────────────────────────────
|
|
135
|
+
|
|
136
|
+
{High-level description of the fix. Which files to change, what to add/remove.}
|
|
137
|
+
|
|
138
|
+
1. {concrete step}
|
|
139
|
+
2. {concrete step}
|
|
140
|
+
3. Tests: {what to test}
|
|
141
|
+
|
|
142
|
+
───────────────────────────────────────────────
|
|
143
|
+
SIMILAR SPOTS:
|
|
144
|
+
───────────────────────────────────────────────
|
|
145
|
+
|
|
146
|
+
{Other code locations with the same pattern that might have the same bug.}
|
|
147
|
+
|
|
148
|
+
═══════════════════════════════════════════════
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### 6. Offer next steps
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
What's next?
|
|
155
|
+
|
|
156
|
+
1. 🔧 Fix implementieren → /bug-fix
|
|
157
|
+
2. 🔍 Tiefer analysieren (bestimmte Stelle genauer untersuchen)
|
|
158
|
+
3. 📋 Als Feature/Refactoring planen → /feature-plan
|
|
159
|
+
4. ✅ Done — only the analysis was needed
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### Rules
|
|
163
|
+
|
|
164
|
+
- **Do NOT commit or push.**
|
|
165
|
+
- **Do NOT start fixing before presenting the root cause.**
|
|
166
|
+
- **Always check the branch** for ticket IDs first.
|
|
167
|
+
- **Combine all sources** — Jira + Sentry + description give the best picture.
|
|
168
|
+
- **Trace to the root cause** — don't just describe the symptom.
|
|
169
|
+
- **Check for similar patterns** elsewhere in the codebase.
|
|
170
|
+
- **Use Sentry tools** (`get_issue_details`, `get_issue_tag_values`) when URLs are available.
|
|
171
|
+
|
|
172
|
+
## See also
|
|
173
|
+
|
|
174
|
+
- [`role-contracts`](../guidelines/agent-infra/role-contracts.md#incident) — Incident mode output contract (Symptom / Reproduction / Minimal reversible change / Deferred verification / Follow-up commitment) — use when the bug is a live production issue with `break-glass: true`
|
|
175
|
+
- [`role-contracts`](../guidelines/agent-infra/role-contracts.md#developer) — Developer mode output contract for non-incident bugs
|