@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,186 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "estimate-ticket"
|
|
3
|
+
description: "Estimate a Jira/Linear ticket — 'estimate PROJ-123', 'wie groß ist das?', 'should we split this?' — size + risk + split + uncertainty, sibling of /refine-ticket, close-prompt."
|
|
4
|
+
personas:
|
|
5
|
+
- developer
|
|
6
|
+
- senior-engineer
|
|
7
|
+
- product-owner
|
|
8
|
+
- stakeholder
|
|
9
|
+
- critical-challenger
|
|
10
|
+
- ai-agent
|
|
11
|
+
source: package
|
|
12
|
+
execution:
|
|
13
|
+
type: assisted
|
|
14
|
+
handler: internal
|
|
15
|
+
allowed_tools: []
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
# Estimate Ticket
|
|
19
|
+
|
|
20
|
+
> Sibling of `/refine-ticket`. Takes the same input, returns **size**,
|
|
21
|
+
> **risk**, **split recommendation**, and **uncertainty** — nothing
|
|
22
|
+
> else. Separate from refinement so each stays sharp. Output is
|
|
23
|
+
> copyable; write-back is user-gated.
|
|
24
|
+
|
|
25
|
+
## When to use
|
|
26
|
+
|
|
27
|
+
- Sprint planning: "how big is PROJ-123?"
|
|
28
|
+
- Scope sanity: "should we split this?"
|
|
29
|
+
- Confidence check: "do we actually understand this ticket?"
|
|
30
|
+
- German: "wie groß ist das Ticket?", "sollen wir das splitten?",
|
|
31
|
+
"ist das ein Spike-Kandidat?"
|
|
32
|
+
|
|
33
|
+
## When NOT to use (near-misses)
|
|
34
|
+
|
|
35
|
+
| Phrasing | Route to |
|
|
36
|
+
|---|---|
|
|
37
|
+
| "refine the ticket" / "tighten AC" | `/refine-ticket` (sibling) |
|
|
38
|
+
| "plan this feature" | `/feature-plan` (downstream) |
|
|
39
|
+
| "is this a duplicate?" | `validate-feature-fit` (sub-skill) |
|
|
40
|
+
| "threat-model this" | `threat-modeling` (sub-skill) |
|
|
41
|
+
| "investigate this bug" | `/bug-investigate` |
|
|
42
|
+
|
|
43
|
+
`/estimate-ticket` does **not** rewrite the ticket. If the ticket is
|
|
44
|
+
too vague to estimate, output says so and routes to `/refine-ticket`.
|
|
45
|
+
|
|
46
|
+
## Inputs
|
|
47
|
+
|
|
48
|
+
Same four paths as `/refine-ticket` (delegates to `jira-ticket` loader):
|
|
49
|
+
ticket key, branch-name detection, pasted text, URL.
|
|
50
|
+
|
|
51
|
+
## Procedure
|
|
52
|
+
|
|
53
|
+
### 1. Load ticket
|
|
54
|
+
|
|
55
|
+
Delegate to `jira-ticket` §1-3 (key / URL / branch → Jira API fetch,
|
|
56
|
+
summary + description + AC + comments). For pasted text: parse markdown.
|
|
57
|
+
|
|
58
|
+
### 2. Inspect estimability
|
|
59
|
+
|
|
60
|
+
Before producing numbers, check:
|
|
61
|
+
|
|
62
|
+
- Is the outcome observable (AC bullets concrete)?
|
|
63
|
+
- Is the scope one behavior, or bundled?
|
|
64
|
+
- Are external dependencies (APIs, teams, migrations) named?
|
|
65
|
+
- Is there a rollback plan implied?
|
|
66
|
+
|
|
67
|
+
If the ticket scores low on estimability (vague AC, no out-of-scope,
|
|
68
|
+
no mention of dependencies), set `uncertainty = Underspecified` and
|
|
69
|
+
emit a single-line redirect to `/refine-ticket` at the top of the output.
|
|
70
|
+
|
|
71
|
+
### 3. Apply sizing heuristics
|
|
72
|
+
|
|
73
|
+
Score across four axes; each axis contributes to the final size:
|
|
74
|
+
|
|
75
|
+
| Axis | Signals |
|
|
76
|
+
|---|---|
|
|
77
|
+
| **Surface area** | # of files / modules / layers touched |
|
|
78
|
+
| **Unknowns** | # of "figure out", "investigate", "tbd" phrases |
|
|
79
|
+
| **Coordination** | external teams, cross-service calls, migrations |
|
|
80
|
+
| **Testing cost** | integration tests needed, manual verification steps |
|
|
81
|
+
|
|
82
|
+
Map the combined score to `S` / `M` / `L` / `XL`:
|
|
83
|
+
|
|
84
|
+
- **S** — single file / single layer / fully understood / unit tests suffice
|
|
85
|
+
- **M** — 2-4 files / one service boundary / one unknown / some integration tests
|
|
86
|
+
- **L** — multiple modules / cross-layer / 2+ unknowns / migrations or data changes
|
|
87
|
+
- **XL** — multi-service / 3+ unknowns / coordination with another team — always recommend split
|
|
88
|
+
|
|
89
|
+
### 4. Apply personas
|
|
90
|
+
|
|
91
|
+
Same Core-6 as refine-ticket. Each voice produces one sentence focused
|
|
92
|
+
on **their sizing concern**, not general feedback:
|
|
93
|
+
|
|
94
|
+
- **Developer** — "implementation size feels X because Y"
|
|
95
|
+
- **Senior Engineer** — "blast radius is X; hidden cost is Z"
|
|
96
|
+
- **Product Owner** — "value is X; can we deliver value incrementally?"
|
|
97
|
+
- **Stakeholder** — "timeline fit: X; drop-dead date risk: Y"
|
|
98
|
+
- **Critical Challenger** — "this estimate is wrong because Z"
|
|
99
|
+
- **AI Agent** — "automatable parts: X; manual parts: Y"
|
|
100
|
+
|
|
101
|
+
`--personas=+qa` adds QA: "test surface is X; regression risk is Y".
|
|
102
|
+
|
|
103
|
+
### 5. Synthesize + close-prompt
|
|
104
|
+
|
|
105
|
+
Produce the four-section output (template below). After rendering,
|
|
106
|
+
emit the close-prompt.
|
|
107
|
+
|
|
108
|
+
## Output template
|
|
109
|
+
|
|
110
|
+
````markdown
|
|
111
|
+
## Estimate
|
|
112
|
+
|
|
113
|
+
- **Size:** S / M / L / XL
|
|
114
|
+
- **Risk:** Low / Medium / High
|
|
115
|
+
- **Split:** No / Yes → <split points>
|
|
116
|
+
- **Uncertainty:** High-confidence / Needs-spike / Underspecified
|
|
117
|
+
|
|
118
|
+
## Sizing rationale
|
|
119
|
+
|
|
120
|
+
<2-4 bullets citing the four axes — surface area, unknowns,
|
|
121
|
+
coordination, testing cost — each with evidence from the ticket>
|
|
122
|
+
|
|
123
|
+
## Split points (only if Split: Yes)
|
|
124
|
+
|
|
125
|
+
1. <first slice — deliverable on its own>
|
|
126
|
+
2. <second slice — deliverable on its own>
|
|
127
|
+
3. …
|
|
128
|
+
|
|
129
|
+
## Persona voices (sizing-focused)
|
|
130
|
+
|
|
131
|
+
- **Developer** — <one sentence>
|
|
132
|
+
- **Senior Engineer** — <one sentence>
|
|
133
|
+
- **Product Owner** — <one sentence>
|
|
134
|
+
- **Stakeholder** — <one sentence>
|
|
135
|
+
- **Critical Challenger** — <one sentence>
|
|
136
|
+
- **AI Agent** — <one sentence>
|
|
137
|
+
- **[qa]** — *(only when `--personas=+qa`)* <one sentence>
|
|
138
|
+
````
|
|
139
|
+
|
|
140
|
+
Wrap the **Estimate** section in a copyable markdown block so it can
|
|
141
|
+
be pasted into Jira / sprint tooling verbatim.
|
|
142
|
+
|
|
143
|
+
## Close-prompt (mandatory final step)
|
|
144
|
+
|
|
145
|
+
```
|
|
146
|
+
> Next action for this estimate:
|
|
147
|
+
>
|
|
148
|
+
> 1. Comment on Jira — I'll post the estimate as a comment
|
|
149
|
+
> 2. Set story points — I'll set the Story Points field (if your size maps: S=2, M=3, L=5, XL=8)
|
|
150
|
+
> 3. Nothing — I'll handle it myself / take it to planning
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
Options 1 and 2 require `jira-ticket` write permissions; degrade to
|
|
154
|
+
copy-paste instructions if missing.
|
|
155
|
+
|
|
156
|
+
## Output format
|
|
157
|
+
|
|
158
|
+
1. **Estimate** block with four fields (size, risk, split, uncertainty), wrapped in a copyable markdown block.
|
|
159
|
+
2. **Sizing rationale** — 2-4 bullets, each citing one of the four axes with evidence from the ticket.
|
|
160
|
+
3. **Split points** section — only when `Split: Yes`; numbered list of independently-deliverable slices.
|
|
161
|
+
4. **Persona voices** — one sentence per persona from the active set, **sizing-focused** (not general feedback).
|
|
162
|
+
5. **Close-prompt** — exactly three numbered options (comment / set points / nothing); no fourth option in v1.
|
|
163
|
+
|
|
164
|
+
## Gotcha
|
|
165
|
+
|
|
166
|
+
- Estimators default to optimism. Every size must cite evidence for at least one of the four axes — not "feels like M".
|
|
167
|
+
- `Underspecified` is not a safe default. Use it only when estimability actually fails; otherwise pick a size and state the risk.
|
|
168
|
+
- `Split: Yes` without concrete split points is useless. Name the slices or drop the recommendation.
|
|
169
|
+
- Persona voices drift into general feedback. Each sentence must be about **sizing** — developer talks implementation size, stakeholder talks timeline fit, etc.
|
|
170
|
+
- Story-point mapping (`S=2 / M=3 / L=5 / XL=8`) is the default; projects may override — do NOT hardcode their scale into this skill.
|
|
171
|
+
|
|
172
|
+
## Do NOT
|
|
173
|
+
|
|
174
|
+
- Do NOT rewrite the ticket — that's `/refine-ticket`. If the ticket needs rewriting, emit the redirect line and stop.
|
|
175
|
+
- Do NOT write to Jira in v1 — copy-paste + close-prompt, same contract as `/refine-ticket`.
|
|
176
|
+
- Do NOT chain into `/feature-plan` automatically — separate invocations by design.
|
|
177
|
+
- Do NOT produce sizes without rationale — the bullets are mandatory, not optional.
|
|
178
|
+
- Do NOT invent split points that share state with each other — every slice must be independently deliverable.
|
|
179
|
+
|
|
180
|
+
## See also
|
|
181
|
+
|
|
182
|
+
- [`refine-ticket`](../refine-ticket/SKILL.md) — sibling; refine first if the ticket is vague
|
|
183
|
+
- [`jira-ticket`](../../commands/jira-ticket.md) — ticket loader
|
|
184
|
+
- [`feature-plan`](../../commands/feature-plan.md) — downstream planning
|
|
185
|
+
- [`road-to-ticket-refinement.md`](../../../agents/roadmaps/road-to-ticket-refinement.md) — governing roadmap
|
|
186
|
+
- [`artifact-drafting-protocol`](../../rules/artifact-drafting-protocol.md) — drafting protocol
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Output-schema contract for `estimate-ticket`.
|
|
2
|
+
#
|
|
3
|
+
# Locks the frozen three-section shape of the `## Output template`
|
|
4
|
+
# block so refactors cannot silently drift the estimate output away
|
|
5
|
+
# from what consumers copy-paste into Jira / sprint tooling. Enforced
|
|
6
|
+
# by `scripts/skill_linter.py` (`lint_output_schema`) — a drift is a
|
|
7
|
+
# hard error.
|
|
8
|
+
#
|
|
9
|
+
# `Split points` is intentionally omitted — it is conditional on
|
|
10
|
+
# `Split: Yes` and not part of the always-present base shape.
|
|
11
|
+
#
|
|
12
|
+
# Governed by: road-to-trigger-evals.md Phase 3.5 (originally deferred
|
|
13
|
+
# from archive/road-to-ticket-refinement.md Phase 1 per Q26).
|
|
14
|
+
|
|
15
|
+
version: 1
|
|
16
|
+
|
|
17
|
+
required_headers:
|
|
18
|
+
- "Estimate"
|
|
19
|
+
- "Sizing rationale"
|
|
20
|
+
- "Persona voices (sizing-focused)"
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"skill": "estimate-ticket",
|
|
3
|
+
"version": 1,
|
|
4
|
+
"should_trigger": [
|
|
5
|
+
"estimate PROJ-123",
|
|
6
|
+
"how big is this ticket?",
|
|
7
|
+
"should we split this?",
|
|
8
|
+
"wie groß ist das Ticket?",
|
|
9
|
+
"sollen wir das splitten?"
|
|
10
|
+
],
|
|
11
|
+
"should_not_trigger": [
|
|
12
|
+
"refine this ticket",
|
|
13
|
+
"plan this feature",
|
|
14
|
+
"is PROJ-123 a duplicate of anything we already have?",
|
|
15
|
+
"threat-model this change",
|
|
16
|
+
"investigate this bug"
|
|
17
|
+
]
|
|
18
|
+
}
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: fe-design
|
|
3
|
+
description: "Use when designing frontend interfaces — component architecture, layout patterns, form design, table patterns, responsive strategies, and UX principles for Blade/Livewire/Flux/Tailwind."
|
|
4
|
+
source: package
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Frontend Design Skill
|
|
8
|
+
|
|
9
|
+
## When to use
|
|
10
|
+
|
|
11
|
+
Use this skill when:
|
|
12
|
+
- Planning a new page or feature UI before implementing
|
|
13
|
+
- Choosing between component patterns (modal vs. inline, table vs. cards)
|
|
14
|
+
- Designing forms with complex validation or multi-step flows
|
|
15
|
+
- Making responsive design decisions
|
|
16
|
+
- Reviewing UI for accessibility and usability
|
|
17
|
+
- Deciding how to structure Livewire components
|
|
18
|
+
|
|
19
|
+
## Procedure: Design a frontend interface
|
|
20
|
+
|
|
21
|
+
1. **Understand requirements** — What data is shown? What actions are available? Who is the user?
|
|
22
|
+
2. **Choose technology** — Pick from the project stack (see table below).
|
|
23
|
+
3. **Design layout** — Mobile-first, component-based, consistent spacing.
|
|
24
|
+
4. **Implement** — Build with Blade components, Livewire for interactivity, Flux for UI primitives.
|
|
25
|
+
5. **Verify** — Check accessibility (labels, focus, contrast), responsive behavior, loading states.
|
|
26
|
+
|
|
27
|
+
This project uses a server-rendered stack:
|
|
28
|
+
|
|
29
|
+
| Layer | Technology | Skill |
|
|
30
|
+
|---|---|---|
|
|
31
|
+
| Templates | Laravel Blade | `blade-ui` |
|
|
32
|
+
| Interactivity | Livewire 3 | `livewire` |
|
|
33
|
+
| Component library | Flux (by Laravel) | `flux` |
|
|
34
|
+
| Styling | Tailwind CSS | `tailwind` |
|
|
35
|
+
| Icons | Heroicons / custom | — |
|
|
36
|
+
|
|
37
|
+
**Key principle:** Server-first. Use Livewire for interactivity. Avoid JavaScript unless Livewire can't handle it (e.g., drag-and-drop, complex animations).
|
|
38
|
+
|
|
39
|
+
## Component Architecture
|
|
40
|
+
|
|
41
|
+
### Page structure
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
Page (Blade layout)
|
|
45
|
+
├── Header (Blade partial)
|
|
46
|
+
├── Navigation (Livewire — active state)
|
|
47
|
+
├── Content area
|
|
48
|
+
│ ├── Page heading + actions (Blade)
|
|
49
|
+
│ ├── Filters (Livewire — reactive)
|
|
50
|
+
│ ├── Data display (Livewire — table/cards)
|
|
51
|
+
│ └── Pagination (Livewire)
|
|
52
|
+
└── Footer (Blade partial)
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### When to use what
|
|
56
|
+
|
|
57
|
+
| Pattern | When | Example |
|
|
58
|
+
|---|---|---|
|
|
59
|
+
| **Blade partial** | Static content, no interactivity | Header, footer, static info |
|
|
60
|
+
| **Blade component** | Reusable UI element, props only | Button, badge, card shell |
|
|
61
|
+
| **Livewire component** | Needs server interaction or state | Forms, tables, filters |
|
|
62
|
+
| **Flux component** | Standard UI element from library | Modal, dropdown, input, toast |
|
|
63
|
+
| **Alpine.js** | Client-only micro-interaction | Toggle, accordion, clipboard |
|
|
64
|
+
|
|
65
|
+
### Component granularity
|
|
66
|
+
|
|
67
|
+
- **One Livewire component per concern** — don't build mega-components
|
|
68
|
+
- **Compose with Blade components** inside Livewire for reusable UI pieces
|
|
69
|
+
- **Use Flux for standard elements** — don't rebuild what Flux provides
|
|
70
|
+
- **Extract when used 3+ times** — DRY applies to UI too
|
|
71
|
+
|
|
72
|
+
## Form Design
|
|
73
|
+
|
|
74
|
+
### Principles
|
|
75
|
+
|
|
76
|
+
1. **Labels always visible** — no placeholder-only inputs
|
|
77
|
+
2. **Validation on blur + submit** — immediate feedback, not on every keystroke
|
|
78
|
+
3. **Error messages below the field** — red text, specific message
|
|
79
|
+
4. **Required fields marked** — asterisk (*) or "(required)" label
|
|
80
|
+
5. **Logical grouping** — related fields in sections with headings
|
|
81
|
+
6. **Primary action prominent** — submit button stands out, cancel is secondary
|
|
82
|
+
|
|
83
|
+
### Layout patterns
|
|
84
|
+
|
|
85
|
+
| Fields | Layout | When |
|
|
86
|
+
|---|---|---|
|
|
87
|
+
| 1–3 fields | Single column | Simple forms (login, search) |
|
|
88
|
+
| 4–8 fields | Two columns on desktop, single on mobile | Standard CRUD forms |
|
|
89
|
+
| 8+ fields | Sections with headings or tabs/steps | Complex entity forms |
|
|
90
|
+
| Related pairs | Side by side (first/last name, city/zip) | Logically paired fields |
|
|
91
|
+
|
|
92
|
+
### Multi-step forms
|
|
93
|
+
|
|
94
|
+
```
|
|
95
|
+
Step indicator (1 — 2 — 3)
|
|
96
|
+
├── Step 1: Basic info → Next
|
|
97
|
+
├── Step 2: Details → Back / Next
|
|
98
|
+
└── Step 3: Review + Submit → Back / Submit
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
- Show progress indicator (step numbers or progress bar)
|
|
102
|
+
- Allow going back without losing data
|
|
103
|
+
- Validate each step before allowing next
|
|
104
|
+
- Show summary on final step
|
|
105
|
+
|
|
106
|
+
## Table Design
|
|
107
|
+
|
|
108
|
+
### Principles
|
|
109
|
+
|
|
110
|
+
1. **Right-align numbers** — easier to compare
|
|
111
|
+
2. **Left-align text** — natural reading direction
|
|
112
|
+
3. **Sortable columns** — click header to sort
|
|
113
|
+
4. **Sticky header** — visible when scrolling long tables
|
|
114
|
+
5. **Row actions** — edit/delete as icon buttons or dropdown menu
|
|
115
|
+
6. **Empty state** — helpful message when no data, not just blank
|
|
116
|
+
|
|
117
|
+
### Responsive tables
|
|
118
|
+
|
|
119
|
+
| Screen | Strategy |
|
|
120
|
+
|---|---|
|
|
121
|
+
| Desktop (≥1024px) | Full table with all columns |
|
|
122
|
+
| Tablet (768–1023px) | Hide less important columns |
|
|
123
|
+
| Mobile (<768px) | Card layout or horizontal scroll |
|
|
124
|
+
|
|
125
|
+
### Pagination
|
|
126
|
+
|
|
127
|
+
- Default: 25 rows per page
|
|
128
|
+
- Show total count: "Showing 1–25 of 142"
|
|
129
|
+
- Allow page size change (10, 25, 50, 100)
|
|
130
|
+
- Use Livewire pagination (server-side)
|
|
131
|
+
|
|
132
|
+
## Responsive Strategy
|
|
133
|
+
|
|
134
|
+
### Breakpoints (Tailwind)
|
|
135
|
+
|
|
136
|
+
| Prefix | Min width | Target |
|
|
137
|
+
|---|---|---|
|
|
138
|
+
| `sm:` | 640px | Large phones |
|
|
139
|
+
| `md:` | 768px | Tablets |
|
|
140
|
+
| `lg:` | 1024px | Small laptops |
|
|
141
|
+
| `xl:` | 1280px | Desktops |
|
|
142
|
+
| `2xl:` | 1536px | Large screens |
|
|
143
|
+
|
|
144
|
+
### Mobile-first approach
|
|
145
|
+
|
|
146
|
+
1. Design for mobile first (default styles)
|
|
147
|
+
2. Add complexity at larger breakpoints
|
|
148
|
+
3. Test at each breakpoint, not just desktop
|
|
149
|
+
|
|
150
|
+
### Common patterns
|
|
151
|
+
|
|
152
|
+
| Element | Mobile | Desktop |
|
|
153
|
+
|---|---|---|
|
|
154
|
+
| Navigation | Hamburger menu | Sidebar or top nav |
|
|
155
|
+
| Forms | Single column | Two columns |
|
|
156
|
+
| Tables | Cards or scroll | Full table |
|
|
157
|
+
| Actions | Bottom sheet / FAB | Inline buttons |
|
|
158
|
+
| Filters | Collapsible panel | Sidebar or inline |
|
|
159
|
+
|
|
160
|
+
## Accessibility (a11y)
|
|
161
|
+
|
|
162
|
+
### Minimum requirements
|
|
163
|
+
|
|
164
|
+
- **Color contrast:** 4.5:1 for text, 3:1 for large text (WCAG AA)
|
|
165
|
+
- **Keyboard navigation:** All interactive elements reachable via Tab
|
|
166
|
+
- **Focus indicators:** Visible focus ring on all focusable elements
|
|
167
|
+
- **Alt text:** All meaningful images have descriptive alt text
|
|
168
|
+
- **ARIA labels:** Interactive elements without visible text need `aria-label`
|
|
169
|
+
- **Semantic HTML:** Use `<button>`, `<nav>`, `<main>`, `<form>` — not `<div>` for everything
|
|
170
|
+
|
|
171
|
+
### Common mistakes
|
|
172
|
+
|
|
173
|
+
| Mistake | Fix |
|
|
174
|
+
|---|---|
|
|
175
|
+
| `<div onclick>` | Use `<button>` |
|
|
176
|
+
| Color-only status | Add icon or text alongside color |
|
|
177
|
+
| Missing form labels | Add `<label for="...">` |
|
|
178
|
+
| Auto-playing content | Provide pause/stop control |
|
|
179
|
+
| Tiny click targets | Min 44×44px touch target |
|
|
180
|
+
|
|
181
|
+
## UX Principles
|
|
182
|
+
|
|
183
|
+
1. **Feedback** — Every action gets a response (toast, loading state, success message)
|
|
184
|
+
2. **Forgiveness** — Undo for destructive actions, confirmation for irreversible ones
|
|
185
|
+
3. **Consistency** — Same patterns for same interactions across the app
|
|
186
|
+
4. **Progressive disclosure** — Show basics first, details on demand
|
|
187
|
+
5. **Loading states** — Skeleton screens or spinners, never blank screens
|
|
188
|
+
6. **Error recovery** — Clear error messages with suggested actions
|
|
189
|
+
|
|
190
|
+
## Related
|
|
191
|
+
|
|
192
|
+
- **Skill:** `blade-ui` — Blade template implementation
|
|
193
|
+
- **Skill:** `livewire` — Livewire component implementation
|
|
194
|
+
- **Skill:** `flux` — Flux component library usage
|
|
195
|
+
- **Skill:** `tailwind` — Tailwind CSS utility patterns
|
|
196
|
+
- **Skill:** `dashboard-design` — Monitoring dashboard design (different domain)
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
## Output format
|
|
200
|
+
|
|
201
|
+
1. Component structure with layout, data flow, and interaction patterns
|
|
202
|
+
2. Responsive behavior for mobile/tablet/desktop breakpoints
|
|
203
|
+
3. Accessibility annotations (ARIA, keyboard navigation)
|
|
204
|
+
|
|
205
|
+
## Gotcha
|
|
206
|
+
|
|
207
|
+
- Don't design components without checking existing Flux/Livewire components first — avoid reinventing.
|
|
208
|
+
- The model tends to use raw HTML instead of project component library — always prefer existing components.
|
|
209
|
+
- Mobile-first is not optional — every layout must work on 320px width.
|
|
210
|
+
|
|
211
|
+
## Do NOT
|
|
212
|
+
|
|
213
|
+
- Do NOT skip mobile viewport testing.
|
|
214
|
+
- Do NOT use fixed pixel widths for responsive layouts.
|
|
215
|
+
- Do NOT ignore accessibility requirements.
|
|
216
|
+
|
|
217
|
+
## Auto-trigger keywords
|
|
218
|
+
|
|
219
|
+
- frontend design
|
|
220
|
+
- component architecture
|
|
221
|
+
- layout
|
|
222
|
+
- form design
|
|
223
|
+
- responsive
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: feature-planning
|
|
3
|
+
description: "Use when the user says "plan a feature", "brainstorm", "explore this idea", or wants to go from idea to structured plan and roadmap."
|
|
4
|
+
source: package
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# feature-planning
|
|
8
|
+
|
|
9
|
+
## When to use
|
|
10
|
+
|
|
11
|
+
Use this skill when:
|
|
12
|
+
- The user has a feature idea they want to explore or plan
|
|
13
|
+
- An existing feature plan needs refinement
|
|
14
|
+
- A feature plan needs to be turned into actionable roadmaps
|
|
15
|
+
|
|
16
|
+
Do NOT use when:
|
|
17
|
+
- Bug fixes (use `bug-analyzer` skill)
|
|
18
|
+
- Simple, well-understood changes that don't need planning
|
|
19
|
+
|
|
20
|
+
## Procedure: Plan a feature
|
|
21
|
+
|
|
22
|
+
1. **Gather requirements** — What problem does this solve? Who benefits? What's the expected outcome?
|
|
23
|
+
2. **Analyze scope** — Which modules, routes, models, services are affected?
|
|
24
|
+
3. **Write the plan** — Create a feature plan document (see template below).
|
|
25
|
+
4. **Verify** — Confirm all affected areas are identified, no missing dependencies.
|
|
26
|
+
|
|
27
|
+
A **feature plan** captures the "what and why" of a feature:
|
|
28
|
+
- Problem it solves, who benefits, expected outcome
|
|
29
|
+
- Scope, affected modules, technical approach
|
|
30
|
+
- Open questions and decisions
|
|
31
|
+
|
|
32
|
+
A **roadmap** captures the "how and when" — the step-by-step implementation plan.
|
|
33
|
+
Feature plans and roadmaps are linked but separate concerns.
|
|
34
|
+
|
|
35
|
+
## File structure
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
agents/features/ # Project-wide feature plans
|
|
39
|
+
├── {feature-name}.md
|
|
40
|
+
|
|
41
|
+
app/Modules/{Module}/agents/features/ # Module-scoped feature plans
|
|
42
|
+
├── {feature-name}.md
|
|
43
|
+
|
|
44
|
+
.augment/templates/
|
|
45
|
+
└── features.md # Feature plan template
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Roadmaps generated from features live in `agents/roadmaps/` (or module-level `agents/roadmaps/`).
|
|
49
|
+
|
|
50
|
+
## Feature lifecycle
|
|
51
|
+
|
|
52
|
+
### Quick workflow (small features)
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
Explore → Plan → Refine → Roadmap → Implement
|
|
56
|
+
↑ ↑
|
|
57
|
+
└── iterate ─────┘
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
| Phase | Command | Output |
|
|
61
|
+
|---|---|---|
|
|
62
|
+
| **Explore** | `/feature-explore` | Brainstorming notes, feasibility check, rough scope |
|
|
63
|
+
| **Plan** | `/feature-plan` | Structured feature doc in `agents/features/` |
|
|
64
|
+
| **Refine** | `/feature-refactor` | Updated feature doc with changes |
|
|
65
|
+
| **Roadmap** | `/feature-roadmap` | Roadmap(s) in `agents/roadmaps/`, linked from feature |
|
|
66
|
+
|
|
67
|
+
### Full workflow (complex features, 7 phases)
|
|
68
|
+
|
|
69
|
+
Use the full workflow for features that span multiple files, require architecture decisions,
|
|
70
|
+
or have unclear requirements. Trigger with `/feature-dev`.
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
Discovery → Exploration → Questions → Architecture → Implementation → Review → Summary
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
#### Phase 1: Discovery
|
|
77
|
+
- Clarify the feature request — what problem does it solve?
|
|
78
|
+
- Identify constraints, requirements, and affected users.
|
|
79
|
+
- **Understanding Lock (Hard Gate):** Summarize understanding in 5–7 bullets covering:
|
|
80
|
+
what is being built, why, who it's for, key constraints, explicit non-goals.
|
|
81
|
+
- List all **assumptions** explicitly.
|
|
82
|
+
- **Wait for explicit confirmation before proceeding.** Do NOT design until confirmed.
|
|
83
|
+
|
|
84
|
+
#### Phase 2: Codebase Exploration
|
|
85
|
+
- Search for similar features in the codebase.
|
|
86
|
+
- Map the architecture and abstractions in the affected area.
|
|
87
|
+
- Identify key files, services, models, routes involved.
|
|
88
|
+
- Present findings with file references.
|
|
89
|
+
|
|
90
|
+
#### Phase 3: Clarifying Questions
|
|
91
|
+
- Review codebase findings against the feature request.
|
|
92
|
+
- Identify underspecified aspects: edge cases, error handling, integrations, backward compatibility.
|
|
93
|
+
- **Non-functional requirements** — explicitly clarify or propose defaults for:
|
|
94
|
+
- Performance expectations (response time, throughput)
|
|
95
|
+
- Scale (users, data volume, concurrent requests)
|
|
96
|
+
- Security / privacy constraints
|
|
97
|
+
- Reliability / availability needs
|
|
98
|
+
- Maintenance and ownership expectations
|
|
99
|
+
- Present all questions in an organized list.
|
|
100
|
+
- **Wait for answers before proceeding.**
|
|
101
|
+
|
|
102
|
+
#### Phase 4: Architecture Design
|
|
103
|
+
- Design 2-3 implementation approaches with different tradeoffs:
|
|
104
|
+
- **Minimal changes** — smallest change, maximum reuse.
|
|
105
|
+
- **Clean architecture** — maintainability, elegant abstractions.
|
|
106
|
+
- **Pragmatic balance** — speed + quality.
|
|
107
|
+
- Present comparison with pros/cons and a recommendation.
|
|
108
|
+
- **Ask the user which approach to use** (present as numbered options).
|
|
109
|
+
|
|
110
|
+
#### Phase 5: Implementation
|
|
111
|
+
- **Wait for explicit approval** before starting.
|
|
112
|
+
- Follow chosen architecture from Phase 4.
|
|
113
|
+
- Follow codebase conventions strictly.
|
|
114
|
+
- Track progress via task list or roadmap.
|
|
115
|
+
|
|
116
|
+
#### Phase 6: Quality Review
|
|
117
|
+
- Review the implementation for:
|
|
118
|
+
- Simplicity, DRY, elegance.
|
|
119
|
+
- Bugs and correctness.
|
|
120
|
+
- Convention adherence.
|
|
121
|
+
- Present findings with severity levels.
|
|
122
|
+
- **Ask what to fix now vs. later.**
|
|
123
|
+
|
|
124
|
+
#### Phase 7: Summary
|
|
125
|
+
- Summarize what was built, key decisions, files modified.
|
|
126
|
+
- Suggest next steps (tests, documentation, follow-up features).
|
|
127
|
+
- Update roadmap if applicable.
|
|
128
|
+
|
|
129
|
+
## Decision log
|
|
130
|
+
|
|
131
|
+
Maintain a running **decision log** throughout the planning process. For each decision:
|
|
132
|
+
- What was decided
|
|
133
|
+
- Alternatives considered
|
|
134
|
+
- Why this option was chosen
|
|
135
|
+
|
|
136
|
+
Include the decision log in the feature plan file under a `## Decisions` section.
|
|
137
|
+
This ensures future developers (and agents) understand the reasoning, not just the outcome.
|
|
138
|
+
|
|
139
|
+
## Adversarial self-review
|
|
140
|
+
|
|
141
|
+
After completing a plan, run the **`adversarial-review`** skill before presenting it.
|
|
142
|
+
Focus on the "Feature plans / Architecture" attack questions. See that skill for the full process.
|
|
143
|
+
|
|
144
|
+
## Feature plan format
|
|
145
|
+
|
|
146
|
+
See `.augment/templates/features.md` for the full structure. Key sections:
|
|
147
|
+
|
|
148
|
+
- **Problem** — What pain point does this solve?
|
|
149
|
+
- **Proposal** — What's the solution?
|
|
150
|
+
- **Scope** — What's in, what's out?
|
|
151
|
+
- **Affected Areas** — Which modules, models, services, routes?
|
|
152
|
+
- **Technical Approach** — High-level architecture decisions
|
|
153
|
+
- **Non-Functional Requirements** — Performance, scale, security, reliability
|
|
154
|
+
- **Decisions** — Decision log with alternatives and reasoning
|
|
155
|
+
- **Open Questions** — Unresolved decisions
|
|
156
|
+
- **Roadmaps** — Links to generated roadmap files
|
|
157
|
+
|
|
158
|
+
## Integration with other systems
|
|
159
|
+
|
|
160
|
+
### Sessions
|
|
161
|
+
|
|
162
|
+
```markdown
|
|
163
|
+
- **Feature:** `agents/features/my-feature.md`
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### Roadmaps
|
|
167
|
+
|
|
168
|
+
Feature plans link to their roadmaps in the `## Roadmaps` section.
|
|
169
|
+
Roadmaps reference their source feature in the `## Context` section.
|
|
170
|
+
|
|
171
|
+
### Modules
|
|
172
|
+
|
|
173
|
+
If a feature is scoped to a single module, the feature plan and roadmaps live in the
|
|
174
|
+
module's `agents/` directory:
|
|
175
|
+
- Feature: `app/Modules/{Module}/agents/features/`
|
|
176
|
+
- Roadmaps: `app/Modules/{Module}/agents/roadmaps/`
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
## Behavior rules
|
|
180
|
+
|
|
181
|
+
### Research before planning
|
|
182
|
+
|
|
183
|
+
Before creating a feature plan, always:
|
|
184
|
+
1. **Search the codebase** for related code, existing patterns, and affected areas.
|
|
185
|
+
2. **Read module docs** if the feature touches a specific module.
|
|
186
|
+
3. **Check existing features** in `agents/features/` for overlap or dependencies.
|
|
187
|
+
|
|
188
|
+
### Be collaborative
|
|
189
|
+
|
|
190
|
+
- **Ask questions** — don't assume requirements.
|
|
191
|
+
- **Challenge scope** — suggest what can be deferred.
|
|
192
|
+
- **Show tradeoffs** — present options with pros/cons.
|
|
193
|
+
- **Validate feasibility** — check if the codebase supports the approach.
|
|
194
|
+
|
|
195
|
+
### Keep it navigational
|
|
196
|
+
|
|
197
|
+
Feature plans are decision documents, not implementation guides.
|
|
198
|
+
Implementation details belong in roadmaps.
|
|
199
|
+
|
|
200
|
+
## Output format
|
|
201
|
+
|
|
202
|
+
1. Feature plan document following the template structure
|
|
203
|
+
2. Decision log with rationale for key choices
|
|
204
|
+
3. Implementation roadmap with ordered tasks
|
|
205
|
+
|
|
206
|
+
## Auto-trigger keywords
|
|
207
|
+
|
|
208
|
+
- feature planning
|
|
209
|
+
- feature exploration
|
|
210
|
+
- feature roadmap
|
|
211
|
+
- requirements
|
|
212
|
+
|
|
213
|
+
## Gotcha
|
|
214
|
+
|
|
215
|
+
- Don't plan features without understanding the business context — ask the user before assuming.
|
|
216
|
+
- The model tends to over-engineer plans — start with the simplest viable solution.
|
|
217
|
+
- A plan without acceptance criteria is incomplete — always define what "done" means.
|
|
218
|
+
- Don't create plans for features that already exist — search the codebase first.
|
|
219
|
+
|
|
220
|
+
## Do NOT
|
|
221
|
+
|
|
222
|
+
- Do NOT create feature plans without user input — always collaborate.
|
|
223
|
+
- Do NOT skip codebase research — always check what exists.
|
|
224
|
+
- Do NOT put implementation steps in the feature plan — that's the roadmap's job.
|
|
225
|
+
- Do NOT commit or push without permission.
|
|
226
|
+
- Do NOT duplicate information from `AGENTS.md` or module docs.
|