@event4u/agent-config 2.0.0 → 2.1.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/fix/{pr-bots.md → pr-bot-comments.md} +3 -3
- package/.agent-src/commands/fix/{pr.md → pr-comments.md} +6 -6
- package/.agent-src/commands/fix/{pr-developers.md → pr-developer-comments.md} +3 -3
- package/.agent-src/commands/fix.md +6 -6
- package/.agent-src/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md +2 -2
- package/.claude-plugin/marketplace.json +4 -4
- package/CHANGELOG.md +31 -0
- package/README.md +5 -6
- package/docs/architecture.md +1 -1
- package/docs/catalog.md +3 -3
- package/docs/contracts/command-clusters.md +3 -3
- package/docs/contracts/file-ownership-matrix.json +9 -9
- package/docs/getting-started.md +16 -25
- package/docs/installation.md +57 -46
- package/docs/migrations/commands-1.15.0.md +3 -3
- package/docs/skills-catalog.md +23 -2
- package/docs/troubleshooting.md +20 -32
- package/llms.txt +22 -1
- package/package.json +1 -1
- package/scripts/install +25 -3
- package/scripts/install.py +11 -21
- package/scripts/install.sh +6 -11
- package/templates/agent-config-wrapper.sh +40 -25
- package/templates/consumer-settings/README.md +2 -2
- package/scripts/setup.sh +0 -230
package/docs/skills-catalog.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Skills Catalog
|
|
2
2
|
|
|
3
|
-
All **
|
|
3
|
+
All **174 skills** available in this package, in alphabetical order.
|
|
4
4
|
Click a skill name to open its SKILL.md and read the full guidance.
|
|
5
5
|
|
|
6
6
|
> **Regenerate:** `python3 scripts/generate_catalog.py`
|
|
@@ -8,6 +8,7 @@ Click a skill name to open its SKILL.md and read the full guidance.
|
|
|
8
8
|
|
|
9
9
|
| Skill | What your agent learns |
|
|
10
10
|
|---|---|
|
|
11
|
+
| [`accessibility-auditor`](../.agent-src/skills/accessibility-auditor/SKILL.md) | 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'. |
|
|
11
12
|
| [`adr-create`](../.agent-src/skills/adr-create/SKILL.md) | 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'. |
|
|
12
13
|
| [`adversarial-review`](../.agent-src/skills/adversarial-review/SKILL.md) | ONLY when user explicitly requests adversarial review, devil's advocate analysis, stress-testing a plan, or 'poke holes in this' — NOT for regular code review or design feedback. |
|
|
13
14
|
| [`agent-docs-writing`](../.agent-src/skills/agent-docs-writing/SKILL.md) | Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure. |
|
|
@@ -18,6 +19,7 @@ Click a skill name to open its SKILL.md and read the full guidance.
|
|
|
18
19
|
| [`api-design`](../.agent-src/skills/api-design/SKILL.md) | 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. |
|
|
19
20
|
| [`api-endpoint`](../.agent-src/skills/api-endpoint/SKILL.md) | 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. |
|
|
20
21
|
| [`api-testing`](../.agent-src/skills/api-testing/SKILL.md) | 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. |
|
|
22
|
+
| [`architecture-review-lens`](../.agent-src/skills/architecture-review-lens/SKILL.md) | 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. |
|
|
21
23
|
| [`artisan-commands`](../.agent-src/skills/artisan-commands/SKILL.md) | Use when creating or modifying Artisan commands. Covers clear signatures, safe execution flow, helpful output, and project conventions for console tooling. |
|
|
22
24
|
| [`async-python-patterns`](../.agent-src/skills/async-python-patterns/SKILL.md) | Use when writing Python asyncio code — picking between gather / TaskGroup / wait, structured concurrency, timeouts, cancellation, sync-bridging — decision framework only, cookbook externalized. |
|
|
23
25
|
| [`authz-review`](../.agent-src/skills/authz-review/SKILL.md) | Use when reviewing authorization end-to-end — route → gate → policy → query scope → response filter — before changes to permissions, tenants, ownership, or admin flows. |
|
|
@@ -30,16 +32,19 @@ Click a skill name to open its SKILL.md and read the full guidance.
|
|
|
30
32
|
| [`code-review`](../.agent-src/skills/code-review/SKILL.md) | Use when the user says "review this", "check my code", or wants feedback on changes. Reviews for correctness, quality, security, and coding standards. |
|
|
31
33
|
| [`command-routing`](../.agent-src/skills/command-routing/SKILL.md) | 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. |
|
|
32
34
|
| [`command-writing`](../.agent-src/skills/command-writing/SKILL.md) | 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'. |
|
|
35
|
+
| [`competitive-positioning`](../.agent-src/skills/competitive-positioning/SKILL.md) | 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'. |
|
|
33
36
|
| [`composer-packages`](../.agent-src/skills/composer-packages/SKILL.md) | 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'. |
|
|
34
37
|
| [`context-authoring`](../.agent-src/skills/context-authoring/SKILL.md) | 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. |
|
|
35
38
|
| [`context-document`](../.agent-src/skills/context-document/SKILL.md) | Use when the user says "create context", "document this area", or wants a structured snapshot of a codebase area for agent orientation. |
|
|
36
39
|
| [`conventional-commits-writing`](../.agent-src/skills/conventional-commits-writing/SKILL.md) | 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. |
|
|
37
40
|
| [`copilot-agents-optimization`](../.agent-src/skills/copilot-agents-optimization/SKILL.md) | Use when optimizing AGENTS.md or copilot-instructions.md — deduplicates against .augment/ content, enforces line budgets, and focuses each file on its audience. |
|
|
38
41
|
| [`copilot-config`](../.agent-src/skills/copilot-config/SKILL.md) | Use when configuring GitHub Copilot — copilot-instructions.md, PR review patterns, output optimization — even when the user just says 'tune Copilot' or 'why is Copilot commenting on X'. |
|
|
42
|
+
| [`customer-research`](../.agent-src/skills/customer-research/SKILL.md) | Use when shaping a discovery slice — JTBD-framed interview guide, switch-event focus, verbatim quotes not summaries. Triggers on 'talk to users', 'why did they cancel', 'before we build X'. |
|
|
39
43
|
| [`dashboard-design`](../.agent-src/skills/dashboard-design/SKILL.md) | Use when designing monitoring dashboards — visualization selection, layout principles, observability strategies (RED/USE/Golden Signals), and data storytelling. |
|
|
40
44
|
| [`data-flow-mapper`](../.agent-src/skills/data-flow-mapper/SKILL.md) | Use BEFORE editing code that touches user data — traces the value from entry → validation → transformation → storage → egress, every hop cited with file:line. |
|
|
41
45
|
| [`database`](../.agent-src/skills/database/SKILL.md) | Use when working with database architecture, MariaDB/MySQL tuning, indexing strategies, slow queries, or multi-connection patterns — even when the user just says 'this query is slow'. |
|
|
42
46
|
| [`dcf-modeling`](../.agent-src/skills/dcf-modeling/SKILL.md) | Wing-4 valuation cognition for a CFO / finance-partner. Use when a deal, internal investment, or board ask names DCF, intrinsic value, WACC, terminal value, or 'what's it worth on a 5-year hold'. |
|
|
47
|
+
| [`decision-record`](../.agent-src/skills/decision-record/SKILL.md) | Use when locking a trade-off, structuring an ADR draft, or wiring supersession chains — frames options · trade-offs · consequences before the file is written by `adr-create`. |
|
|
43
48
|
| [`deep-reading-analyst`](../.agent-src/skills/deep-reading-analyst/SKILL.md) | Deep analysis of articles/long-form via thinking frameworks (SCQA, mental models, inversion) — 'analyze article', 'deep dive', 'extract insights', URL/text wanting depth not summary. |
|
|
44
49
|
| [`defense-in-depth`](../.agent-src/skills/defense-in-depth/SKILL.md) | Use when validation needs entry, business-logic, environment, and instrumentation guards so a bad value cannot reach the failure point — turns a local bug fix into a structural one. |
|
|
45
50
|
| [`dependency-upgrade`](../.agent-src/skills/dependency-upgrade/SKILL.md) | Use when upgrading dependencies — "update Laravel", "bump PHP version", or "upgrade packages". Covers changelog review, breaking change detection, and verification. |
|
|
@@ -47,6 +52,7 @@ Click a skill name to open its SKILL.md and read the full guidance.
|
|
|
47
52
|
| [`design-review`](../.agent-src/skills/design-review/SKILL.md) | Use when the user says "review the design", "check the UI", or wants a comprehensive UI/UX review. Uses a 7-phase methodology covering interaction, responsiveness, accessibility, and more. |
|
|
48
53
|
| [`devcontainer`](../.agent-src/skills/devcontainer/SKILL.md) | Use when configuring DevContainers or GitHub Codespaces — devcontainer.json, custom images, secrets, VS Code features — even when the user just says 'why does my Codespace not start'. |
|
|
49
54
|
| [`developer-like-execution`](../.agent-src/skills/developer-like-execution/SKILL.md) | Use when implementing, debugging, refactoring, or reviewing code — enforces the think → analyze → verify → execute workflow — even when the user just says 'implement X' without naming it. |
|
|
55
|
+
| [`discovery-interview`](../.agent-src/skills/discovery-interview/SKILL.md) | Use when running discovery interviews — question-bank build, bias audit, insight extraction. Triggers on 'audit my guide', 'extract insights from transcript', 'is my hypothesis falsifiable'. |
|
|
50
56
|
| [`docker`](../.agent-src/skills/docker/SKILL.md) | Use when working with Docker — Dockerfile edits, docker-compose services, containers, or the dual-container (fast + Xdebug) setup — even when the user just says 'my container won't start'. |
|
|
51
57
|
| [`dto-creator`](../.agent-src/skills/dto-creator/SKILL.md) | Use when the user says "create a DTO", "new data transfer object", or needs to convert request/response data into a typed PHP class. Creates DTOs with SimpleDto base class and attribute mapping. |
|
|
52
58
|
| [`eloquent`](../.agent-src/skills/eloquent/SKILL.md) | Use when writing Eloquent models, relationships, scopes, or queries via Model:: — 'fetch users with their orders'. NOT for PHPStan output, non-Eloquent services, or raw SQL questions. |
|
|
@@ -58,11 +64,13 @@ Click a skill name to open its SKILL.md and read the full guidance.
|
|
|
58
64
|
| [`file-editor`](../.agent-src/skills/file-editor/SKILL.md) | Use when opening edited files in the user's IDE. Reads settings from .agent-settings.yml to determine IDE and whether auto-open is enabled. |
|
|
59
65
|
| [`finishing-a-development-branch`](../.agent-src/skills/finishing-a-development-branch/SKILL.md) | Use when the feature is implementation-complete and the next step is 'ship it' — verifies, cleans up, and routes to merge/PR/park/discard — even when the user just says 'I'm done, what now?'. |
|
|
60
66
|
| [`flux`](../.agent-src/skills/flux/SKILL.md) | Use when the project uses `livewire/flux` — dispatched by `directives/ui/{apply,review,polish}.py`. Covers Flux components, slots, variants, and form primitives. |
|
|
67
|
+
| [`form-handler`](../.agent-src/skills/form-handler/SKILL.md) | Use when designing or reviewing a form — validation timing, error display, submission lifecycle, optimistic UI, dirty/pristine state, idempotency — even on 'why does submit double-fire?'. |
|
|
61
68
|
| [`funnel-analysis`](../.agent-src/skills/funnel-analysis/SKILL.md) | Use when diagnosing where a SaaS or product funnel leaks — visitor → signup → activation → paid → retained — channel-agnostic, conversion-rate-driven. |
|
|
62
69
|
| [`git-workflow`](../.agent-src/skills/git-workflow/SKILL.md) | Use when working with Git — branch naming, commit messages, PR creation, rebasing, or the code review process — even when the user says 'push this' or 'merge the branch' without naming Git. |
|
|
63
70
|
| [`github-ci`](../.agent-src/skills/github-ci/SKILL.md) | Use when working with GitHub Actions — workflow YAML, quality gates, test matrices, deployment triggers, reusable workflows — even when the user just says 'my CI is failing' or 'add a check'. |
|
|
64
71
|
| [`grafana`](../.agent-src/skills/grafana/SKILL.md) | Use when working with Grafana — dashboards, Loki LogQL queries, alerting rules, monitoring panels — even when the user just says 'build me a dashboard' or 'query the logs' without naming Grafana. |
|
|
65
72
|
| [`guideline-writing`](../.agent-src/skills/guideline-writing/SKILL.md) | Use when creating or editing a guideline in docs/guidelines/ — reference material cited by skills, no auto-triggers — even when the user just says 'write up our naming conventions'. |
|
|
73
|
+
| [`incident-commander`](../.agent-src/skills/incident-commander/SKILL.md) | Use during or right after an incident — frames severity, sets comms cadence, drafts the post-mortem skeleton — even when the user just says 'production is down' or 'wir haben einen Vorfall'. |
|
|
66
74
|
| [`jira-integration`](../.agent-src/skills/jira-integration/SKILL.md) | Use when the user says "check Jira", "create ticket", "update issue", or needs JQL queries, ticket transitions, or branch-to-ticket linking. |
|
|
67
75
|
| [`jobs-events`](../.agent-src/skills/jobs-events/SKILL.md) | Use when creating Laravel jobs, queued workflows, events, or listeners. Covers clear responsibilities, safe serialization, and retry/failure handling. |
|
|
68
76
|
| [`judge-bug-hunter`](../.agent-src/skills/judge-bug-hunter/SKILL.md) | Use when a diff needs correctness review — null-safety, edge cases, off-by-one, races, error handling — dispatched by /review-changes, /do-and-judge, /judge, even without 'judge'. |
|
|
@@ -79,15 +87,19 @@ Click a skill name to open its SKILL.md and read the full guidance.
|
|
|
79
87
|
| [`laravel-reverb`](../.agent-src/skills/laravel-reverb/SKILL.md) | Use when configuring Laravel Reverb — the first-party WebSocket server with Pusher protocol compatibility, horizontal scaling, and Pulse monitoring. |
|
|
80
88
|
| [`laravel-scheduling`](../.agent-src/skills/laravel-scheduling/SKILL.md) | Use when configuring Laravel task scheduling — cron expressions, frequency helpers, overlap prevention, maintenance mode, or output handling. |
|
|
81
89
|
| [`laravel-validation`](../.agent-src/skills/laravel-validation/SKILL.md) | Use when writing validation — Form Requests, rules, custom rule objects, request-boundary design — even when the user just says 'validate this input' or 'check the request' without naming it. |
|
|
90
|
+
| [`launch-readiness`](../.agent-src/skills/launch-readiness/SKILL.md) | 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'. |
|
|
82
91
|
| [`learning-to-rule-or-skill`](../.agent-src/skills/learning-to-rule-or-skill/SKILL.md) | 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. |
|
|
83
92
|
| [`lint-skills`](../.agent-src/skills/lint-skills/SKILL.md) | Use when running the package's skill linter against all skills and rules to validate frontmatter, required sections, and execution metadata. |
|
|
84
93
|
| [`livewire`](../.agent-src/skills/livewire/SKILL.md) | 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. |
|
|
94
|
+
| [`livewire-architect`](../.agent-src/skills/livewire-architect/SKILL.md) | 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'. |
|
|
85
95
|
| [`logging-monitoring`](../.agent-src/skills/logging-monitoring/SKILL.md) | Use when working with logging or monitoring — Sentry error tracking, Grafana/Loki log aggregation, structured logging channels, or monitoring helpers. |
|
|
86
96
|
| [`markitdown`](../.agent-src/skills/markitdown/SKILL.md) | Use when converting PDF, DOCX, XLSX, PPTX, EPUB, images, or audio to Markdown for LLM ingestion via the upstream markitdown-mcp server — 'extract this PDF', 'OCR this image', 'transcribe this audio'. |
|
|
87
97
|
| [`mcp`](../.agent-src/skills/mcp/SKILL.md) | Use when working with MCP (Model Context Protocol) servers — their tools, capabilities, and best practices for effective agent workflows. |
|
|
88
98
|
| [`mcp-builder`](../.agent-src/skills/mcp-builder/SKILL.md) | 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. |
|
|
89
99
|
| [`md-language-check`](../.agent-src/skills/md-language-check/SKILL.md) | 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. |
|
|
100
|
+
| [`memory-consolidation`](../.agent-src/skills/memory-consolidation/SKILL.md) | Use when consolidating session signals into curated memory — four-phase loop ORIENT → GATHER → CONSOLIDATE → PRUNE. Triggers on 'mine my sessions', 'consolidate memory', 'review intake signals'. |
|
|
90
101
|
| [`merge-conflicts`](../.agent-src/skills/merge-conflicts/SKILL.md) | Use when the user has merge conflicts or says "resolve conflicts". Understands conflict markers, resolution strategies, and verification workflow. |
|
|
102
|
+
| [`migration-architect`](../.agent-src/skills/migration-architect/SKILL.md) | 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. |
|
|
91
103
|
| [`migration-creator`](../.agent-src/skills/migration-creator/SKILL.md) | Use when the user says "create migration", "add column", or "new table". Creates migrations with correct table prefixes, column naming, and multi-tenant awareness. |
|
|
92
104
|
| [`mobile-e2e-strategy`](../.agent-src/skills/mobile-e2e-strategy/SKILL.md) | 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. |
|
|
93
105
|
| [`module-management`](../.agent-src/skills/module-management/SKILL.md) | Use when the user says "create module", "explore module", or works within app/Modules/. Understands module structure, auto-loading, route registration, and namespace conventions. |
|
|
@@ -102,7 +114,9 @@ Click a skill name to open its SKILL.md and read the full guidance.
|
|
|
102
114
|
| [`php-coder`](../.agent-src/skills/php-coder/SKILL.md) | 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. |
|
|
103
115
|
| [`php-debugging`](../.agent-src/skills/php-debugging/SKILL.md) | 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'. |
|
|
104
116
|
| [`php-service`](../.agent-src/skills/php-service/SKILL.md) | Use when the user says 'create service', 'new service class', or needs a PHP service following SOLID principles with proper DI and repository usage. |
|
|
117
|
+
| [`playwright-architect`](../.agent-src/skills/playwright-architect/SKILL.md) | Use when shaping a Playwright suite — locator strategy, Page Object boundaries, fixture composition, flake-prevention architecture, CI-vs-local split — even on 'design our E2E tests'. |
|
|
105
118
|
| [`playwright-testing`](../.agent-src/skills/playwright-testing/SKILL.md) | Use when writing Playwright E2E tests — browser automation, visual regression testing, Page Objects, fixtures, and reliable test patterns. |
|
|
119
|
+
| [`po-discovery`](../.agent-src/skills/po-discovery/SKILL.md) | Use when shaping a fuzzy product ask into a refined backlog item — problem framing, user-story rewrite, AC tightening — even if the user just says 'help me write this ticket'. |
|
|
106
120
|
| [`project-analysis-core`](../.agent-src/skills/project-analysis-core/SKILL.md) | Use for the universal deep-analysis workflow: project discovery, version resolution, docs loading, architecture mapping, execution flow, and package research. |
|
|
107
121
|
| [`project-analysis-hypothesis-driven`](../.agent-src/skills/project-analysis-hypothesis-driven/SKILL.md) | Use when a bug has multiple plausible causes across layers — competing hypotheses, validation loops, evidence-based conclusions — even when the user just says 'why is this happening?'. |
|
|
108
122
|
| [`project-analysis-laravel`](../.agent-src/skills/project-analysis-laravel/SKILL.md) | Use for deep Laravel project analysis: boot flow, request lifecycle, container usage, Eloquent/data flow, async systems, and Laravel-specific failure patterns. |
|
|
@@ -124,10 +138,12 @@ Click a skill name to open its SKILL.md and read the full guidance.
|
|
|
124
138
|
| [`receiving-code-review`](../.agent-src/skills/receiving-code-review/SKILL.md) | Use when processing code review feedback (bot or human) before changing anything — triages, verifies, and pushes back with technical reasoning — even when the user just says 'fix the comments'. |
|
|
125
139
|
| [`"refine-prompt"`](../.agent-src/skills/"refine-prompt"/SKILL.md) | Reconstruct a free-form prompt into actionable AC + assumptions + confidence band before the engine plans — '/work \"…\"', 'baue X', 'ist der Prompt klar genug für die Engine?'. |
|
|
126
140
|
| [`"refine-ticket"`](../.agent-src/skills/"refine-ticket"/SKILL.md) | Refine a Jira/Linear ticket before planning — 'refine ticket', 'tighten AC on PROJ-123', 'ist das Ticket klar?' — rewritten ticket, Top-5 risks, persona voices, sub-skills orchestrated, close-prompt. |
|
|
141
|
+
| [`release-comms`](../.agent-src/skills/release-comms/SKILL.md) | Use when turning a shipped changelog into a release narrative — value-not-feature framing, audience-segmented surfaces, one source of truth. Triggers on 'announce the release', 'write changelog post'. |
|
|
127
142
|
| [`repomix-packer`](../.agent-src/skills/repomix-packer/SKILL.md) | Use when packaging a codebase to a single AI-friendly file for LLM analysis — local or remote, XML/Markdown/JSON, token counting, gitignore filtering, peer-side `repomix` CLI. |
|
|
128
143
|
| [`requesting-code-review`](../.agent-src/skills/requesting-code-review/SKILL.md) | Use when asking for a review or creating a PR — self-review first, frame the right context, test plan included — even when the user just says 'open a PR' or 'ready to merge'. |
|
|
129
144
|
| [`review-routing`](../.agent-src/skills/review-routing/SKILL.md) | Use when preparing a PR description, suggesting reviewers, or flagging risk — produces owner-mapped roles plus historical bug-pattern matches from project-local YAML. |
|
|
130
145
|
| [`rice-prioritization`](../.agent-src/skills/rice-prioritization/SKILL.md) | Use when ranking competing initiatives for a roadmap, breaking a tie between two features, or auditing a backlog for hidden low-value work via Reach × Impact × Confidence ÷ Effort. |
|
|
146
|
+
| [`risk-officer`](../.agent-src/skills/risk-officer/SKILL.md) | Use when surfacing and prioritising risk before commit — blast-radius framing, mitigations, residual-risk verdict — even if the user just says 'what could go wrong here?'. |
|
|
131
147
|
| [`roadmap-management`](../.agent-src/skills/roadmap-management/SKILL.md) | Use when the user says "create roadmap", "show roadmap", or "execute roadmap". Creates, reads, and manages roadmap files with phase tracking. |
|
|
132
148
|
| [`roadmap-writing`](../.agent-src/skills/roadmap-writing/SKILL.md) | Use when authoring or rewriting a roadmap in agents/roadmaps/ — phase prose, goal sentence, acceptance criteria, council notes — even when the user just says 'write a plan for X' or 'draft a roadmap'. |
|
|
133
149
|
| [`rtk-output-filtering`](../.agent-src/skills/rtk-output-filtering/SKILL.md) | Use when running verbose CLI commands — wraps them with rtk (Rust Token Killer) for 60-90% token savings. Covers installation, configuration, and usage patterns. |
|
|
@@ -143,8 +159,11 @@ Click a skill name to open its SKILL.md and read the full guidance.
|
|
|
143
159
|
| [`skill-reviewer`](../.agent-src/skills/skill-reviewer/SKILL.md) | Use when reviewing, auditing, or optimizing skills — validates against the 7 Skill Killers checklist and produces fix recommendations. |
|
|
144
160
|
| [`skill-writing`](../.agent-src/skills/skill-writing/SKILL.md) | Use when deciding 'should this be a skill or a rule?', creating/improving/reviewing agent skills, SKILL.md frontmatter, or procedure sections — even without saying 'skill-writing'. |
|
|
145
161
|
| [`sql-writing`](../.agent-src/skills/sql-writing/SKILL.md) | Use when writing raw SQL — MariaDB/MySQL syntax, parameterization, raw migrations, seeders with `DB::statement` — even when the user just pastes a query and asks 'why is this slow' without naming SQL. |
|
|
146
|
-
| [`
|
|
162
|
+
| [`stakeholder-tradeoff`](../.agent-src/skills/stakeholder-tradeoff/SKILL.md) | Use when stakeholders pull a decision in different directions — frames each lens, builds a trade-off matrix, surfaces the cost of every choice — even if the user just says 'PO and ops disagree'. |
|
|
163
|
+
| [`subagent-orchestration`](../.agent-src/skills/subagent-orchestration/SKILL.md) | Use when orchestrating implementer/judge subagents — seven modes (do-and-judge ±two-stage, do-in-steps/parallel/worktrees, do-competitively, judge-with-debate) — models from .agent-settings.yml. |
|
|
147
164
|
| [`systematic-debugging`](../.agent-src/skills/systematic-debugging/SKILL.md) | Use when hitting a bug, test failure, crash, or unexpected behavior — enforces reproduce → isolate → hypothesize → verify before any fix — even when the user just says 'this is broken' or 'quick fix'. |
|
|
165
|
+
| [`tailwind-engineer`](../.agent-src/skills/tailwind-engineer/SKILL.md) | Use when writing or reviewing Tailwind CSS — utility-first, design-token discipline, no inline-style drift, responsive variants, dark mode — even on 'style this' or 'mach das hübsch'. |
|
|
166
|
+
| [`tech-debt-tracker`](../.agent-src/skills/tech-debt-tracker/SKILL.md) | Use when surfacing tech debt as trackable items — interest-vs-principal framing, prioritisation by carrying cost, repayment plan — even if the user just says 'this codebase is a mess'. |
|
|
148
167
|
| [`technical-specification`](../.agent-src/skills/technical-specification/SKILL.md) | Use when the user says "write a spec", "create RFC", "write a PRD", or "document this decision". Writes technical specifications, PRDs, RFCs, and ADRs with clear structure. |
|
|
149
168
|
| [`terraform`](../.agent-src/skills/terraform/SKILL.md) | Use when writing Terraform — AWS modules, resources, variables, outputs, remote state — even when the user just says 'provision this infra' or 'add an S3 bucket' without naming Terraform. |
|
|
150
169
|
| [`terragrunt`](../.agent-src/skills/terragrunt/SKILL.md) | Use when working with Terragrunt — DRY multi-env configs, module dependencies, remote state orchestration — even when the user just says 'deploy this to staging and prod' without naming Terragrunt. |
|
|
@@ -154,12 +173,14 @@ Click a skill name to open its SKILL.md and read the full guidance.
|
|
|
154
173
|
| [`threat-modeling`](../.agent-src/skills/threat-modeling/SKILL.md) | Use when adding auth, webhooks, uploads, queues, secrets, tenant boundaries, or public endpoints — produces trust boundaries + abuse cases mapped to files, BEFORE implementation. |
|
|
155
174
|
| [`token-optimizer`](../.agent-src/skills/token-optimizer/SKILL.md) | Use BEFORE any verbose CLI run, large file read, doc conversion, or near-context handoff — single decision tree keyed by intent that cites the canonical token-saving asset. Consult before the action. |
|
|
156
175
|
| [`traefik`](../.agent-src/skills/traefik/SKILL.md) | Use when setting up Traefik as a local reverse proxy — real domains on 127.0.0.1, trusted HTTPS via mkcert, automatic service discovery, and multi-project routing. |
|
|
176
|
+
| [`ui-component-architect`](../.agent-src/skills/ui-component-architect/SKILL.md) | Use when shaping a UI component tree — composition vs inheritance, slot patterns, prop API design, controlled vs uncontrolled, polymorphic — even on 'split this component'. |
|
|
157
177
|
| [`unit-economics-modeling`](../.agent-src/skills/unit-economics-modeling/SKILL.md) | Use when modeling CAC, LTV, gross-margin payback, or contribution margin per customer — for SaaS, marketplace, or transactional businesses. |
|
|
158
178
|
| [`universal-project-analysis`](../.agent-src/skills/universal-project-analysis/SKILL.md) | ONLY when user explicitly requests: full project analysis, deep codebase audit, or comprehensive architecture review. Routes to core and framework-specific analysis skills. |
|
|
159
179
|
| [`upstream-contribute`](../.agent-src/skills/upstream-contribute/SKILL.md) | Use when a learning, new skill, rule improvement, or bug fix from a consumer project should be contributed back to the shared agent-config package. |
|
|
160
180
|
| [`using-git-worktrees`](../.agent-src/skills/using-git-worktrees/SKILL.md) | Use when starting parallel work in isolation from the current branch — spawn a git worktree with ignore-safety checks and a clean test baseline — even when the user says 'try this on the side'. |
|
|
161
181
|
| [`"validate-feature-fit"`](../.agent-src/skills/"validate-feature-fit"/SKILL.md) | Validate whether a feature request fits the existing codebase — check for duplicates, contradictions, scope creep, and architectural misfit |
|
|
162
182
|
| [`verify-completion-evidence`](../.agent-src/skills/verify-completion-evidence/SKILL.md) | Use when claiming 'done', suggesting a commit, push, or PR — runs the evidence gate so completion claims come from fresh output in this message, not memory or earlier runs. |
|
|
183
|
+
| [`voc-extract`](../.agent-src/skills/voc-extract/SKILL.md) | Use when extracting Voice-of-Customer themes from existing artefacts — GH issues, PR threads, Sentry patterns. Triggers on 'what are users saying', 'recurring complaints', 'top themes'. |
|
|
163
184
|
| [`websocket`](../.agent-src/skills/websocket/SKILL.md) | Use when building real-time features — WebSocket broadcasting, live updates, presence channels, connection state — even when the user just says 'push this to the client live'. |
|
|
164
185
|
|
|
165
186
|
---
|
package/docs/troubleshooting.md
CHANGED
|
@@ -30,11 +30,11 @@ If any of these are missing or empty, the installer either didn't run or
|
|
|
30
30
|
was interrupted. Re-run it:
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
|
-
php vendor/bin/install.php --verbose
|
|
34
|
-
# or
|
|
35
33
|
bash scripts/install --verbose
|
|
36
34
|
# or, to regenerate everything (overwrites existing bridge files):
|
|
37
35
|
bash scripts/install --force
|
|
36
|
+
# or, for one-shot installs without a local node_modules tree:
|
|
37
|
+
npx @event4u/create-agent-config init --tools=claude-code,cursor
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
### Check 2: Does your agent actually read these directories?
|
|
@@ -61,44 +61,34 @@ version explicitly and reinstall the plugin.
|
|
|
61
61
|
|
|
62
62
|
---
|
|
63
63
|
|
|
64
|
-
##
|
|
64
|
+
## Installer ran but no files appeared
|
|
65
65
|
|
|
66
|
-
|
|
66
|
+
The v2 distribution does **not** ship a `postinstall` hook — installing
|
|
67
|
+
`@event4u/agent-config` via `npm install -g` only puts the `agent-config`
|
|
68
|
+
binary on `$PATH`; it does not seed any project files. Run the
|
|
69
|
+
orchestrator explicitly inside the project root:
|
|
67
70
|
|
|
68
71
|
```bash
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
ignore-scripts=true
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
In that case, the post-install hook never runs. Execute the installer
|
|
75
|
-
manually:
|
|
72
|
+
# One-shot, no local checkout required (recommended)
|
|
73
|
+
npx @event4u/create-agent-config init --tools=claude-code,cursor
|
|
76
74
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
# or for npm — invoke the orchestrator directly:
|
|
80
|
-
bash node_modules/@event4u/agent-config/scripts/install
|
|
75
|
+
# When the global CLI is installed
|
|
76
|
+
agent-config install --tools=claude-code,cursor
|
|
81
77
|
```
|
|
82
78
|
|
|
83
|
-
The [`scripts/postinstall.sh`](../scripts/postinstall.sh) wrapper prints a
|
|
84
|
-
loud error block when the underlying installer fails, so if you saw no
|
|
85
|
-
output at all, scripts are likely disabled on your side.
|
|
86
|
-
|
|
87
79
|
---
|
|
88
80
|
|
|
89
|
-
## Broken symlinks after
|
|
81
|
+
## Broken symlinks after upgrading the package
|
|
90
82
|
|
|
91
83
|
When the package version changes, symlinks that pointed to the old
|
|
92
|
-
|
|
84
|
+
package path may break. Re-run the installer — it is idempotent:
|
|
93
85
|
|
|
94
86
|
```bash
|
|
95
|
-
|
|
96
|
-
# or
|
|
97
|
-
bash scripts/install
|
|
87
|
+
npx @event4u/create-agent-config init --tools=claude-code,cursor
|
|
98
88
|
```
|
|
99
89
|
|
|
100
90
|
The installer replaces stale symlinks with fresh ones pointing at the
|
|
101
|
-
current
|
|
91
|
+
current package path.
|
|
102
92
|
|
|
103
93
|
---
|
|
104
94
|
|
|
@@ -108,8 +98,8 @@ Native Windows is not a first-class target. The installer relies on Bash
|
|
|
108
98
|
and Unix-style symlinks. Recommended setup:
|
|
109
99
|
|
|
110
100
|
1. **WSL2** (preferred): install Ubuntu or a distribution of your choice,
|
|
111
|
-
clone the project inside the WSL filesystem, and run
|
|
112
|
-
|
|
101
|
+
clone the project inside the WSL filesystem, and run
|
|
102
|
+
`npx @event4u/create-agent-config init` from WSL.
|
|
113
103
|
2. **Git Bash**: works for the basic install, but symlinks require
|
|
114
104
|
Developer Mode (Windows 10 1703+) or admin privileges. Without either,
|
|
115
105
|
Git Bash falls back to copies, which means updates will not propagate
|
|
@@ -142,15 +132,13 @@ There is no dedicated uninstall command yet. Remove the package and
|
|
|
142
132
|
clean up manually:
|
|
143
133
|
|
|
144
134
|
```bash
|
|
145
|
-
# 1. Remove the dependency
|
|
146
|
-
composer remove event4u/agent-config
|
|
147
|
-
# or
|
|
135
|
+
# 1. Remove the dependency (skip when installed via npx / -g)
|
|
148
136
|
npm uninstall @event4u/agent-config
|
|
149
137
|
|
|
150
138
|
# 2. Remove generated content from the project
|
|
151
139
|
rm -rf .augment .claude .cursor .clinerules .windsurfrules GEMINI.md
|
|
152
140
|
rm -f .agent-settings .agent-settings.yml .agent-settings.backup.key-value
|
|
153
|
-
rm -f .github/copilot-instructions.md
|
|
141
|
+
rm -f .github/copilot-instructions.md agent-config
|
|
154
142
|
# Remove the "# event4u/agent-config" block from .gitignore manually
|
|
155
143
|
```
|
|
156
144
|
|
|
@@ -163,5 +151,5 @@ Keep `AGENTS.md` if you customized it — it is yours, not the package's.
|
|
|
163
151
|
Open an [issue](https://github.com/event4u-app/agent-config/issues) with:
|
|
164
152
|
|
|
165
153
|
- your OS and shell,
|
|
166
|
-
-
|
|
154
|
+
- Node / Python versions,
|
|
167
155
|
- full output of `bash scripts/install --verbose --dry-run`.
|
package/llms.txt
CHANGED
|
@@ -6,6 +6,7 @@ Machine-readable index of all skills in this package. Each line:
|
|
|
6
6
|
Source: .agent-src/skills/<name>/SKILL.md
|
|
7
7
|
Catalog: docs/skills-catalog.md
|
|
8
8
|
|
|
9
|
+
accessibility-auditor: 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'.
|
|
9
10
|
adr-create: 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'.
|
|
10
11
|
adversarial-review: ONLY when user explicitly requests adversarial review, devil's advocate analysis, stress-testing a plan, or 'poke holes in this' — NOT for regular code review or design feedback.
|
|
11
12
|
agent-docs-writing: Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure.
|
|
@@ -16,6 +17,7 @@ analysis-skill-router: Use when picking which analysis or project-analysis-* ski
|
|
|
16
17
|
api-design: 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.
|
|
17
18
|
api-endpoint: 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.
|
|
18
19
|
api-testing: 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.
|
|
20
|
+
architecture-review-lens: 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.
|
|
19
21
|
artisan-commands: Use when creating or modifying Artisan commands. Covers clear signatures, safe execution flow, helpful output, and project conventions for console tooling.
|
|
20
22
|
async-python-patterns: Use when writing Python asyncio code — picking between gather / TaskGroup / wait, structured concurrency, timeouts, cancellation, sync-bridging — decision framework only, cookbook externalized.
|
|
21
23
|
authz-review: Use when reviewing authorization end-to-end — route → gate → policy → query scope → response filter — before changes to permissions, tenants, ownership, or admin flows.
|
|
@@ -28,16 +30,19 @@ code-refactoring: Use when the user says "refactor this", "rename class", or "mo
|
|
|
28
30
|
code-review: Use when the user says "review this", "check my code", or wants feedback on changes. Reviews for correctness, quality, security, and coding standards.
|
|
29
31
|
command-routing: 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.
|
|
30
32
|
command-writing: 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'.
|
|
33
|
+
competitive-positioning: 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'.
|
|
31
34
|
composer-packages: 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'.
|
|
32
35
|
context-authoring: 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.
|
|
33
36
|
context-document: Use when the user says "create context", "document this area", or wants a structured snapshot of a codebase area for agent orientation.
|
|
34
37
|
conventional-commits-writing: 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.
|
|
35
38
|
copilot-agents-optimization: Use when optimizing AGENTS.md or copilot-instructions.md — deduplicates against .augment/ content, enforces line budgets, and focuses each file on its audience.
|
|
36
39
|
copilot-config: Use when configuring GitHub Copilot — copilot-instructions.md, PR review patterns, output optimization — even when the user just says 'tune Copilot' or 'why is Copilot commenting on X'.
|
|
40
|
+
customer-research: Use when shaping a discovery slice — JTBD-framed interview guide, switch-event focus, verbatim quotes not summaries. Triggers on 'talk to users', 'why did they cancel', 'before we build X'.
|
|
37
41
|
dashboard-design: Use when designing monitoring dashboards — visualization selection, layout principles, observability strategies (RED/USE/Golden Signals), and data storytelling.
|
|
38
42
|
data-flow-mapper: Use BEFORE editing code that touches user data — traces the value from entry → validation → transformation → storage → egress, every hop cited with file:line.
|
|
39
43
|
database: Use when working with database architecture, MariaDB/MySQL tuning, indexing strategies, slow queries, or multi-connection patterns — even when the user just says 'this query is slow'.
|
|
40
44
|
dcf-modeling: Wing-4 valuation cognition for a CFO / finance-partner. Use when a deal, internal investment, or board ask names DCF, intrinsic value, WACC, terminal value, or 'what's it worth on a 5-year hold'.
|
|
45
|
+
decision-record: Use when locking a trade-off, structuring an ADR draft, or wiring supersession chains — frames options · trade-offs · consequences before the file is written by `adr-create`.
|
|
41
46
|
deep-reading-analyst: Deep analysis of articles/long-form via thinking frameworks (SCQA, mental models, inversion) — 'analyze article', 'deep dive', 'extract insights', URL/text wanting depth not summary.
|
|
42
47
|
defense-in-depth: Use when validation needs entry, business-logic, environment, and instrumentation guards so a bad value cannot reach the failure point — turns a local bug fix into a structural one.
|
|
43
48
|
dependency-upgrade: Use when upgrading dependencies — "update Laravel", "bump PHP version", or "upgrade packages". Covers changelog review, breaking change detection, and verification.
|
|
@@ -45,6 +50,7 @@ description-assist: Use when polishing a skill/rule/command/guideline frontmatte
|
|
|
45
50
|
design-review: Use when the user says "review the design", "check the UI", or wants a comprehensive UI/UX review. Uses a 7-phase methodology covering interaction, responsiveness, accessibility, and more.
|
|
46
51
|
devcontainer: Use when configuring DevContainers or GitHub Codespaces — devcontainer.json, custom images, secrets, VS Code features — even when the user just says 'why does my Codespace not start'.
|
|
47
52
|
developer-like-execution: Use when implementing, debugging, refactoring, or reviewing code — enforces the think → analyze → verify → execute workflow — even when the user just says 'implement X' without naming it.
|
|
53
|
+
discovery-interview: Use when running discovery interviews — question-bank build, bias audit, insight extraction. Triggers on 'audit my guide', 'extract insights from transcript', 'is my hypothesis falsifiable'.
|
|
48
54
|
docker: Use when working with Docker — Dockerfile edits, docker-compose services, containers, or the dual-container (fast + Xdebug) setup — even when the user just says 'my container won't start'.
|
|
49
55
|
dto-creator: Use when the user says "create a DTO", "new data transfer object", or needs to convert request/response data into a typed PHP class. Creates DTOs with SimpleDto base class and attribute mapping.
|
|
50
56
|
eloquent: Use when writing Eloquent models, relationships, scopes, or queries via Model:: — 'fetch users with their orders'. NOT for PHPStan output, non-Eloquent services, or raw SQL questions.
|
|
@@ -56,11 +62,13 @@ feature-planning: Use when the user says "plan a feature", "brainstorm", "explor
|
|
|
56
62
|
file-editor: Use when opening edited files in the user's IDE. Reads settings from .agent-settings.yml to determine IDE and whether auto-open is enabled.
|
|
57
63
|
finishing-a-development-branch: Use when the feature is implementation-complete and the next step is 'ship it' — verifies, cleans up, and routes to merge/PR/park/discard — even when the user just says 'I'm done, what now?'.
|
|
58
64
|
flux: Use when the project uses `livewire/flux` — dispatched by `directives/ui/{apply,review,polish}.py`. Covers Flux components, slots, variants, and form primitives.
|
|
65
|
+
form-handler: Use when designing or reviewing a form — validation timing, error display, submission lifecycle, optimistic UI, dirty/pristine state, idempotency — even on 'why does submit double-fire?'.
|
|
59
66
|
funnel-analysis: Use when diagnosing where a SaaS or product funnel leaks — visitor → signup → activation → paid → retained — channel-agnostic, conversion-rate-driven.
|
|
60
67
|
git-workflow: Use when working with Git — branch naming, commit messages, PR creation, rebasing, or the code review process — even when the user says 'push this' or 'merge the branch' without naming Git.
|
|
61
68
|
github-ci: Use when working with GitHub Actions — workflow YAML, quality gates, test matrices, deployment triggers, reusable workflows — even when the user just says 'my CI is failing' or 'add a check'.
|
|
62
69
|
grafana: Use when working with Grafana — dashboards, Loki LogQL queries, alerting rules, monitoring panels — even when the user just says 'build me a dashboard' or 'query the logs' without naming Grafana.
|
|
63
70
|
guideline-writing: Use when creating or editing a guideline in docs/guidelines/ — reference material cited by skills, no auto-triggers — even when the user just says 'write up our naming conventions'.
|
|
71
|
+
incident-commander: Use during or right after an incident — frames severity, sets comms cadence, drafts the post-mortem skeleton — even when the user just says 'production is down' or 'wir haben einen Vorfall'.
|
|
64
72
|
jira-integration: Use when the user says "check Jira", "create ticket", "update issue", or needs JQL queries, ticket transitions, or branch-to-ticket linking.
|
|
65
73
|
jobs-events: Use when creating Laravel jobs, queued workflows, events, or listeners. Covers clear responsibilities, safe serialization, and retry/failure handling.
|
|
66
74
|
judge-bug-hunter: Use when a diff needs correctness review — null-safety, edge cases, off-by-one, races, error handling — dispatched by /review-changes, /do-and-judge, /judge, even without 'judge'.
|
|
@@ -77,15 +85,19 @@ laravel-pulse: Use when setting up Laravel Pulse — real-time dashboard, built-
|
|
|
77
85
|
laravel-reverb: Use when configuring Laravel Reverb — the first-party WebSocket server with Pusher protocol compatibility, horizontal scaling, and Pulse monitoring.
|
|
78
86
|
laravel-scheduling: Use when configuring Laravel task scheduling — cron expressions, frequency helpers, overlap prevention, maintenance mode, or output handling.
|
|
79
87
|
laravel-validation: Use when writing validation — Form Requests, rules, custom rule objects, request-boundary design — even when the user just says 'validate this input' or 'check the request' without naming it.
|
|
88
|
+
launch-readiness: 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'.
|
|
80
89
|
learning-to-rule-or-skill: 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.
|
|
81
90
|
lint-skills: Use when running the package's skill linter against all skills and rules to validate frontmatter, required sections, and execution metadata.
|
|
82
91
|
livewire: 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.
|
|
92
|
+
livewire-architect: 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'.
|
|
83
93
|
logging-monitoring: Use when working with logging or monitoring — Sentry error tracking, Grafana/Loki log aggregation, structured logging channels, or monitoring helpers.
|
|
84
94
|
markitdown: Use when converting PDF, DOCX, XLSX, PPTX, EPUB, images, or audio to Markdown for LLM ingestion via the upstream markitdown-mcp server — 'extract this PDF', 'OCR this image', 'transcribe this audio'.
|
|
85
95
|
mcp: Use when working with MCP (Model Context Protocol) servers — their tools, capabilities, and best practices for effective agent workflows.
|
|
86
96
|
mcp-builder: 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.
|
|
87
97
|
md-language-check: 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.
|
|
98
|
+
memory-consolidation: Use when consolidating session signals into curated memory — four-phase loop ORIENT → GATHER → CONSOLIDATE → PRUNE. Triggers on 'mine my sessions', 'consolidate memory', 'review intake signals'.
|
|
88
99
|
merge-conflicts: Use when the user has merge conflicts or says "resolve conflicts". Understands conflict markers, resolution strategies, and verification workflow.
|
|
100
|
+
migration-architect: 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.
|
|
89
101
|
migration-creator: Use when the user says "create migration", "add column", or "new table". Creates migrations with correct table prefixes, column naming, and multi-tenant awareness.
|
|
90
102
|
mobile-e2e-strategy: 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.
|
|
91
103
|
module-management: Use when the user says "create module", "explore module", or works within app/Modules/. Understands module structure, auto-loading, route registration, and namespace conventions.
|
|
@@ -100,7 +112,9 @@ pest-testing: Use when writing, generating, or improving Pest tests for Laravel
|
|
|
100
112
|
php-coder: 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.
|
|
101
113
|
php-debugging: 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'.
|
|
102
114
|
php-service: Use when the user says 'create service', 'new service class', or needs a PHP service following SOLID principles with proper DI and repository usage.
|
|
115
|
+
playwright-architect: Use when shaping a Playwright suite — locator strategy, Page Object boundaries, fixture composition, flake-prevention architecture, CI-vs-local split — even on 'design our E2E tests'.
|
|
103
116
|
playwright-testing: Use when writing Playwright E2E tests — browser automation, visual regression testing, Page Objects, fixtures, and reliable test patterns.
|
|
117
|
+
po-discovery: Use when shaping a fuzzy product ask into a refined backlog item — problem framing, user-story rewrite, AC tightening — even if the user just says 'help me write this ticket'.
|
|
104
118
|
project-analysis-core: Use for the universal deep-analysis workflow: project discovery, version resolution, docs loading, architecture mapping, execution flow, and package research.
|
|
105
119
|
project-analysis-hypothesis-driven: Use when a bug has multiple plausible causes across layers — competing hypotheses, validation loops, evidence-based conclusions — even when the user just says 'why is this happening?'.
|
|
106
120
|
project-analysis-laravel: Use for deep Laravel project analysis: boot flow, request lifecycle, container usage, Eloquent/data flow, async systems, and Laravel-specific failure patterns.
|
|
@@ -122,10 +136,12 @@ readme-writing-package: Use when creating or rewriting a README for a reusable p
|
|
|
122
136
|
receiving-code-review: Use when processing code review feedback (bot or human) before changing anything — triages, verifies, and pushes back with technical reasoning — even when the user just says 'fix the comments'.
|
|
123
137
|
"refine-prompt": Reconstruct a free-form prompt into actionable AC + assumptions + confidence band before the engine plans — '/work \"…\"', 'baue X', 'ist der Prompt klar genug für die Engine?'.
|
|
124
138
|
"refine-ticket": Refine a Jira/Linear ticket before planning — 'refine ticket', 'tighten AC on PROJ-123', 'ist das Ticket klar?' — rewritten ticket, Top-5 risks, persona voices, sub-skills orchestrated, close-prompt.
|
|
139
|
+
release-comms: Use when turning a shipped changelog into a release narrative — value-not-feature framing, audience-segmented surfaces, one source of truth. Triggers on 'announce the release', 'write changelog post'.
|
|
125
140
|
repomix-packer: Use when packaging a codebase to a single AI-friendly file for LLM analysis — local or remote, XML/Markdown/JSON, token counting, gitignore filtering, peer-side `repomix` CLI.
|
|
126
141
|
requesting-code-review: Use when asking for a review or creating a PR — self-review first, frame the right context, test plan included — even when the user just says 'open a PR' or 'ready to merge'.
|
|
127
142
|
review-routing: Use when preparing a PR description, suggesting reviewers, or flagging risk — produces owner-mapped roles plus historical bug-pattern matches from project-local YAML.
|
|
128
143
|
rice-prioritization: Use when ranking competing initiatives for a roadmap, breaking a tie between two features, or auditing a backlog for hidden low-value work via Reach × Impact × Confidence ÷ Effort.
|
|
144
|
+
risk-officer: Use when surfacing and prioritising risk before commit — blast-radius framing, mitigations, residual-risk verdict — even if the user just says 'what could go wrong here?'.
|
|
129
145
|
roadmap-management: Use when the user says "create roadmap", "show roadmap", or "execute roadmap". Creates, reads, and manages roadmap files with phase tracking.
|
|
130
146
|
roadmap-writing: Use when authoring or rewriting a roadmap in agents/roadmaps/ — phase prose, goal sentence, acceptance criteria, council notes — even when the user just says 'write a plan for X' or 'draft a roadmap'.
|
|
131
147
|
rtk-output-filtering: Use when running verbose CLI commands — wraps them with rtk (Rust Token Killer) for 60-90% token savings. Covers installation, configuration, and usage patterns.
|
|
@@ -141,8 +157,11 @@ skill-management: Use when compressing, decompressing, refactoring, or improving
|
|
|
141
157
|
skill-reviewer: Use when reviewing, auditing, or optimizing skills — validates against the 7 Skill Killers checklist and produces fix recommendations.
|
|
142
158
|
skill-writing: Use when deciding 'should this be a skill or a rule?', creating/improving/reviewing agent skills, SKILL.md frontmatter, or procedure sections — even without saying 'skill-writing'.
|
|
143
159
|
sql-writing: Use when writing raw SQL — MariaDB/MySQL syntax, parameterization, raw migrations, seeders with `DB::statement` — even when the user just pastes a query and asks 'why is this slow' without naming SQL.
|
|
144
|
-
|
|
160
|
+
stakeholder-tradeoff: Use when stakeholders pull a decision in different directions — frames each lens, builds a trade-off matrix, surfaces the cost of every choice — even if the user just says 'PO and ops disagree'.
|
|
161
|
+
subagent-orchestration: Use when orchestrating implementer/judge subagents — seven modes (do-and-judge ±two-stage, do-in-steps/parallel/worktrees, do-competitively, judge-with-debate) — models from .agent-settings.yml.
|
|
145
162
|
systematic-debugging: Use when hitting a bug, test failure, crash, or unexpected behavior — enforces reproduce → isolate → hypothesize → verify before any fix — even when the user just says 'this is broken' or 'quick fix'.
|
|
163
|
+
tailwind-engineer: Use when writing or reviewing Tailwind CSS — utility-first, design-token discipline, no inline-style drift, responsive variants, dark mode — even on 'style this' or 'mach das hübsch'.
|
|
164
|
+
tech-debt-tracker: Use when surfacing tech debt as trackable items — interest-vs-principal framing, prioritisation by carrying cost, repayment plan — even if the user just says 'this codebase is a mess'.
|
|
146
165
|
technical-specification: Use when the user says "write a spec", "create RFC", "write a PRD", or "document this decision". Writes technical specifications, PRDs, RFCs, and ADRs with clear structure.
|
|
147
166
|
terraform: Use when writing Terraform — AWS modules, resources, variables, outputs, remote state — even when the user just says 'provision this infra' or 'add an S3 bucket' without naming Terraform.
|
|
148
167
|
terragrunt: Use when working with Terragrunt — DRY multi-env configs, module dependencies, remote state orchestration — even when the user just says 'deploy this to staging and prod' without naming Terragrunt.
|
|
@@ -152,10 +171,12 @@ testing-anti-patterns: Use BEFORE writing or changing tests, adding mocks, or pu
|
|
|
152
171
|
threat-modeling: Use when adding auth, webhooks, uploads, queues, secrets, tenant boundaries, or public endpoints — produces trust boundaries + abuse cases mapped to files, BEFORE implementation.
|
|
153
172
|
token-optimizer: Use BEFORE any verbose CLI run, large file read, doc conversion, or near-context handoff — single decision tree keyed by intent that cites the canonical token-saving asset. Consult before the action.
|
|
154
173
|
traefik: Use when setting up Traefik as a local reverse proxy — real domains on 127.0.0.1, trusted HTTPS via mkcert, automatic service discovery, and multi-project routing.
|
|
174
|
+
ui-component-architect: Use when shaping a UI component tree — composition vs inheritance, slot patterns, prop API design, controlled vs uncontrolled, polymorphic — even on 'split this component'.
|
|
155
175
|
unit-economics-modeling: Use when modeling CAC, LTV, gross-margin payback, or contribution margin per customer — for SaaS, marketplace, or transactional businesses.
|
|
156
176
|
universal-project-analysis: ONLY when user explicitly requests: full project analysis, deep codebase audit, or comprehensive architecture review. Routes to core and framework-specific analysis skills.
|
|
157
177
|
upstream-contribute: Use when a learning, new skill, rule improvement, or bug fix from a consumer project should be contributed back to the shared agent-config package.
|
|
158
178
|
using-git-worktrees: Use when starting parallel work in isolation from the current branch — spawn a git worktree with ignore-safety checks and a clean test baseline — even when the user says 'try this on the side'.
|
|
159
179
|
"validate-feature-fit": Validate whether a feature request fits the existing codebase — check for duplicates, contradictions, scope creep, and architectural misfit
|
|
160
180
|
verify-completion-evidence: Use when claiming 'done', suggesting a commit, push, or PR — runs the evidence gate so completion claims come from fresh output in this message, not memory or earlier runs.
|
|
181
|
+
voc-extract: Use when extracting Voice-of-Customer themes from existing artefacts — GH issues, PR threads, Sentry patterns. Triggers on 'what are users saying', 'recurring complaints', 'top themes'.
|
|
161
182
|
websocket: Use when building real-time features — WebSocket broadcasting, live updates, presence channels, connection state — even when the user just says 'push this to the client live'.
|
package/package.json
CHANGED
package/scripts/install
CHANGED
|
@@ -186,12 +186,10 @@ if [[ -z "$SOURCE_DIR" ]]; then
|
|
|
186
186
|
SOURCE_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
187
187
|
fi
|
|
188
188
|
|
|
189
|
-
# Auto-detect target: PROJECT_ROOT env, or derive from
|
|
189
|
+
# Auto-detect target: PROJECT_ROOT env, or derive from node_modules path, else cwd
|
|
190
190
|
if [[ -z "$TARGET_DIR" ]]; then
|
|
191
191
|
if [[ -n "${PROJECT_ROOT:-}" ]]; then
|
|
192
192
|
TARGET_DIR="$PROJECT_ROOT"
|
|
193
|
-
elif [[ "$SOURCE_DIR" == */vendor/event4u/agent-config ]]; then
|
|
194
|
-
TARGET_DIR="$(cd "$SOURCE_DIR/../../.." && pwd)"
|
|
195
193
|
elif [[ "$SOURCE_DIR" == */node_modules/@event4u/agent-config ]]; then
|
|
196
194
|
TARGET_DIR="$(cd "$SOURCE_DIR/../../.." && pwd)"
|
|
197
195
|
elif [[ "$SOURCE_DIR" == */node_modules/*/agent-config ]]; then
|
|
@@ -201,6 +199,30 @@ if [[ -z "$TARGET_DIR" ]]; then
|
|
|
201
199
|
fi
|
|
202
200
|
fi
|
|
203
201
|
|
|
202
|
+
# Source-repo guard: refuse to install into the agent-config dev tree itself.
|
|
203
|
+
# Mirrors packages/create-agent-config/src/install.js — defense-in-depth so a
|
|
204
|
+
# direct `bash scripts/install` from inside the source checkout (without the
|
|
205
|
+
# Node wrapper) cannot corrupt .augment/ symlinks. Override for self-tests:
|
|
206
|
+
# AGENT_CONFIG_ALLOW_SELF_INSTALL=1.
|
|
207
|
+
if [[ "${AGENT_CONFIG_ALLOW_SELF_INSTALL:-0}" != "1" ]]; then
|
|
208
|
+
self_marker=""
|
|
209
|
+
if [[ -d "$TARGET_DIR/.agent-src.uncompressed" ]]; then
|
|
210
|
+
self_marker=".agent-src.uncompressed/"
|
|
211
|
+
elif [[ -f "$TARGET_DIR/package.json" ]] && \
|
|
212
|
+
grep -qE '"name"[[:space:]]*:[[:space:]]*"@event4u/(create-)?agent-config"' "$TARGET_DIR/package.json" 2>/dev/null; then
|
|
213
|
+
self_marker='package.json::name === "@event4u/(create-)agent-config"'
|
|
214
|
+
fi
|
|
215
|
+
if [[ -n "$self_marker" ]]; then
|
|
216
|
+
err "Refusing to install agent-config into its own source checkout."
|
|
217
|
+
echo " Target: $TARGET_DIR" >&2
|
|
218
|
+
echo " Detected: $self_marker" >&2
|
|
219
|
+
echo " Run \`task sync\` to regenerate .agent-src/ + .augment/ from" >&2
|
|
220
|
+
echo " .agent-src.uncompressed/ instead. To force this anyway, set" >&2
|
|
221
|
+
echo " AGENT_CONFIG_ALLOW_SELF_INSTALL=1." >&2
|
|
222
|
+
exit 2
|
|
223
|
+
fi
|
|
224
|
+
fi
|
|
225
|
+
|
|
204
226
|
# Find python3 for the bridges stage (optional until SKIP_BRIDGES=false)
|
|
205
227
|
find_python() {
|
|
206
228
|
local candidate path
|
package/scripts/install.py
CHANGED
|
@@ -97,43 +97,34 @@ def fail(msg: str) -> "None":
|
|
|
97
97
|
# --- Package detection ---
|
|
98
98
|
|
|
99
99
|
def detect_package_root(project_root: Path) -> Path:
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
]
|
|
104
|
-
for path in candidates:
|
|
105
|
-
if path.is_dir():
|
|
106
|
-
return path.resolve()
|
|
100
|
+
npm_path = project_root / "node_modules" / "@event4u" / "agent-config"
|
|
101
|
+
if npm_path.is_dir():
|
|
102
|
+
return npm_path.resolve()
|
|
107
103
|
|
|
108
104
|
# Running from within the package itself (development mode)
|
|
109
105
|
if (project_root / "config" / "profiles" / "minimal.ini").exists():
|
|
110
106
|
return project_root
|
|
111
107
|
|
|
112
|
-
fail(
|
|
108
|
+
fail(
|
|
109
|
+
"Could not find agent-config package. Install via "
|
|
110
|
+
"`npx @event4u/create-agent-config init` or `npm install --save-dev @event4u/agent-config`."
|
|
111
|
+
)
|
|
113
112
|
return project_root # unreachable
|
|
114
113
|
|
|
115
114
|
|
|
116
115
|
def detect_package_type(package_root: Path) -> str:
|
|
117
|
-
|
|
118
|
-
if "vendor" in parts:
|
|
119
|
-
return "composer"
|
|
120
|
-
if "node_modules" in parts:
|
|
116
|
+
if "node_modules" in package_root.parts:
|
|
121
117
|
return "npm"
|
|
122
118
|
return "local"
|
|
123
119
|
|
|
124
120
|
|
|
125
121
|
def detect_package_type_for_project(project_root: Path, package_root: Path) -> str:
|
|
126
122
|
"""Determine package type based on where the package lives relative to the project."""
|
|
127
|
-
composer_path = (project_root / "vendor" / "event4u" / "agent-config").resolve()
|
|
128
123
|
npm_path = (project_root / "node_modules" / "@event4u" / "agent-config").resolve()
|
|
129
124
|
package_resolved = package_root.resolve()
|
|
130
125
|
|
|
131
|
-
if package_resolved ==
|
|
132
|
-
|
|
133
|
-
return "composer"
|
|
134
|
-
if package_resolved == npm_path or npm_path.exists():
|
|
135
|
-
if package_resolved == npm_path:
|
|
136
|
-
return "npm"
|
|
126
|
+
if package_resolved == npm_path:
|
|
127
|
+
return "npm"
|
|
137
128
|
return detect_package_type(package_root)
|
|
138
129
|
|
|
139
130
|
|
|
@@ -446,7 +437,6 @@ def ensure_agent_settings(project_root: Path, package_root: Path, profile: str,
|
|
|
446
437
|
|
|
447
438
|
def ensure_vscode_bridge(project_root: Path, package_type: str, force: bool) -> None:
|
|
448
439
|
plugin_paths = {
|
|
449
|
-
"composer": "./vendor/event4u/agent-config/plugin/agent-config",
|
|
450
440
|
"npm": "./node_modules/@event4u/agent-config/plugin/agent-config",
|
|
451
441
|
}
|
|
452
442
|
plugin_path = plugin_paths.get(package_type, "./plugin/agent-config")
|
|
@@ -1404,7 +1394,7 @@ def main(argv: list[str]) -> int:
|
|
|
1404
1394
|
print()
|
|
1405
1395
|
print(" Next steps:")
|
|
1406
1396
|
print(" • Commit .agent-settings.yml and bridge files to your repo")
|
|
1407
|
-
print(" • New team members
|
|
1397
|
+
print(" • New team members run `npx @event4u/create-agent-config init` — done")
|
|
1408
1398
|
print(" • Inspect hook coverage: ./agent-config hooks:status")
|
|
1409
1399
|
print(" • Full walkthrough: https://github.com/event4u-app/agent-config/blob/main/docs/getting-started.md")
|
|
1410
1400
|
print()
|
package/scripts/install.sh
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
# install.sh — Agent-config payload sync (one of two installer stages).
|
|
3
3
|
#
|
|
4
|
-
# Reads from
|
|
5
|
-
#
|
|
6
|
-
#
|
|
4
|
+
# Reads from the package's .agent-src/ and writes the target project's
|
|
5
|
+
# .augment/ tree: copies rules, symlinks everything else. When
|
|
6
|
+
# augment.rules_use_symlinks: true is set in the target's
|
|
7
7
|
# .agent-settings.yml, rules are symlinked instead of copied.
|
|
8
8
|
# Creates tool-specific directories for Claude Code, Cursor, Cline, Windsurf, Gemini.
|
|
9
9
|
#
|
|
@@ -91,9 +91,6 @@ parse_args() {
|
|
|
91
91
|
if [[ -z "$TARGET_DIR" ]]; then
|
|
92
92
|
if [[ -n "${PROJECT_ROOT:-}" ]]; then
|
|
93
93
|
TARGET_DIR="$PROJECT_ROOT"
|
|
94
|
-
elif [[ "$SOURCE_DIR" == */vendor/event4u/agent-config ]]; then
|
|
95
|
-
# Composer: vendor/event4u/agent-config → project root is 3 levels up
|
|
96
|
-
TARGET_DIR="$(cd "$SOURCE_DIR/../../.." && pwd)"
|
|
97
94
|
elif [[ "$SOURCE_DIR" == */node_modules/@event4u/agent-config ]]; then
|
|
98
95
|
# npm (scoped): node_modules/@event4u/agent-config → project root is 3 levels up
|
|
99
96
|
TARGET_DIR="$(cd "$SOURCE_DIR/../../.." && pwd)"
|
|
@@ -106,13 +103,11 @@ parse_args() {
|
|
|
106
103
|
fi
|
|
107
104
|
fi
|
|
108
105
|
|
|
109
|
-
# Resolve source layout
|
|
106
|
+
# Resolve source layout. .agent-src/ is the only supported source since v2.0.
|
|
110
107
|
if [[ -d "$SOURCE_DIR/.agent-src" ]]; then
|
|
111
108
|
SOURCE_PAYLOAD="$SOURCE_DIR/.agent-src"
|
|
112
|
-
elif [[ -d "$SOURCE_DIR/.augment" ]]; then
|
|
113
|
-
SOURCE_PAYLOAD="$SOURCE_DIR/.augment"
|
|
114
109
|
else
|
|
115
|
-
log_error "Source payload not found: $SOURCE_DIR/.agent-src
|
|
110
|
+
log_error "Source payload not found: $SOURCE_DIR/.agent-src"
|
|
116
111
|
exit 1
|
|
117
112
|
fi
|
|
118
113
|
}
|
|
@@ -706,7 +701,7 @@ ensure_gitignore() {
|
|
|
706
701
|
|
|
707
702
|
# Install the consumer-facing CLI wrapper `./agent-config` at the project
|
|
708
703
|
# root. Gitignored, overwritten on every install, delegates to the master
|
|
709
|
-
# CLI shipped in the package (node_modules or
|
|
704
|
+
# CLI shipped in the package (node_modules) or fetched on demand via npx.
|
|
710
705
|
install_cli_wrapper() {
|
|
711
706
|
local project_root="$1"
|
|
712
707
|
local template="$SOURCE_DIR/templates/agent-config-wrapper.sh"
|