@event4u/agent-config 1.33.0 → 1.35.0
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/commands/review-changes.md +13 -8
- package/.agent-src/commands/roadmap/process-full.md +17 -15
- package/.agent-src/contexts/execution/roadmap-process-loop.md +11 -10
- package/.agent-src/personas/README.md +12 -21
- package/.agent-src/personas/_template-specialist/persona.md +89 -0
- package/.agent-src/personas/backend-architect.md +96 -0
- package/.agent-src/personas/discovery-lead.md +99 -0
- package/.agent-src/personas/eloquent-tamer.md +96 -0
- package/.agent-src/personas/frontend-engineer.md +100 -0
- package/.agent-src/personas/product-owner.md +71 -52
- package/.agent-src/personas/qa.md +27 -2
- package/.agent-src/personas/revops-maintainer.md +100 -0
- package/.agent-src/personas/security-engineer.md +100 -0
- package/.agent-src/personas/tech-writer.md +99 -0
- package/.agent-src/skills/accessibility-auditor/SKILL.md +132 -0
- package/.agent-src/skills/adr-create/SKILL.md +1 -0
- package/.agent-src/skills/adversarial-review/SKILL.md +1 -0
- package/.agent-src/skills/agent-docs-writing/SKILL.md +1 -0
- package/.agent-src/skills/agents-md-thin-root/SKILL.md +1 -0
- package/.agent-src/skills/ai-council/SKILL.md +1 -0
- package/.agent-src/skills/analysis-autonomous-mode/SKILL.md +1 -0
- package/.agent-src/skills/analysis-skill-router/SKILL.md +1 -0
- package/.agent-src/skills/api-design/SKILL.md +3 -0
- package/.agent-src/skills/api-endpoint/SKILL.md +1 -0
- package/.agent-src/skills/api-testing/SKILL.md +1 -0
- package/.agent-src/skills/architecture-review-lens/SKILL.md +137 -0
- package/.agent-src/skills/artisan-commands/SKILL.md +1 -0
- package/.agent-src/skills/async-python-patterns/SKILL.md +1 -0
- package/.agent-src/skills/authz-review/SKILL.md +4 -0
- package/.agent-src/skills/aws-infrastructure/SKILL.md +1 -0
- package/.agent-src/skills/blade-ui/SKILL.md +1 -0
- package/.agent-src/skills/blast-radius-analyzer/SKILL.md +3 -0
- package/.agent-src/skills/bug-analyzer/SKILL.md +1 -0
- package/.agent-src/skills/check-refs/SKILL.md +1 -0
- package/.agent-src/skills/code-refactoring/SKILL.md +1 -0
- package/.agent-src/skills/code-review/SKILL.md +1 -0
- package/.agent-src/skills/command-routing/SKILL.md +1 -0
- package/.agent-src/skills/command-writing/SKILL.md +1 -0
- package/.agent-src/skills/competitive-positioning/SKILL.md +152 -0
- package/.agent-src/skills/composer-packages/SKILL.md +1 -0
- package/.agent-src/skills/context-authoring/SKILL.md +1 -0
- package/.agent-src/skills/context-document/SKILL.md +1 -0
- package/.agent-src/skills/conventional-commits-writing/SKILL.md +1 -0
- package/.agent-src/skills/copilot-agents-optimization/SKILL.md +1 -0
- package/.agent-src/skills/copilot-config/SKILL.md +1 -0
- package/.agent-src/skills/customer-research/SKILL.md +116 -0
- package/.agent-src/skills/dashboard-design/SKILL.md +1 -0
- package/.agent-src/skills/data-flow-mapper/SKILL.md +1 -0
- package/.agent-src/skills/database/SKILL.md +3 -0
- package/.agent-src/skills/dcf-modeling/SKILL.md +1 -0
- package/.agent-src/skills/decision-record/SKILL.md +218 -0
- package/.agent-src/skills/deep-reading-analyst/SKILL.md +1 -0
- package/.agent-src/skills/defense-in-depth/SKILL.md +1 -0
- package/.agent-src/skills/dependency-upgrade/SKILL.md +1 -0
- package/.agent-src/skills/description-assist/SKILL.md +1 -0
- package/.agent-src/skills/design-review/SKILL.md +1 -0
- package/.agent-src/skills/devcontainer/SKILL.md +1 -0
- package/.agent-src/skills/developer-like-execution/SKILL.md +1 -0
- package/.agent-src/skills/discovery-interview/SKILL.md +152 -0
- package/.agent-src/skills/docker/SKILL.md +1 -0
- package/.agent-src/skills/dto-creator/SKILL.md +1 -0
- package/.agent-src/skills/eloquent/SKILL.md +3 -0
- package/.agent-src/skills/error-handling-patterns/SKILL.md +1 -0
- package/.agent-src/skills/estimate-ticket/SKILL.md +1 -0
- package/.agent-src/skills/existing-ui-audit/SKILL.md +3 -0
- package/.agent-src/skills/fe-design/SKILL.md +4 -1
- package/.agent-src/skills/feature-planning/SKILL.md +1 -0
- package/.agent-src/skills/file-editor/SKILL.md +1 -0
- package/.agent-src/skills/finishing-a-development-branch/SKILL.md +1 -0
- package/.agent-src/skills/flux/SKILL.md +1 -0
- package/.agent-src/skills/form-handler/SKILL.md +145 -0
- package/.agent-src/skills/funnel-analysis/SKILL.md +1 -0
- package/.agent-src/skills/git-workflow/SKILL.md +1 -0
- package/.agent-src/skills/github-ci/SKILL.md +1 -0
- package/.agent-src/skills/grafana/SKILL.md +1 -0
- package/.agent-src/skills/guideline-writing/SKILL.md +1 -0
- package/.agent-src/skills/incident-commander/SKILL.md +140 -0
- package/.agent-src/skills/jira-integration/SKILL.md +1 -0
- package/.agent-src/skills/jobs-events/SKILL.md +1 -0
- package/.agent-src/skills/judge-bug-hunter/SKILL.md +1 -0
- package/.agent-src/skills/judge-code-quality/SKILL.md +1 -0
- package/.agent-src/skills/judge-security-auditor/SKILL.md +3 -0
- package/.agent-src/skills/judge-test-coverage/SKILL.md +1 -0
- package/.agent-src/skills/laravel/SKILL.md +1 -0
- package/.agent-src/skills/laravel-horizon/SKILL.md +1 -0
- package/.agent-src/skills/laravel-mail/SKILL.md +1 -0
- package/.agent-src/skills/laravel-middleware/SKILL.md +1 -0
- package/.agent-src/skills/laravel-notifications/SKILL.md +1 -0
- package/.agent-src/skills/laravel-pennant/SKILL.md +1 -0
- package/.agent-src/skills/laravel-pulse/SKILL.md +1 -0
- package/.agent-src/skills/laravel-reverb/SKILL.md +1 -0
- package/.agent-src/skills/laravel-scheduling/SKILL.md +1 -0
- package/.agent-src/skills/laravel-validation/SKILL.md +1 -0
- package/.agent-src/skills/launch-readiness/SKILL.md +156 -0
- package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +1 -0
- package/.agent-src/skills/lint-skills/SKILL.md +1 -0
- package/.agent-src/skills/livewire/SKILL.md +1 -0
- package/.agent-src/skills/livewire-architect/SKILL.md +158 -0
- package/.agent-src/skills/logging-monitoring/SKILL.md +1 -0
- package/.agent-src/skills/markitdown/SKILL.md +1 -0
- package/.agent-src/skills/mcp/SKILL.md +1 -0
- package/.agent-src/skills/mcp-builder/SKILL.md +1 -0
- package/.agent-src/skills/md-language-check/SKILL.md +1 -0
- package/.agent-src/skills/merge-conflicts/SKILL.md +1 -0
- package/.agent-src/skills/migration-architect/SKILL.md +119 -0
- package/.agent-src/skills/migration-creator/SKILL.md +1 -0
- package/.agent-src/skills/mobile-e2e-strategy/SKILL.md +2 -1
- package/.agent-src/skills/module-management/SKILL.md +1 -0
- package/.agent-src/skills/multi-tenancy/SKILL.md +1 -0
- package/.agent-src/skills/okr-tree-modeling/SKILL.md +1 -0
- package/.agent-src/skills/openapi/SKILL.md +1 -0
- package/.agent-src/skills/override-management/SKILL.md +1 -0
- package/.agent-src/skills/performance/SKILL.md +1 -0
- package/.agent-src/skills/performance-analysis/SKILL.md +1 -0
- package/.agent-src/skills/persona-writing/SKILL.md +1 -0
- package/.agent-src/skills/pest-testing/SKILL.md +1 -0
- package/.agent-src/skills/php-coder/SKILL.md +1 -0
- package/.agent-src/skills/php-debugging/SKILL.md +1 -0
- package/.agent-src/skills/php-service/SKILL.md +1 -0
- package/.agent-src/skills/playwright-architect/SKILL.md +141 -0
- package/.agent-src/skills/playwright-testing/SKILL.md +1 -0
- package/.agent-src/skills/po-discovery/SKILL.md +127 -0
- package/.agent-src/skills/project-analysis-core/SKILL.md +1 -0
- package/.agent-src/skills/project-analysis-hypothesis-driven/SKILL.md +1 -0
- package/.agent-src/skills/project-analysis-laravel/SKILL.md +1 -0
- package/.agent-src/skills/project-analysis-nextjs/SKILL.md +1 -0
- package/.agent-src/skills/project-analysis-node-express/SKILL.md +1 -0
- package/.agent-src/skills/project-analysis-react/SKILL.md +1 -0
- package/.agent-src/skills/project-analysis-symfony/SKILL.md +1 -0
- package/.agent-src/skills/project-analysis-zend-laminas/SKILL.md +1 -0
- package/.agent-src/skills/project-analyzer/SKILL.md +1 -0
- package/.agent-src/skills/project-docs/SKILL.md +1 -0
- package/.agent-src/skills/prompt-engineering-patterns/SKILL.md +1 -0
- package/.agent-src/skills/prompt-optimizer/SKILL.md +1 -0
- package/.agent-src/skills/quality-tools/SKILL.md +1 -0
- package/.agent-src/skills/react-native-setup/SKILL.md +1 -0
- package/.agent-src/skills/react-shadcn-ui/SKILL.md +1 -0
- package/.agent-src/skills/readme-reviewer/SKILL.md +1 -0
- package/.agent-src/skills/readme-writing/SKILL.md +1 -0
- package/.agent-src/skills/readme-writing-package/SKILL.md +1 -0
- package/.agent-src/skills/receiving-code-review/SKILL.md +1 -0
- package/.agent-src/skills/refine-prompt/SKILL.md +1 -0
- package/.agent-src/skills/refine-ticket/SKILL.md +1 -0
- package/.agent-src/skills/release-comms/SKILL.md +123 -0
- package/.agent-src/skills/repomix-packer/SKILL.md +1 -0
- package/.agent-src/skills/requesting-code-review/SKILL.md +1 -0
- package/.agent-src/skills/review-routing/SKILL.md +1 -0
- package/.agent-src/skills/rice-prioritization/SKILL.md +1 -0
- package/.agent-src/skills/risk-officer/SKILL.md +141 -0
- package/.agent-src/skills/roadmap-management/SKILL.md +1 -0
- package/.agent-src/skills/roadmap-writing/SKILL.md +2 -1
- package/.agent-src/skills/rtk-output-filtering/SKILL.md +1 -0
- package/.agent-src/skills/rule-writing/SKILL.md +1 -0
- package/.agent-src/skills/script-writing/SKILL.md +1 -0
- package/.agent-src/skills/secrets-management/SKILL.md +1 -0
- package/.agent-src/skills/security/SKILL.md +1 -0
- package/.agent-src/skills/security-audit/SKILL.md +1 -0
- package/.agent-src/skills/sentry-integration/SKILL.md +1 -0
- package/.agent-src/skills/sequential-thinking/SKILL.md +1 -0
- package/.agent-src/skills/skill-improvement-pipeline/SKILL.md +1 -0
- package/.agent-src/skills/skill-management/SKILL.md +1 -0
- package/.agent-src/skills/skill-reviewer/SKILL.md +1 -0
- package/.agent-src/skills/skill-writing/SKILL.md +1 -0
- package/.agent-src/skills/sql-writing/SKILL.md +1 -0
- package/.agent-src/skills/stakeholder-tradeoff/SKILL.md +237 -0
- package/.agent-src/skills/subagent-orchestration/SKILL.md +13 -0
- package/.agent-src/skills/systematic-debugging/SKILL.md +1 -0
- package/.agent-src/skills/tailwind-engineer/SKILL.md +130 -0
- package/.agent-src/skills/tech-debt-tracker/SKILL.md +152 -0
- package/.agent-src/skills/technical-specification/SKILL.md +1 -0
- package/.agent-src/skills/terraform/SKILL.md +1 -0
- package/.agent-src/skills/terragrunt/SKILL.md +1 -0
- package/.agent-src/skills/test-driven-development/SKILL.md +1 -0
- package/.agent-src/skills/test-performance/SKILL.md +1 -0
- package/.agent-src/skills/testing-anti-patterns/SKILL.md +1 -0
- package/.agent-src/skills/threat-modeling/SKILL.md +3 -0
- package/.agent-src/skills/token-optimizer/SKILL.md +1 -0
- package/.agent-src/skills/traefik/SKILL.md +1 -0
- package/.agent-src/skills/ui-component-architect/SKILL.md +153 -0
- package/.agent-src/skills/unit-economics-modeling/SKILL.md +1 -0
- package/.agent-src/skills/universal-project-analysis/SKILL.md +1 -0
- package/.agent-src/skills/upstream-contribute/SKILL.md +1 -0
- package/.agent-src/skills/using-git-worktrees/SKILL.md +1 -0
- package/.agent-src/skills/validate-feature-fit/SKILL.md +1 -0
- package/.agent-src/skills/verify-completion-evidence/SKILL.md +1 -0
- package/.agent-src/skills/voc-extract/SKILL.md +164 -0
- package/.agent-src/skills/websocket/SKILL.md +1 -0
- package/.agent-src/templates/roadmaps.md +9 -0
- package/.claude-plugin/marketplace.json +21 -1
- package/AGENTS.md +1 -0
- package/CHANGELOG.md +75 -0
- package/README.md +2 -2
- package/docs/architecture.md +2 -2
- package/docs/catalog.md +21 -4
- package/docs/contracts/context-spine.md +133 -0
- package/docs/contracts/file-ownership-matrix.json +616 -0
- package/docs/contracts/mental-models.md +336 -0
- package/docs/contracts/persona-schema.md +136 -0
- package/docs/contracts/skill-domains.md +143 -0
- package/docs/decisions/ADR-005-subagent-worktrees.md +120 -0
- package/docs/decisions/ADR-006-skill-tools-python-pilot.md +114 -0
- package/docs/decisions/INDEX.md +3 -0
- package/docs/guidelines/cross-role-handoff.md +127 -0
- package/docs/personas.md +115 -0
- package/package.json +1 -1
- package/scripts/_backfill_skill_domains.py +140 -0
- package/scripts/_emit_domain_table.py +35 -0
- package/scripts/install-hooks.sh +21 -4
- package/scripts/lint_context_spine_usage.py +133 -0
- package/scripts/lint_roadmap_complexity.py +37 -0
- package/scripts/lint_skill_tools.py +168 -0
- package/scripts/schemas/skill.schema.json +15 -1
- package/scripts/skill_linter.py +19 -4
- package/scripts/skill_tools/__init__.py +22 -0
- package/scripts/skill_tools/audit_persona_coverage.py +147 -0
- package/scripts/skill_tools/run_block_d_eval.py +129 -0
- package/scripts/skill_tools/score_skill_relevance.py +169 -0
- package/scripts/skill_tools/suggest_skill_for_task.py +113 -0
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: launch-readiness
|
|
3
|
+
description: "Use before merging a release-shaped PR — pre-merge checklist, rollout plan, rollback criteria, ops handoff. Triggers on 'ready to ship', 'launch checklist', 'rollout plan for X'."
|
|
4
|
+
status: active
|
|
5
|
+
tier: senior
|
|
6
|
+
source: package
|
|
7
|
+
domain: process
|
|
8
|
+
context_spine: [team, product]
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# launch-readiness
|
|
12
|
+
|
|
13
|
+
## When to use
|
|
14
|
+
|
|
15
|
+
- A change is about to merge that crosses a release boundary (new feature on `main`, version bump, public-facing comms attached).
|
|
16
|
+
- An ops handoff is implied — the on-call rotation, support team, or downstream consumers need to know.
|
|
17
|
+
- A rollback criterion has not been written down yet.
|
|
18
|
+
|
|
19
|
+
Do NOT use for routine internal merges
|
|
20
|
+
([`finishing-a-development-branch`](../finishing-a-development-branch/SKILL.md))
|
|
21
|
+
or for the comms text itself ([`release-comms`](../release-comms/SKILL.md)).
|
|
22
|
+
This skill produces the **decision** to ship and the rollback contract.
|
|
23
|
+
|
|
24
|
+
## Cognition cluster
|
|
25
|
+
|
|
26
|
+
- **Mental model 10 — Reversible vs irreversible.** Map every step
|
|
27
|
+
of the rollout to a reversibility class; the rollback criteria
|
|
28
|
+
must name the irreversible steps and the abort threshold for each.
|
|
29
|
+
See [`docs/contracts/mental-models.md`](../../../docs/contracts/mental-models.md) § 10.
|
|
30
|
+
- **Mental model 29 — Pre-mortems.** Imagine the rollout failed in
|
|
31
|
+
six hours; what failed first? The pre-mortem becomes the rollback
|
|
32
|
+
criteria, not a separate document. See `mental-models.md` § 29.
|
|
33
|
+
- **Mental model 4 — Second-order thinking.** Enumerate what
|
|
34
|
+
becomes harder *after* the launch (rollback cost, contributor
|
|
35
|
+
ergonomics, doc churn). See `mental-models.md` § 4.
|
|
36
|
+
- **Team + product context-spine slots.** Read **team** for the
|
|
37
|
+
on-call rotation and ops handoff path; read **product** for the
|
|
38
|
+
segment / cohort exposure of the rollout. See
|
|
39
|
+
[`context-spine`](../../../docs/contracts/context-spine.md).
|
|
40
|
+
|
|
41
|
+
## Procedure
|
|
42
|
+
|
|
43
|
+
### 1. Identify the launch shape
|
|
44
|
+
|
|
45
|
+
One sentence: *"This change ships **X** to **segment Y** behind
|
|
46
|
+
**rollout mechanism Z**."* If you cannot, the change is not
|
|
47
|
+
release-shaped; route to `finishing-a-development-branch`.
|
|
48
|
+
|
|
49
|
+
### 2. Inspect the pre-merge checklist
|
|
50
|
+
|
|
51
|
+
Walk the diff with the following gates:
|
|
52
|
+
|
|
53
|
+
- Tests green on the integration suite (cite the run).
|
|
54
|
+
- Quality gates green (PHPStan / linters / type-checks).
|
|
55
|
+
- Migrations are reversible OR the irreversibility is explicit.
|
|
56
|
+
- Feature flag / kill switch named, default off unless intended.
|
|
57
|
+
- Doc / changelog / release notes present (hand off to
|
|
58
|
+
[`release-comms`](../release-comms/SKILL.md) for the prose).
|
|
59
|
+
- Rollback path tested at least mentally; named in step 4.
|
|
60
|
+
|
|
61
|
+
Cells without evidence block the launch — surface, do not
|
|
62
|
+
hand-wave.
|
|
63
|
+
|
|
64
|
+
### 3. Plan the rollout
|
|
65
|
+
|
|
66
|
+
- **Mechanism** — flag, canary cohort, blue-green, immediate.
|
|
67
|
+
- **Order** — internal → trusted segment → general; cite the
|
|
68
|
+
segment per stage from the **product** spine slot.
|
|
69
|
+
- **Telemetry** — the metric that **proves** rollout health.
|
|
70
|
+
- **Owner** — named role per stage (not name); from the **team**
|
|
71
|
+
spine slot.
|
|
72
|
+
|
|
73
|
+
### 4. Write rollback criteria
|
|
74
|
+
|
|
75
|
+
For each stage:
|
|
76
|
+
|
|
77
|
+
- **Trip wire** — the metric value that fires rollback.
|
|
78
|
+
- **Decision window** — how long the trip wire must hold.
|
|
79
|
+
- **Abort path** — what the on-call does (revert PR, flip flag,
|
|
80
|
+
drain queue), pre-rehearsed.
|
|
81
|
+
- **Irreversible steps** — explicit list; if any irreversible step
|
|
82
|
+
is in scope, the launch needs a written sign-off, not implicit.
|
|
83
|
+
|
|
84
|
+
Pre-mortem rule: every trip wire must answer *"what would have
|
|
85
|
+
caused this in six hours?"* If you cannot, the trip wire is wrong.
|
|
86
|
+
|
|
87
|
+
### 5. Ops handoff
|
|
88
|
+
|
|
89
|
+
- Who is paged on which alert (from **team** spine slot).
|
|
90
|
+
- Where the rollback runbook lives (link).
|
|
91
|
+
- Date / time of the handoff conversation; sign-off from the
|
|
92
|
+
receiving role.
|
|
93
|
+
|
|
94
|
+
### 6. Hand back
|
|
95
|
+
|
|
96
|
+
Hand the artefact below to whoever requested the launch decision;
|
|
97
|
+
route comms to [`release-comms`](../release-comms/SKILL.md) and
|
|
98
|
+
post-launch metrics tracking to the team's monitoring stack.
|
|
99
|
+
|
|
100
|
+
## Related Skills
|
|
101
|
+
|
|
102
|
+
**WHEN to use this**
|
|
103
|
+
|
|
104
|
+
- A release-shaped PR is about to merge.
|
|
105
|
+
- Rollback criteria need to land in writing before the merge button
|
|
106
|
+
is pressed.
|
|
107
|
+
- Ops handoff is implied and not yet executed.
|
|
108
|
+
|
|
109
|
+
**WHEN NOT to use this**
|
|
110
|
+
|
|
111
|
+
- The change is internal and routine — route to
|
|
112
|
+
[`finishing-a-development-branch`](../finishing-a-development-branch/SKILL.md).
|
|
113
|
+
- The output is the public comms — route to
|
|
114
|
+
[`release-comms`](../release-comms/SKILL.md).
|
|
115
|
+
- The rollout decision involves stakeholder conflict — route to
|
|
116
|
+
[`stakeholder-tradeoff`](../stakeholder-tradeoff/SKILL.md) first.
|
|
117
|
+
- The decision is reversible-and-cheap — write a one-line note,
|
|
118
|
+
skip the full artefact.
|
|
119
|
+
|
|
120
|
+
## When the agent should load this
|
|
121
|
+
|
|
122
|
+
- "Sind wir launch-ready?"
|
|
123
|
+
- "Bau mir die Rollback-Kriterien für Phase X."
|
|
124
|
+
- "Ops-Handoff für die Release morgen."
|
|
125
|
+
- "Was bricht, wenn wir den Flag flippen?"
|
|
126
|
+
- "Pre-merge-Checklist für PR #N."
|
|
127
|
+
|
|
128
|
+
## Output
|
|
129
|
+
|
|
130
|
+
1. **Launch shape** — one-sentence statement of the change.
|
|
131
|
+
2. **Pre-merge checklist** — gate · status · evidence (citation).
|
|
132
|
+
3. **Rollout plan** — stages × mechanism · order · telemetry · owner.
|
|
133
|
+
4. **Rollback contract** — per stage: trip wire · decision window ·
|
|
134
|
+
abort path · irreversible steps.
|
|
135
|
+
5. **Ops handoff** — pager mapping · runbook link · sign-off.
|
|
136
|
+
6. **Outstanding** — anything blocking the launch; explicit, not
|
|
137
|
+
collapsed.
|
|
138
|
+
|
|
139
|
+
## Gotcha
|
|
140
|
+
|
|
141
|
+
- A checklist with all green and no citations is theatre; every
|
|
142
|
+
green needs an artefact.
|
|
143
|
+
- A trip wire without a decision window is unactionable — *"if
|
|
144
|
+
errors spike"* is not a trigger; *"5xx > 2% for 10 min"* is.
|
|
145
|
+
- Irreversible steps without written sign-off are the most common
|
|
146
|
+
post-mortem ancestor — surface, do not skip.
|
|
147
|
+
|
|
148
|
+
## Do NOT
|
|
149
|
+
|
|
150
|
+
- Do NOT write the comms text here — that is `release-comms`.
|
|
151
|
+
- Do NOT lock the rollback contract verbally — it lives in the
|
|
152
|
+
output block, citable.
|
|
153
|
+
- Do NOT let any stage own itself — every stage names a role from
|
|
154
|
+
the **team** spine slot.
|
|
155
|
+
- Do NOT hand the artefact to a receiver who has not signed off on
|
|
156
|
+
ops handoff.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: learning-to-rule-or-skill
|
|
3
3
|
description: "Use when a repeated learning, mistake, or successful pattern should be turned into a new rule or skill. Also use after completing a task to capture learnings from the work."
|
|
4
4
|
source: project
|
|
5
|
+
domain: process
|
|
5
6
|
execution:
|
|
6
7
|
type: assisted
|
|
7
8
|
handler: internal
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: livewire
|
|
3
3
|
description: "Use when the project's frontend stack is Livewire — dispatched by `directives/ui/{apply,review,polish}.py`. Covers reactive state, events, lifecycle hooks, and component/view separation."
|
|
4
4
|
source: package
|
|
5
|
+
domain: engineering
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# livewire
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: livewire-architect
|
|
3
|
+
description: "Use when shaping a Livewire component before code — full-page vs partial, parent/child split, event flow, state-vs-props boundary, hydration cost — even on 'add this Livewire component'."
|
|
4
|
+
personas:
|
|
5
|
+
- frontend-engineer
|
|
6
|
+
source: package
|
|
7
|
+
domain: engineering
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# livewire-architect
|
|
11
|
+
|
|
12
|
+
> Architectural lens **above** the existing tactical [`livewire`](../livewire/SKILL.md)
|
|
13
|
+
> skill. Decides component shape, lifecycle ownership, and the
|
|
14
|
+
> full-page-vs-partial split *before* the first `mount()` is written.
|
|
15
|
+
> The `livewire` skill handles Flux-component patterns and hydration
|
|
16
|
+
> debugging once the shape is locked.
|
|
17
|
+
|
|
18
|
+
## When to use
|
|
19
|
+
|
|
20
|
+
- A Livewire feature is about to be built and the boundary between
|
|
21
|
+
components is unclear (one big component vs nested children?).
|
|
22
|
+
- An existing component is "doing too much" — multiple unrelated
|
|
23
|
+
concerns, large `$listeners`, props bag growing turn over turn.
|
|
24
|
+
- A page mixes Livewire + Blade partials and the data flow is
|
|
25
|
+
ambiguous (who owns `$user`, who emits, who listens?).
|
|
26
|
+
- German triggers: "wie schneide ich das?", "Vollseite oder
|
|
27
|
+
Teilkomponente?", "wer feuert das Event?".
|
|
28
|
+
|
|
29
|
+
Do NOT use when:
|
|
30
|
+
|
|
31
|
+
- The shape is already locked and the question is mechanical
|
|
32
|
+
(Flux variant, `wire:model` modifier, `@entangle`) — route to
|
|
33
|
+
[`livewire`](../livewire/SKILL.md).
|
|
34
|
+
- The page has no Livewire — pure Blade or Inertia/React — route
|
|
35
|
+
to [`blade-ui`](../blade-ui/SKILL.md) or [`react-shadcn-ui`](../react-shadcn-ui/SKILL.md).
|
|
36
|
+
- The bug is a runtime hydration error — debug with `livewire`,
|
|
37
|
+
not redesign with this skill.
|
|
38
|
+
|
|
39
|
+
## Procedure
|
|
40
|
+
|
|
41
|
+
### 1. Analyze the existing screen — before designing anything
|
|
42
|
+
|
|
43
|
+
Inspect the route and read the existing Blade / Livewire files to
|
|
44
|
+
understand what's already there. List every dynamic surface on the
|
|
45
|
+
page (form, table row, modal, nav badge). Mark each: **shared
|
|
46
|
+
state** (other surfaces re-render on change), **local state** (only
|
|
47
|
+
this surface cares), **server state** (must hit DB / queue). This
|
|
48
|
+
analysis feeds every later step — do NOT skip ahead before the
|
|
49
|
+
inventory is on paper.
|
|
50
|
+
|
|
51
|
+
### 2. Choose the component shape
|
|
52
|
+
|
|
53
|
+
Pick one **before** writing code:
|
|
54
|
+
|
|
55
|
+
| Shape | When | Cost |
|
|
56
|
+
|---|---|---|
|
|
57
|
+
| Full-page component | Route owns the whole screen, single backing model, ≤ 3 related actions | Cheapest; one mount, one render |
|
|
58
|
+
| Parent + nested children | Two or more independent state islands on one route | Two mounts; coordinate via events, not props churn |
|
|
59
|
+
| Partial component on Blade | Mostly static page, one reactive island | Cheap; component sees the world via props only |
|
|
60
|
+
| Stack of full-page components | Wizard / multi-step flow with own URL per step | Expensive; pick only when URL semantics matter |
|
|
61
|
+
|
|
62
|
+
Rule: if a child needs ≥ 4 props from the parent and emits ≥ 3
|
|
63
|
+
events back, the boundary is wrong — collapse or re-cut.
|
|
64
|
+
|
|
65
|
+
### 3. Lock the state-vs-props boundary
|
|
66
|
+
|
|
67
|
+
For each piece of data the component reads, mark **public property**
|
|
68
|
+
(reactive, persisted in payload, expensive to dehydrate) or
|
|
69
|
+
**computed / method-local** (cheap, recomputed on render). Public
|
|
70
|
+
properties are the budget — keep ≤ 8 per component; more means
|
|
71
|
+
the component is doing two jobs.
|
|
72
|
+
|
|
73
|
+
### 4. Map the event flow
|
|
74
|
+
|
|
75
|
+
Draw the events: `dispatch('foo')` → who listens? Cross-component
|
|
76
|
+
events use `dispatch()`; parent ↔ child stays on `$parent.method()`
|
|
77
|
+
when the child is owned. Avoid global events for parent-owned
|
|
78
|
+
children — they break the ownership story.
|
|
79
|
+
|
|
80
|
+
### 5. Lifecycle ownership
|
|
81
|
+
|
|
82
|
+
For each side-effect (DB write, queue dispatch, redirect, flash),
|
|
83
|
+
name the lifecycle hook: `mount` (one-time setup), `boot` (every
|
|
84
|
+
request, idempotent), action method (user-initiated), `updated*`
|
|
85
|
+
(reactive on property change). One hook per side-effect; if two
|
|
86
|
+
hooks fire the same write, the design is wrong.
|
|
87
|
+
|
|
88
|
+
### 6. Validate the design — before any code is written
|
|
89
|
+
|
|
90
|
+
Walk the design back through these checks; every "no" means
|
|
91
|
+
re-cut, not push forward:
|
|
92
|
+
|
|
93
|
+
- Each component owns ≤ 8 public properties.
|
|
94
|
+
- No child needs ≥ 4 props *and* emits ≥ 3 events back.
|
|
95
|
+
- Every event has exactly one named listener.
|
|
96
|
+
- Each side-effect maps to exactly one lifecycle hook.
|
|
97
|
+
- The component shape table is filled in (no `<TBD>` cells).
|
|
98
|
+
|
|
99
|
+
If any check fails, return to the relevant step and re-cut. The
|
|
100
|
+
design must be approved by the user before handing off to
|
|
101
|
+
`/livewire` for implementation.
|
|
102
|
+
|
|
103
|
+
## Output format
|
|
104
|
+
|
|
105
|
+
Return:
|
|
106
|
+
|
|
107
|
+
1. Component shape decision — full-page / parent+children / partial /
|
|
108
|
+
stack — with the one-sentence trade-off rationale.
|
|
109
|
+
2. Component inventory — for each: public props (≤ 8), state islands
|
|
110
|
+
owned, events listened/dispatched, side-effects on mount and action.
|
|
111
|
+
3. Boundary-risk list and tactical follow-up — prop bags > 8, event
|
|
112
|
+
chains > 3 hops, shared mutable state, and the next handoff.
|
|
113
|
+
|
|
114
|
+
Concrete shape:
|
|
115
|
+
|
|
116
|
+
```
|
|
117
|
+
Screen: <route or feature>
|
|
118
|
+
Component shape: <full-page | parent+children | partial | stack>
|
|
119
|
+
Why: <one sentence — the trade-off chosen>
|
|
120
|
+
|
|
121
|
+
Components:
|
|
122
|
+
- <Name> (full-page | partial)
|
|
123
|
+
Public props: [a, b, c] (≤ 8)
|
|
124
|
+
Owns: <state islands>
|
|
125
|
+
Listens to: [event1, event2]
|
|
126
|
+
Dispatches: [event3]
|
|
127
|
+
Side-effects: mount=<...>, action=<...>
|
|
128
|
+
|
|
129
|
+
Boundary risks:
|
|
130
|
+
- <prop bag > 8 / event chain > 3 hops / shared mutable state>
|
|
131
|
+
|
|
132
|
+
Tactical follow-up:
|
|
133
|
+
Hand off to /livewire for Flux variant + hydration check.
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
## Gotcha
|
|
137
|
+
|
|
138
|
+
- Livewire 3 reactive props are not free — every public property
|
|
139
|
+
ships in the payload. Big arrays / DTOs as public state are a
|
|
140
|
+
performance bug waiting to fire under load.
|
|
141
|
+
- Parent-owned children and global events do not mix; pick one
|
|
142
|
+
ownership story per component tree.
|
|
143
|
+
- "Just one more public property" is the smell that turns a partial
|
|
144
|
+
into a god-component over three tickets.
|
|
145
|
+
- Full-page component + Flux modal stack: the modal owns its own
|
|
146
|
+
mount cycle; do not push modal state into the page component.
|
|
147
|
+
|
|
148
|
+
## Do NOT
|
|
149
|
+
|
|
150
|
+
- Do NOT write `mount()` / Blade partials before the shape table is
|
|
151
|
+
filled in — picking the shape after coding is the most common
|
|
152
|
+
source of refactor debt.
|
|
153
|
+
- Do NOT cite this skill alongside [`livewire`](../livewire/SKILL.md)
|
|
154
|
+
in the same step — they sit at different tiers; pick one per phase.
|
|
155
|
+
- Do NOT design Inertia / React components with this skill — the
|
|
156
|
+
state-vs-props axis differs; route to the matching stack skill.
|
|
157
|
+
- Do NOT push the architecture into the tracker as code AC — output
|
|
158
|
+
is a design note for refinement, not implementation steps.
|
|
@@ -4,6 +4,7 @@ description: "Use when converting PDF, DOCX, XLSX, PPTX, EPUB, images, or audio
|
|
|
4
4
|
status: active
|
|
5
5
|
tier: senior
|
|
6
6
|
source: package
|
|
7
|
+
domain: process
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
> **Pinned upstream:** `markitdown-mcp@0.0.1a4` (PyPI, released 2025-05-23, MIT, Beta). Re-verify per minor bump.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: mcp-builder
|
|
3
3
|
description: "Use when building an MCP server in Python (FastMCP) or Node/TypeScript (MCP SDK) — agent-centric tool design, input schemas, error handling, and the 10-question evaluation harness."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# mcp-builder
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: md-language-check
|
|
3
3
|
description: "Use BEFORE saving any .md under .augment/, .agent-src*/, or agents/ — scans umlauts, German function words, and quoted German phrases outside DE:/EN: anchor blocks. Hard gate per language-and-tone."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
execution:
|
|
6
7
|
type: assisted
|
|
7
8
|
handler: shell
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: migration-architect
|
|
3
|
+
description: "Use when shaping a non-trivial migration — rollout phases, dual-write windows, cutover sequencing, deprecation cycles — hands off to `migration-creator` for DDL once locked."
|
|
4
|
+
personas:
|
|
5
|
+
- backend-architect
|
|
6
|
+
- senior-engineer
|
|
7
|
+
source: package
|
|
8
|
+
domain: process
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# migration-architect
|
|
12
|
+
|
|
13
|
+
> Shape the **rollout strategy** for a migration before any DDL or
|
|
14
|
+
> code is written. Plans phases, dual-write windows, cutover
|
|
15
|
+
> sequencing, deprecation cycles, and cross-service coordination.
|
|
16
|
+
> Hands off to [`migration-creator`](../migration-creator/SKILL.md)
|
|
17
|
+
> for tactical DDL once the plan is locked.
|
|
18
|
+
|
|
19
|
+
## When to use
|
|
20
|
+
|
|
21
|
+
- A schema change spans more than one deploy.
|
|
22
|
+
- A change requires a dual-write or backfill window.
|
|
23
|
+
- The migration touches multiple services, queues, or consumers
|
|
24
|
+
whose order of update matters.
|
|
25
|
+
- A column / table / API is being deprecated and the cycle needs
|
|
26
|
+
shape (announce → soft-fail → hard-fail → remove).
|
|
27
|
+
|
|
28
|
+
Do NOT use when:
|
|
29
|
+
|
|
30
|
+
- The change is a single additive migration safe in one deploy →
|
|
31
|
+
route to [`migration-creator`](../migration-creator/SKILL.md).
|
|
32
|
+
- The decision is *whether* to migrate at all → route to
|
|
33
|
+
[`decision-record`](../decision-record/SKILL.md) first.
|
|
34
|
+
- The concern is data correctness during the migration → route to
|
|
35
|
+
[`data-flow-mapper`](../data-flow-mapper/SKILL.md) and feed
|
|
36
|
+
findings back here.
|
|
37
|
+
|
|
38
|
+
## Procedure
|
|
39
|
+
|
|
40
|
+
### 1. Anchor on the goal
|
|
41
|
+
|
|
42
|
+
Write one sentence: *"State X must become state Y across systems Z
|
|
43
|
+
without breaking consumers W."* If you cannot, the migration is not
|
|
44
|
+
ripe — stop.
|
|
45
|
+
|
|
46
|
+
### 2. Identify the participating systems
|
|
47
|
+
|
|
48
|
+
List every service, queue, batch job, third-party consumer, and
|
|
49
|
+
client that reads or writes the affected schema. A system you
|
|
50
|
+
forget is a cutover surprise.
|
|
51
|
+
|
|
52
|
+
### 3. Pick a rollout shape
|
|
53
|
+
|
|
54
|
+
| Shape | When to pick |
|
|
55
|
+
|---|---|
|
|
56
|
+
| Expand → migrate → contract | Schema additive first, code switches reads, then drop old shape |
|
|
57
|
+
| Dual-write + backfill | Both shapes written for a window; backfill closes the gap |
|
|
58
|
+
| Strangler fig | New path runs alongside old; traffic ramps over time |
|
|
59
|
+
| Big-bang cutover | Rare; only when downtime is acceptable AND coordination cost is trivial |
|
|
60
|
+
|
|
61
|
+
State *why* the shape fits — not just which one was picked.
|
|
62
|
+
|
|
63
|
+
### 4. Sequence the phases
|
|
64
|
+
|
|
65
|
+
For each phase, list:
|
|
66
|
+
|
|
67
|
+
- **Trigger** — what condition starts it.
|
|
68
|
+
- **Actions** — DDL, code deploy, feature flag, traffic shift.
|
|
69
|
+
- **Reversibility** — can we abort here, and how?
|
|
70
|
+
- **Exit gate** — what proves we can move to the next phase
|
|
71
|
+
(metric, sign-off, soak time).
|
|
72
|
+
|
|
73
|
+
A phase without an exit gate is a wish; reject.
|
|
74
|
+
|
|
75
|
+
### 5. Plan the deprecation cycle
|
|
76
|
+
|
|
77
|
+
For anything being removed:
|
|
78
|
+
|
|
79
|
+
- Announce window — comms cadence, who is told.
|
|
80
|
+
- Soft-fail window — log + warn, do not break.
|
|
81
|
+
- Hard-fail window — return errors.
|
|
82
|
+
- Removal — DDL drop, code delete.
|
|
83
|
+
|
|
84
|
+
Each window has a duration and a metric that justifies moving on.
|
|
85
|
+
|
|
86
|
+
## Output format
|
|
87
|
+
|
|
88
|
+
```
|
|
89
|
+
Migration Architect
|
|
90
|
+
Goal: <one sentence>
|
|
91
|
+
Systems: <list>
|
|
92
|
+
Shape: expand-migrate-contract | dual-write | strangler | big-bang
|
|
93
|
+
Reason: <why this shape>
|
|
94
|
+
|
|
95
|
+
Phases:
|
|
96
|
+
1. <name> Trigger: <cond> Exit: <gate> Reversible: yes | costly | no
|
|
97
|
+
Actions: ...
|
|
98
|
+
2. ...
|
|
99
|
+
|
|
100
|
+
Deprecation cycle (if any):
|
|
101
|
+
Announce <duration> → soft-fail <duration> → hard-fail <duration> → remove
|
|
102
|
+
|
|
103
|
+
Next: /migration-creator for the DDL of phase 1
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Gotcha
|
|
107
|
+
|
|
108
|
+
- The riskiest phase is the one with no rollback. Surface it
|
|
109
|
+
explicitly even if the user did not ask.
|
|
110
|
+
- Soak times in hours when interest is in days are a smell. Match
|
|
111
|
+
the soak to the actual blast radius.
|
|
112
|
+
|
|
113
|
+
## Do NOT
|
|
114
|
+
|
|
115
|
+
- Do NOT write DDL — that is `migration-creator`'s job.
|
|
116
|
+
- Do NOT collapse phases to "ship it" because the user is impatient;
|
|
117
|
+
surface the risk and let the user decide.
|
|
118
|
+
- Do NOT skip the deprecation cycle because nobody is using the old
|
|
119
|
+
shape "for sure" — verify before skipping.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: migration-creator
|
|
3
3
|
description: "Use when the user says "create migration", "add column", or "new table". Creates migrations with correct table prefixes, column naming, and multi-tenant awareness."
|
|
4
4
|
source: package
|
|
5
|
+
domain: engineering
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# migration-creator
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: mobile-e2e-strategy
|
|
3
3
|
description: "Use when picking a mobile E2E framework — Detox / Appium / Maestro / XCUITest / Espresso — or planning iOS Simulator / Android Emulator coverage in CI for RN, Expo, or native apps."
|
|
4
4
|
source: package
|
|
5
|
+
domain: quality
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# mobile-e2e-strategy
|
|
@@ -27,7 +28,7 @@ source: package
|
|
|
27
28
|
|
|
28
29
|
## Procedure
|
|
29
30
|
|
|
30
|
-
1. **
|
|
31
|
+
1. **Inspect and classify the app.** Identify the stack: native iOS, native Android, React Native, Expo, Flutter, or a web view inside a shell?
|
|
31
32
|
2. **Classify the goal.** Smoke (boots + login + key flow), regression (every release), visual diff, accessibility audit, or performance baseline.
|
|
32
33
|
3. **Pick the framework** using the decision matrix below.
|
|
33
34
|
4. **Confirm host availability.** macOS for iOS Simulator (mandatory); any OS for Android Emulator.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: module-management
|
|
3
3
|
description: "Use when the user says "create module", "explore module", or works within app/Modules/. Understands module structure, auto-loading, route registration, and namespace conventions."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# module
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: override-management
|
|
3
3
|
description: "Creates and manages project-level overrides for shared skills, rules, and commands — extending or replacing originals from .augment/ with project-specific behavior in agents/overrides/."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
execution:
|
|
6
7
|
type: assisted
|
|
7
8
|
handler: internal
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: persona-writing
|
|
3
3
|
description: "Use when creating or editing a persona in .agent-src.uncompressed/personas/ — voice / focus / unique questions / output expectations — even when the user just says 'add a reviewer voice for X'."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
<!-- cloud_safe: degrade -->
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: php-coder
|
|
3
3
|
description: "Writes or edits PHP code — controllers, classes, type hints, SOLID refactors, modern idioms — even without naming PHP. NOT for writing tests (use pest-testing) or explaining PHP concepts."
|
|
4
4
|
source: package
|
|
5
|
+
domain: engineering
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# coder
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: php-debugging
|
|
3
3
|
description: "Use when debugging PHP with Xdebug — breakpoints, step-through, dual-container setup, IDE configuration, header-based routing — even when the user just says 'why does this blow up on request X'."
|
|
4
4
|
source: package
|
|
5
|
+
domain: engineering
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# php-debugging
|