@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,110 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "auto"
|
|
3
|
+
description: "Creating, editing, or reviewing skills — minimum quality standard, every skill must be executable, validated, and self-contained"
|
|
4
|
+
alwaysApply: false
|
|
5
|
+
source: package
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Skill Quality
|
|
9
|
+
|
|
10
|
+
## Minimum Sharpness
|
|
11
|
+
|
|
12
|
+
Every skill must answer four questions. If ANY answer is weak, the skill is not done.
|
|
13
|
+
|
|
14
|
+
| # | Question | Section | Standard |
|
|
15
|
+
|---|---|---|---|
|
|
16
|
+
| 1 | When should I use this? | `When to use` | Concrete trigger, not generic |
|
|
17
|
+
| 2 | What exactly do I do? | `Procedure` | Executable steps with decisions |
|
|
18
|
+
| 3 | How do I verify it worked? | `Procedure` (validation step) | Concrete checks, not "verify it works" |
|
|
19
|
+
| 4 | What common failure must I avoid? | `Gotcha` + `Do NOT` | Real failure patterns, not platitudes |
|
|
20
|
+
|
|
21
|
+
## Required Sections
|
|
22
|
+
|
|
23
|
+
Every skill MUST have: `When to use`, `Procedure`, `Gotcha`, `Output format`, `Do NOT`.
|
|
24
|
+
|
|
25
|
+
## Frontmatter Contract
|
|
26
|
+
|
|
27
|
+
Every skill's YAML frontmatter MUST validate against `scripts/schemas/skill.schema.json`.
|
|
28
|
+
See [`agents/docs/frontmatter-contract.md`](../../../agents/docs/frontmatter-contract.md)
|
|
29
|
+
for the human-readable contract across all artefact types. Violations are
|
|
30
|
+
reported by `scripts/skill_linter.py` as `schema_<rule>` errors and fail
|
|
31
|
+
`task validate-schema` / `task ci`.
|
|
32
|
+
|
|
33
|
+
## Description Triggering
|
|
34
|
+
|
|
35
|
+
Claude routes skills by reading the frontmatter `description`. Polite, generic,
|
|
36
|
+
or hedged descriptions cause **undertriggering** — the skill never loads when it
|
|
37
|
+
should, and the user never learns it exists.
|
|
38
|
+
|
|
39
|
+
Make descriptions "pushy" — explicit about when to fire:
|
|
40
|
+
|
|
41
|
+
- Start with a concrete verb phrase: `Use when ...`, `Creates ...`, `Reviews ...`.
|
|
42
|
+
- Name 2+ concrete triggers — domains, symptoms, file types, user phrasing.
|
|
43
|
+
- End with: `... even if they don't explicitly ask for \`<skill-name>\`.`
|
|
44
|
+
- Avoid hedges: `may help with`, `can be useful for`, `covers various`.
|
|
45
|
+
- **Keep it ≤ 200 characters.** `scripts/skill_linter.py` warns at
|
|
46
|
+
`description_too_long` above this. If the pushy tail pushes you over, cut
|
|
47
|
+
adjectives, drop the second example phrasing, or collapse a list — do
|
|
48
|
+
**not** drop the trigger vocabulary or the `even if ...` tail.
|
|
49
|
+
|
|
50
|
+
Source: [`skills/skill-creator` in `anthropics/skills`](https://github.com/anthropics/skills/blob/main/skills/skill-creator/SKILL.md)
|
|
51
|
+
— description-optimization guidance adopted via
|
|
52
|
+
[`agents/roadmaps/archive/road-to-anthropic-alignment.md`](../../../agents/roadmaps/archive/road-to-anthropic-alignment.md)
|
|
53
|
+
Phase 2.
|
|
54
|
+
|
|
55
|
+
**Litmus test:** Read the description cold, without the skill's body. If you
|
|
56
|
+
cannot name at least two phrasings a user would realistically type that should
|
|
57
|
+
route to this skill, the description is too polite. Rewrite it.
|
|
58
|
+
|
|
59
|
+
## Skill Independence
|
|
60
|
+
|
|
61
|
+
```
|
|
62
|
+
If a skill is not executable without opening a guideline, it is broken.
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
- Skills MAY reference guidelines for detailed conventions
|
|
66
|
+
- Skills MUST NOT outsource their core workflow to guidelines
|
|
67
|
+
- If removing guideline references makes the skill useless → the skill is too weak
|
|
68
|
+
|
|
69
|
+
**Litmus test:** Cover all guideline references in the Procedure. Is it still executable?
|
|
70
|
+
If not → the skill needs more own steps, decisions, and validation — not more guideline links.
|
|
71
|
+
|
|
72
|
+
## Merge Preservation
|
|
73
|
+
|
|
74
|
+
When merging or refactoring skills, the merged result MUST preserve:
|
|
75
|
+
|
|
76
|
+
1. **Strongest validation** from each source skill
|
|
77
|
+
2. **Strongest example** (good/bad contrast) from each source
|
|
78
|
+
3. **Strongest anti-pattern** from each source
|
|
79
|
+
4. **All concrete decision criteria** that differ between sources
|
|
80
|
+
|
|
81
|
+
A merge is invalid if:
|
|
82
|
+
- Validation got weaker than the strongest source
|
|
83
|
+
- Examples were lost without replacement
|
|
84
|
+
- Anti-pattern coverage decreased
|
|
85
|
+
- The merged skill became a generic umbrella doc
|
|
86
|
+
|
|
87
|
+
## Compression Preservation
|
|
88
|
+
|
|
89
|
+
When compressing a skill, the compressed version MUST preserve:
|
|
90
|
+
|
|
91
|
+
- Trigger quality (description + When to use)
|
|
92
|
+
- All procedure steps that contain decisions
|
|
93
|
+
- All concrete validation checks
|
|
94
|
+
- All gotchas and anti-patterns
|
|
95
|
+
- Strongest example (at minimum one good/bad contrast)
|
|
96
|
+
|
|
97
|
+
Compression may remove:
|
|
98
|
+
- Verbose explanations
|
|
99
|
+
- Redundant examples (keep the strongest)
|
|
100
|
+
- Commentary that doesn't affect execution
|
|
101
|
+
|
|
102
|
+
## Refactor Safety
|
|
103
|
+
|
|
104
|
+
When refactoring or optimizing skills:
|
|
105
|
+
|
|
106
|
+
- NEVER weaken validation to pass linter
|
|
107
|
+
- NEVER remove anti-patterns to reduce size
|
|
108
|
+
- NEVER replace concrete checks with "verify it works"
|
|
109
|
+
- NEVER merge skills if the result is broader than either source
|
|
110
|
+
- ALWAYS run linter before and after — fail count must not increase
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "auto"
|
|
3
|
+
description: "When user types a slash command like /create-pr, /commit, or pastes command file content"
|
|
4
|
+
alwaysApply: false
|
|
5
|
+
source: package
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Commands
|
|
9
|
+
|
|
10
|
+
When the user types a command (`/create-pr`, `# create-pr`, or pastes a command file),
|
|
11
|
+
**execute it immediately**. No questions, no opinions, no summaries, no confirmations.
|
|
12
|
+
|
|
13
|
+
- Match the command file in `.augment/commands/` (or `agents/overrides/commands/`).
|
|
14
|
+
- Read it, follow the steps in order.
|
|
15
|
+
- Ask only when the command itself says "ask the user".
|
|
16
|
+
- If the user pastes the **content** of a command file, treat it as an invocation — not a question.
|
|
17
|
+
- **NEVER** respond with "looks good" or ask "shall I execute?" — just execute.
|
|
18
|
+
- **NEVER** respond with "this is the current version" or "do you want to change something?" — just execute.
|
|
19
|
+
- **NEVER** treat pasted command content as a review request — it's ALWAYS an invocation.
|
|
20
|
+
- The only exception: the user's message contains an explicit instruction about the command
|
|
21
|
+
(e.g., "update this command" or "review this command"). In that case, follow the instruction instead.
|
|
22
|
+
|
|
23
|
+
## Open files are irrelevant for command detection
|
|
24
|
+
|
|
25
|
+
Editor may report an open file (e.g., "user has `compress.md` open"). **Irrelevant** for commands.
|
|
26
|
+
|
|
27
|
+
- `/compress` typed → **run** compress command — even if `compress.md` is open in editor.
|
|
28
|
+
- Command content in context + open file → **command invocation takes priority**.
|
|
29
|
+
- Do NOT confuse "file is open" with "user wants to discuss this file".
|
|
30
|
+
- User's typed message determines intent — not editor state.
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "always"
|
|
3
|
+
description: "Always analyze before acting. Prefer targeted inspection, tests, and real verification over guessing or trial-and-error."
|
|
4
|
+
alwaysApply: true
|
|
5
|
+
source: package
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# think-before-action
|
|
9
|
+
|
|
10
|
+
- Always analyze before coding or modifying anything
|
|
11
|
+
- Never guess behavior — verify using code, data, or tools
|
|
12
|
+
- Prefer targeted inspection over brute-force trial-and-error
|
|
13
|
+
- Use efficient tooling (e.g. jq, debugger, logs) instead of loading full data
|
|
14
|
+
- Always verify results after changes (API calls, UI tests, etc.)
|
|
15
|
+
- When behavior can be defined, prefer test-first or test-driven work
|
|
16
|
+
- If requirements are unclear, ask a precise clarification question instead of making hidden assumptions
|
|
17
|
+
- Refactors must preserve behavior, validation, examples, and anti-failure guidance unless there is an explicit reason to change them
|
|
18
|
+
- Do NOT modify code you do not fully understand — read it first, trace the flow, then change it
|
|
19
|
+
|
|
20
|
+
## The Developer Workflow
|
|
21
|
+
|
|
22
|
+
Work like a real developer. Follow this order strictly:
|
|
23
|
+
|
|
24
|
+
1. **Understand** — Read task, ticket, acceptance criteria. Unclear? Ask, don't assume.
|
|
25
|
+
2. **Analyze** — Read affected code, trace data flow, compare with requirements.
|
|
26
|
+
3. **Plan** — What to change, what NOT to change, how to verify.
|
|
27
|
+
4. **Implement** — Focused changes. Follow existing patterns. No unrelated rewrites.
|
|
28
|
+
5. **Verify** — Run tests, hit endpoint, check UI. Real execution, not "should work".
|
|
29
|
+
|
|
30
|
+
Skipping steps 1-3 = #1 cause of wrong implementations and wasted retries.
|
|
31
|
+
|
|
32
|
+
## Consult memory before editing
|
|
33
|
+
|
|
34
|
+
Before writing code for the touched paths, call
|
|
35
|
+
[`memory-access`](../guidelines/agent-infra/memory-access.md):
|
|
36
|
+
|
|
37
|
+
```python
|
|
38
|
+
from scripts.memory_lookup import retrieve
|
|
39
|
+
priors = retrieve(
|
|
40
|
+
types=["architecture-decisions", "domain-invariants"],
|
|
41
|
+
keys=<touched paths>,
|
|
42
|
+
limit=3,
|
|
43
|
+
)
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
A matching `architecture-decision` explains *why* the current shape
|
|
47
|
+
exists; a matching `domain-invariant` is a hard constraint you cannot
|
|
48
|
+
violate. Cite the `id` if a match influences the plan. No match → no
|
|
49
|
+
overhead; proceed.
|
|
50
|
+
|
|
51
|
+
## Verify with real tools
|
|
52
|
+
|
|
53
|
+
| What changed | How to verify |
|
|
54
|
+
|---|---|
|
|
55
|
+
| **Backend/API** | `curl`, Postman (or Postman MCP), test endpoint |
|
|
56
|
+
| **Frontend/UI** | Playwright MCP or browser — rendered state, interactions |
|
|
57
|
+
| **Logic/flow** | Xdebug (or Xdebug MCP) — trace execution, inspect variables |
|
|
58
|
+
| **CLI/Jobs** | Run command, check side effects, exit code |
|
|
59
|
+
| **Database** | Query result, check migrations |
|
|
60
|
+
|
|
61
|
+
If debugging/testing tool available as MCP server — prefer it.
|
|
62
|
+
|
|
63
|
+
If verification not possible: state what is missing and how change should be tested.
|
|
64
|
+
|
|
65
|
+
## Reduce output — targeted tools over full dumps
|
|
66
|
+
|
|
67
|
+
Never load full datasets into context. Extract what you need:
|
|
68
|
+
|
|
69
|
+
- `jq` for JSON: `curl -s /api/users | jq '.[0] | {id, email}'`
|
|
70
|
+
- `rg` / `grep` for text — specific patterns, not full files
|
|
71
|
+
- `head`, `tail`, `cut`, `sort`, `uniq` to narrow results
|
|
72
|
+
- `--filter`, `--json`, `--format` flags on CLI tools
|
|
73
|
+
- Logs: filter by request ID, timestamp, error type — not full files
|
|
74
|
+
|
|
75
|
+
## No blind retries
|
|
76
|
+
|
|
77
|
+
- Fail? **Read the error**, analyze cause, then fix
|
|
78
|
+
- Do NOT retry same approach hoping for different result
|
|
79
|
+
- Do NOT loop trial-and-error when one inspection reveals the cause
|
|
80
|
+
- Max 2 retries same approach — then stop and rethink
|
|
81
|
+
|
|
82
|
+
## Open files are context, not intent
|
|
83
|
+
|
|
84
|
+
The editor may report an open file. This is **background context only** — NOT the user's intent.
|
|
85
|
+
|
|
86
|
+
- **User's message determines intent** — not which file is open.
|
|
87
|
+
- User has `README.md` open + types `/compress` → intent is compress, not README.
|
|
88
|
+
- User has `UserController.php` open + asks "how do tests work?" → intent is testing, not the controller.
|
|
89
|
+
- Only treat open file as relevant when the user explicitly references it ("fix this file", "what does this do?").
|
|
90
|
+
|
|
91
|
+
If analysis is skipped → results are unreliable.
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "always"
|
|
3
|
+
description: "Token efficiency — redirect output, minimize tool calls, keep responses concise"
|
|
4
|
+
alwaysApply: true
|
|
5
|
+
source: package
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Token Efficiency
|
|
9
|
+
|
|
10
|
+
## The Iron Laws
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
NEVER load full command output into context. Redirect → read summary → targeted details.
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
NEVER call the same tool more than 2 times in a row with similar parameters.
|
|
18
|
+
If you catch yourself repeating a tool call — STOP, rethink, try a different approach, or ask the user.
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### Anti-loop: Extended Reasoning
|
|
22
|
+
|
|
23
|
+
Do NOT use extended reasoning / chain-of-thought tools for simple tasks like viewing files,
|
|
24
|
+
running commands, or making straightforward edits. They are ONLY for genuinely complex
|
|
25
|
+
multi-step reasoning. If you find yourself calling such tools more than once per task —
|
|
26
|
+
you are looping. Stop immediately and act directly instead.
|
|
27
|
+
|
|
28
|
+
### Anti-loop: "CRITICAL INSTRUCTION" and self-prompting
|
|
29
|
+
|
|
30
|
+
If you find yourself generating text that starts with "CRITICAL INSTRUCTION", "I need to",
|
|
31
|
+
"Let me think", "Related tools:", or similar self-directed reasoning inside a tool call
|
|
32
|
+
or as a preamble before acting — **you are in a loop**. This happens after connection errors
|
|
33
|
+
or when the user says something like "continue" / "mach weiter".
|
|
34
|
+
|
|
35
|
+
**Immediate action:**
|
|
36
|
+
|
|
37
|
+
1. STOP generating self-instructions.
|
|
38
|
+
2. Read the last user message — what did they actually ask?
|
|
39
|
+
3. Do that ONE thing directly. No planning monologue, no tool selection reasoning.
|
|
40
|
+
4. If you don't know what the user wanted, ask: "Where were we?"
|
|
41
|
+
|
|
42
|
+
## Fresh Output Over Memory
|
|
43
|
+
|
|
44
|
+
**CRITICAL**: When a tool or command returns a value (branch name, file path, PR number),
|
|
45
|
+
use that EXACT value in subsequent API calls. NEVER substitute a value from earlier in
|
|
46
|
+
the conversation. Context decay causes silent mismatches — fresh output is the only source of truth.
|
|
47
|
+
|
|
48
|
+
## Conversation Efficiency
|
|
49
|
+
|
|
50
|
+
### Act, skip narration
|
|
51
|
+
|
|
52
|
+
- **Skip repeating the user's request.** They know what they asked.
|
|
53
|
+
- **Just do it** — skip announcing what you're about to do.
|
|
54
|
+
- **Skip explaining obvious tool calls.** Reading a file needs no justification.
|
|
55
|
+
- **Report only outcomes** — skip intermediate step summaries unless the user needs them.
|
|
56
|
+
|
|
57
|
+
**This rule NEVER overrides user-interaction or command rules.**
|
|
58
|
+
Token efficiency means fewer *unnecessary* words — NOT skipping required questions,
|
|
59
|
+
numbered options, or command steps. When a rule or command says "ask the user", you ask.
|
|
60
|
+
|
|
61
|
+
### Stop early — max 2 retries
|
|
62
|
+
|
|
63
|
+
- **Command fails twice with same error** → stop, rethink. Try a different approach.
|
|
64
|
+
- **grep/search returns nothing after 2 attempts** → switch approach or ask the user.
|
|
65
|
+
- **Max 3 diagnostic commands** per error. Read the error, think, act.
|
|
66
|
+
- **One hypothesis at a time.** Pick the most likely, try it. If it fails, ask.
|
|
67
|
+
|
|
68
|
+
### Keep intermediate output minimal
|
|
69
|
+
|
|
70
|
+
Read `personal.minimal_output` (default: `true`) and `personal.play_by_play`
|
|
71
|
+
(default: `false`) from `.agent-settings.yml`.
|
|
72
|
+
|
|
73
|
+
When `personal.minimal_output: true`:
|
|
74
|
+
- Multi-step work: short bullet points only, no paragraphs.
|
|
75
|
+
- No thinking out loud — user doesn't need your reasoning.
|
|
76
|
+
- When `personal.play_by_play: false`: silently investigate, report conclusion only.
|
|
77
|
+
- When `personal.play_by_play: true`: briefly share intermediate findings.
|
|
78
|
+
- At the end: concise summary — what changed, what user needs to know.
|
|
79
|
+
|
|
80
|
+
### Don't re-read what you already know
|
|
81
|
+
|
|
82
|
+
- Edited a file → edit tool showed result. Don't re-read.
|
|
83
|
+
- Ran a command → you have output. Don't re-run to "verify".
|
|
84
|
+
- File in context from recent messages → don't reload.
|
|
85
|
+
|
|
86
|
+
### Minimize tool calls
|
|
87
|
+
|
|
88
|
+
- Parallel reads — don't read 5 files sequentially.
|
|
89
|
+
- Regex search over full file reads. View specific line ranges.
|
|
90
|
+
- One codebase search call with all symbols — not 5 separate.
|
|
91
|
+
- Short question → short answer. Summary tables only for 3+ items.
|
|
92
|
+
|
|
93
|
+
### Exceptions
|
|
94
|
+
|
|
95
|
+
- Small output (< 30 lines): read directly.
|
|
96
|
+
- Debugging: OK to read more context around one error.
|
|
97
|
+
- User explicitly asks for full output: show it.
|
|
98
|
+
|
|
99
|
+
→ Detailed patterns: `guidelines/agent-infra/output-patterns.md`
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: auto
|
|
3
|
+
source: package
|
|
4
|
+
description: "When a skill uses external tools — enforce allowlist, deny-by-default, and no hidden credential patterns"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Tool Safety
|
|
8
|
+
|
|
9
|
+
Tools are permissions, not abilities. Every tool access must be declared and reviewable.
|
|
10
|
+
|
|
11
|
+
## Constraints
|
|
12
|
+
|
|
13
|
+
- **Deny by default** — no access unless in `allowed_tools`
|
|
14
|
+
- **Allowlist only** — names must match tool registry
|
|
15
|
+
- **Read-first** — write requires explicit approval
|
|
16
|
+
- **No hidden credentials** — no API keys in skill files
|
|
17
|
+
- **No arbitrary execution** — adapters have fixed interfaces
|
|
18
|
+
- **Audit trail** — tool usage must be observable
|
|
19
|
+
|
|
20
|
+
## When this applies
|
|
21
|
+
|
|
22
|
+
- Skills declaring `allowed_tools`
|
|
23
|
+
- Skills referencing external APIs (GitHub, Jira)
|
|
24
|
+
- Runtime execution accessing external services
|
|
25
|
+
|
|
26
|
+
## Escalation
|
|
27
|
+
|
|
28
|
+
1. Do NOT use unregistered tools
|
|
29
|
+
2. Flag as registry extension suggestion
|
|
30
|
+
3. Tool must be added to registry before use
|
|
31
|
+
|
|
32
|
+
## Not covered
|
|
33
|
+
|
|
34
|
+
- Internal agent capabilities (not external tools)
|
|
35
|
+
- MCP server configuration (`mcp` skill)
|
|
36
|
+
- Credential management (environment config)
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "auto"
|
|
3
|
+
description: "After creating or significantly improving a skill, rule, guideline, or command — ask if it should be contributed upstream to the shared package"
|
|
4
|
+
alwaysApply: false
|
|
5
|
+
source: package
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Upstream Proposal
|
|
9
|
+
|
|
10
|
+
## When to activate
|
|
11
|
+
|
|
12
|
+
After the agent **creates or significantly improves** any of these in a consumer project:
|
|
13
|
+
|
|
14
|
+
- Skill (new or major update)
|
|
15
|
+
- Rule (new or major update)
|
|
16
|
+
- Guideline (new or major update)
|
|
17
|
+
- Command (new or major update)
|
|
18
|
+
|
|
19
|
+
**Also activate when:**
|
|
20
|
+
|
|
21
|
+
- A project-specific skill/rule could be **generalized** to benefit all consumers
|
|
22
|
+
- An override was created that improves on the shared version
|
|
23
|
+
- A learning was captured that produced a high-quality new artifact
|
|
24
|
+
|
|
25
|
+
**Do NOT activate when:**
|
|
26
|
+
|
|
27
|
+
- Working inside the agent-config package itself (no self-referential proposals)
|
|
28
|
+
- The change is a trivial fix (typo, formatting)
|
|
29
|
+
- The user already declined upstream for this exact item in this conversation
|
|
30
|
+
|
|
31
|
+
## Consent check
|
|
32
|
+
|
|
33
|
+
**⛔ MANDATORY: Always ask the user. Never skip this step.**
|
|
34
|
+
|
|
35
|
+
After completing the creation/improvement, evaluate:
|
|
36
|
+
|
|
37
|
+
1. **Is this universal?** Could other projects benefit from this?
|
|
38
|
+
2. **Is this generalizable?** Even if project-specific, can it be abstracted?
|
|
39
|
+
3. **Is this high-quality?** Does it pass the promotion gate from `capture-learnings`?
|
|
40
|
+
|
|
41
|
+
If ANY of these is YES → propose to the user:
|
|
42
|
+
|
|
43
|
+
### For universal content (directly applicable):
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
> 🔄 The [skill/rule/guideline] `{name}` you just created could benefit all projects
|
|
47
|
+
> using the shared agent-config package.
|
|
48
|
+
>
|
|
49
|
+
> 1. Yes — contribute upstream via PR
|
|
50
|
+
> 2. No — keep project-local only
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### For project-specific content (needs generalization):
|
|
54
|
+
|
|
55
|
+
```
|
|
56
|
+
> 🔄 The [skill/rule/guideline] `{name}` is project-specific, but I could generalize
|
|
57
|
+
> it for the shared package. [Brief explanation of what would change]
|
|
58
|
+
>
|
|
59
|
+
> 1. Yes — generalize and contribute upstream
|
|
60
|
+
> 2. No — keep project-local only
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## After user response
|
|
64
|
+
|
|
65
|
+
- **User picks 1** → invoke `upstream-contribute` skill (which has its own consent gate for repo access)
|
|
66
|
+
- **User picks 2** → stop. Do NOT ask again for this item.
|
|
67
|
+
- **Max 1 proposal per created artifact** — never nag.
|
|
68
|
+
|
|
69
|
+
## Important
|
|
70
|
+
|
|
71
|
+
- **Consent is non-negotiable** — the user decides, always.
|
|
72
|
+
- **Do NOT batch proposals** — ask for each artifact separately.
|
|
73
|
+
- **Do NOT interrupt flow** — only propose AFTER the creation/improvement is complete.
|
|
74
|
+
- **Do NOT propose for trivial changes** — formatting, typos, comment updates.
|
|
75
|
+
- **Respect "no"** — if the user declines, do not revisit unless they bring it up.
|
|
76
|
+
- **Token efficiency** — this rule costs zero tokens when not triggered (auto type).
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "always"
|
|
3
|
+
description: "User interaction — numbered options, progress indicators, summaries"
|
|
4
|
+
alwaysApply: true
|
|
5
|
+
source: package
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# User Interaction
|
|
9
|
+
|
|
10
|
+
## Numbered Options — Always
|
|
11
|
+
|
|
12
|
+
When asking the user a question with predefined choices, **always present numbered options**.
|
|
13
|
+
The user should be able to reply with just a number (e.g., `1`) instead of typing a sentence.
|
|
14
|
+
|
|
15
|
+
### Format
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
> 1. First option — brief explanation
|
|
19
|
+
> 2. Second option — brief explanation
|
|
20
|
+
> 3. Third option — brief explanation
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Rules
|
|
24
|
+
|
|
25
|
+
- **Every question with choices** must use numbered options — no exceptions.
|
|
26
|
+
- **Keep options short** — one line each, with a brief explanation after the dash.
|
|
27
|
+
- **Always include a "skip" or "no change" option** when applicable.
|
|
28
|
+
- **Default/recommended option** can be marked: `1. Do X (recommended)`.
|
|
29
|
+
- **Use the user's language** for the question and options.
|
|
30
|
+
- **Accept both** the number and a natural language answer (e.g., "1" or "the first one").
|
|
31
|
+
|
|
32
|
+
### Examples
|
|
33
|
+
|
|
34
|
+
**Binary choice:**
|
|
35
|
+
```
|
|
36
|
+
> 1. Interactive — ask before each comment
|
|
37
|
+
> 2. Automatic — handle all independently
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
**Multiple choice with skip:**
|
|
41
|
+
```
|
|
42
|
+
> 1. Fix the code
|
|
43
|
+
> 2. Fix the test
|
|
44
|
+
> 3. Skip
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
**Confirmation with context:**
|
|
48
|
+
```
|
|
49
|
+
> Found PR #1399 on branch `chore/refactor-agent-setup-2`.
|
|
50
|
+
>
|
|
51
|
+
> 1. Yes, that's the right PR
|
|
52
|
+
> 2. No, different PR — I'll provide the URL
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### When NOT to use numbered options
|
|
56
|
+
|
|
57
|
+
- **Open-ended questions** where the answer is free text (e.g., "What should the class be named?").
|
|
58
|
+
- **Simple yes/no** can use numbered options OR accept "ja"/"nein" directly.
|
|
59
|
+
Even for yes/no, prefer numbered options if there's additional context to show.
|
|
60
|
+
|
|
61
|
+
## Progress Indicators
|
|
62
|
+
|
|
63
|
+
When processing multiple items (e.g., review comments, test failures), show progress:
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
**Comment 3/7** — `filename.php:42`
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Summaries
|
|
70
|
+
|
|
71
|
+
After completing a batch of actions, provide a summary table:
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
| # | File | Action |
|
|
75
|
+
|---|---|---|
|
|
76
|
+
| 1 | `file.php` | Fixed null check |
|
|
77
|
+
| 2 | `test.php` | Updated assertion |
|
|
78
|
+
| 3 | `config.php` | Skipped (intentional) |
|
|
79
|
+
```
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "always"
|
|
3
|
+
description: "Verify before completion — run tests and quality tools before claiming done"
|
|
4
|
+
alwaysApply: true
|
|
5
|
+
source: package
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Verify Before Completion
|
|
9
|
+
|
|
10
|
+
## The Iron Law
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
If you haven't run the verification command **in this message**, you cannot claim it passes.
|
|
17
|
+
|
|
18
|
+
## When to run what — timing matters
|
|
19
|
+
|
|
20
|
+
**Quality tools (PHPStan, Rector, ECS) run ONCE at the very end** — not after every edit.
|
|
21
|
+
Do NOT run quality checks between tasks if you have more work to do.
|
|
22
|
+
Only run the full quality pipeline when you are about to finish all work in the current conversation.
|
|
23
|
+
|
|
24
|
+
**Tests: as targeted as possible, as little as necessary.**
|
|
25
|
+
- During work: run ONLY the specific test class or test case affected by the change.
|
|
26
|
+
Use `--filter=ClassName` or `--filter=test_name` — NEVER the full suite mid-work.
|
|
27
|
+
- Only run tests when you genuinely need to verify behavior (not "just to be safe").
|
|
28
|
+
- Full test suite: ONCE at the very end, before quality tools.
|
|
29
|
+
|
|
30
|
+
**The sequence at the end:**
|
|
31
|
+
1. All code changes are done
|
|
32
|
+
2. Run tests — targeted first (`--filter`), full suite only if targeted passes
|
|
33
|
+
3. Run quality pipeline (PHPStan → Rector → ECS → PHPStan)
|
|
34
|
+
4. Fix any issues from step 2-3
|
|
35
|
+
5. ONLY THEN claim completion or suggest commit/push/PR
|
|
36
|
+
|
|
37
|
+
## The Gate
|
|
38
|
+
|
|
39
|
+
Before claiming ANY work is complete:
|
|
40
|
+
|
|
41
|
+
1. **IDENTIFY** — What command proves this claim? (tests, PHPStan, build, etc.)
|
|
42
|
+
2. **RUN** — Execute the full command (fresh, complete, not cached)
|
|
43
|
+
3. **READ** — Full output, check exit code, count failures
|
|
44
|
+
4. **VERIFY** — Does the output actually confirm the claim?
|
|
45
|
+
5. **ONLY THEN** — Make the claim
|
|
46
|
+
|
|
47
|
+
Skip any step = the claim is unverified.
|
|
48
|
+
|
|
49
|
+
## When this applies
|
|
50
|
+
|
|
51
|
+
- About to claim **all work is done** (not after individual edits)
|
|
52
|
+
- About to say "done" or "complete"
|
|
53
|
+
- Before suggesting to commit, push, or create a PR
|
|
54
|
+
- Any statement implying all work is finished
|
|
55
|
+
|
|
56
|
+
## Red flags — STOP immediately
|
|
57
|
+
|
|
58
|
+
- Using "should pass", "probably works", "seems fine"
|
|
59
|
+
- Expressing satisfaction before running verification
|
|
60
|
+
- About to commit/push without running tests + quality
|
|
61
|
+
- Trusting a previous run from earlier in the conversation
|
|
62
|
+
- Relying on partial verification (ran tests but not PHPStan)
|
|
63
|
+
- ANY wording implying success without fresh evidence
|
|
64
|
+
|
|
65
|
+
## Verification commands
|
|
66
|
+
|
|
67
|
+
For specific commands → see the `quality-tools` skill.
|
|
68
|
+
|
|
69
|
+
For the detailed evidence-gate playbook (claim→command mapping, output
|
|
70
|
+
inspection, end-of-work sequence) → see the `verify-before-complete`
|
|
71
|
+
skill.
|
|
72
|
+
|
|
73
|
+
## Minimum verification per task type
|
|
74
|
+
|
|
75
|
+
| Task | Required evidence |
|
|
76
|
+
|---|---|
|
|
77
|
+
| Code change | Tests + PHPStan |
|
|
78
|
+
| New feature | Tests + PHPStan + smoke test |
|
|
79
|
+
| Bug fix | Regression test + full suite |
|
|
80
|
+
| Refactoring | Full suite + PHPStan + Rector |
|
|
81
|
+
| Config/migration | Relevant tests or command output |
|
|
82
|
+
| API endpoint | curl/HTTP response output |
|
|
83
|
+
| Documentation only | No verification needed |
|
|
84
|
+
|
|
85
|
+
**Never accept** as proof: "should work", "looks correct", "logic is sound".
|
|
86
|
+
No captured output = not verified.
|
|
87
|
+
|
|
88
|
+
## Confidence gating
|
|
89
|
+
|
|
90
|
+
State confidence explicitly before claiming completion on non-trivial work.
|
|
91
|
+
|
|
92
|
+
- **High** — runtime path read end-to-end, relevant tests inspected or run,
|
|
93
|
+
no hidden side-effects (queues/events/observers) unaccounted for.
|
|
94
|
+
- **Medium** — main path verified but one gap remains; list the gap in the
|
|
95
|
+
completion message.
|
|
96
|
+
- **Low** — broad implementation NOT allowed; switch to analysis, narrow
|
|
97
|
+
the scope, or ask the user before proceeding.
|
|
98
|
+
|
|
99
|
+
For high-risk areas (auth, tenancy, migrations, queues, dependencies,
|
|
100
|
+
external APIs, data exposure), "high" requires tests AND a cross-layer
|
|
101
|
+
read — not inference from a single file.
|
|
102
|
+
|
|
103
|
+
## Break-glass reduction
|
|
104
|
+
|
|
105
|
+
During a live production incident the verification gate is **narrowed**,
|
|
106
|
+
never skipped. Break-glass requires explicit user invocation (e.g.
|
|
107
|
+
`break-glass: true`, "this is a hotfix"). Never enter it unilaterally.
|
|
108
|
+
|
|
109
|
+
Minimum evidence:
|
|
110
|
+
|
|
111
|
+
- **Targeted test(s)** covering the exact regression — zero tests is not
|
|
112
|
+
acceptable.
|
|
113
|
+
- **Smoke check** of the fixed path (curl, manual trigger, log tail) with
|
|
114
|
+
output captured in the message.
|
|
115
|
+
- **Explicit list of skipped validations** and a **follow-up commitment**
|
|
116
|
+
(ticket or PR line) to run them within 24h.
|
|
117
|
+
|
|
118
|
+
Completion wording: _"hotfix applied, full verification deferred per
|
|
119
|
+
break-glass"_ — never _"done"_ or _"verified"_. The normal gate resumes
|
|
120
|
+
on the follow-up PR.
|