@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,132 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: accessibility-auditor
|
|
3
|
+
description: "Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'."
|
|
4
|
+
personas:
|
|
5
|
+
- frontend-engineer
|
|
6
|
+
source: package
|
|
7
|
+
domain: quality
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# accessibility-auditor
|
|
11
|
+
|
|
12
|
+
> Audit a UI surface against WCAG 2.2 AA, keyboard-only operation,
|
|
13
|
+
> and screen-reader semantics. Output is a verdict with cited
|
|
14
|
+
> failures, not a vibes check. Pair with
|
|
15
|
+
> [`tailwind-engineer`](../tailwind-engineer/SKILL.md) for token-level
|
|
16
|
+
> contrast fixes and [`ui-component-architect`](../ui-component-architect/SKILL.md)
|
|
17
|
+
> for structural fixes (landmarks, heading order).
|
|
18
|
+
|
|
19
|
+
## When to use
|
|
20
|
+
|
|
21
|
+
- A new screen, component, or form lands and a11y has not been
|
|
22
|
+
reviewed yet.
|
|
23
|
+
- A bug report mentions keyboard, screen reader, focus order,
|
|
24
|
+
contrast, or "user can't reach the X button".
|
|
25
|
+
- A modal, dropdown, popover, tab strip, or tree view is being
|
|
26
|
+
introduced — these are the highest-yield bug zones.
|
|
27
|
+
- German triggers: "barrierefrei prüfen", "Tastatur-Bedienung",
|
|
28
|
+
"Screenreader testen".
|
|
29
|
+
|
|
30
|
+
Do NOT use when:
|
|
31
|
+
|
|
32
|
+
- The visual design itself is the question (palette, type scale) —
|
|
33
|
+
route to [`fe-design`](../fe-design/SKILL.md).
|
|
34
|
+
- The diff has no UI surface — accessibility audits without a UI are
|
|
35
|
+
speculation.
|
|
36
|
+
- A specific component spec is missing entirely — get the component
|
|
37
|
+
built first via the stack-specific skill, then audit.
|
|
38
|
+
|
|
39
|
+
## Procedure
|
|
40
|
+
|
|
41
|
+
### 1. Identify the interaction surfaces
|
|
42
|
+
|
|
43
|
+
List every interactive element on the screen: links, buttons,
|
|
44
|
+
inputs, custom widgets (combobox, tab, dialog, tree). Each row
|
|
45
|
+
gets a verdict in step 5; missing one is a coverage failure.
|
|
46
|
+
|
|
47
|
+
### 2. Walk the four checklists
|
|
48
|
+
|
|
49
|
+
**Perceivable** — text alternatives for non-text (`alt`, `aria-label`),
|
|
50
|
+
contrast ≥ 4.5:1 for body / 3:1 for large or UI components, no
|
|
51
|
+
colour-only state ("error in red" must also be iconic or text).
|
|
52
|
+
|
|
53
|
+
**Operable** — every interactive element reachable by `Tab`, focus
|
|
54
|
+
order matches visual order, focus indicator visible (≥ 3:1 against
|
|
55
|
+
adjacent), `Esc` closes overlays, no keyboard traps.
|
|
56
|
+
|
|
57
|
+
**Understandable** — labels associated (`label[for]` or wrapping),
|
|
58
|
+
errors named in text (not just border colour), language attribute
|
|
59
|
+
on `<html>`, predictable navigation across pages.
|
|
60
|
+
|
|
61
|
+
**Robust** — landmarks present (`<header>`, `<nav>`, `<main>`,
|
|
62
|
+
`<footer>`), heading order without skips, ARIA only when no native
|
|
63
|
+
element exists, custom widgets follow ARIA-APG patterns.
|
|
64
|
+
|
|
65
|
+
### 3. Run the keyboard pass
|
|
66
|
+
|
|
67
|
+
`Tab` from page start: every interactive element receives focus,
|
|
68
|
+
in visual order, with a visible indicator. `Shift-Tab` reverses
|
|
69
|
+
cleanly. `Enter` / `Space` activate per role. Arrow keys work in
|
|
70
|
+
composite widgets (tab strip, listbox, menu). `Esc` dismisses the
|
|
71
|
+
top-most overlay only.
|
|
72
|
+
|
|
73
|
+
### 4. Run the screen-reader pass
|
|
74
|
+
|
|
75
|
+
Use VoiceOver (macOS), NVDA (Windows), or `aria-live` log
|
|
76
|
+
inspection. Each surface announces: role, name, state, value,
|
|
77
|
+
description (in that order). State changes (loading, expanded,
|
|
78
|
+
selected, error) announce. Decorative images are silent.
|
|
79
|
+
|
|
80
|
+
### 5. Score and report
|
|
81
|
+
|
|
82
|
+
For each surface from step 1:
|
|
83
|
+
|
|
84
|
+
| Surface | WCAG SC | Pass / Fail | Evidence |
|
|
85
|
+
|---|---|---|---|
|
|
86
|
+
| Submit button | 1.4.3 | Fail | contrast 3.1:1, expected 4.5:1 |
|
|
87
|
+
| Modal | 2.1.2 | Fail | Tab leaves modal — focus trap missing |
|
|
88
|
+
|
|
89
|
+
Verdict at the bottom: **AA-pass** (zero fails), **AA-pass-with-risk**
|
|
90
|
+
(non-blocking gaps + plan), or **AA-fail** (blocking — fix before
|
|
91
|
+
ship).
|
|
92
|
+
|
|
93
|
+
## Output format
|
|
94
|
+
|
|
95
|
+
```
|
|
96
|
+
Scope: <screen / component / route>
|
|
97
|
+
Surfaces: <count from step 1>
|
|
98
|
+
Tools used: <axe-core | manual | VoiceOver | NVDA — pick at least 2>
|
|
99
|
+
|
|
100
|
+
Findings:
|
|
101
|
+
1. <SC> <Pass/Fail> <Evidence + file:line if known>
|
|
102
|
+
2. ...
|
|
103
|
+
|
|
104
|
+
Verdict: <AA-pass | AA-pass-with-risk | AA-fail>
|
|
105
|
+
Top 3 fixes: <ordered by user impact>
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Gotcha
|
|
109
|
+
|
|
110
|
+
- `aria-label` on a `<button>` overrides its text content for
|
|
111
|
+
screen readers — only use when the visible text is not
|
|
112
|
+
descriptive (icon-only buttons).
|
|
113
|
+
- `tabindex="-1"` removes from tab order *and* allows programmatic
|
|
114
|
+
focus; `tabindex="0"` adds to tab order. `tabindex >= 1` is
|
|
115
|
+
almost always wrong — fix the source order.
|
|
116
|
+
- Native `<button>` and `<a>` come with role + keyboard for free;
|
|
117
|
+
reaching for `role="button"` on a `<div>` is a regression.
|
|
118
|
+
- Contrast on disabled state has no WCAG threshold — but if the
|
|
119
|
+
user cannot tell it is disabled, that is a 1.4.1 failure on
|
|
120
|
+
state cue.
|
|
121
|
+
|
|
122
|
+
## Do NOT
|
|
123
|
+
|
|
124
|
+
- Do NOT declare AA-pass without a keyboard-only pass; an axe-core
|
|
125
|
+
green is necessary, not sufficient.
|
|
126
|
+
- Do NOT add ARIA "to be safe" — wrong ARIA is worse than no ARIA.
|
|
127
|
+
Native semantics first.
|
|
128
|
+
- Do NOT silence the audit on "internal-only tool" or "small user
|
|
129
|
+
base"; legal exposure does not scale with audience size in most
|
|
130
|
+
jurisdictions.
|
|
131
|
+
- Do NOT close a finding by adjusting the test instead of the UI;
|
|
132
|
+
the user's experience is the ground truth, not the test report.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: adr-create
|
|
3
3
|
description: "Use when capturing an architectural decision — naming the file, picking the next ADR number, filling Status / Context / Decision / Consequences, and regenerating the index — even without saying 'ADR'."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
execution:
|
|
6
7
|
type: assisted
|
|
7
8
|
handler: shell
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: agent-docs-writing
|
|
3
3
|
description: "Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# agent-docs
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: agents-md-thin-root
|
|
3
3
|
description: "Use when editing AGENTS.md (package root) or templates/AGENTS.md (consumer) — enforces Thin-Root contract: hard char ceilings, ≥40% pointer ratio, mandatory emergency-triage block."
|
|
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: ai-council
|
|
3
3
|
description: "Use when polling external AIs (OpenAI, Anthropic) outside the host session for a neutral second opinion on a roadmap, diff, prompt, or file set — or 'cross-check with another model'."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
> **Experimental.** AI Council is not yet validated by external users. API costs apply per consultation.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: analysis-autonomous-mode
|
|
3
3
|
description: "ONLY when user explicitly requests autonomous analysis, deep investigation, multi-step research, or 'dig into this end-to-end without asking me each step' — NOT for normal feature work."
|
|
4
4
|
source: package
|
|
5
|
+
domain: discovery
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# analysis-autonomous-mode
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: analysis-skill-router
|
|
3
3
|
description: "Use when picking which analysis or project-analysis-* skill fits a request — routes by scope, framework, and symptom — even if the user just says 'analyze this' or 'dig into the codebase'."
|
|
4
4
|
source: package
|
|
5
|
+
domain: discovery
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# analysis-skill-router
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: api-design
|
|
3
3
|
description: "Use when designing APIs, planning endpoints, REST conventions, versioning, or deprecation — even when the user just says 'expose this as an endpoint' without naming API design."
|
|
4
|
+
personas:
|
|
5
|
+
- backend-architect
|
|
4
6
|
source: package
|
|
7
|
+
domain: engineering
|
|
5
8
|
---
|
|
6
9
|
|
|
7
10
|
# api-design
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: api-endpoint
|
|
3
3
|
description: "Use when the user says "create endpoint", "new API route", or "add controller". Creates a complete endpoint with Controller, FormRequest, Resource, route, and OpenAPI docs."
|
|
4
4
|
source: package
|
|
5
|
+
domain: engineering
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# api-endpoint
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: api-testing
|
|
3
3
|
description: "Use when writing API endpoint tests — integration tests, contract validation, response assertions, mocked external services — even when the user says 'test this route' without naming API testing."
|
|
4
4
|
source: package
|
|
5
|
+
domain: quality
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# api-testing
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: architecture-review-lens
|
|
3
|
+
description: "Use when a diff may break system boundaries, dependency direction, or cross-service contracts — fifth judge dispatched by /review-changes alongside the four standard judges."
|
|
4
|
+
personas:
|
|
5
|
+
- backend-architect
|
|
6
|
+
- senior-engineer
|
|
7
|
+
source: package
|
|
8
|
+
domain: quality
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# architecture-review-lens
|
|
12
|
+
|
|
13
|
+
> Fifth judge in the `/review-changes` family. Reviews a diff for
|
|
14
|
+
> **architectural fit**, not correctness, security, tests, or style.
|
|
15
|
+
> Catches what the other four miss: layer violations, wrong
|
|
16
|
+
> dependency direction, leaking abstractions, and broken cross-service
|
|
17
|
+
> contracts. Sibling of [`judge-bug-hunter`](../judge-bug-hunter/SKILL.md)
|
|
18
|
+
> et al. — never overlaps.
|
|
19
|
+
|
|
20
|
+
## When to use
|
|
21
|
+
|
|
22
|
+
- `/review-changes` dispatches its "architecture" slice to this skill.
|
|
23
|
+
- A reviewer asks "does this belong here?", "should this be in
|
|
24
|
+
the domain layer?", or "is this leaking storage details?".
|
|
25
|
+
- A diff adds a cross-service call, event, or contract.
|
|
26
|
+
|
|
27
|
+
Do NOT use when:
|
|
28
|
+
|
|
29
|
+
- The diff is documentation-only or a formatting-only change.
|
|
30
|
+
- The concern is correctness — route to
|
|
31
|
+
[`judge-bug-hunter`](../judge-bug-hunter/SKILL.md).
|
|
32
|
+
- The concern is security — route to
|
|
33
|
+
[`judge-security-auditor`](../judge-security-auditor/SKILL.md).
|
|
34
|
+
- The concern is naming or DRY — route to
|
|
35
|
+
[`judge-code-quality`](../judge-code-quality/SKILL.md).
|
|
36
|
+
- The concern is *whether to make* the architectural change — route
|
|
37
|
+
to [`decision-record`](../decision-record/SKILL.md) first.
|
|
38
|
+
|
|
39
|
+
## Procedure
|
|
40
|
+
|
|
41
|
+
### 1. Anchor on the system shape
|
|
42
|
+
|
|
43
|
+
Read the codebase's stated architecture (ADRs, AGENTS.md, module
|
|
44
|
+
docs). If no shape is documented, infer it from folder structure
|
|
45
|
+
and surface the gap. You are judging the diff against **the stated
|
|
46
|
+
shape**, not a fantasy ideal.
|
|
47
|
+
|
|
48
|
+
### 2. Inspect each changed file for fit
|
|
49
|
+
|
|
50
|
+
For every changed file, answer:
|
|
51
|
+
|
|
52
|
+
| Question | Smell when "no" |
|
|
53
|
+
|---|---|
|
|
54
|
+
| Does this file live in the right layer? | Layer violation |
|
|
55
|
+
| Are imports flowing in the allowed direction? | Inverted dependency |
|
|
56
|
+
| Does this leak a storage / framework detail? | Leaky abstraction |
|
|
57
|
+
| Is the public API of the module still the same? | Contract drift |
|
|
58
|
+
| Does a cross-service call respect its contract? | Contract break |
|
|
59
|
+
|
|
60
|
+
Each smell is a finding with a file:line citation.
|
|
61
|
+
|
|
62
|
+
### 3. Check the seams
|
|
63
|
+
|
|
64
|
+
Pay special attention to:
|
|
65
|
+
|
|
66
|
+
- New public methods on existing classes.
|
|
67
|
+
- New imports that cross module boundaries.
|
|
68
|
+
- New events, queue messages, or HTTP calls.
|
|
69
|
+
- Removed deprecation warnings or feature flags.
|
|
70
|
+
|
|
71
|
+
Cross-module / cross-service additions are the highest-leverage
|
|
72
|
+
findings — surface them even at low individual severity.
|
|
73
|
+
|
|
74
|
+
### 4. Issue a verdict per the judge contract
|
|
75
|
+
|
|
76
|
+
| Verdict | When |
|
|
77
|
+
|---|---|
|
|
78
|
+
| `apply` | No architectural concerns; diff fits the stated shape |
|
|
79
|
+
| `revise` | Findings exist; diff lands after the listed fixes |
|
|
80
|
+
| `reject` | Architectural shape itself must be reconsidered (rare) |
|
|
81
|
+
|
|
82
|
+
`reject` requires citing which ADR or stated shape would need to
|
|
83
|
+
change — never reject for taste.
|
|
84
|
+
|
|
85
|
+
### 5. Validate the verdict
|
|
86
|
+
|
|
87
|
+
Verify before emitting: every finding has a `file:line` citation and
|
|
88
|
+
a smell label from the taxonomy; the verdict matches the worst
|
|
89
|
+
finding (`revise` if any finding exists, `apply` only when none);
|
|
90
|
+
`reject` cites the ADR or stated shape that would need to change.
|
|
91
|
+
Ensure no finding restates a concern owned by another judge.
|
|
92
|
+
|
|
93
|
+
## Output format
|
|
94
|
+
|
|
95
|
+
The verdict block carries these ordered fields:
|
|
96
|
+
|
|
97
|
+
1. `Judge:` — fixed value `architecture-review-lens`
|
|
98
|
+
2. `Model:` and `Target:` — model id from `.agent-settings.yml` and diff range
|
|
99
|
+
3. `Verdict:` — exactly one of `apply` / `revise` / `reject`
|
|
100
|
+
4. `Issues:` — numbered list, each with `file:line`, smell label, suggested fix
|
|
101
|
+
|
|
102
|
+
```
|
|
103
|
+
Judge: architecture-review-lens
|
|
104
|
+
Model: <model id from .agent-settings.yml>
|
|
105
|
+
Target: <branch / diff range>
|
|
106
|
+
|
|
107
|
+
Verdict: apply | revise | reject
|
|
108
|
+
|
|
109
|
+
Issues:
|
|
110
|
+
1. 🔴 <finding> file:line
|
|
111
|
+
Smell: layer-violation | inverted-dep | leak | contract-drift | contract-break
|
|
112
|
+
Suggested fix: <one sentence>
|
|
113
|
+
2. 🟡 ...
|
|
114
|
+
3. 🟢 ...
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
## Gotcha
|
|
118
|
+
|
|
119
|
+
- The stated shape may be wrong. If the diff has a sound reason to
|
|
120
|
+
break it, do NOT raise a finding — recommend an ADR via
|
|
121
|
+
`decision-record` and approve the diff.
|
|
122
|
+
- "Could be split into more files" is style, not architecture; route
|
|
123
|
+
to `judge-code-quality`.
|
|
124
|
+
- A finding with no file:line citation is a vibe; reject your own
|
|
125
|
+
finding before issuing it.
|
|
126
|
+
|
|
127
|
+
## Do NOT
|
|
128
|
+
|
|
129
|
+
- Do NOT review correctness, security, tests, or style — those are
|
|
130
|
+
other judges.
|
|
131
|
+
- Do NOT issue `reject` without naming the ADR or stated shape that
|
|
132
|
+
would need to change.
|
|
133
|
+
- Do NOT raise findings against the *current* architecture if the
|
|
134
|
+
diff did not introduce them; this is a diff-judge, not a
|
|
135
|
+
codebase-audit.
|
|
136
|
+
- Do NOT merge findings with another judge's output — the user needs
|
|
137
|
+
to see which lens raised each one.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: async-python-patterns
|
|
3
3
|
description: "Use when writing Python asyncio code — picking between gather / TaskGroup / wait, structured concurrency, timeouts, cancellation, sync-bridging — decision framework only, cookbook externalized."
|
|
4
4
|
source: package
|
|
5
|
+
domain: engineering
|
|
5
6
|
status: active
|
|
6
7
|
refresh_trigger: "Python ships a new structured-concurrency primitive (post-TaskGroup), OR ≥30% of cited upstream cookbook examples become deprecated, OR the cited libraries (aiohttp, httpx, anyio, trio) cut a major version with breaking async surface changes."
|
|
7
8
|
sunset_criterion: "When `https://docs.python.org/3/library/asyncio.html` ships an in-tree decision framework AND consumer projects no longer cite this skill in PR reviews for two consecutive review cycles."
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: authz-review
|
|
3
3
|
description: "Use when reviewing authorization end-to-end — route → gate → policy → query scope → response filter — before changes to permissions, tenants, ownership, or admin flows."
|
|
4
|
+
personas:
|
|
5
|
+
- security-engineer
|
|
6
|
+
- backend-architect
|
|
4
7
|
source: package
|
|
8
|
+
domain: quality
|
|
5
9
|
---
|
|
6
10
|
|
|
7
11
|
# authz-review
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: aws-infrastructure
|
|
3
3
|
description: "Use when working with AWS resources — ECS Fargate, ECR, EFS, Secrets Manager, gomplate templates, multi-env deployments — even when the user says 'deploy to staging' without naming AWS."
|
|
4
4
|
source: package
|
|
5
|
+
domain: devops
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# aws-infrastructure
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: blast-radius-analyzer
|
|
3
3
|
description: "Use BEFORE editing shared code — enumerates every call site, event consumer, queue worker, API client, migration, and test that a planned change will touch, with a file:line citation per dependency."
|
|
4
|
+
personas:
|
|
5
|
+
- backend-architect
|
|
4
6
|
source: package
|
|
7
|
+
domain: discovery
|
|
5
8
|
---
|
|
6
9
|
|
|
7
10
|
# blast-radius-analyzer
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: bug-analyzer
|
|
3
3
|
description: "Use when the user shares a Sentry error, Jira bug ticket, or error description and wants root cause analysis. Also for proactive bug hunting and code audits for hidden bugs."
|
|
4
4
|
source: package
|
|
5
|
+
domain: discovery
|
|
5
6
|
council_depth: deep
|
|
6
7
|
---
|
|
7
8
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: check-refs
|
|
3
3
|
description: "Use when verifying cross-references between skills, rules, commands, guidelines, and context documents are not broken after edits, renames, or deletions."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
execution:
|
|
6
7
|
type: assisted
|
|
7
8
|
handler: shell
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: code-refactoring
|
|
3
3
|
description: "Use when the user says "refactor this", "rename class", or "move method". Safely refactors PHP code — finds all callers, updates downstream dependencies, and verifies with quality tools."
|
|
4
4
|
source: package
|
|
5
|
+
domain: engineering
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# refactorer
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: command-routing
|
|
3
3
|
description: "Use when the user invokes a slash command like /create-pr, /commit, /fix-ci, or pastes command file content — routes to the right command with context inference and GitHub API patterns."
|
|
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: command-writing
|
|
3
3
|
description: "Use when creating or editing a slash command in .agent-src.uncompressed/commands/ — frontmatter, numbered steps, safety gates — even when the user just says 'add a /command for X'."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
<!-- cloud_safe: degrade -->
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: competitive-positioning
|
|
3
|
+
description: "Use when comparing this package to a peer / competitor — ours-vs-theirs verdict table, axis selection, adoption queue. Triggers on 'how do we compare to X', 'should we adopt their pattern'."
|
|
4
|
+
status: active
|
|
5
|
+
tier: senior
|
|
6
|
+
source: package
|
|
7
|
+
domain: product
|
|
8
|
+
context_spine: [product]
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# competitive-positioning
|
|
12
|
+
|
|
13
|
+
## When to use
|
|
14
|
+
|
|
15
|
+
- A peer / reference / competitor repository was named and the team needs a structured comparison, not a vibes summary.
|
|
16
|
+
- A pattern from another package is being considered for adoption and the trade-off needs to land in writing.
|
|
17
|
+
- Positioning prose for a README / launch / pricing page needs an ours-vs-theirs decisions table to anchor on.
|
|
18
|
+
|
|
19
|
+
Do NOT use for general repo audits (route to `analyze-reference-repo`),
|
|
20
|
+
upstream-contribution decisions (route to `upstream-contribute`), or
|
|
21
|
+
DCF-style valuation work (route to `dcf-modeling`).
|
|
22
|
+
|
|
23
|
+
## Cognition cluster
|
|
24
|
+
|
|
25
|
+
- **Mental model 1 — First principles.** Strip the comparison to the
|
|
26
|
+
outcome each package promises its user, not the feature lists. Two
|
|
27
|
+
packages with overlapping features can promise different outcomes
|
|
28
|
+
and therefore are not direct competitors. See
|
|
29
|
+
[`docs/contracts/mental-models.md`](../../../docs/contracts/mental-models.md) § 1.
|
|
30
|
+
- **Mental model 24 — Optionality.** A pattern that costs little to
|
|
31
|
+
adopt and preserves exit value beats a "better" pattern that locks
|
|
32
|
+
the package in. Score adoption cost AND exit cost on every row. See
|
|
33
|
+
`mental-models.md` § 24.
|
|
34
|
+
- **Mental model 12 — Inversion.** For each axis, ask *"what would
|
|
35
|
+
we do if we wanted to lose on this axis?"* The answer surfaces the
|
|
36
|
+
invariants the comparison must preserve. See `mental-models.md` § 12.
|
|
37
|
+
- **Product context-spine slot.** Read the **product** slot for
|
|
38
|
+
segment / focal job / non-goals before picking axes; the comparison
|
|
39
|
+
is only legitimate inside our own scope. See
|
|
40
|
+
[`context-spine`](../../../docs/contracts/context-spine.md).
|
|
41
|
+
|
|
42
|
+
## Procedure
|
|
43
|
+
|
|
44
|
+
### 1. Frame the comparison
|
|
45
|
+
|
|
46
|
+
Name the peer in one sentence: *"Package P promises outcome O for
|
|
47
|
+
segment S."* If you cannot, the peer is not a peer; abort.
|
|
48
|
+
|
|
49
|
+
### 2. Pick the axes
|
|
50
|
+
|
|
51
|
+
3–7 axes, derived from the **product** spine slot, never from the
|
|
52
|
+
peer's marketing site. Each axis must:
|
|
53
|
+
|
|
54
|
+
- Be observable from the artefacts (repo, docs, package output).
|
|
55
|
+
- Map to a real user outcome, not a feature checklist.
|
|
56
|
+
- Be able to **separate** the two packages on at least the threshold
|
|
57
|
+
of "matters to a switch decision".
|
|
58
|
+
|
|
59
|
+
### 3. Inspect both packages on each axis
|
|
60
|
+
|
|
61
|
+
For every axis × package cell, capture:
|
|
62
|
+
|
|
63
|
+
- **Evidence** — file path, doc URL, behaviour quote.
|
|
64
|
+
- **Verdict** — clearly stronger / clearly weaker / parity / not
|
|
65
|
+
applicable.
|
|
66
|
+
- **Cost-to-close** — if weaker, what would adopting their approach
|
|
67
|
+
cost in our scope? Mental-model-24 optionality: include exit cost.
|
|
68
|
+
|
|
69
|
+
Cells without evidence are **not** parity; they are *unknown*.
|
|
70
|
+
Surface them; do not silently call them ties.
|
|
71
|
+
|
|
72
|
+
### 4. Run the inversion check and validate evidence
|
|
73
|
+
|
|
74
|
+
For each axis where we win, ask: *"what change would make us lose
|
|
75
|
+
this axis?"* If the answer is *"none, ever"*, the axis is invariant —
|
|
76
|
+
flag it as a strategic moat, not a feature.
|
|
77
|
+
|
|
78
|
+
Validate every cell against the evidence rule before continuing:
|
|
79
|
+
verify each `clearly stronger` / `clearly weaker` row cites a file
|
|
80
|
+
path, doc URL, or behaviour quote; check that no cell sits at
|
|
81
|
+
parity without evidence; confirm at least one row separates the
|
|
82
|
+
packages on a switch-decision-relevant outcome. Cells that fail
|
|
83
|
+
this validation become *unknowns*, not parity.
|
|
84
|
+
|
|
85
|
+
### 5. Produce the verdict table
|
|
86
|
+
|
|
87
|
+
One row per axis. Columns: **axis · ours · theirs · verdict ·
|
|
88
|
+
adopt? · rationale**. The `adopt?` column is the only opinion in
|
|
89
|
+
the table.
|
|
90
|
+
|
|
91
|
+
### 6. Hand back
|
|
92
|
+
|
|
93
|
+
Hand the table to the requester; route adoption decisions to
|
|
94
|
+
[`decision-record`](../decision-record/SKILL.md), upstream proposals
|
|
95
|
+
to [`upstream-contribute`](../upstream-contribute/SKILL.md).
|
|
96
|
+
|
|
97
|
+
## Related Skills
|
|
98
|
+
|
|
99
|
+
**WHEN to use this**
|
|
100
|
+
|
|
101
|
+
- Two packages are named and a verdict table is the unit of work.
|
|
102
|
+
- A pattern from another package is on the table for adoption.
|
|
103
|
+
- Positioning copy needs an anchor table.
|
|
104
|
+
|
|
105
|
+
**WHEN NOT to use this**
|
|
106
|
+
|
|
107
|
+
- The peer repo needs a generic walk-through first — route to
|
|
108
|
+
[`analyze-reference-repo`](../analyze-reference-repo/SKILL.md);
|
|
109
|
+
this skill consumes its output, never duplicates it.
|
|
110
|
+
- The decision is to contribute back upstream — route to
|
|
111
|
+
[`upstream-contribute`](../upstream-contribute/SKILL.md).
|
|
112
|
+
- The output is monetary value (DCF, valuation) — route to
|
|
113
|
+
[`dcf-modeling`](../dcf-modeling/SKILL.md).
|
|
114
|
+
- The trade-off is across stakeholders inside our own team — route
|
|
115
|
+
to [`stakeholder-tradeoff`](../stakeholder-tradeoff/SKILL.md).
|
|
116
|
+
|
|
117
|
+
## When the agent should load this
|
|
118
|
+
|
|
119
|
+
- "Wie schlagen wir uns gegen X?"
|
|
120
|
+
- "Sollten wir das Pattern aus Y übernehmen?"
|
|
121
|
+
- "Bau mir die ours-vs-theirs Tabelle für die README."
|
|
122
|
+
- "Wo verlieren wir gegen Package P?"
|
|
123
|
+
- "Welche Achsen sind invariant für uns?"
|
|
124
|
+
|
|
125
|
+
## Output
|
|
126
|
+
|
|
127
|
+
A single Markdown block with:
|
|
128
|
+
|
|
129
|
+
1. **Frame** — one-sentence promise of each package, segment named.
|
|
130
|
+
2. **Axes** — bullet list of 3–7 axes with one-sentence rationale per axis.
|
|
131
|
+
3. **Verdict table** — `axis · ours · theirs · verdict · adopt? · rationale`.
|
|
132
|
+
4. **Invariants** — axes flagged as strategic moats with the inversion answer.
|
|
133
|
+
5. **Adoption queue** — rows where `adopt? = yes`, ordered by cost-to-close.
|
|
134
|
+
6. **Unknowns** — cells that lacked evidence; explicit, not collapsed to parity.
|
|
135
|
+
|
|
136
|
+
## Gotcha
|
|
137
|
+
|
|
138
|
+
- A verdict table without **unknowns** is suspect; nobody has
|
|
139
|
+
symmetric evidence on a peer at first pass.
|
|
140
|
+
- `adopt? = yes` without cost-to-close + exit cost is wishful; the
|
|
141
|
+
optionality rule is non-negotiable.
|
|
142
|
+
- Axes derived from the peer's site are reflective, not strategic;
|
|
143
|
+
re-derive from our own product spine slot.
|
|
144
|
+
|
|
145
|
+
## Do NOT
|
|
146
|
+
|
|
147
|
+
- Do NOT score before evidence — evidence first, verdict after.
|
|
148
|
+
- Do NOT treat unknowns as parity to "complete" the table.
|
|
149
|
+
- Do NOT lock adoption decisions in this skill — hand off to
|
|
150
|
+
`decision-record`.
|
|
151
|
+
- Do NOT include monetary or roadmap framing — this is positioning,
|
|
152
|
+
not planning.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: composer-packages
|
|
3
3
|
description: "Use when building or maintaining a Composer library — versioning, Laravel integration, autoloading, publishing to private registries — even when the user says 'release a new version'."
|
|
4
4
|
source: package
|
|
5
|
+
domain: engineering
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# composer-packages
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: context-authoring
|
|
3
3
|
description: "Use when filling in knowledge-layer context files — auth-model, tenant-boundaries, data-sensitivity, deployment-order, observability — interactive walkthrough that turns templates into reviewer fuel."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# context-authoring
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
name: conventional-commits-writing
|
|
3
3
|
description: "Use when writing commit messages or squash-merge titles — `feat:`, `fix:`, `chore:`, scopes, breaking changes — even when the user just says 'commit this' without naming Conventional Commits."
|
|
4
4
|
source: package
|
|
5
|
+
domain: process
|
|
5
6
|
execution:
|
|
6
7
|
type: assisted
|
|
7
8
|
handler: internal
|