@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,139 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: optimize-agents
|
|
3
|
+
description: Audits agent infrastructure — measures token overhead, checks rule triggers, verifies AGENTS.md. Suggest only, never auto-apply.
|
|
4
|
+
skills: [copilot-agents-optimization, agents-audit, agent-docs-writing, quality-tools]
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# /optimize-agents
|
|
9
|
+
|
|
10
|
+
Agent infrastructure audit: measure token overhead, check rule triggers, verify AGENTS.md, find stale references. **Suggest only — never auto-apply.**
|
|
11
|
+
|
|
12
|
+
**Source of truth:** `.agent-src.uncompressed/` — never read or edit `.agent-src/` or `.augment/` directly.
|
|
13
|
+
|
|
14
|
+
## Steps
|
|
15
|
+
|
|
16
|
+
### 1. Measure baseline
|
|
17
|
+
|
|
18
|
+
Count lines affecting token consumption:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
# Always-loaded (per chat)
|
|
22
|
+
for f in .agent-src.uncompressed/rules/*.md; do
|
|
23
|
+
type=$(head -5 "$f" | grep 'type:' | sed 's/.*"\(.*\)"/\1/')
|
|
24
|
+
[ "$type" = "auto" ] && continue
|
|
25
|
+
lines=$(wc -l < "$f"); echo "always | $lines | $(basename "$f")"
|
|
26
|
+
done | sort -t'|' -k2 -rn
|
|
27
|
+
agents=$(wc -l < AGENTS.md); echo "always | $agents | AGENTS.md"
|
|
28
|
+
|
|
29
|
+
# Auto-loaded rules
|
|
30
|
+
for f in .agent-src.uncompressed/rules/*.md; do
|
|
31
|
+
type=$(head -5 "$f" | grep 'type:' | sed 's/.*"\(.*\)"/\1/')
|
|
32
|
+
[ "$type" != "auto" ] && continue
|
|
33
|
+
lines=$(wc -l < "$f"); echo "auto | $lines | $(basename "$f")"
|
|
34
|
+
done | sort -t'|' -k2 -rn
|
|
35
|
+
|
|
36
|
+
# Skills (top 20 by size)
|
|
37
|
+
for f in .agent-src.uncompressed/skills/*/SKILL.md; do
|
|
38
|
+
name=$(echo "$f" | sed 's|.agent-src.uncompressed/skills/||;s|/SKILL.md||')
|
|
39
|
+
lines=$(wc -l < "$f"); echo "$lines | $name"
|
|
40
|
+
done | sort -rn | head -20
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Report totals:
|
|
44
|
+
|
|
45
|
+
| Category | Files | Lines |
|
|
46
|
+
|---|---|---|
|
|
47
|
+
| Always-loaded rules + AGENTS.md | {n} | {n} |
|
|
48
|
+
| Auto-loaded rules | {n} | {n} |
|
|
49
|
+
| Skills (total) | {n} | {n} |
|
|
50
|
+
| **TOTAL** | {n} | {n} |
|
|
51
|
+
|
|
52
|
+
### 2. Check rules
|
|
53
|
+
|
|
54
|
+
- **Frontmatter**: `type: "always"` or `type: "auto"` with `description`?
|
|
55
|
+
- **Duplicate triggers**: Same `description` → both load simultaneously
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
for f in .agent-src.uncompressed/rules/*.md; do
|
|
59
|
+
desc=$(head -5 "$f" | grep 'description:' | sed 's/.*"\(.*\)"/\1/')
|
|
60
|
+
[ -n "$desc" ] && echo "$desc | $(basename "$f")"
|
|
61
|
+
done | sort | awk -F' \\| ' '{descs[$1]=descs[$1] " " $2} END {for (d in descs) {n=split(descs[d], a, " "); if (n>1) print "⚠️ " d " →" descs[d]}}'
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
- **Redundancy**: Duplicates between rules, AGENTS.md, skills?
|
|
65
|
+
- **Merge candidates**: Small rules (< 15 lines) that belong elsewhere?
|
|
66
|
+
|
|
67
|
+
### 3. Check always → auto candidates
|
|
68
|
+
|
|
69
|
+
Apply the `rule-type-governance` rule criteria:
|
|
70
|
+
|
|
71
|
+
1. Does it apply to EVERY conversation? → keep `always`
|
|
72
|
+
2. Can it be triggered by a specific topic? → candidate for `auto`
|
|
73
|
+
3. Is it a core behavior constraint (scope-control, verify-before-complete, token-efficiency)? → **NEVER change to auto**
|
|
74
|
+
|
|
75
|
+
**Decision test:** "Does this rule need to be active when the user asks a simple question, reviews a PR, or discusses architecture?" No → `auto`.
|
|
76
|
+
|
|
77
|
+
**Safety gate for always → auto:**
|
|
78
|
+
|
|
79
|
+
- [ ] Rule is NOT a core behavior constraint
|
|
80
|
+
- [ ] A clear, specific trigger description exists
|
|
81
|
+
- [ ] The trigger won't miss conversations where the rule matters
|
|
82
|
+
|
|
83
|
+
Present candidates with explicit justification. **Never auto-apply.**
|
|
84
|
+
|
|
85
|
+
### 4. Check AGENTS.md + copilot-instructions.md
|
|
86
|
+
|
|
87
|
+
- **Budget**: AGENTS.md target ≤800 words (max ~1200). copilot-instructions.md < 60 lines (max ~150).
|
|
88
|
+
See `guidelines/agent-infra/size-and-scope.md` for all limits.
|
|
89
|
+
- **Quality**: Dev Setup, Testing, Quality Tools need full detail — don't compress to one-liners
|
|
90
|
+
- **Duplication**: only word-for-word identical. Summary + detail = layered context, NOT duplication
|
|
91
|
+
- **Freshness**: paths, commands, references match reality?
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
lines=$(wc -l < AGENTS.md); bytes=$(wc -c < AGENTS.md)
|
|
95
|
+
echo "AGENTS.md: $lines lines, $bytes bytes (~$((bytes / 4)) tokens)"
|
|
96
|
+
[ "$lines" -gt 300 ] && echo "⚠️ Over 300-line target (review size-and-scope guideline)"
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### 5. Check docs sync
|
|
100
|
+
|
|
101
|
+
Counts and lists in `contexts/augment-infrastructure.md` correct?
|
|
102
|
+
|
|
103
|
+
### 6. Run linters
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
python3 scripts/skill_linter.py --all --pairs --duplicates 2>&1 | grep "Summary:"
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Report FAIL/WARN counts. Do NOT fix here — delegate to linter/skill-reviewer.
|
|
110
|
+
|
|
111
|
+
### 7. Present findings
|
|
112
|
+
|
|
113
|
+
| # | Category | Finding | Impact | Suggestion |
|
|
114
|
+
|---|---|---|---|---|
|
|
115
|
+
| 1 | Rule | `{name}` duplicate trigger | Both load simultaneously | Fix trigger description |
|
|
116
|
+
| 2 | Rule | `{name}` could be `auto` | ~{n} lines saved/chat | Switch (with safety gate) |
|
|
117
|
+
| ... | | | | |
|
|
118
|
+
|
|
119
|
+
Ask the user:
|
|
120
|
+
|
|
121
|
+
```
|
|
122
|
+
> 1. Go through suggestions one by one
|
|
123
|
+
> 2. Apply only high-impact changes (saves > 50 lines)
|
|
124
|
+
> 3. Skip — report only
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## Preservation gate — MANDATORY before any change
|
|
128
|
+
|
|
129
|
+
- [ ] Does a rule lose strong enforcement language? → **REJECT**
|
|
130
|
+
- [ ] Does a rule lose a concrete example? → **REJECT**
|
|
131
|
+
- [ ] Does an always → auto switch risk missing relevant conversations? → **REJECT**
|
|
132
|
+
- [ ] Does the linter still pass after the change? → **REJECT if FAIL**
|
|
133
|
+
|
|
134
|
+
## What this command does NOT do
|
|
135
|
+
|
|
136
|
+
- **No quality judgments on skills** — use `/optimize-skills` or `skill-reviewer`
|
|
137
|
+
- **No auto-fixes** — all changes require explicit user approval
|
|
138
|
+
- **No "make it shorter"** — compression is done by Caveman Compression
|
|
139
|
+
- **No edits to `.agent-src/` or `.augment/`** — always edit `.agent-src.uncompressed/`, then sync
|
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
---
|
|
2
|
+
skills: [agent-docs-writing]
|
|
3
|
+
name: optimize-augmentignore
|
|
4
|
+
description: Creates or updates .augmentignore based on the project's actual tech stack, large files, generated artifacts, and irrelevant agent skills/rules.
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# /optimize-augmentignore
|
|
9
|
+
|
|
10
|
+
Scans the project to find files that waste tokens in Augment's retrieval index
|
|
11
|
+
and creates/updates `.augmentignore` accordingly. Also identifies irrelevant
|
|
12
|
+
`.augment/skills/` and `.augment/rules/` to exclude them from the system prompt.
|
|
13
|
+
|
|
14
|
+
**Source of truth for skills/rules:** `.agent-src.uncompressed/` — scan there, not `.agent-src/` or `.augment/`.
|
|
15
|
+
|
|
16
|
+
## Steps
|
|
17
|
+
|
|
18
|
+
### 1. Detect tech stack
|
|
19
|
+
|
|
20
|
+
| Check | What to ignore |
|
|
21
|
+
|---|---|
|
|
22
|
+
| `composer.json` exists | `vendor/`, `!vendor/{project-org}/` (whitelist own packages), `composer.lock` |
|
|
23
|
+
| `package.json` exists | `node_modules/`, `package-lock.json`, `yarn.lock`, `pnpm-lock.yaml` |
|
|
24
|
+
| `Cargo.toml` exists | `target/` |
|
|
25
|
+
| `go.mod` exists | `go.sum` |
|
|
26
|
+
| `.idea/` exists | `.idea/` |
|
|
27
|
+
| `.vscode/` exists | `.vscode/` |
|
|
28
|
+
| `_ide_helper.php` exists | `_ide_helper.php`, `_ide_helper_models.php`, `.phpstorm.meta.php` |
|
|
29
|
+
| `public/build/` exists | `public/build/` |
|
|
30
|
+
| `storage/` exists (Laravel) | `storage/logs/`, `storage/framework/cache/`, `storage/framework/sessions/`, `storage/framework/views/` |
|
|
31
|
+
| `docker-compose.yml` exists | `.storage/`, `.composer/` |
|
|
32
|
+
| `.env` exists | `.env`, `.env.*` |
|
|
33
|
+
|
|
34
|
+
### 2. Find large files polluting the index
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
# All files >50KB, excluding already-ignored dirs
|
|
38
|
+
find . -type f \( -name "*.php" -o -name "*.md" -o -name "*.json" -o -name "*.yaml" -o -name "*.yml" -o -name "*.xml" -o -name "*.neon" \) \
|
|
39
|
+
! -path "./vendor/*" ! -path "./node_modules/*" ! -path "./.storage/*" ! -path "./storage/*" \
|
|
40
|
+
! -path "./.idea/*" ! -path "./.vscode/*" ! -path "./public/build/*" \
|
|
41
|
+
-size +50k -exec wc -c {} + 2>/dev/null | sort -rn | head -30
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
For each large file, decide: is this **source code** (keep) or **generated/fixture/config** (ignore)?
|
|
45
|
+
|
|
46
|
+
**Common ignore candidates:**
|
|
47
|
+
|
|
48
|
+
| Pattern | Reason |
|
|
49
|
+
|---|---|
|
|
50
|
+
| `phpstan-baseline.neon` | Auto-generated, huge, no code insight |
|
|
51
|
+
| `**/Tests/**/stubs/**/*.json` | Test fixture data (often 50KB-500KB per file) |
|
|
52
|
+
| `**/Tests/**/stubs/**/*.xml` | Test fixture data |
|
|
53
|
+
| `**/Tests/**/Files/**/*.json` | Test fixture data |
|
|
54
|
+
| `**/Tests/**/Files/**/*.xml` | Test fixture data |
|
|
55
|
+
| `**/Tests/**/snapshots/*.php` | Snapshot test data |
|
|
56
|
+
| `**/.docker/**/*.json` | Generated dashboard/config JSONs (Grafana, etc.) |
|
|
57
|
+
| `.github/workflows/` | CI YAML — large, rarely relevant for code context |
|
|
58
|
+
| `.github/actions/` | CI actions — same reason |
|
|
59
|
+
| `lang/*/validation.php` | Translation files — huge, static, rarely needed |
|
|
60
|
+
|
|
61
|
+
### 3. Find duplicate content
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# Duplicate roadmaps or docs across modules
|
|
65
|
+
find app/Modules -path "*/agents/roadmaps/*" -exec md5 -r {} \; 2>/dev/null | sort | awk '{print $1}' | uniq -d
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
If identical files exist in multiple modules, ignore all but one copy.
|
|
69
|
+
|
|
70
|
+
### 4. Find binary and media files
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
find . -maxdepth 3 \( -name "*.png" -o -name "*.jpg" -o -name "*.gif" -o -name "*.svg" -o -name "*.ico" -o -name "*.woff" -o -name "*.woff2" -o -name "*.ttf" -o -name "*.eot" -o -name "*.pdf" \) -not -path "*/vendor/*" -not -path "*/node_modules/*" | head -20
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
If many exist in specific dirs, add the directory pattern.
|
|
77
|
+
|
|
78
|
+
### 5. Check existing .augmentignore
|
|
79
|
+
|
|
80
|
+
- If file exists: read it, preserve custom entries, add missing patterns.
|
|
81
|
+
- If file does not exist: create from scratch.
|
|
82
|
+
|
|
83
|
+
### 6. Whitelist own packages
|
|
84
|
+
|
|
85
|
+
Check `composer.json` for the project's own organization namespace:
|
|
86
|
+
- Look at `name` field (e.g., `your-org/project-name` → org is `your-org`)
|
|
87
|
+
- Look at `repositories` for private packages from the same org
|
|
88
|
+
- Add negation pattern: `!vendor/{org}/` to keep own packages in the retrieval index
|
|
89
|
+
|
|
90
|
+
This ensures the agent can find code in own packages via `codebase-retrieval`,
|
|
91
|
+
while still excluding the thousands of third-party vendor files.
|
|
92
|
+
|
|
93
|
+
### 7. Cross-reference with .gitignore
|
|
94
|
+
|
|
95
|
+
Read `.gitignore` — most entries there should also be in `.augmentignore`.
|
|
96
|
+
But `.augmentignore` should ALSO include:
|
|
97
|
+
- Lock files (`composer.lock`, `package-lock.json`) — tracked in Git but useless for retrieval.
|
|
98
|
+
- IDE helpers (`_ide_helper.php`) — tracked in Git but huge generated files.
|
|
99
|
+
- OpenAPI specs — tracked but too large for context.
|
|
100
|
+
|
|
101
|
+
### 8. Analyze irrelevant agent skills
|
|
102
|
+
|
|
103
|
+
**Goal:** Remove skills from the `<available_skills>` system prompt list that the project will never use.
|
|
104
|
+
Each ignored skill saves ~3 lines of system prompt tokens per request.
|
|
105
|
+
|
|
106
|
+
**How:**
|
|
107
|
+
|
|
108
|
+
1. Read `AGENTS.md` — extract tech stack (framework, language, DB, frontend, infra).
|
|
109
|
+
2. Read `composer.json` — extract `require` and `require-dev` packages.
|
|
110
|
+
3. Read `package.json` (if exists) — extract frontend dependencies.
|
|
111
|
+
4. List all skills: `ls .augment/skills/`
|
|
112
|
+
5. For each skill, decide: **is this relevant to the detected stack?**
|
|
113
|
+
|
|
114
|
+
**Decision matrix — ignore when ALL conditions are true:**
|
|
115
|
+
|
|
116
|
+
| Skill | Ignore when... |
|
|
117
|
+
|---|---|
|
|
118
|
+
| `project-analysis-react` | No React in package.json |
|
|
119
|
+
| `project-analysis-nextjs` | No Next.js in package.json |
|
|
120
|
+
| `project-analysis-symfony` | No Symfony in composer.json |
|
|
121
|
+
| `project-analysis-zend-laminas` | No Zend/Laminas in composer.json |
|
|
122
|
+
| `project-analysis-node-express` | No Express/Node.js backend in project |
|
|
123
|
+
| `react`, `nextjs` | No React/Next.js in package.json |
|
|
124
|
+
| `vue`, `nuxt` | No Vue/Nuxt in package.json |
|
|
125
|
+
| `wordpress` | No WordPress in composer.json |
|
|
126
|
+
| `mobile` | No React Native / Swift in project |
|
|
127
|
+
| `graphql` | No GraphQL package in composer/npm |
|
|
128
|
+
| `cloudflare-workers` | No wrangler.toml, no Cloudflare deps |
|
|
129
|
+
| `terraform`, `terragrunt` | No `.tf` files in project |
|
|
130
|
+
| `npm`, `npm-packages` | No package.json in project |
|
|
131
|
+
| `composer-packages` | Project is an app, not a library (no `type: library` in composer.json) |
|
|
132
|
+
| `devcontainer` | No `.devcontainer/` directory |
|
|
133
|
+
| `traefik` | No Traefik in docker-compose |
|
|
134
|
+
| `microservices` | Single-app monolith (no service mesh config) |
|
|
135
|
+
|
|
136
|
+
**Conservative approach:**
|
|
137
|
+
- When in doubt, **keep** the skill — false negatives are worse than false positives.
|
|
138
|
+
- Skills used by other skills or commands should **never** be ignored.
|
|
139
|
+
- Meta/agent-system skills (`agent-docs-writing-writing`, `commands`, `context-create`, etc.) are **never** ignored.
|
|
140
|
+
- **Always keep** skills matching the detected stack, even if not actively used yet.
|
|
141
|
+
|
|
142
|
+
**Output format in `.augmentignore`:**
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
# === Irrelevant agent skills (not in project stack) ===
|
|
146
|
+
# Re-run /optimize-augmentignore to refresh after stack changes
|
|
147
|
+
.augment/skills/react/
|
|
148
|
+
.augment/skills/nextjs/
|
|
149
|
+
.augment/skills/vue/
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### 9. Analyze irrelevant agent rules
|
|
153
|
+
|
|
154
|
+
**Goal:** Remove auto-loaded rules that will never trigger for this project.
|
|
155
|
+
Only consider rules with a `description` frontmatter (auto-loaded by topic match).
|
|
156
|
+
**Never ignore always-active rules** (no description frontmatter = always loaded).
|
|
157
|
+
|
|
158
|
+
**Decision matrix:**
|
|
159
|
+
|
|
160
|
+
| Rule | Ignore when... |
|
|
161
|
+
|---|---|
|
|
162
|
+
| `e2e-testing.md` | No Playwright / no E2E tests in project |
|
|
163
|
+
| `lang-files.md` | No `lang/` directory in project |
|
|
164
|
+
|
|
165
|
+
**Conservative approach:**
|
|
166
|
+
- Most rules are universal and should stay.
|
|
167
|
+
- Only ignore rules where the trigger topic **cannot occur** in this project.
|
|
168
|
+
|
|
169
|
+
### 10. Check for duplicate rule triggers
|
|
170
|
+
|
|
171
|
+
```bash
|
|
172
|
+
# Find rules with identical description triggers
|
|
173
|
+
for f in .augment/rules/*.md; do
|
|
174
|
+
desc=$(head -5 "$f" | grep 'description:' | sed 's/.*"\(.*\)"/\1/')
|
|
175
|
+
[ -n "$desc" ] && echo "$desc | $(basename "$f")"
|
|
176
|
+
done | sort | awk -F' \\| ' '{descs[$1]=descs[$1] " " $2} END {for (d in descs) {n=split(descs[d], a, " "); if (n>1) print "⚠️ DUPLICATE: " d " →" descs[d]}}'
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
If two rules share the **exact same description**, both load simultaneously — wasting tokens.
|
|
180
|
+
Fix by making each description unique and specific to that rule's content.
|
|
181
|
+
|
|
182
|
+
### 11. Present changes to user
|
|
183
|
+
|
|
184
|
+
Before writing, show the user what will change:
|
|
185
|
+
|
|
186
|
+
```
|
|
187
|
+
## Proposed .augmentignore changes
|
|
188
|
+
|
|
189
|
+
### New file ignores
|
|
190
|
+
- pattern1 — reason
|
|
191
|
+
- pattern2 — reason
|
|
192
|
+
|
|
193
|
+
### Skills to ignore (N skills, ~{N*3} system prompt lines saved per request)
|
|
194
|
+
- skill1 — reason
|
|
195
|
+
- skill2 — reason
|
|
196
|
+
|
|
197
|
+
### Skills to restore (previously ignored, now relevant)
|
|
198
|
+
- skill3 — reason
|
|
199
|
+
|
|
200
|
+
### Rules to ignore
|
|
201
|
+
- rule1 — reason
|
|
202
|
+
|
|
203
|
+
> 1. Apply all changes
|
|
204
|
+
> 2. Apply file ignores only, skip skill/rule changes
|
|
205
|
+
> 3. Let me review — show the full proposed .augmentignore
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
### 12. Write .augmentignore
|
|
209
|
+
|
|
210
|
+
Organize by category with comments:
|
|
211
|
+
|
|
212
|
+
```
|
|
213
|
+
# === Dependencies ===
|
|
214
|
+
# === IDE & Editor ===
|
|
215
|
+
# === Generated / Build artifacts ===
|
|
216
|
+
# === Lock files ===
|
|
217
|
+
# === Static analysis / CI artifacts ===
|
|
218
|
+
# === Test stubs / fixtures ===
|
|
219
|
+
# === Generated configs (Grafana, CI, etc.) ===
|
|
220
|
+
# === Language files (large, static) ===
|
|
221
|
+
# === Duplicate content ===
|
|
222
|
+
# === Environment files ===
|
|
223
|
+
# === OS / system ===
|
|
224
|
+
# === Irrelevant agent skills (not in project stack) ===
|
|
225
|
+
# === Irrelevant agent rules (not in project stack) ===
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
### 13. Show impact
|
|
229
|
+
|
|
230
|
+
```bash
|
|
231
|
+
# Count lines saved from retrieval index
|
|
232
|
+
total=0
|
|
233
|
+
while IFS= read -r pattern; do
|
|
234
|
+
[[ "$pattern" =~ ^#|^$ ]] && continue
|
|
235
|
+
count=$(find . -path "*/$pattern" -o -name "$pattern" 2>/dev/null | head -20 | while read f; do
|
|
236
|
+
[ -f "$f" ] && wc -l < "$f" 2>/dev/null
|
|
237
|
+
done | paste -sd+ - | bc 2>/dev/null)
|
|
238
|
+
[ -n "$count" ] && [ "$count" -gt 0 ] && echo "$count lines — $pattern" && total=$((total + count))
|
|
239
|
+
done < .augmentignore
|
|
240
|
+
echo "Total: ~$total lines excluded from retrieval index"
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
Also count ignored skills and estimate system prompt savings:
|
|
244
|
+
|
|
245
|
+
```
|
|
246
|
+
skills_count=$(grep -c '.augment/skills/' .augmentignore 2>/dev/null || echo 0)
|
|
247
|
+
rules_count=$(grep -c '.augment/rules/' .augmentignore 2>/dev/null || echo 0)
|
|
248
|
+
echo "Skills ignored: $skills_count (~$((skills_count * 3)) system prompt lines saved per request)"
|
|
249
|
+
echo "Rules ignored: $rules_count"
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
## Rules
|
|
253
|
+
|
|
254
|
+
- **Always preserve** existing custom entries in `.augmentignore`.
|
|
255
|
+
- **Never ignore** source code, test files, config files, or documentation.
|
|
256
|
+
- **Lock files are always ignored** — they're huge and provide zero code insight.
|
|
257
|
+
- **IDE helpers are always ignored** — generated, 20k+ lines, stale quickly.
|
|
258
|
+
- **When in doubt, ignore files** — false positive is easy to fix, false negative wastes tokens silently.
|
|
259
|
+
- **When in doubt, keep skills** — ignoring a needed skill causes bad output, keeping an unneeded one just wastes ~3 lines.
|
|
260
|
+
- **Never ignore always-active rules** — only auto-loaded rules (those with `description` frontmatter) may be ignored.
|
|
261
|
+
- **Never ignore meta/agent-system skills** — `agent-docs-writing-writing`, `commands`, `context-create`, `override-management`, `guidelines`, `project-docs`, `roadmap-management`, `naming`, `skill-reviewer`, `file-editor`, `copilot-config`, `copilot-agents-optimization`.
|
|
262
|
+
- **Restore previously ignored skills** when the stack changes (e.g., Vue added to project → restore `vue` skill).
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: optimize-rtk-filters
|
|
3
|
+
skills: [agent-docs-writing]
|
|
4
|
+
description: Create or optimize project-local rtk filters based on the actual toolchain
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# optimize-rtk-filters
|
|
9
|
+
|
|
10
|
+
## Instructions
|
|
11
|
+
|
|
12
|
+
### 1. Check rtk is installed
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
which rtk
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
- If **not installed** → stop. This command requires rtk. Suggest running the install flow from the `rtk-output-filtering` skill.
|
|
19
|
+
|
|
20
|
+
### 2. Detect the project toolchain
|
|
21
|
+
|
|
22
|
+
Scan the project to determine which CLI tools are used:
|
|
23
|
+
|
|
24
|
+
| Check | Tool detected |
|
|
25
|
+
|---|---|
|
|
26
|
+
| `composer.json` contains `phpstan` or `larastan` | PHPStan |
|
|
27
|
+
| `composer.json` contains `pestphp/pest` or `phpunit/phpunit` | Pest / PHPUnit |
|
|
28
|
+
| `composer.json` contains `symplify/easy-coding-standard` | ECS |
|
|
29
|
+
| `composer.json` contains `rector/rector` | Rector |
|
|
30
|
+
| `composer.json` contains scripts like `quality:phpstan` | Artisan quality commands |
|
|
31
|
+
| `package.json` contains `playwright` | Playwright |
|
|
32
|
+
| `package.json` contains `vitest` or `jest` | JS test runner |
|
|
33
|
+
| `package.json` contains `biome` or `eslint` | JS linter |
|
|
34
|
+
| `package.json` contains `typescript` | TypeScript compiler |
|
|
35
|
+
| `docker-compose.yml` or `docker-compose.yaml` exists | Docker Compose |
|
|
36
|
+
| `Makefile` exists | Make targets |
|
|
37
|
+
| `Cargo.toml` exists | Rust / Cargo |
|
|
38
|
+
| `go.mod` exists | Go |
|
|
39
|
+
|
|
40
|
+
### 3. Read existing filters
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
cat .rtk/filters.toml 2>/dev/null || echo "NO_FILTERS_FILE"
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
- If file exists → read it, preserve custom entries the user may have added.
|
|
47
|
+
- If file does not exist → create `.rtk/` directory.
|
|
48
|
+
|
|
49
|
+
### 4. Generate optimized filters
|
|
50
|
+
|
|
51
|
+
For each detected tool, create a filter entry following this template:
|
|
52
|
+
|
|
53
|
+
```toml
|
|
54
|
+
[filters.<tool-name>]
|
|
55
|
+
description = "<one-line description>"
|
|
56
|
+
match_command = "<regex matching the tool's command>"
|
|
57
|
+
strip_ansi = true
|
|
58
|
+
strip_lines_matching = [<patterns for noise lines>]
|
|
59
|
+
max_lines = <appropriate limit>
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
**Filter design rules:**
|
|
63
|
+
|
|
64
|
+
- `strip_ansi = true` — always, ANSI codes waste tokens.
|
|
65
|
+
- `strip_lines_matching` — target empty lines, progress bars, framework boilerplate, download indicators.
|
|
66
|
+
- `max_lines` — set based on typical output size:
|
|
67
|
+
- Linters/static analysis: 80
|
|
68
|
+
- Test runners: 60
|
|
69
|
+
- Build tools: 40
|
|
70
|
+
- Status commands: 30
|
|
71
|
+
- `match_command` — use regex that matches both direct invocation and artisan/npm wrappers.
|
|
72
|
+
|
|
73
|
+
**Common noise patterns per tool:**
|
|
74
|
+
|
|
75
|
+
| Tool | Noise to strip |
|
|
76
|
+
|---|---|
|
|
77
|
+
| PHPStan | Progress bars (`\d+/\d+`), separator lines (`━`), notes |
|
|
78
|
+
| Pest/PHPUnit | Empty lines, box-drawing chars (`│`, `⇂`) |
|
|
79
|
+
| ECS/Rector | Separator lines, empty lines |
|
|
80
|
+
| Composer | Download progress, "Loading composer" |
|
|
81
|
+
| Docker Compose | Build context lines, pull progress |
|
|
82
|
+
| npm/yarn | Audit warnings, funding messages |
|
|
83
|
+
| Playwright | Browser download progress |
|
|
84
|
+
| cargo | Compiling lines (keep errors), download progress |
|
|
85
|
+
|
|
86
|
+
### 5. Write the filters file
|
|
87
|
+
|
|
88
|
+
Save to `.rtk/filters.toml` in the project root.
|
|
89
|
+
|
|
90
|
+
- Always start with `schema_version = 1` and a header comment.
|
|
91
|
+
- Include a comment referencing the project name.
|
|
92
|
+
- Preserve any existing custom filters the user added manually.
|
|
93
|
+
|
|
94
|
+
### 6. Verify
|
|
95
|
+
|
|
96
|
+
Run a quick test to confirm rtk picks up the filters:
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
rtk config 2>&1 | tail -5
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### 7. Present results
|
|
103
|
+
|
|
104
|
+
Show a summary table:
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
| # | Filter | Match | Max Lines |
|
|
108
|
+
|---|---|---|---|
|
|
109
|
+
| 1 | phpstan | phpstan\|quality:phpstan\|vendor/bin/phpstan | 80 |
|
|
110
|
+
| 2 | pest | pest\|phpunit\|artisan test | 60 |
|
|
111
|
+
| ... | ... | ... | ... |
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Rules
|
|
115
|
+
|
|
116
|
+
- **Do NOT delete** existing custom filter entries — only add or update.
|
|
117
|
+
- **Do NOT commit or push** — the user decides when to commit.
|
|
118
|
+
- Always set `strip_ansi = true` — there is no reason to keep ANSI in LLM context.
|
|
119
|
+
- If unsure about a tool's noise patterns, check recent command output or ask the user.
|
|
120
|
+
- The `.rtk/` directory should be versioned in Git (not in `.gitignore`).
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: optimize-skills
|
|
3
|
+
description: Audits skills — measures baseline, finds duplicates/merge candidates, runs linter. Suggest only, never auto-apply.
|
|
4
|
+
skills: [skill-reviewer]
|
|
5
|
+
disable-model-invocation: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# /optimize-skills
|
|
9
|
+
|
|
10
|
+
Skill audit: measure, find duplicates/merge candidates, run linter, present findings. **Suggest only — never auto-apply.**
|
|
11
|
+
|
|
12
|
+
**Source of truth:** `.agent-src.uncompressed/` — never read or edit `.agent-src/` or `.augment/` directly.
|
|
13
|
+
|
|
14
|
+
## Steps
|
|
15
|
+
|
|
16
|
+
### 1. Measure baseline
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
total=$(ls -d .agent-src.uncompressed/skills/*/SKILL.md 2>/dev/null | wc -l | tr -d ' ')
|
|
20
|
+
total_lines=$(cat .agent-src.uncompressed/skills/*/SKILL.md 2>/dev/null | wc -l | tr -d ' ')
|
|
21
|
+
echo "Skills: $total, Total lines: $total_lines"
|
|
22
|
+
|
|
23
|
+
# Top 15 by size
|
|
24
|
+
for f in .agent-src.uncompressed/skills/*/SKILL.md; do
|
|
25
|
+
name=$(basename $(dirname "$f"))
|
|
26
|
+
lines=$(wc -l < "$f" | tr -d ' ')
|
|
27
|
+
echo "$lines $name"
|
|
28
|
+
done | sort -rn | head -15
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### 2. Run skill linter
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
python3 scripts/skill_linter.py --pairs --duplicates .agent-src.uncompressed/skills/*/SKILL.md 2>&1 | tail -20
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Report FAIL/WARN counts. Do NOT fix linter issues here — that's the linter's or `skill-reviewer`'s job.
|
|
38
|
+
|
|
39
|
+
### 3. Find duplicates and merge candidates
|
|
40
|
+
|
|
41
|
+
**Duplicates**: >70% description overlap, same `## When to use` scenarios.
|
|
42
|
+
**Merge candidates**: same tool/area, strict subset, <50 lines → section in larger skill.
|
|
43
|
+
|
|
44
|
+
Present as table:
|
|
45
|
+
|
|
46
|
+
| # | Skills | Relationship | Recommendation |
|
|
47
|
+
|---|---|---|---|
|
|
48
|
+
| 1 | skill-a ↔ skill-b | Near-duplicate | Merge unique parts into skill-a |
|
|
49
|
+
| 2 | skill-c ↔ skill-d | Strict subset | Merge skill-c into skill-d |
|
|
50
|
+
| 3 | skill-e ↔ skill-f | Related but distinct | Keep both, clarify descriptions |
|
|
51
|
+
|
|
52
|
+
### 4. Find description overlap
|
|
53
|
+
|
|
54
|
+
Skills with overlapping trigger descriptions that might load simultaneously:
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
for f in .agent-src.uncompressed/skills/*/SKILL.md; do
|
|
58
|
+
name=$(basename $(dirname "$f"))
|
|
59
|
+
desc=$(grep 'description:' "$f" | head -1 | sed 's/.*"\(.*\)"/\1/')
|
|
60
|
+
echo "$name | $desc"
|
|
61
|
+
done | sort -t'|' -k2
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Flag pairs where descriptions target the same scenario.
|
|
65
|
+
|
|
66
|
+
### 5. Check sizes
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
for f in .agent-src.uncompressed/skills/*/SKILL.md; do
|
|
70
|
+
name=$(basename $(dirname "$f"))
|
|
71
|
+
lines=$(wc -l < "$f" | tr -d ' ')
|
|
72
|
+
[ "$lines" -gt 300 ] && echo "⚠️ $name — $lines lines"
|
|
73
|
+
done
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Oversized → suggest splitting by responsibility or extracting reference material.
|
|
77
|
+
Size limits: see `guidelines/agent-infra/size-and-scope.md`.
|
|
78
|
+
|
|
79
|
+
### 6. Present findings
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
## Skill Audit Results
|
|
83
|
+
|
|
84
|
+
| Metric | Value |
|
|
85
|
+
|---|---|
|
|
86
|
+
| Total skills | X |
|
|
87
|
+
| Total lines | X |
|
|
88
|
+
| Linter FAIL | X |
|
|
89
|
+
| Linter WARN | X |
|
|
90
|
+
| Duplicate/merge candidates | X |
|
|
91
|
+
| Oversized (>300 lines) | X |
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Ask user:
|
|
95
|
+
|
|
96
|
+
```
|
|
97
|
+
> 1. Go through merge candidates one by one
|
|
98
|
+
> 2. Fix linter issues (delegates to skill-reviewer)
|
|
99
|
+
> 3. Skip — report only
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
## Preservation gate — MANDATORY before any change
|
|
103
|
+
|
|
104
|
+
Before suggesting ANY modification to a skill, verify:
|
|
105
|
+
|
|
106
|
+
- [ ] Does the skill lose a concrete `### Validate` section? → **REJECT**
|
|
107
|
+
- [ ] Does the skill lose a real example or code snippet? → **REJECT**
|
|
108
|
+
- [ ] Does the skill lose a failure pattern from `## Gotcha`? → **REJECT**
|
|
109
|
+
- [ ] Does the skill lose a `## Do NOT` entry? → **REJECT**
|
|
110
|
+
- [ ] Does strong language get weakened ("MUST" → "should", "NEVER" → "avoid")? → **REJECT**
|
|
111
|
+
- [ ] Does the linter still pass after the change? → **REJECT if FAIL**
|
|
112
|
+
|
|
113
|
+
If any check fails: do NOT suggest the change.
|
|
114
|
+
|
|
115
|
+
## What this command does NOT do
|
|
116
|
+
|
|
117
|
+
- **No quality judgments** — the skill linter and `skill-reviewer` handle that
|
|
118
|
+
- **No auto-fixes** — all changes require explicit user approval
|
|
119
|
+
- **No "make it shorter"** — compression is done by Caveman Compression, not here
|
|
120
|
+
- **No Killer checks** — replaced by the skill linter (`scripts/skill_linter.py`)
|
|
121
|
+
- **No edits to `.agent-src/` or `.augment/`** — always edit `.agent-src.uncompressed/`, then sync
|