@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,148 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rule-writing
|
|
3
|
+
description: "Use when creating or editing a rule in .agent-src.uncompressed/rules/ — trigger wording, always vs auto classification, size budget — even when the user just says 'add a rule for X'."
|
|
4
|
+
source: package
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# rule-writing
|
|
8
|
+
|
|
9
|
+
## When to use
|
|
10
|
+
|
|
11
|
+
* Creating a new rule in `.agent-src.uncompressed/rules/{name}.md`
|
|
12
|
+
* Rewriting an existing rule (not a typo fix)
|
|
13
|
+
* Deciding whether something should be a rule at all
|
|
14
|
+
* Converting a learning from `learning-to-rule-or-skill` into a concrete rule
|
|
15
|
+
|
|
16
|
+
Do NOT use this skill when:
|
|
17
|
+
|
|
18
|
+
* The content is a multi-step workflow → use `skill-writing`
|
|
19
|
+
* The content is reference material agents cite → use `guideline-writing`
|
|
20
|
+
* The content is a user-invoked action → use `command-writing`
|
|
21
|
+
|
|
22
|
+
## Rule vs skill vs guideline — critical test
|
|
23
|
+
|
|
24
|
+
| Intent | Artifact |
|
|
25
|
+
|---|---|
|
|
26
|
+
| "Agent must always/never do X" | **Rule** |
|
|
27
|
+
| "When Y happens, run these steps" | **Skill** |
|
|
28
|
+
| "Here is knowledge the agent may cite" | **Guideline** |
|
|
29
|
+
|
|
30
|
+
A rule is a **constraint** — it states a boundary, not a workflow. If the
|
|
31
|
+
content needs numbered steps, it is a skill.
|
|
32
|
+
|
|
33
|
+
## Procedure
|
|
34
|
+
|
|
35
|
+
### 0. Run the Drafting Protocol
|
|
36
|
+
|
|
37
|
+
Creating or materially rewriting a rule **must** go through Understand →
|
|
38
|
+
Research → Draft from the
|
|
39
|
+
[`artifact-drafting-protocol`](../../rules/artifact-drafting-protocol.md) rule.
|
|
40
|
+
|
|
41
|
+
* **Understand** — which agent behavior is wrong today? What should change?
|
|
42
|
+
Can you point to a concrete incident or repeated pattern?
|
|
43
|
+
* **Research** — **inspect** `.agent-src.uncompressed/rules/` for overlap
|
|
44
|
+
and **analyze** `rule-type-governance`, `size-enforcement`,
|
|
45
|
+
`skill-quality` before drafting.
|
|
46
|
+
* **Draft** — propose frontmatter (`type`, `description`) first, wait for
|
|
47
|
+
confirmation, then fill the body.
|
|
48
|
+
|
|
49
|
+
### 1. Classify type — `always` vs `auto`
|
|
50
|
+
|
|
51
|
+
Normative source: [`rule-type-governance`](../../rules/rule-type-governance.md).
|
|
52
|
+
|
|
53
|
+
* `always` — universal behavior (language, scope, safety, verification)
|
|
54
|
+
* `auto` — triggered by description match on domain/symptom
|
|
55
|
+
|
|
56
|
+
Default to `auto`. `always` must be justified — if >50% of conversations
|
|
57
|
+
don't need it, it is `auto`.
|
|
58
|
+
|
|
59
|
+
### 2. Write a trigger-style description
|
|
60
|
+
|
|
61
|
+
The `description` field **is** the trigger. Describe **when** the rule
|
|
62
|
+
applies, not **what** it contains. Soft cap: **200 characters**.
|
|
63
|
+
|
|
64
|
+
```yaml
|
|
65
|
+
# Bad — describes content, won't match reliably:
|
|
66
|
+
description: "PHP coding standards"
|
|
67
|
+
|
|
68
|
+
# Good — trigger-shaped, names domain + symptoms:
|
|
69
|
+
description: "Writing or reviewing PHP code — strict types, naming, comparisons, early returns, Eloquent conventions"
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
When iterating on phrasing, delegate to the
|
|
73
|
+
[`description-assist`](../description-assist/SKILL.md) skill — approval-gated,
|
|
74
|
+
no silent edits, max two rounds.
|
|
75
|
+
|
|
76
|
+
### 3. Write the rule body
|
|
77
|
+
|
|
78
|
+
* Short, constraint-only, easy to scan.
|
|
79
|
+
* Bullet lists, tables, do/don't blocks — not paragraphs of prose.
|
|
80
|
+
* No numbered procedures — if you need steps, it is a skill.
|
|
81
|
+
* Link out to guidelines for deep reference instead of inlining them.
|
|
82
|
+
|
|
83
|
+
### 4. Enforce the size budget
|
|
84
|
+
|
|
85
|
+
Normative source: [`size-enforcement`](../../rules/size-enforcement.md) +
|
|
86
|
+
`guidelines/agent-infra/size-and-scope.md`.
|
|
87
|
+
|
|
88
|
+
| Category | Target |
|
|
89
|
+
|---|---|
|
|
90
|
+
| Ideal | < 60 non-empty lines |
|
|
91
|
+
| Acceptable | < 100–120 lines |
|
|
92
|
+
| Hard limit | < 200 lines |
|
|
93
|
+
|
|
94
|
+
Linter emits `long_rule` above ~80 non-empty lines. Above that, justify in
|
|
95
|
+
the PR or split by responsibility.
|
|
96
|
+
|
|
97
|
+
### 5. Validate
|
|
98
|
+
|
|
99
|
+
* Run `python3 scripts/skill_linter.py .agent-src.uncompressed/rules/{name}.md`
|
|
100
|
+
→ must report **0 FAIL**.
|
|
101
|
+
* Run `task sync` to regenerate `.agent-src/rules/{name}.md`.
|
|
102
|
+
* Run `task generate-tools` to project into `.claude/`, `.cursor/`, `.clinerules/`, `.windsurfrules`.
|
|
103
|
+
* Run `task ci` — must exit 0 except for tolerated warnings.
|
|
104
|
+
|
|
105
|
+
## Frontmatter shape
|
|
106
|
+
|
|
107
|
+
```yaml
|
|
108
|
+
---
|
|
109
|
+
type: "auto" # or "always"
|
|
110
|
+
description: "Trigger-shaped sentence — domain + symptoms — soft cap 200 chars"
|
|
111
|
+
alwaysApply: false # true only if type: always
|
|
112
|
+
source: package # or project for consumer-local rules
|
|
113
|
+
---
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## Output format
|
|
117
|
+
|
|
118
|
+
1. Complete rule file at `.agent-src.uncompressed/rules/{name}.md`
|
|
119
|
+
2. Frontmatter fully populated, no placeholders left
|
|
120
|
+
3. Linter output showing 0 FAIL
|
|
121
|
+
4. Confirmation that `task sync` + `task generate-tools` ran clean
|
|
122
|
+
|
|
123
|
+
## Gotchas
|
|
124
|
+
|
|
125
|
+
* Writing a rule that duplicates an existing one — always grep first.
|
|
126
|
+
* Defaulting to `always` "just in case" — token cost is real, `auto` is default.
|
|
127
|
+
* Description like "Rule about X" — it must describe *when*, not *what*.
|
|
128
|
+
* Pasting a workflow into a rule — if it has numbered steps, split into a skill.
|
|
129
|
+
* Forgetting to run `task generate-tools` — downstream tools stay stale.
|
|
130
|
+
* Editing `.agent-src/rules/` or `.augment/rules/` directly — those are generated.
|
|
131
|
+
|
|
132
|
+
## Do NOT
|
|
133
|
+
|
|
134
|
+
* Do NOT inline long procedures
|
|
135
|
+
* Do NOT exceed the hard size limit without an explicit waiver
|
|
136
|
+
* Do NOT edit projections (`.agent-src/`, `.augment/`, `.claude/`, etc.)
|
|
137
|
+
* Do NOT skip the linter
|
|
138
|
+
* Do NOT create a rule when a guideline or skill is the right shape
|
|
139
|
+
|
|
140
|
+
## Examples
|
|
141
|
+
|
|
142
|
+
Good description (trigger-shaped, names domain + symptoms):
|
|
143
|
+
|
|
144
|
+
> "Git commit message format, branch naming, conventional commits, committing, pushing, or creating pull requests"
|
|
145
|
+
|
|
146
|
+
Bad description (no trigger, too vague):
|
|
147
|
+
|
|
148
|
+
> "Commit conventions"
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: security
|
|
3
|
+
description: "Use when applying security best practices — authentication, authorization via Policies, CSRF protection, input sanitization, rate limiting, or secure coding."
|
|
4
|
+
source: package
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# security
|
|
8
|
+
|
|
9
|
+
## When to use
|
|
10
|
+
|
|
11
|
+
Use when implementing authentication, authorization, or any security-sensitive functionality.
|
|
12
|
+
|
|
13
|
+
Do NOT use when:
|
|
14
|
+
- Validation logic only (use `laravel-validation` skill)
|
|
15
|
+
- Full security audit (use `security-audit` skill)
|
|
16
|
+
|
|
17
|
+
## Procedure: Implement security for a feature
|
|
18
|
+
|
|
19
|
+
### Step 0: Inspect
|
|
20
|
+
|
|
21
|
+
1. Read `agents/authentication.md` for auth flow.
|
|
22
|
+
2. Read `agents/gates.md` for gate/policy patterns.
|
|
23
|
+
3. Check existing policies in `app/Policies/`.
|
|
24
|
+
|
|
25
|
+
### Step 1: Authentication
|
|
26
|
+
|
|
27
|
+
- Check auth setup: `tymon/jwt-auth` or `laravel/sanctum`.
|
|
28
|
+
- Check `config/auth.php` for guards and providers.
|
|
29
|
+
- Customer identification happens after auth — see `multi-tenancy` skill.
|
|
30
|
+
|
|
31
|
+
### Step 2: Authorization
|
|
32
|
+
|
|
33
|
+
1. Create policy in `app/Policies/` if needed.
|
|
34
|
+
2. Use in FormRequest `authorize()` or controller `$this->authorize()`.
|
|
35
|
+
3. Check `agents/gates.md` for non-model gates.
|
|
36
|
+
|
|
37
|
+
### Step 3: Review for adversarial
|
|
38
|
+
|
|
39
|
+
For security-sensitive changes, run `adversarial-review` skill.
|
|
40
|
+
Focus on: attack surface, trusting user input, authorization gaps.
|
|
41
|
+
|
|
42
|
+
## Conventions
|
|
43
|
+
|
|
44
|
+
→ See guideline `php/security.md` for auth, SQL injection, XSS, CSRF, headers, session, mass assignment.
|
|
45
|
+
|
|
46
|
+
### Validate
|
|
47
|
+
|
|
48
|
+
- Verify all user input is validated via FormRequest before use.
|
|
49
|
+
- Confirm authorization check exists (Policy or Gate) for every state-changing action.
|
|
50
|
+
- Check that no raw user input reaches SQL, HTML output, or shell commands.
|
|
51
|
+
- Run PHPStan — must pass (catches type-safety issues that enable injection).
|
|
52
|
+
|
|
53
|
+
## Output format
|
|
54
|
+
|
|
55
|
+
1. Security-hardened code with auth, validation, and sanitization
|
|
56
|
+
2. Policy class for authorization if needed
|
|
57
|
+
|
|
58
|
+
## Gotcha
|
|
59
|
+
|
|
60
|
+
- Validation ensures format, not intent — don't trust input after validation alone.
|
|
61
|
+
- `Gate::authorize()` throws, `Gate::allows()` returns bool — choose based on error handling.
|
|
62
|
+
- Rate limiting: ALL public endpoints, not just login.
|
|
63
|
+
- Never log passwords, tokens, or API keys.
|
|
64
|
+
|
|
65
|
+
## Do NOT
|
|
66
|
+
|
|
67
|
+
- Do NOT bypass FormRequest validation in controllers.
|
|
68
|
+
- Do NOT use `$request->all()` for mass assignment — use `$request->validated()`.
|
|
69
|
+
- Do NOT store plaintext passwords or secrets in the database.
|
|
70
|
+
- Do NOT expose internal error details in production API responses.
|
|
71
|
+
|
|
72
|
+
## Auto-trigger keywords
|
|
73
|
+
|
|
74
|
+
- security
|
|
75
|
+
- authentication
|
|
76
|
+
- authorization
|
|
77
|
+
- CSRF
|
|
78
|
+
- XSS
|
|
79
|
+
- policy
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: security-audit
|
|
3
|
+
description: "ONLY when user explicitly requests: security audit, vulnerability scan, or penetration test review. NOT for regular feature work."
|
|
4
|
+
source: package
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# security-audit
|
|
8
|
+
|
|
9
|
+
## Mission
|
|
10
|
+
|
|
11
|
+
Find real security vulnerabilities in code before they are exploited. This skill is
|
|
12
|
+
**proactive** — it audits code for security weaknesses, not just responds to incidents.
|
|
13
|
+
|
|
14
|
+
For writing secure code patterns (policies, auth, CSRF), use the `security` skill instead.
|
|
15
|
+
|
|
16
|
+
## When to use
|
|
17
|
+
|
|
18
|
+
Use this skill when:
|
|
19
|
+
|
|
20
|
+
- Auditing a codebase or module for security risks
|
|
21
|
+
- `analysis-autonomous-mode` routes here after detecting risky patterns
|
|
22
|
+
- Reviewing code that handles user input, authentication, or authorization
|
|
23
|
+
- Checking for vulnerabilities before a release or deployment
|
|
24
|
+
|
|
25
|
+
Do NOT use when:
|
|
26
|
+
|
|
27
|
+
- Writing new auth/policy code → use `security`
|
|
28
|
+
- Hunting for functional bugs → use `bug-analyzer` (proactive mode)
|
|
29
|
+
- Investigating performance → use `performance-analysis`
|
|
30
|
+
|
|
31
|
+
## Procedure: Security audit
|
|
32
|
+
|
|
33
|
+
### 1. Map attack surface
|
|
34
|
+
|
|
35
|
+
Identify all entry points where untrusted data enters:
|
|
36
|
+
|
|
37
|
+
- HTTP request parameters, headers, cookies
|
|
38
|
+
- File uploads
|
|
39
|
+
- API payloads (JSON, XML, form data)
|
|
40
|
+
- Webhook callbacks
|
|
41
|
+
- Queue job payloads from external sources
|
|
42
|
+
- Import files (CSV, Excel, XML)
|
|
43
|
+
- URL path segments and query strings
|
|
44
|
+
|
|
45
|
+
### 2. Trace trust boundaries
|
|
46
|
+
|
|
47
|
+
For each entry point, trace where user input flows:
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
User Input → Controller → Validation → Service → DB/File/External
|
|
51
|
+
↓ ↓ ↓
|
|
52
|
+
Is it sanitized? Complete? Used safely?
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### 3. Check vulnerability categories
|
|
56
|
+
|
|
57
|
+
| Category | What to look for |
|
|
58
|
+
|---|---|
|
|
59
|
+
| **SQL Injection** | Raw queries with concatenation, missing parameter binding |
|
|
60
|
+
| **XSS** | Unescaped output in Blade (`{!! !!}`), JSON responses with HTML |
|
|
61
|
+
| **CSRF** | Missing middleware, API endpoints without token verification |
|
|
62
|
+
| **Auth bypass** | Missing policy checks, broken gate logic, `withoutMiddleware()` |
|
|
63
|
+
| **IDOR** | Direct object access without ownership verification |
|
|
64
|
+
| **Mass assignment** | Missing `$fillable`/`$guarded`, `request()->all()` in create/update |
|
|
65
|
+
| **File upload** | Missing type validation, path traversal, executable uploads |
|
|
66
|
+
| **SSRF** | User-controlled URLs passed to HTTP client |
|
|
67
|
+
| **Deserialization** | Unserializing user input, unsafe queue payloads |
|
|
68
|
+
| **Secret exposure** | Hardcoded credentials, secrets in logs, `.env` in public dir |
|
|
69
|
+
| **Rate limiting** | Missing throttle on auth endpoints, password reset, API |
|
|
70
|
+
| **Header injection** | User input in response headers, email headers |
|
|
71
|
+
|
|
72
|
+
### 4. Framework-specific checks
|
|
73
|
+
|
|
74
|
+
**Laravel:**
|
|
75
|
+
- `env()` in non-config files (leaks in debug mode)
|
|
76
|
+
- Debug mode (`APP_DEBUG=true`) in production
|
|
77
|
+
- Missing `$fillable` on models used with `request()->all()`
|
|
78
|
+
- `Route::any()` exposing unintended HTTP methods
|
|
79
|
+
- Missing rate limiting on login/register/password-reset
|
|
80
|
+
- Broadcast channels without proper authorization
|
|
81
|
+
- Missing encryption on sensitive cookie/session data
|
|
82
|
+
|
|
83
|
+
### 5. Dependency audit
|
|
84
|
+
|
|
85
|
+
- Check `composer.lock` for known vulnerable packages
|
|
86
|
+
- Check `package-lock.json` for frontend vulnerabilities
|
|
87
|
+
- Identify outdated packages with known CVEs
|
|
88
|
+
- Check if security patches are available
|
|
89
|
+
|
|
90
|
+
## Output format
|
|
91
|
+
|
|
92
|
+
For each vulnerability:
|
|
93
|
+
|
|
94
|
+
- **Vulnerability:** concise title
|
|
95
|
+
- **Category:** OWASP category (Injection, Broken Auth, etc.)
|
|
96
|
+
- **Location:** file and line
|
|
97
|
+
- **Severity:** Low / Medium / High / Critical
|
|
98
|
+
- **Exploitability:** How easy to exploit (trivial / requires auth / complex)
|
|
99
|
+
- **Impact:** What an attacker could achieve
|
|
100
|
+
- **Evidence:** code reference showing the weakness
|
|
101
|
+
- **Fix:** concrete mitigation
|
|
102
|
+
- **Confidence:** Low / Medium / High
|
|
103
|
+
|
|
104
|
+
## Integration with other skills
|
|
105
|
+
|
|
106
|
+
- **analysis-autonomous-mode** — routes here when security concerns are detected
|
|
107
|
+
- **security** — complementary: security is about writing secure code, this is about finding holes
|
|
108
|
+
- **universal-project-analysis** — provides context about packages and framework usage
|
|
109
|
+
- **bug-analyzer** — some bugs have security implications (chain when found)
|
|
110
|
+
|
|
111
|
+
## Gotcha
|
|
112
|
+
|
|
113
|
+
- Don't report theoretical vulnerabilities without a concrete attack vector — false positives erode trust.
|
|
114
|
+
- The model tends to flag framework-handled security as issues (e.g., Laravel's CSRF is already handled).
|
|
115
|
+
- Always check if a finding is already mitigated by middleware or configuration before reporting it.
|
|
116
|
+
|
|
117
|
+
## Do NOT
|
|
118
|
+
|
|
119
|
+
- Do NOT report theoretical risks that require impossible preconditions
|
|
120
|
+
- Do NOT ignore user input flows — always trace from entry to usage
|
|
121
|
+
- Do NOT assume frameworks handle everything — verify middleware and config
|
|
122
|
+
- Do NOT confuse code quality issues with security vulnerabilities
|
|
123
|
+
- Do NOT skip dependency checking — known CVEs are real risks
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: sentry-integration
|
|
3
|
+
description: "Use when the user shares a Sentry URL, says "check Sentry", or wants to investigate production errors. Uses Sentry MCP tools for deep analysis."
|
|
4
|
+
source: package
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Sentry Skill
|
|
8
|
+
|
|
9
|
+
## When to use
|
|
10
|
+
|
|
11
|
+
Use this skill when:
|
|
12
|
+
- Investigating a Sentry error or issue URL
|
|
13
|
+
- Analyzing error patterns, frequency, or affected users
|
|
14
|
+
- Working with Sentry MCP tools for issue details
|
|
15
|
+
- Adding error reporting or breadcrumbs to code
|
|
16
|
+
- Configuring Sentry alerts or release tracking
|
|
17
|
+
|
|
18
|
+
## Available MCP tools
|
|
19
|
+
|
|
20
|
+
### Issue investigation
|
|
21
|
+
|
|
22
|
+
| Tool | Purpose |
|
|
23
|
+
|---|---|
|
|
24
|
+
| `get_issue_details` | Full issue details: stacktrace, tags, metadata |
|
|
25
|
+
| `get_issue_tag_values` | Distribution by tag (browser, URL, environment, user) |
|
|
26
|
+
| `search_issues` | Find issues by criteria (unresolved, critical, etc.) |
|
|
27
|
+
| `search_events` | Count/aggregate events, find individual error logs |
|
|
28
|
+
| `search_issue_events` | Filter events within a specific issue |
|
|
29
|
+
| `analyze_issue_with_seer` | AI root cause analysis with code fix suggestions |
|
|
30
|
+
|
|
31
|
+
### Context tools
|
|
32
|
+
|
|
33
|
+
| Tool | Purpose |
|
|
34
|
+
|---|---|
|
|
35
|
+
| `get_trace_details` | Trace overview for performance issues |
|
|
36
|
+
| `get_event_attachment` | Download screenshots, logs attached to events |
|
|
37
|
+
| `find_organizations` | Find org slug (needed for most queries) |
|
|
38
|
+
| `find_projects` | Find project slug |
|
|
39
|
+
| `find_releases` | Check recent releases and deploy timing |
|
|
40
|
+
|
|
41
|
+
## Procedure: Investigate a Sentry error
|
|
42
|
+
|
|
43
|
+
### 1. Get issue details
|
|
44
|
+
|
|
45
|
+
From a Sentry URL:
|
|
46
|
+
```
|
|
47
|
+
get_issue_details(issueUrl='https://sentry.io/issues/PROJECT-123/')
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
From an issue ID:
|
|
51
|
+
```
|
|
52
|
+
get_issue_details(organizationSlug='my-org', issueId='PROJECT-123')
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### 2. Analyze the stacktrace
|
|
56
|
+
|
|
57
|
+
- **Top frame** = where it crashed
|
|
58
|
+
- **Bottom frame** = entry point (HTTP request, job, command)
|
|
59
|
+
- Read each file in the call chain using `codebase-retrieval`
|
|
60
|
+
- Identify where data becomes invalid or assumptions break
|
|
61
|
+
|
|
62
|
+
### 3. Check distribution
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
get_issue_tag_values(issueId='PROJECT-123', tagKey='environment')
|
|
66
|
+
get_issue_tag_values(issueId='PROJECT-123', tagKey='url')
|
|
67
|
+
get_issue_tag_values(issueId='PROJECT-123', tagKey='browser')
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
Useful tags: `environment`, `url`, `browser`, `os`, `release`, `user`, `device`
|
|
71
|
+
|
|
72
|
+
### 4. Check frequency and timing
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
search_events(organizationSlug='my-org', naturalLanguageQuery='count of errors for PROJECT-123 in last 7 days')
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### 5. AI analysis (if needed)
|
|
79
|
+
|
|
80
|
+
```
|
|
81
|
+
analyze_issue_with_seer(issueUrl='https://sentry.io/issues/PROJECT-123/')
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Only use when you cannot determine the root cause from the stacktrace alone.
|
|
85
|
+
|
|
86
|
+
## Error reporting in code
|
|
87
|
+
|
|
88
|
+
### MonitoringHelper (project convention)
|
|
89
|
+
|
|
90
|
+
Always use the project's `MonitoringHelper` — never the Sentry SDK directly:
|
|
91
|
+
|
|
92
|
+
```php
|
|
93
|
+
// ✅ Correct
|
|
94
|
+
MonitoringHelper::captureException($exception);
|
|
95
|
+
|
|
96
|
+
// ❌ Wrong
|
|
97
|
+
\Sentry\captureException($exception);
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### Breadcrumbs
|
|
101
|
+
|
|
102
|
+
Use project enums for structured breadcrumbs:
|
|
103
|
+
|
|
104
|
+
```php
|
|
105
|
+
use App\Enums\Sentry\BreadcrumbType;
|
|
106
|
+
use App\Enums\Sentry\BreadcrumbLevel;
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
### Context
|
|
110
|
+
|
|
111
|
+
Check the project for Sentry context enums and the tenant switching service that sets context automatically.
|
|
112
|
+
|
|
113
|
+
## Common error patterns
|
|
114
|
+
|
|
115
|
+
| Pattern | Root cause | Fix approach |
|
|
116
|
+
|---|---|---|
|
|
117
|
+
| `TypeError: null passed to non-nullable` | Missing null check on optional DB column | Add null guard or make parameter nullable |
|
|
118
|
+
| `ModelNotFoundException` | Deleted or missing related record | Add `optional()` or existence check |
|
|
119
|
+
| `ConnectionException` | Multi-tenant DB switch failed | Check tenant switching service flow |
|
|
120
|
+
| `ValidationException` in jobs | Job data changed between dispatch and execution | Re-validate in `handle()` |
|
|
121
|
+
| `Undefined array key` | External API/import data missing expected field | Add `array_key_exists()` or null coalescing |
|
|
122
|
+
|
|
123
|
+
## Search patterns
|
|
124
|
+
|
|
125
|
+
### Find issues by criteria
|
|
126
|
+
|
|
127
|
+
```
|
|
128
|
+
search_issues(organizationSlug='my-org', naturalLanguageQuery='unresolved errors in production last 24h')
|
|
129
|
+
search_issues(organizationSlug='my-org', naturalLanguageQuery='errors affecting more than 100 users')
|
|
130
|
+
search_issues(organizationSlug='my-org', naturalLanguageQuery='issues assigned to me')
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### Count events
|
|
134
|
+
|
|
135
|
+
```
|
|
136
|
+
search_events(organizationSlug='my-org', naturalLanguageQuery='how many errors today')
|
|
137
|
+
search_events(organizationSlug='my-org', naturalLanguageQuery='count of database failures this week')
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## Related
|
|
141
|
+
|
|
142
|
+
- **Skill:** `logging-monitoring` — full monitoring stack (Sentry + Grafana + Loki)
|
|
143
|
+
- **Skill:** `bug-analyzer` — uses Sentry as input for bug investigation
|
|
144
|
+
- **Command:** `/bug-investigate` — fetches Sentry details automatically
|
|
145
|
+
- **Config:** `config/sentry.php` — Sentry DSN and configuration
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
## Output format
|
|
149
|
+
|
|
150
|
+
1. Sentry integration code with proper context and breadcrumbs
|
|
151
|
+
2. Error grouping configuration if needed
|
|
152
|
+
|
|
153
|
+
## Gotcha
|
|
154
|
+
|
|
155
|
+
- Sentry groups errors by stacktrace — different root causes may appear as the same issue. Check multiple events.
|
|
156
|
+
- The model tends to analyze only the latest event — check the "Events" tab for patterns across time.
|
|
157
|
+
- Don't use Sentry MCP tools for simple lookups — use the Sentry web UI link instead (saves tokens).
|
|
158
|
+
|
|
159
|
+
## Do NOT
|
|
160
|
+
|
|
161
|
+
- Do NOT use Sentry SDK directly — use MonitoringHelper.
|
|
162
|
+
- Do NOT ignore Sentry errors without investigating root cause.
|
|
163
|
+
- Do NOT expose sensitive data in Sentry error context.
|
|
164
|
+
|
|
165
|
+
## Auto-trigger keywords
|
|
166
|
+
|
|
167
|
+
- Sentry
|
|
168
|
+
- error tracking
|
|
169
|
+
- issue investigation
|
|
170
|
+
- error reporting
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: sequential-thinking
|
|
3
|
+
description: "ONLY when user explicitly requests: step-by-step reasoning, structured problem decomposition, or iterative analysis. NOT for regular coding tasks."
|
|
4
|
+
source: package
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# sequential-thinking
|
|
8
|
+
|
|
9
|
+
## When to use
|
|
10
|
+
|
|
11
|
+
Use this skill when:
|
|
12
|
+
- A problem requires multiple interconnected reasoning steps
|
|
13
|
+
- The initial scope or approach is uncertain
|
|
14
|
+
- You need to filter through complexity to find core issues
|
|
15
|
+
- You may need to backtrack or revise earlier conclusions
|
|
16
|
+
- You want to explore alternative solution paths
|
|
17
|
+
- A decision has significant consequences and needs careful analysis
|
|
18
|
+
|
|
19
|
+
Do NOT use for:
|
|
20
|
+
- Simple queries with direct answers
|
|
21
|
+
- Single-step tasks
|
|
22
|
+
- Well-understood, routine operations
|
|
23
|
+
|
|
24
|
+
## Core capabilities
|
|
25
|
+
|
|
26
|
+
### Iterative reasoning
|
|
27
|
+
|
|
28
|
+
Break complex problems into sequential thought steps. Each step builds on previous ones
|
|
29
|
+
but can also question or revise them.
|
|
30
|
+
|
|
31
|
+
### Dynamic scope
|
|
32
|
+
|
|
33
|
+
Start with an estimate of needed steps, but adjust as understanding evolves.
|
|
34
|
+
Don't commit to a fixed plan — let the analysis guide the depth.
|
|
35
|
+
|
|
36
|
+
### Revision tracking
|
|
37
|
+
|
|
38
|
+
When new information contradicts an earlier conclusion:
|
|
39
|
+
1. **Acknowledge** the contradiction explicitly.
|
|
40
|
+
2. **Identify** which earlier step needs revision.
|
|
41
|
+
3. **Revise** the conclusion with the new evidence.
|
|
42
|
+
4. **Propagate** the change to all dependent steps.
|
|
43
|
+
|
|
44
|
+
### Branch exploration
|
|
45
|
+
|
|
46
|
+
When multiple approaches seem viable:
|
|
47
|
+
1. **Identify** the decision point.
|
|
48
|
+
2. **Explore** each branch briefly (2-3 steps).
|
|
49
|
+
3. **Compare** outcomes and tradeoffs.
|
|
50
|
+
4. **Choose** the best path with reasoning.
|
|
51
|
+
5. **Document** why alternatives were rejected.
|
|
52
|
+
|
|
53
|
+
## Procedure: Sequential thinking
|
|
54
|
+
|
|
55
|
+
### Step 1: Frame the problem
|
|
56
|
+
|
|
57
|
+
- What exactly needs to be solved?
|
|
58
|
+
- What are the constraints?
|
|
59
|
+
- What does success look like?
|
|
60
|
+
- What information is missing?
|
|
61
|
+
|
|
62
|
+
### Step 2: Decompose
|
|
63
|
+
|
|
64
|
+
- Break into independent sub-problems where possible.
|
|
65
|
+
- Identify dependencies between sub-problems.
|
|
66
|
+
- Order by dependency (solve prerequisites first).
|
|
67
|
+
|
|
68
|
+
### Step 3: Solve iteratively
|
|
69
|
+
|
|
70
|
+
For each sub-problem:
|
|
71
|
+
1. **Analyze** — What do we know? What do we need?
|
|
72
|
+
2. **Hypothesize** — What's the most likely solution?
|
|
73
|
+
3. **Verify** — Does the hypothesis hold against evidence?
|
|
74
|
+
4. **Conclude** or **Revise** — Accept or go back to step 1.
|
|
75
|
+
|
|
76
|
+
### Step 4: Synthesize
|
|
77
|
+
|
|
78
|
+
- Combine sub-problem solutions into the overall answer.
|
|
79
|
+
- Check for contradictions between sub-solutions.
|
|
80
|
+
- Verify the combined solution against the original problem.
|
|
81
|
+
|
|
82
|
+
### Step 5: Validate
|
|
83
|
+
|
|
84
|
+
- Does the solution actually solve the stated problem?
|
|
85
|
+
- Are there edge cases not covered?
|
|
86
|
+
- Is the solution proportional to the problem (not over-engineered)?
|
|
87
|
+
|
|
88
|
+
## When to revise
|
|
89
|
+
|
|
90
|
+
Revise earlier thinking when:
|
|
91
|
+
- New evidence contradicts a previous assumption.
|
|
92
|
+
- A sub-problem solution doesn't fit the overall picture.
|
|
93
|
+
- The user provides new information that changes the context.
|
|
94
|
+
- You realize you were solving the wrong problem.
|
|
95
|
+
|
|
96
|
+
## When to branch
|
|
97
|
+
|
|
98
|
+
Explore alternatives when:
|
|
99
|
+
- Two approaches seem equally viable.
|
|
100
|
+
- The stakes are high (architecture decisions, data migrations).
|
|
101
|
+
- The user asks "what if we did X instead?"
|
|
102
|
+
- The first approach hits a dead end.
|
|
103
|
+
|
|
104
|
+
## Integration with other skills
|
|
105
|
+
|
|
106
|
+
- **bug-analyzer** — Use sequential thinking for complex root cause analysis.
|
|
107
|
+
- **feature-planning** — Use for architecture decision exploration (Phase 4).
|
|
108
|
+
- **technical-specification** — Use for evaluating alternatives in specs.
|
|
109
|
+
- **refactorer** — Use for planning multi-step refactoring safely.
|
|
110
|
+
|
|
111
|
+
## Anti-patterns
|
|
112
|
+
|
|
113
|
+
| Anti-pattern | Problem | Fix |
|
|
114
|
+
|---|---|---|
|
|
115
|
+
| **Premature conclusion** | Jumping to a solution without analysis | Complete at least Steps 1-3 first |
|
|
116
|
+
| **Analysis paralysis** | Endless exploration without deciding | Set a step limit, then decide |
|
|
117
|
+
| **Ignoring contradictions** | Pushing forward despite conflicting evidence | Stop and revise |
|
|
118
|
+
| **Linear-only thinking** | Never considering alternatives | Branch at key decision points |
|
|
119
|
+
| **Scope creep** | Problem keeps expanding during analysis | Re-frame and constrain |
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
## Output format
|
|
123
|
+
|
|
124
|
+
1. Numbered reasoning steps with conclusions
|
|
125
|
+
2. Final answer or recommendation with confidence level
|
|
126
|
+
|
|
127
|
+
## Auto-trigger keywords
|
|
128
|
+
|
|
129
|
+
- problem solving
|
|
130
|
+
- step-by-step
|
|
131
|
+
- reasoning
|
|
132
|
+
- decomposition
|
|
133
|
+
|
|
134
|
+
## Gotcha
|
|
135
|
+
|
|
136
|
+
- Don't use sequential thinking for simple tasks — it adds latency without value.
|
|
137
|
+
- The model tends to generate too many thoughts — cap at 10 unless the problem truly needs more.
|
|
138
|
+
- Each thought should build on the previous one — avoid restating the same point in different words.
|
|
139
|
+
|
|
140
|
+
## Do NOT
|
|
141
|
+
|
|
142
|
+
- Do NOT use this for simple, well-understood tasks — it adds unnecessary overhead.
|
|
143
|
+
- Do NOT call `sequentialthinking` more than **once per task**. If you're calling it repeatedly,
|
|
144
|
+
you're looping — stop and act directly instead.
|
|
145
|
+
- Do NOT use `sequentialthinking` as a "thinking proxy" — if the task is "view a file" or
|
|
146
|
+
"run a command", just do it. No thinking step needed.
|
|
147
|
+
- Do NOT skip the validation step — always check the solution against the original problem.
|
|
148
|
+
- Do NOT ignore contradictions — they are signals, not noise.
|
|
149
|
+
- Do NOT commit to a fixed number of steps upfront — let the problem guide the depth.
|
|
150
|
+
|
|
151
|
+
## References
|
|
152
|
+
|
|
153
|
+
- **Chain-of-Thought (CoT)** — [arxiv.org/abs/2201.11903](https://arxiv.org/abs/2201.11903)
|
|
154
|
+
Step-by-step reasoning improves complex problem solving in large
|
|
155
|
+
language models. This skill constrains CoT by capping the number
|
|
156
|
+
of thoughts and enforcing a validation step — avoids the common
|
|
157
|
+
failure mode of unbounded chain expansion.
|
|
158
|
+
|