@event4u/agent-config 7.0.2 → 7.2.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/.claude-plugin/marketplace.json +9 -1
- package/CHANGELOG.md +117 -0
- package/README.md +4 -2
- package/dist/agent-src/commands/council/default.md +28 -20
- package/dist/agent-src/commands/evals/fix.json +5 -1
- package/dist/agent-src/commands/fix/comments.md +101 -0
- package/dist/agent-src/commands/fix.md +5 -2
- package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +65 -0
- package/dist/agent-src/contexts/execution/auto-orchestration-activation.md +68 -0
- package/dist/agent-src/contexts/execution/host-capability-manifest.md +68 -0
- package/dist/agent-src/contexts/execution/orchestration-benchmark-gate.md +62 -0
- package/dist/agent-src/contexts/execution/orchestration-telemetry.md +59 -0
- package/dist/agent-src/contexts/execution/roadmap-process-loop.md +8 -3
- package/dist/agent-src/contexts/execution/subagent-response-contract.md +56 -0
- package/dist/agent-src/contexts/execution/subagent-routing.md +57 -0
- package/dist/agent-src/contexts/execution/subagent-spawn-contract.md +54 -0
- package/dist/agent-src/contexts/execution/subagent-steering.md +71 -0
- package/dist/agent-src/contexts/execution/verify-budget.md +50 -0
- package/dist/agent-src/rules/brand-source-of-truth.md +10 -0
- package/dist/agent-src/rules/delegation-policy.md +85 -0
- package/dist/agent-src/rules/design-fidelity.md +98 -0
- package/dist/agent-src/rules/domain-safety-pii.md +22 -0
- package/dist/agent-src/rules/legal-safety-floor.md +182 -0
- package/dist/agent-src/rules/lethal-trifecta-guard.md +25 -22
- package/dist/agent-src/rules/output-discipline.md +85 -0
- package/dist/agent-src/rules/telegraph-speak.md +4 -1
- package/dist/agent-src/rules/token-budget-discipline.md +94 -0
- package/dist/agent-src/scripts/archive_completed_roadmaps.ts +102 -15
- package/dist/agent-src/scripts/update_roadmap_progress.ts +30 -3
- package/dist/agent-src/skills/accessibility-auditor/SKILL.md +20 -5
- package/dist/agent-src/skills/ai-council/SKILL.md +28 -1
- package/dist/agent-src/skills/blade-ui/SKILL.md +9 -0
- package/dist/agent-src/skills/contract-review/SKILL.md +125 -0
- package/dist/agent-src/skills/contract-review/evals/triggers.json +17 -0
- package/dist/agent-src/skills/dashboard-design/SKILL.md +21 -5
- package/dist/agent-src/skills/design-intelligence/SKILL.md +96 -0
- package/dist/agent-src/skills/design-review/SKILL.md +83 -0
- package/dist/agent-src/skills/design-system-capture/SKILL.md +234 -0
- package/dist/agent-src/skills/design-tokens/SKILL.md +1 -0
- package/dist/agent-src/skills/dpa-review/SKILL.md +130 -0
- package/dist/agent-src/skills/dpa-review/evals/triggers.json +17 -0
- package/dist/agent-src/skills/existing-ui-audit/SKILL.md +15 -4
- package/dist/agent-src/skills/fe-design/SKILL.md +98 -16
- package/dist/agent-src/skills/flux/SKILL.md +8 -0
- package/dist/agent-src/skills/iconography/SKILL.md +1 -0
- package/dist/agent-src/skills/laravel/SKILL.md +1 -0
- package/dist/agent-src/skills/legal-intake-triage/SKILL.md +128 -0
- package/dist/agent-src/skills/legal-intake-triage/evals/triggers.json +17 -0
- package/dist/agent-src/skills/legal-practice-profile/SKILL.md +101 -0
- package/dist/agent-src/skills/legal-practice-profile/evals/triggers.json +17 -0
- package/dist/agent-src/skills/livewire/SKILL.md +8 -0
- package/dist/agent-src/skills/nda-triage/SKILL.md +114 -0
- package/dist/agent-src/skills/nda-triage/evals/triggers.json +17 -0
- package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +21 -9
- package/dist/agent-src/skills/reasoning-orchestrator/SKILL.md +3 -1
- package/dist/agent-src/skills/recursive-verification/SKILL.md +186 -0
- package/dist/agent-src/skills/roadmap-management/SKILL.md +17 -0
- package/dist/agent-src/skills/skill-writing/SKILL.md +18 -0
- package/dist/agent-src/skills/subagent-orchestration/SKILL.md +11 -0
- package/dist/agent-src/skills/tailwind-engineer/SKILL.md +17 -7
- package/dist/agent-src/skills/typography-system/SKILL.md +14 -0
- package/dist/agent-src/skills/ui-component-architect/SKILL.md +9 -0
- package/dist/agent-src/templates/agent-settings.md +64 -19
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +362 -43
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +13 -5
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +56 -11
- package/dist/discovery/trust-report.md +7 -5
- package/dist/discovery/workspaces.json +38 -7
- package/dist/mcp/registry-manifest.json +3 -3
- package/dist/router.json +1 -1
- package/dist/server/routes/wizard.js +4 -3
- package/dist/server/routes/wizard.js.map +1 -1
- package/dist/server/schemas/settings.js +23 -0
- package/dist/server/schemas/settings.js.map +1 -1
- package/dist/ui/assets/{index-CoQo90sz.js → index-UjcTG_9O.js} +2 -2
- package/dist/ui/assets/index-UjcTG_9O.js.map +1 -0
- package/dist/ui/index.html +1 -1
- package/docs/RELEASE_STORY_TEMPLATE.md +37 -0
- package/docs/architecture.md +4 -4
- package/docs/benchmark.md +46 -0
- package/docs/catalog.md +18 -6
- package/docs/command-flows.md +7 -1
- package/docs/contracts/ai-council-config.md +17 -10
- package/docs/contracts/audit-log-v1.md +7 -0
- package/docs/contracts/auto-orchestration-v1.md +70 -0
- package/docs/contracts/capability-boundary.md +64 -0
- package/docs/contracts/command-clusters.md +1 -1
- package/docs/contracts/discovery-manifest.schema.json +2 -2
- package/docs/contracts/package-self-orientation.md +3 -0
- package/docs/contracts/subagent-boundary.md +54 -0
- package/docs/decisions/ADR-013-discovery-frontmatter-contract.md +32 -0
- package/docs/decisions/ADR-020-global-only-consumer-scope.md +13 -6
- package/docs/decisions/ADR-049-configuration-trust-boundary.md +11 -1
- package/docs/decisions/ADR-093-ai-council-config-user-global.md +10 -4
- package/docs/decisions/ADR-104-ai-council-config-global-only.md +119 -0
- package/docs/decisions/ADR-105-automatic-subagent-orchestration.md +102 -0
- package/docs/decisions/ADR-106-recursive-verification-benchmark-gate.md +126 -0
- package/docs/decisions/ADR-107-legal-domain-pack-adoption.md +70 -0
- package/docs/decisions/ADR-108-open-source-forever-no-commercial-tier.md +46 -0
- package/docs/decisions/INDEX.md +5 -0
- package/docs/getting-started.md +2 -2
- package/docs/guidelines/agent-infra/domain-eval-anti-pattern.md +53 -0
- package/docs/guidelines/agent-infra/domain-pack-architecture.md +56 -0
- package/docs/guidelines/design-antipatterns-triggers.json +17 -0
- package/docs/guidelines/design-antipatterns.md +170 -0
- package/docs/guidelines/design-modes.md +97 -0
- package/package.json +1 -1
- package/src/config/agent-settings.template.yml +103 -3
- package/src/config/discovery/packs.yml +24 -0
- package/src/config/discovery/workspaces.yml +7 -0
- package/src/scripts/_lib/auto_dispatch.ts +95 -0
- package/src/scripts/_lib/host_capability.ts +59 -0
- package/src/scripts/_lib/orchestration_gate.ts +98 -0
- package/src/scripts/_lib/subagent_bundle.ts +154 -0
- package/src/scripts/_lib/subagent_response.ts +82 -0
- package/src/scripts/_lib/subagent_routing.ts +81 -0
- package/src/scripts/_lib/subagent_spawn.ts +97 -0
- package/src/scripts/_lib/subagent_steering.ts +64 -0
- package/src/scripts/_lib/verify_budget.ts +54 -0
- package/src/scripts/ai_council/advisors.ts +4 -2
- package/src/scripts/ai_council/clients.ts +7 -1
- package/src/scripts/ai_council/config.ts +22 -17
- package/src/scripts/bench_ab_v2_run.ts +127 -0
- package/src/scripts/bench_ab_v2_stats.ts +39 -0
- package/src/scripts/check_council_config_location.ts +6 -5
- package/src/scripts/check_trunk_drift.ts +67 -0
- package/src/scripts/lint_design_quality.ts +321 -0
- package/src/scripts/lint_discovery_vocabulary.ts +6 -0
- package/src/scripts/lint_framework_leakage_allowlist.json +21 -0
- package/src/scripts/lint_legal_pack.ts +197 -0
- package/src/scripts/lint_output_slop.ts +223 -0
- package/src/scripts/lint_pack_risk_class.ts +79 -0
- package/src/scripts/probe_projection_fidelity.ts +7 -1
- package/src/scripts/schemas/agent-settings.schema.json +23 -0
- package/src/scripts/schemas/skill.schema.json +5 -0
- package/src/scripts/skill_linter.ts +3 -0
- package/dist/ui/assets/index-CoQo90sz.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
29d573cb1b9283273038be07a64e0d4053826fb3d0ddacb0cd2dd08a8e7fc206 discovery-manifest.json
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Discovery Manifest — Summary
|
|
2
2
|
|
|
3
|
-
- Generated: `2026-06-
|
|
3
|
+
- Generated: `2026-06-24T20:56:10Z`
|
|
4
4
|
- Scanner: `47c9a32fb265`
|
|
5
|
-
- Artefacts: **
|
|
5
|
+
- Artefacts: **514**
|
|
6
6
|
- Unassigned: **0**
|
|
7
7
|
|
|
8
8
|
## `engineering` — Engineering
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
|
|
12
12
|
| Pack | Artefacts |
|
|
13
13
|
|---|---|
|
|
14
|
-
| `engineering-base` — Engineering Base |
|
|
14
|
+
| `engineering-base` — Engineering Base | 96 |
|
|
15
15
|
| `git` — Git | 4 |
|
|
16
16
|
| `php` — PHP | 6 |
|
|
17
17
|
| `laravel` — Laravel | 25 |
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
| `react` — React | 3 |
|
|
22
22
|
| `nextjs` — Next.js | 2 |
|
|
23
23
|
| `python` — Python | 1 |
|
|
24
|
-
| `frontend-design` — Frontend Design |
|
|
24
|
+
| `frontend-design` — Frontend Design | 6 |
|
|
25
25
|
| `brand` — Brand | 13 |
|
|
26
26
|
| `analysis-workbench` — Analysis Workbench | 10 |
|
|
27
27
|
|
|
@@ -89,13 +89,21 @@
|
|
|
89
89
|
|---|---|
|
|
90
90
|
| `construction` — Construction | 0 |
|
|
91
91
|
|
|
92
|
+
## `legal-review-prep` — Legal Review Prep
|
|
93
|
+
|
|
94
|
+
> In-house legal review-prep — EU/DE-scoped contract/NDA/DPA review and triage to PREPARE for attorney review. Not legal advice; opt-in + council-gated.
|
|
95
|
+
|
|
96
|
+
| Pack | Artefacts |
|
|
97
|
+
|---|---|
|
|
98
|
+
| `legal-review-prep` — Legal Review Prep | 6 |
|
|
99
|
+
|
|
92
100
|
## `agent-config-maintainer` — Maintainer
|
|
93
101
|
|
|
94
102
|
> Skills/rules/commands that maintain this package.
|
|
95
103
|
|
|
96
104
|
| Pack | Artefacts |
|
|
97
105
|
|---|---|
|
|
98
|
-
| `meta` — Meta |
|
|
106
|
+
| `meta` — Meta | 247 |
|
|
99
107
|
| `memory` — Memory | 9 |
|
|
100
108
|
| `analytics` — Analytics | 4 |
|
|
101
109
|
| `product-reasoning` — Product Reasoning | 11 |
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
{
|
|
2
|
-
"checksum": "sha256:
|
|
3
|
-
"generated_at": "2026-06-
|
|
2
|
+
"checksum": "sha256:7ac282ee829a39d0fd4f16c8deaca3f449ff9ebe101e8decba1549453156a638",
|
|
3
|
+
"generated_at": "2026-06-24T20:56:10Z",
|
|
4
4
|
"packs": [
|
|
5
5
|
{
|
|
6
6
|
"always_on": false,
|
|
7
|
-
"artefact_count":
|
|
7
|
+
"artefact_count": 96,
|
|
8
8
|
"artefacts": [
|
|
9
9
|
"src/domains/engineering-base/mission/upgrade/command.md",
|
|
10
10
|
"src/rules/commit-conventions.md",
|
|
11
11
|
"src/rules/commit-policy.md",
|
|
12
|
+
"src/rules/delegation-policy.md",
|
|
13
|
+
"src/rules/design-fidelity.md",
|
|
12
14
|
"src/rules/docker-commands.md",
|
|
13
15
|
"src/rules/downstream-changes.md",
|
|
14
16
|
"src/rules/engineering-safety-floor.md",
|
|
@@ -18,6 +20,7 @@
|
|
|
18
20
|
"src/rules/linked-projects-onboarding-gate.md",
|
|
19
21
|
"src/rules/minimal-safe-diff.md",
|
|
20
22
|
"src/rules/non-destructive-by-default.md",
|
|
23
|
+
"src/rules/output-discipline.md",
|
|
21
24
|
"src/rules/scope-control.md",
|
|
22
25
|
"src/rules/security-sensitive-stop.md",
|
|
23
26
|
"src/rules/source-discovery-gate.md",
|
|
@@ -101,14 +104,14 @@
|
|
|
101
104
|
"src/skills/verify-completion-evidence/SKILL.md"
|
|
102
105
|
],
|
|
103
106
|
"by_lifecycle": {
|
|
104
|
-
"active":
|
|
107
|
+
"active": 95,
|
|
105
108
|
"archived": 0,
|
|
106
109
|
"deprecated": 0,
|
|
107
110
|
"experimental": 1
|
|
108
111
|
},
|
|
109
112
|
"by_trust_level": {
|
|
110
113
|
"advisory": 0,
|
|
111
|
-
"core":
|
|
114
|
+
"core": 94,
|
|
112
115
|
"experimental": 1,
|
|
113
116
|
"professional": 1,
|
|
114
117
|
"restricted": 0
|
|
@@ -518,23 +521,24 @@
|
|
|
518
521
|
},
|
|
519
522
|
{
|
|
520
523
|
"always_on": false,
|
|
521
|
-
"artefact_count":
|
|
524
|
+
"artefact_count": 6,
|
|
522
525
|
"artefacts": [
|
|
523
526
|
"src/rules/icon-consistency.md",
|
|
524
527
|
"src/skills/design-intelligence/SKILL.md",
|
|
528
|
+
"src/skills/design-system-capture/SKILL.md",
|
|
525
529
|
"src/skills/design-tokens/SKILL.md",
|
|
526
530
|
"src/skills/iconography/SKILL.md",
|
|
527
531
|
"src/skills/typography-system/SKILL.md"
|
|
528
532
|
],
|
|
529
533
|
"by_lifecycle": {
|
|
530
|
-
"active":
|
|
534
|
+
"active": 6,
|
|
531
535
|
"archived": 0,
|
|
532
536
|
"deprecated": 0,
|
|
533
537
|
"experimental": 0
|
|
534
538
|
},
|
|
535
539
|
"by_trust_level": {
|
|
536
540
|
"advisory": 0,
|
|
537
|
-
"core":
|
|
541
|
+
"core": 2,
|
|
538
542
|
"experimental": 0,
|
|
539
543
|
"professional": 4,
|
|
540
544
|
"restricted": 0
|
|
@@ -1036,6 +1040,44 @@
|
|
|
1036
1040
|
"construction"
|
|
1037
1041
|
]
|
|
1038
1042
|
},
|
|
1043
|
+
{
|
|
1044
|
+
"always_on": false,
|
|
1045
|
+
"artefact_count": 6,
|
|
1046
|
+
"artefacts": [
|
|
1047
|
+
"src/rules/legal-safety-floor.md",
|
|
1048
|
+
"src/skills/contract-review/SKILL.md",
|
|
1049
|
+
"src/skills/dpa-review/SKILL.md",
|
|
1050
|
+
"src/skills/legal-intake-triage/SKILL.md",
|
|
1051
|
+
"src/skills/legal-practice-profile/SKILL.md",
|
|
1052
|
+
"src/skills/nda-triage/SKILL.md"
|
|
1053
|
+
],
|
|
1054
|
+
"by_lifecycle": {
|
|
1055
|
+
"active": 6,
|
|
1056
|
+
"archived": 0,
|
|
1057
|
+
"deprecated": 0,
|
|
1058
|
+
"experimental": 0
|
|
1059
|
+
},
|
|
1060
|
+
"by_trust_level": {
|
|
1061
|
+
"advisory": 6,
|
|
1062
|
+
"core": 0,
|
|
1063
|
+
"experimental": 0,
|
|
1064
|
+
"professional": 0,
|
|
1065
|
+
"restricted": 0
|
|
1066
|
+
},
|
|
1067
|
+
"cluster": null,
|
|
1068
|
+
"description": "NOT LEGAL ADVICE — a research/drafting aid to PREPARE for attorney review, not a substitute for a lawyer. EU/DE-scoped contract/NDA/DPA review and triage, procedure-only (no default legal positions); general information + templates only, never individual-case examination; every output a draft for attorney review. Opt-in + council-gated. See LEGAL_NOTICE.md.",
|
|
1069
|
+
"domain": "legal",
|
|
1070
|
+
"id": "legal-review-prep",
|
|
1071
|
+
"label": "Legal Review Prep",
|
|
1072
|
+
"requires": [],
|
|
1073
|
+
"requires_hint": [],
|
|
1074
|
+
"size_class": "medium",
|
|
1075
|
+
"suggests": [],
|
|
1076
|
+
"trust_level_default": "experimental",
|
|
1077
|
+
"workspaces": [
|
|
1078
|
+
"legal-review-prep"
|
|
1079
|
+
]
|
|
1080
|
+
},
|
|
1039
1081
|
{
|
|
1040
1082
|
"always_on": false,
|
|
1041
1083
|
"artefact_count": 10,
|
|
@@ -1154,7 +1196,7 @@
|
|
|
1154
1196
|
},
|
|
1155
1197
|
{
|
|
1156
1198
|
"always_on": true,
|
|
1157
|
-
"artefact_count":
|
|
1199
|
+
"artefact_count": 247,
|
|
1158
1200
|
"artefacts": [
|
|
1159
1201
|
"src/agent-src/templates/agents/proposal.example.md",
|
|
1160
1202
|
"src/domains/ai-video/image/analyse/command.md",
|
|
@@ -1180,6 +1222,7 @@
|
|
|
1180
1222
|
"src/domains/engineering-base/feature/roadmap/command.md",
|
|
1181
1223
|
"src/domains/engineering-base/fix/ci/command.md",
|
|
1182
1224
|
"src/domains/engineering-base/fix/command.md",
|
|
1225
|
+
"src/domains/engineering-base/fix/comments/command.md",
|
|
1183
1226
|
"src/domains/engineering-base/fix/portability/command.md",
|
|
1184
1227
|
"src/domains/engineering-base/fix/pr-comments/command.md",
|
|
1185
1228
|
"src/domains/engineering-base/fix/refs/command.md",
|
|
@@ -1331,6 +1374,7 @@
|
|
|
1331
1374
|
"src/rules/source-confidentiality.md",
|
|
1332
1375
|
"src/rules/source-of-truth.md",
|
|
1333
1376
|
"src/rules/telegraph-speak.md",
|
|
1377
|
+
"src/rules/token-budget-discipline.md",
|
|
1334
1378
|
"src/rules/token-efficiency.md",
|
|
1335
1379
|
"src/rules/token-optimizer-maintenance.md",
|
|
1336
1380
|
"src/rules/tool-safety.md",
|
|
@@ -1382,6 +1426,7 @@
|
|
|
1382
1426
|
"src/skills/readme-writing-package/SKILL.md",
|
|
1383
1427
|
"src/skills/readme-writing/SKILL.md",
|
|
1384
1428
|
"src/skills/reasoning-orchestrator/SKILL.md",
|
|
1429
|
+
"src/skills/recursive-verification/SKILL.md",
|
|
1385
1430
|
"src/skills/refine-prompt/SKILL.md",
|
|
1386
1431
|
"src/skills/repomix-packer/SKILL.md",
|
|
1387
1432
|
"src/skills/review-routing/SKILL.md",
|
|
@@ -1402,14 +1447,14 @@
|
|
|
1402
1447
|
"src/skills/verify-repair-loop/SKILL.md"
|
|
1403
1448
|
],
|
|
1404
1449
|
"by_lifecycle": {
|
|
1405
|
-
"active":
|
|
1450
|
+
"active": 246,
|
|
1406
1451
|
"archived": 0,
|
|
1407
1452
|
"deprecated": 0,
|
|
1408
1453
|
"experimental": 1
|
|
1409
1454
|
},
|
|
1410
1455
|
"by_trust_level": {
|
|
1411
1456
|
"advisory": 0,
|
|
1412
|
-
"core":
|
|
1457
|
+
"core": 246,
|
|
1413
1458
|
"experimental": 1,
|
|
1414
1459
|
"professional": 0,
|
|
1415
1460
|
"restricted": 0
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
# Discovery — Trust Report
|
|
2
2
|
|
|
3
|
-
- Generated: `2026-06-
|
|
4
|
-
- Workspaces tracked: **
|
|
5
|
-
- Human-review-required artefacts: **
|
|
3
|
+
- Generated: `2026-06-24T20:56:10Z`
|
|
4
|
+
- Workspaces tracked: **9**
|
|
5
|
+
- Human-review-required artefacts: **3**
|
|
6
6
|
|
|
7
7
|
## Trust levels by workspace
|
|
8
8
|
|
|
9
9
|
| Workspace | core | professional | experimental | advisory | restricted |
|
|
10
10
|
|---|---|---|---|---|---|
|
|
11
|
-
| `agent-config-maintainer` |
|
|
12
|
-
| `engineering` |
|
|
11
|
+
| `agent-config-maintainer` | 275 | 0 | 2 | 0 | 0 |
|
|
12
|
+
| `engineering` | 105 | 55 | 1 | 0 | 0 |
|
|
13
13
|
| `finance` | 2 | 3 | 0 | 1 | 0 |
|
|
14
14
|
| `founder` | 7 | 0 | 0 | 1 | 0 |
|
|
15
15
|
| `gtm` | 0 | 12 | 0 | 0 | 0 |
|
|
16
|
+
| `legal-review-prep` | 0 | 0 | 0 | 6 | 0 |
|
|
16
17
|
| `ops` | 0 | 8 | 0 | 0 | 0 |
|
|
17
18
|
| `product` | 0 | 15 | 0 | 0 | 0 |
|
|
18
19
|
| `small-business` | 6 | 0 | 18 | 0 | 0 |
|
|
@@ -22,5 +23,6 @@
|
|
|
22
23
|
| Path | Workspaces | Trust |
|
|
23
24
|
|---|---|---|
|
|
24
25
|
| `src/rules/finance-safety-floor.md` | finance | advisory |
|
|
26
|
+
| `src/rules/legal-safety-floor.md` | legal-review-prep | advisory |
|
|
25
27
|
| `src/rules/strategy-safety-floor.md` | founder | advisory |
|
|
26
28
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
|
-
"checksum": "sha256:
|
|
3
|
-
"generated_at": "2026-06-
|
|
2
|
+
"checksum": "sha256:7ac282ee829a39d0fd4f16c8deaca3f449ff9ebe101e8decba1549453156a638",
|
|
3
|
+
"generated_at": "2026-06-24T20:56:10Z",
|
|
4
4
|
"scanner_version": "47c9a32fb265",
|
|
5
5
|
"workspaces": [
|
|
6
6
|
{
|
|
7
|
-
"artefact_count":
|
|
7
|
+
"artefact_count": 170,
|
|
8
8
|
"default_packs": [
|
|
9
9
|
"engineering-base",
|
|
10
10
|
"git"
|
|
@@ -27,11 +27,13 @@
|
|
|
27
27
|
],
|
|
28
28
|
"packs": [
|
|
29
29
|
{
|
|
30
|
-
"artefact_count":
|
|
30
|
+
"artefact_count": 96,
|
|
31
31
|
"artefacts": [
|
|
32
32
|
"src/domains/engineering-base/mission/upgrade/command.md",
|
|
33
33
|
"src/rules/commit-conventions.md",
|
|
34
34
|
"src/rules/commit-policy.md",
|
|
35
|
+
"src/rules/delegation-policy.md",
|
|
36
|
+
"src/rules/design-fidelity.md",
|
|
35
37
|
"src/rules/docker-commands.md",
|
|
36
38
|
"src/rules/downstream-changes.md",
|
|
37
39
|
"src/rules/engineering-safety-floor.md",
|
|
@@ -41,6 +43,7 @@
|
|
|
41
43
|
"src/rules/linked-projects-onboarding-gate.md",
|
|
42
44
|
"src/rules/minimal-safe-diff.md",
|
|
43
45
|
"src/rules/non-destructive-by-default.md",
|
|
46
|
+
"src/rules/output-discipline.md",
|
|
44
47
|
"src/rules/scope-control.md",
|
|
45
48
|
"src/rules/security-sensitive-stop.md",
|
|
46
49
|
"src/rules/source-discovery-gate.md",
|
|
@@ -224,10 +227,11 @@
|
|
|
224
227
|
"id": "python"
|
|
225
228
|
},
|
|
226
229
|
{
|
|
227
|
-
"artefact_count":
|
|
230
|
+
"artefact_count": 6,
|
|
228
231
|
"artefacts": [
|
|
229
232
|
"src/rules/icon-consistency.md",
|
|
230
233
|
"src/skills/design-intelligence/SKILL.md",
|
|
234
|
+
"src/skills/design-system-capture/SKILL.md",
|
|
231
235
|
"src/skills/design-tokens/SKILL.md",
|
|
232
236
|
"src/skills/iconography/SKILL.md",
|
|
233
237
|
"src/skills/typography-system/SKILL.md"
|
|
@@ -536,7 +540,31 @@
|
|
|
536
540
|
]
|
|
537
541
|
},
|
|
538
542
|
{
|
|
539
|
-
"artefact_count":
|
|
543
|
+
"artefact_count": 6,
|
|
544
|
+
"default_packs": [
|
|
545
|
+
"legal-review-prep"
|
|
546
|
+
],
|
|
547
|
+
"description": "In-house legal review-prep — EU/DE-scoped contract/NDA/DPA review and triage to PREPARE for attorney review. Not legal advice; opt-in + council-gated.",
|
|
548
|
+
"id": "legal-review-prep",
|
|
549
|
+
"label": "Legal Review Prep",
|
|
550
|
+
"optional_packs": [],
|
|
551
|
+
"packs": [
|
|
552
|
+
{
|
|
553
|
+
"artefact_count": 6,
|
|
554
|
+
"artefacts": [
|
|
555
|
+
"src/rules/legal-safety-floor.md",
|
|
556
|
+
"src/skills/contract-review/SKILL.md",
|
|
557
|
+
"src/skills/dpa-review/SKILL.md",
|
|
558
|
+
"src/skills/legal-intake-triage/SKILL.md",
|
|
559
|
+
"src/skills/legal-practice-profile/SKILL.md",
|
|
560
|
+
"src/skills/nda-triage/SKILL.md"
|
|
561
|
+
],
|
|
562
|
+
"id": "legal-review-prep"
|
|
563
|
+
}
|
|
564
|
+
]
|
|
565
|
+
},
|
|
566
|
+
{
|
|
567
|
+
"artefact_count": 271,
|
|
540
568
|
"default_packs": [
|
|
541
569
|
"meta",
|
|
542
570
|
"memory",
|
|
@@ -549,7 +577,7 @@
|
|
|
549
577
|
"optional_packs": [],
|
|
550
578
|
"packs": [
|
|
551
579
|
{
|
|
552
|
-
"artefact_count":
|
|
580
|
+
"artefact_count": 247,
|
|
553
581
|
"artefacts": [
|
|
554
582
|
"src/agent-src/templates/agents/proposal.example.md",
|
|
555
583
|
"src/domains/ai-video/image/analyse/command.md",
|
|
@@ -575,6 +603,7 @@
|
|
|
575
603
|
"src/domains/engineering-base/feature/roadmap/command.md",
|
|
576
604
|
"src/domains/engineering-base/fix/ci/command.md",
|
|
577
605
|
"src/domains/engineering-base/fix/command.md",
|
|
606
|
+
"src/domains/engineering-base/fix/comments/command.md",
|
|
578
607
|
"src/domains/engineering-base/fix/portability/command.md",
|
|
579
608
|
"src/domains/engineering-base/fix/pr-comments/command.md",
|
|
580
609
|
"src/domains/engineering-base/fix/refs/command.md",
|
|
@@ -726,6 +755,7 @@
|
|
|
726
755
|
"src/rules/source-confidentiality.md",
|
|
727
756
|
"src/rules/source-of-truth.md",
|
|
728
757
|
"src/rules/telegraph-speak.md",
|
|
758
|
+
"src/rules/token-budget-discipline.md",
|
|
729
759
|
"src/rules/token-efficiency.md",
|
|
730
760
|
"src/rules/token-optimizer-maintenance.md",
|
|
731
761
|
"src/rules/tool-safety.md",
|
|
@@ -777,6 +807,7 @@
|
|
|
777
807
|
"src/skills/readme-writing-package/SKILL.md",
|
|
778
808
|
"src/skills/readme-writing/SKILL.md",
|
|
779
809
|
"src/skills/reasoning-orchestrator/SKILL.md",
|
|
810
|
+
"src/skills/recursive-verification/SKILL.md",
|
|
780
811
|
"src/skills/refine-prompt/SKILL.md",
|
|
781
812
|
"src/skills/repomix-packer/SKILL.md",
|
|
782
813
|
"src/skills/review-routing/SKILL.md",
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"discovery": {
|
|
3
|
-
"artefact_count":
|
|
3
|
+
"artefact_count": 514,
|
|
4
4
|
"scanner_version": "47c9a32fb265"
|
|
5
5
|
},
|
|
6
|
-
"generated_at": "2026-06-
|
|
6
|
+
"generated_at": "2026-06-24",
|
|
7
7
|
"package": {
|
|
8
8
|
"description": "Universal AI Agent OS \u2014 audited skills, governance rules, commands, and templates for AI coding tools (Claude Code, Cursor, Windsurf, Copilot).",
|
|
9
9
|
"homepage": "https://github.com/event4u-app/agent-config#readme",
|
|
10
10
|
"name": "@event4u/agent-config",
|
|
11
11
|
"repository": "https://github.com/event4u-app/agent-config",
|
|
12
|
-
"version": "7.0
|
|
12
|
+
"version": "7.2.0"
|
|
13
13
|
},
|
|
14
14
|
"registries": [
|
|
15
15
|
{
|
package/dist/router.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"schema_version":1,"kernel":["agent-authority","ask-when-uncertain","commit-policy","direct-answers","language-and-tone","no-cheap-questions","non-destructive-by-default","scope-control","user-interrupt-priority","verify-before-complete"],"tier_1":[{"id":"architecture","triggers":[{"keyword":"controller"},{"keyword":"service"},{"keyword":"module"},{"intent":"structural decision"}],"routes_to":[]},{"id":"artifact-engagement-recording","triggers":[{"phrase":"/implement-ticket"},{"phrase":"/work"},{"keyword":"telemetry"}],"routes_to":["contract:artifact-engagement-flow"]},{"id":"autonomous-execution","triggers":[{"intent":"trivial workflow question"},{"intent":"autonomy mode"},{"keyword":"personal.autonomy"}],"routes_to":[]},{"id":"command-suggestion-policy","triggers":[{"phrase":"free-form prompt"},{"phrase":"command suggestion"}],"routes_to":["contract:command-suggestion-flow"]},{"id":"context-hygiene","triggers":[{"intent":"long conversation"},{"intent":"tool loop"},{"intent":"fresh chat"},{"keyword":"3-failure"}],"routes_to":[]},{"id":"copilot-routing","triggers":[{"keyword":"copilot"},{"phrase":"copilot-instructions"},{"phrase":"copilot pr review"}],"routes_to":["skill:copilot-config"]},{"id":"devcontainer-routing","triggers":[{"keyword":"devcontainer"},{"keyword":"codespaces"},{"keyword":"codespace"},{"phrase":"devcontainer.json"}],"routes_to":["skill:devcontainer"]},{"id":"docker-commands","triggers":[{"keyword":"docker"},{"keyword":"artisan"},{"keyword":"composer"},{"phrase":"inside the container"}],"routes_to":["skill:docker"]},{"id":"fast-path-marker-visibility","triggers":[{"keyword":"low-impact council"},{"keyword":"fast-path"},{"keyword":"Resolved via low-impact council"},{"keyword":"low_impact"},{"intent":"low-impact council dispatch"}],"routes_to":[]},{"id":"laravel-routing","triggers":[{"keyword":"laravel"},{"keyword":"artisan"},{"keyword":"eloquent"},{"keyword":"FormRequest"}],"routes_to":["skill:laravel"]},{"id":"low-impact-corpus-privacy-floor","triggers":[{"path_prefix":"agents/decisions/low-impact-decisions"},{"keyword":"low-impact-decisions"},{"keyword":"low-impact corpus"},{"keyword":"learn-low-impact"}],"routes_to":[]},{"id":"no-attribution-footers","triggers":[{"intent":"PR body"},{"intent":"commit message"},{"intent":"Jira comment"},{"keyword":"co-authored"}],"routes_to":[]},{"id":"no-decorative-emojis-in-git-surfaces","triggers":[{"intent":"PR title"},{"intent":"PR body"},{"intent":"commit message"},{"intent":"issue title"},{"intent":"post PR comment"},{"keyword":"gh pr create"},{"keyword":"git commit"}],"routes_to":[]},{"id":"no-roadmap-references","triggers":[{"path_prefix":"agents/roadmaps/"},{"path_prefix":"agents/runtime/council/questions/"},{"path_prefix":"agents/runtime/council/responses/"},{"path_prefix":"agents/runtime/council/sessions/"},{"intent":"link from stable artifact"},{"intent":"link to council artefact"}],"routes_to":["skill:ai-council"]},{"id":"onboarding-gate","triggers":[{"phrase":"first turn"},{"keyword":"onboarding"},{"path_prefix":".agent-settings.yml"}],"routes_to":[]},{"id":"php-coding","triggers":[{"file_pattern":"*.php"},{"keyword":"phpstan"},{"keyword":"ecs"}],"routes_to":["guideline:php/php-coding-patterns"]},{"id":"roadmap-progress-sync","triggers":[{"path_prefix":"agents/roadmaps/"},{"command":"/roadmap:process-step"},{"command":"/roadmap:process-phase"},{"command":"/roadmap:process-full"}],"routes_to":["guideline:agent-infra/roadmap-progress-mechanics"]},{"id":"skill-quality","triggers":[{"path_prefix":".agent-src.uncondensed/skills/"}],"routes_to":["guideline:agent-infra/skill-quality-checklist"]},{"id":"slash-command-routing-policy","triggers":[{"keyword":"/create-pr"},{"keyword":"/commit"},{"keyword":"/fix-ci"},{"phrase":"slash command"}],"routes_to":["skill:command-routing"]},{"id":"source-confidentiality","triggers":[{"path_prefix":"src/skills/"},{"path_prefix":"src/rules/"},{"path_prefix":"src/domains/"},{"path_prefix":"docs/"},{"path_prefix":"agents/evidence/"},{"path_prefix":"agents/roadmaps/"},{"intent":"adopt or harvest from an external repo"},{"intent":"compare against another package"},{"intent":"attribute an idea to an external source"}],"routes_to":[]},{"id":"source-of-truth","triggers":[{"path_prefix":"dist/agent-src/"},{"path_prefix":".augment/"},{"path_prefix":".claude/"},{"path_prefix":".cursor/"}],"routes_to":[]},{"id":"symfony-routing","triggers":[{"keyword":"symfony"},{"keyword":"doctrine"},{"keyword":"twig"},{"keyword":"messenger"}],"routes_to":["skill:symfony-workflow"]},{"id":"telegraph-speak","triggers":[{"intent":"any reply"}],"routes_to":[]},{"id":"user-interaction","triggers":[{"intent":"ask user a question"},{"intent":"numbered options"},{"intent":"summarizing progress"}],"routes_to":[]}],"tier_2":[{"id":"artifact-drafting-protocol","triggers":[{"intent":"create new skill"},{"intent":"create new rule"},{"intent":"create new command"},{"intent":"create new guideline"}],"routes_to":[]},{"id":"augment-edit-discipline","triggers":[{"path_prefix":".augment/"},{"path_prefix":".agent-src.uncondensed/"},{"keyword":"portable"},{"keyword":"rename"},{"keyword":"delete"}],"routes_to":["guideline:augment-portability-patterns","skill:agent-docs-writing"]},{"id":"brand-consistency","triggers":[{"keyword":"brand"},{"keyword":"on-brand"},{"keyword":"off-brand"},{"keyword":"brand voice"},{"keyword":"brand tokens"},{"phrase":"brand consistency"},{"phrase":"on brand"}],"routes_to":[]},{"id":"brand-source-of-truth","triggers":[{"keyword":"brand tokens"},{"keyword":"brand voice"},{"keyword":"brand guide"},{"keyword":"brand profile"},{"phrase":"brand source of truth"}],"routes_to":[]},{"id":"cli-output-handling","triggers":[{"keyword":"git"},{"keyword":"phpstan"},{"keyword":"rector"},{"keyword":"phpunit"},{"keyword":"composer"}],"routes_to":["skill:rtk-output-filtering"]},{"id":"commit-conventions","triggers":[{"keyword":"commit"},{"keyword":"branch"},{"phrase":"conventional commits"}],"routes_to":["skill:conventional-commits-writing"]},{"id":"domain-adoption-policy","triggers":[{"intent":"adopt new domain"},{"intent":"harvest new domain track"},{"intent":"open a domain plate"},{"keyword":"mobile track"},{"keyword":"ml track"},{"keyword":"blockchain track"},{"path_prefix":".agent-src.uncondensed/skills/"}],"routes_to":[]},{"id":"domain-safety-disclaimer","triggers":[{"keyword":"legal brief"},{"keyword":"contract redline"},{"keyword":"terms of service"},{"keyword":"privacy policy"},{"keyword":"diagnosis"},{"keyword":"symptoms"},{"keyword":"dosage"},{"keyword":"medication"},{"keyword":"investment memo"},{"keyword":"valuation"},{"keyword":"DCF"},{"keyword":"tax position"},{"keyword":"strategic recommendation"},{"keyword":"board memo"},{"keyword":"executive summary"},{"phrase":"review this contract"},{"phrase":"is this symptom"},{"phrase":"should I invest"},{"phrase":"what should we do"}],"routes_to":["skill:brand-identity","skill:brand-strategy","skill:contracts-cognition","skill:dcf-modeling","skill:decision-record","skill:privacy-review","skill:scenario-modeling","skill:stakeholder-tradeoff"]},{"id":"domain-safety-pii","triggers":[{"keyword":"support macro"},{"keyword":"ticket response"},{"keyword":"help desk"},{"keyword":"Zendesk"},{"keyword":"Intercom"},{"keyword":"testimonial"},{"keyword":"case study"},{"keyword":"customer story"},{"keyword":"candidate"},{"keyword":"interview notes"},{"keyword":"scorecard"},{"keyword":"rejection email"},{"keyword":"offer letter"},{"keyword":"invoice"},{"keyword":"accounts receivable"},{"keyword":"accounts payable"},{"keyword":"finance memo"},{"keyword":"log"},{"keyword":"logger"},{"keyword":"Sentry"},{"keyword":"Datadog"},{"keyword":"structured log"},{"keyword":"export to CSV"},{"keyword":"data export"},{"keyword":"partner integration"},{"phrase":"draft a response to"},{"phrase":"marketing email featuring"},{"phrase":"draft feedback for"},{"phrase":"log the user"},{"phrase":"send them the spreadsheet"}],"routes_to":["skill:data-handling-judgment","skill:logging-monitoring","skill:privacy-review","skill:secrets-management"]},{"id":"domain-safety-retention","triggers":[{"keyword":"retention policy"},{"keyword":"data retention"},{"keyword":"record retention"},{"keyword":"ticket retention"},{"keyword":"CRM retention"},{"keyword":"delete financial"},{"keyword":"purge invoice"},{"keyword":"DSAR"},{"keyword":"data subject request"},{"keyword":"right to be forgotten"},{"phrase":"how long should we keep"},{"phrase":"when can we delete"},{"phrase":"delete customer data"},{"phrase":"how long do we keep tickets"}],"routes_to":["skill:data-handling-judgment","skill:privacy-review"]},{"id":"downstream-changes","triggers":[{"intent":"after code edit"},{"keyword":"callers"},{"keyword":"imports"},{"keyword":"downstream"}],"routes_to":[]},{"id":"engineering-safety-floor","triggers":[{"keyword":"production"},{"keyword":"deploy"},{"keyword":"migration"},{"keyword":"schema change"},{"keyword":"DROP TABLE"},{"keyword":"TRUNCATE"},{"keyword":"force push"},{"keyword":"rebase main"},{"keyword":"rollback"},{"keyword":"secrets rotation"},{"keyword":"IAM"},{"keyword":"DNS"},{"keyword":"terraform apply"},{"keyword":"kubectl apply"},{"phrase":"ship to prod"},{"phrase":"deploy to production"},{"phrase":"merge to main"},{"phrase":"release this"}],"routes_to":["skill:launch-readiness","skill:threat-modeling"]},{"id":"external-reference-deep-dive","triggers":[{"intent":"look at how X does it"},{"intent":"compare with reference repo"},{"intent":"use as template / vorlage"},{"intent":"wie macht es X"},{"intent":"vergleiche mit Y"},{"intent":"schau dir Z an"},{"intent":"study this competitor"},{"keyword":"github.com/"},{"keyword":"source of truth"},{"phrase":"reference repo"}],"routes_to":[]},{"id":"finance-safety-floor","triggers":[{"keyword":"runway"},{"keyword":"burn"},{"keyword":"valuation"},{"keyword":"DCF"},{"keyword":"IRR"},{"keyword":"MOIC"},{"keyword":"LTV"},{"keyword":"CAC"},{"keyword":"payback"},{"keyword":"sensitivity"},{"keyword":"fundraise"},{"keyword":"term sheet"},{"keyword":"dilution"},{"keyword":"NRR"},{"keyword":"EBITDA"},{"keyword":"free cash flow"},{"phrase":"what's it worth"},{"phrase":"how long do we have"},{"phrase":"should we raise"},{"phrase":"model the scenarios"}],"routes_to":["skill:dcf-modeling","skill:forecasting","skill:runway-cognition","skill:scenario-modeling","skill:unit-economics-modeling"]},{"id":"framework-neutrality-in-generic-skills","triggers":[{"path_prefix":".agent-src.uncondensed/skills/"},{"path_prefix":".agent-src.uncondensed/rules/"},{"path_prefix":".agent-src.uncondensed/commands/"},{"keyword":"FormRequest"},{"keyword":"PHPStan"},{"keyword":"php artisan"},{"keyword":"composer.json"},{"keyword":"Eloquent"},{"keyword":"Pest"},{"keyword":"Blade"},{"keyword":"vendor/bin"},{"keyword":"Artisan"},{"keyword":"Rector"},{"phrase":"every controller"},{"phrase":"all controllers"},{"phrase":"generic skill"}],"routes_to":[]},{"id":"git-history-discipline","triggers":[{"intent":"rebase the branch"},{"intent":"squash commits"},{"intent":"clean up commit history"},{"intent":"fold this into the previous commit"},{"intent":"tidy history after pushing"},{"intent":"reseat the branch base"},{"intent":"exclude these commits from the branch"},{"keyword":"git rebase"},{"keyword":"rebase --onto"},{"keyword":"reset --hard"},{"keyword":"fixup"},{"keyword":"--amend"},{"keyword":"force-push"},{"keyword":"--force-with-lease"},{"keyword":"squash-merge"},{"phrase":"branch diverged"},{"phrase":"pull --rebase failed"},{"phrase":"ahead and behind"},{"phrase":"unexpected commits on the branch"},{"phrase":"commits I did not create"}],"routes_to":["skill:git-workflow"]},{"id":"icon-consistency","triggers":[{"keyword":"icon"},{"keyword":"iconography"},{"keyword":"lucide"},{"keyword":"heroicons"},{"keyword":"icon set"},{"phrase":"icon system"}],"routes_to":[]},{"id":"image-likeness-and-rights","triggers":[{"keyword":"/image:"},{"keyword":"image generation"},{"keyword":"generate an image"},{"keyword":"logo"},{"keyword":"likeness"},{"keyword":"trademark"},{"keyword":"brand mark"},{"path_prefix":"scripts/ai-image/adapters/"}],"routes_to":[]},{"id":"improve-before-implement","triggers":[{"intent":"implement feature"},{"intent":"architectural change"},{"keyword":"refactor"}],"routes_to":[]},{"id":"invite-challenge","triggers":[{"intent":"complex plan"},{"intent":"design decision"},{"intent":"architectural plan"},{"intent":"multi-step implementation"},{"keyword":"plan"},{"keyword":"design"},{"keyword":"architecture"},{"keyword":"approach"}],"routes_to":[]},{"id":"laravel-translations","triggers":[{"path_prefix":"lang/"},{"keyword":"translation"},{"keyword":"__()"},{"keyword":"trans("}],"routes_to":["skill:laravel"]},{"id":"lethal-trifecta-guard","triggers":[{"path_prefix":"src/skills/"},{"path_prefix":"src/agent-src/commands/"},{"keyword":"lethal trifecta"},{"keyword":"untrusted content"},{"keyword":"exfiltration"},{"keyword":"data exfil"},{"phrase":"fetch and send"},{"phrase":"read the file and post"}],"routes_to":[]},{"id":"linked-projects-onboarding-gate","triggers":[{"intent":"work across two projects"},{"intent":"sibling repository"},{"keyword":"linked project"},{"keyword":"cross-repo"},{"keyword":"sibling repo"},{"path_prefix":".idea/modules.xml"},{"path_prefix":".idea/vcs.xml"}],"routes_to":["guideline:agent-infra/linked-projects-onboarding-gate"]},{"id":"markdown-safe-codeblocks","triggers":[{"intent":"markdown with code blocks"},{"keyword":"triple backticks"},{"file_pattern":"*.md"}],"routes_to":[]},{"id":"media-governance-routing","triggers":[{"keyword":"/video:"},{"keyword":"/image:"},{"keyword":"/audio:"},{"keyword":"deepfake"},{"keyword":"voice clone"},{"keyword":"voice cloning"},{"keyword":"likeness"},{"keyword":"brand impersonation"},{"phrase":"in the style of"},{"phrase":"in the voice of"},{"phrase":"as [public figure]"},{"phrase":"impersonate"}],"routes_to":[]},{"id":"media-sync-ground-truth","triggers":[{"keyword":"lip-sync"},{"keyword":"lip sync"},{"keyword":"lipsync"},{"keyword":"music video"},{"keyword":"beat-cut"},{"keyword":"/video:from-song"},{"keyword":"vocal map"},{"phrase":"cut to the beat"},{"phrase":"sing the"},{"phrase":"mit den lippen"},{"phrase":"lippen passend"}],"routes_to":[]},{"id":"minimal-safe-diff","triggers":[{"intent":"writing a diff"},{"intent":"reviewing a diff"},{"keyword":"drive-by"}],"routes_to":[]},{"id":"missing-tool-handling","triggers":[{"keyword":"command not found"},{"keyword":"not installed"},{"intent":"install tool"}],"routes_to":["guideline:agent-infra/missing-tool-handling"]},{"id":"model-recommendation","triggers":[{"phrase":"switch task"},{"phrase":"new task"},{"phrase":"which model"},{"keyword":"model_tier"}],"routes_to":["guideline:agent-infra/model-recommendation"]},{"id":"no-pr-progress-comments","triggers":[{"intent":"post PR comment"},{"intent":"PR status update"},{"intent":"CI fix progress"},{"keyword":"gh pr comment"},{"keyword":"PullRequestComment"}],"routes_to":[]},{"id":"notes-first-reasoning","triggers":[{"keyword":"debug"},{"keyword":"investigate"},{"keyword":"hypothesis"},{"keyword":"root cause"},{"phrase":"figure out why"},{"phrase":"should we use"}],"routes_to":["skill:memory-consolidation"]},{"id":"persona-governance","triggers":[{"path_prefix":".agent-src.uncondensed/personas/"},{"path_prefix":"dist/agent-src/personas/"},{"keyword":"persona"},{"keyword":"personas"},{"phrase":"new persona"},{"phrase":"add a persona"},{"phrase":"specialist persona"},{"phrase":"review lens"}],"routes_to":["contract:persona-schema"]},{"id":"preservation-guard","triggers":[{"intent":"merge skill"},{"intent":"condense rule"},{"intent":"refactor artifact"},{"keyword":"Iron Law"}],"routes_to":[]},{"id":"provider-lifecycle-discipline","triggers":[{"keyword":"/video:"},{"keyword":"/image:"},{"keyword":"/audio:"},{"keyword":"ai-video"},{"keyword":"ai-image"},{"keyword":"ai-audio"},{"keyword":"adapter"},{"keyword":"provider"},{"path_prefix":"scripts/ai-video/adapters/"},{"path_prefix":"scripts/ai-image/adapters/"},{"path_prefix":"scripts/media/lib/"},{"path_prefix":"agents/.ai-video.xml"},{"phrase":"lifecycle"},{"phrase":"default provider"}],"routes_to":["contract:provider-lifecycle"]},{"id":"reviewer-awareness","triggers":[{"keyword":"reviewer"},{"phrase":"suggest reviewers"},{"phrase":"risk hotspot"},{"phrase":"ownership map"}],"routes_to":["skill:review-routing"]},{"id":"roadmap-ci-steps-policy","triggers":[{"path_prefix":"agents/roadmaps/"},{"path_prefix":"{module_root}/"},{"keyword":"task ci"},{"keyword":"make test"},{"keyword":"npm run check"},{"keyword":"pnpm run check"},{"keyword":"yarn check"},{"keyword":"composer test"},{"phrase":"run the quality pipeline"},{"phrase":"run task ci"},{"phrase":"run the full ci"}],"routes_to":[]},{"id":"role-mode-adherence","triggers":[{"keyword":"active_role"},{"keyword":"role-mode"},{"intent":"mode marker"}],"routes_to":[]},{"id":"rule-type-governance","triggers":[{"path_prefix":".agent-src.uncondensed/rules/"}],"routes_to":["guideline:agent-infra/rule-type-governance"]},{"id":"runtime-safety","triggers":[{"keyword":"execution"},{"keyword":"automated"},{"keyword":"assisted"},{"keyword":"handler"}],"routes_to":[]},{"id":"security-sensitive-stop","triggers":[{"keyword":"auth"},{"keyword":"billing"},{"keyword":"tenant"},{"keyword":"secret"},{"keyword":"webhook"}],"routes_to":[]},{"id":"skill-improvement-trigger","triggers":[{"phrase":"after completing"},{"keyword":"improvement"},{"keyword":"pipeline"}],"routes_to":["skill:skill-improvement-pipeline"]},{"id":"source-discovery-gate","triggers":[{"intent":"before coding"},{"intent":"DB-driven work"},{"keyword":"schema"},{"keyword":"endpoint"},{"phrase":"new API"},{"phrase":"unknown API"},{"phrase":"new vendor package"},{"phrase":"which fields"}],"routes_to":["skill:source-discovery"]},{"id":"strategy-safety-floor","triggers":[{"keyword":"vision"},{"keyword":"positioning"},{"keyword":"moat"},{"keyword":"competitive"},{"keyword":"market entry"},{"keyword":"OKR"},{"keyword":"build vs buy"},{"keyword":"buy vs partner"},{"keyword":"beachhead"},{"keyword":"GTM"},{"keyword":"category"},{"keyword":"where to play"},{"keyword":"where not to play"},{"phrase":"what's our strategy"},{"phrase":"should we enter"},{"phrase":"what's our moat"},{"phrase":"where should we focus"},{"phrase":"should we reorg"}],"routes_to":["skill:build-buy-partner","skill:competitive-moat-analysis","skill:market-entry-analysis","skill:okr-tree-modeling","skill:positioning-strategy","skill:vision-articulation"]},{"id":"think-before-action","triggers":[{"intent":"before coding"},{"intent":"before debugging"},{"intent":"before modifying"}],"routes_to":[]},{"id":"token-efficiency","triggers":[{"intent":"verbose CLI output"},{"intent":"fetching logs"},{"keyword":"minimize tool calls"}],"routes_to":[]},{"id":"token-optimizer-maintenance","triggers":[{"keyword":"cli-output-handling"},{"keyword":"rtk-output-filtering"},{"keyword":"token-efficiency"},{"keyword":"agent-handoff"},{"keyword":"markitdown"},{"keyword":"token-optimizer"}],"routes_to":["skill:token-optimizer"]},{"id":"tool-safety","triggers":[{"keyword":"allowed_tools"},{"keyword":"tool registry"},{"intent":"external API"}],"routes_to":[]},{"id":"ui-audit-gate","triggers":[{"path_prefix":"resources/views/"},{"path_prefix":"resources/js/"},{"keyword":"component"},{"keyword":"design token"}],"routes_to":["skill:existing-ui-audit","skill:iconography","skill:typography-system"]},{"id":"untrusted-input-defense","triggers":[{"keyword":"untrusted"},{"keyword":"fetched content"},{"keyword":"tool output"},{"keyword":"web page"},{"keyword":"RAG"},{"keyword":"converted"},{"phrase":"treat as instructions"},{"phrase":"from the web"},{"phrase":"scraped"}],"routes_to":[]},{"id":"upstream-proposal","triggers":[{"phrase":"after creating"},{"phrase":"after improving"},{"keyword":"upstream"}],"routes_to":["skill:upstream-contribute"]}],"profiles":{"minimal":["__kernel__"],"balanced":["__kernel__","__tier_1__"],"full":["__kernel__","__tier_1__","__tier_2__"]}}
|
|
1
|
+
{"schema_version":1,"kernel":["agent-authority","ask-when-uncertain","commit-policy","direct-answers","language-and-tone","no-cheap-questions","non-destructive-by-default","scope-control","user-interrupt-priority","verify-before-complete"],"tier_1":[{"id":"architecture","triggers":[{"keyword":"controller"},{"keyword":"service"},{"keyword":"module"},{"intent":"structural decision"}],"routes_to":[]},{"id":"artifact-engagement-recording","triggers":[{"phrase":"/implement-ticket"},{"phrase":"/work"},{"keyword":"telemetry"}],"routes_to":["contract:artifact-engagement-flow"]},{"id":"autonomous-execution","triggers":[{"intent":"trivial workflow question"},{"intent":"autonomy mode"},{"keyword":"personal.autonomy"}],"routes_to":[]},{"id":"command-suggestion-policy","triggers":[{"phrase":"free-form prompt"},{"phrase":"command suggestion"}],"routes_to":["contract:command-suggestion-flow"]},{"id":"context-hygiene","triggers":[{"intent":"long conversation"},{"intent":"tool loop"},{"intent":"fresh chat"},{"keyword":"3-failure"}],"routes_to":[]},{"id":"copilot-routing","triggers":[{"keyword":"copilot"},{"phrase":"copilot-instructions"},{"phrase":"copilot pr review"}],"routes_to":["skill:copilot-config"]},{"id":"devcontainer-routing","triggers":[{"keyword":"devcontainer"},{"keyword":"codespaces"},{"keyword":"codespace"},{"phrase":"devcontainer.json"}],"routes_to":["skill:devcontainer"]},{"id":"docker-commands","triggers":[{"keyword":"docker"},{"keyword":"artisan"},{"keyword":"composer"},{"phrase":"inside the container"}],"routes_to":["skill:docker"]},{"id":"fast-path-marker-visibility","triggers":[{"keyword":"low-impact council"},{"keyword":"fast-path"},{"keyword":"Resolved via low-impact council"},{"keyword":"low_impact"},{"intent":"low-impact council dispatch"}],"routes_to":[]},{"id":"laravel-routing","triggers":[{"keyword":"laravel"},{"keyword":"artisan"},{"keyword":"eloquent"},{"keyword":"FormRequest"}],"routes_to":["skill:laravel"]},{"id":"low-impact-corpus-privacy-floor","triggers":[{"path_prefix":"agents/decisions/low-impact-decisions"},{"keyword":"low-impact-decisions"},{"keyword":"low-impact corpus"},{"keyword":"learn-low-impact"}],"routes_to":[]},{"id":"no-attribution-footers","triggers":[{"intent":"PR body"},{"intent":"commit message"},{"intent":"Jira comment"},{"keyword":"co-authored"}],"routes_to":[]},{"id":"no-decorative-emojis-in-git-surfaces","triggers":[{"intent":"PR title"},{"intent":"PR body"},{"intent":"commit message"},{"intent":"issue title"},{"intent":"post PR comment"},{"keyword":"gh pr create"},{"keyword":"git commit"}],"routes_to":[]},{"id":"no-roadmap-references","triggers":[{"path_prefix":"agents/roadmaps/"},{"path_prefix":"agents/runtime/council/questions/"},{"path_prefix":"agents/runtime/council/responses/"},{"path_prefix":"agents/runtime/council/sessions/"},{"intent":"link from stable artifact"},{"intent":"link to council artefact"}],"routes_to":["skill:ai-council"]},{"id":"onboarding-gate","triggers":[{"phrase":"first turn"},{"keyword":"onboarding"},{"path_prefix":".agent-settings.yml"}],"routes_to":[]},{"id":"php-coding","triggers":[{"file_pattern":"*.php"},{"keyword":"phpstan"},{"keyword":"ecs"}],"routes_to":["guideline:php/php-coding-patterns"]},{"id":"roadmap-progress-sync","triggers":[{"path_prefix":"agents/roadmaps/"},{"command":"/roadmap:process-step"},{"command":"/roadmap:process-phase"},{"command":"/roadmap:process-full"}],"routes_to":["guideline:agent-infra/roadmap-progress-mechanics"]},{"id":"skill-quality","triggers":[{"path_prefix":".agent-src.uncondensed/skills/"}],"routes_to":["guideline:agent-infra/skill-quality-checklist"]},{"id":"slash-command-routing-policy","triggers":[{"keyword":"/create-pr"},{"keyword":"/commit"},{"keyword":"/fix-ci"},{"phrase":"slash command"}],"routes_to":["skill:command-routing"]},{"id":"source-confidentiality","triggers":[{"path_prefix":"src/skills/"},{"path_prefix":"src/rules/"},{"path_prefix":"src/domains/"},{"path_prefix":"docs/"},{"path_prefix":"agents/evidence/"},{"path_prefix":"agents/roadmaps/"},{"intent":"adopt or harvest from an external repo"},{"intent":"compare against another package"},{"intent":"attribute an idea to an external source"}],"routes_to":[]},{"id":"source-of-truth","triggers":[{"path_prefix":"dist/agent-src/"},{"path_prefix":".augment/"},{"path_prefix":".claude/"},{"path_prefix":".cursor/"}],"routes_to":[]},{"id":"symfony-routing","triggers":[{"keyword":"symfony"},{"keyword":"doctrine"},{"keyword":"twig"},{"keyword":"messenger"}],"routes_to":["skill:symfony-workflow"]},{"id":"telegraph-speak","triggers":[{"intent":"any reply"}],"routes_to":[]},{"id":"user-interaction","triggers":[{"intent":"ask user a question"},{"intent":"numbered options"},{"intent":"summarizing progress"}],"routes_to":[]}],"tier_2":[{"id":"artifact-drafting-protocol","triggers":[{"intent":"create new skill"},{"intent":"create new rule"},{"intent":"create new command"},{"intent":"create new guideline"}],"routes_to":[]},{"id":"augment-edit-discipline","triggers":[{"path_prefix":".augment/"},{"path_prefix":".agent-src.uncondensed/"},{"keyword":"portable"},{"keyword":"rename"},{"keyword":"delete"}],"routes_to":["guideline:augment-portability-patterns","skill:agent-docs-writing"]},{"id":"brand-consistency","triggers":[{"keyword":"brand"},{"keyword":"on-brand"},{"keyword":"off-brand"},{"keyword":"brand voice"},{"keyword":"brand tokens"},{"phrase":"brand consistency"},{"phrase":"on brand"}],"routes_to":[]},{"id":"brand-source-of-truth","triggers":[{"keyword":"brand tokens"},{"keyword":"brand voice"},{"keyword":"brand guide"},{"keyword":"brand profile"},{"phrase":"brand source of truth"}],"routes_to":[]},{"id":"cli-output-handling","triggers":[{"keyword":"git"},{"keyword":"phpstan"},{"keyword":"rector"},{"keyword":"phpunit"},{"keyword":"composer"}],"routes_to":["skill:rtk-output-filtering"]},{"id":"commit-conventions","triggers":[{"keyword":"commit"},{"keyword":"branch"},{"phrase":"conventional commits"}],"routes_to":["skill:conventional-commits-writing"]},{"id":"delegation-policy","triggers":[{"keyword":"delegate"},{"keyword":"orchestrate"},{"keyword":"subagent"},{"keyword":"parallel"},{"phrase":"review these"},{"phrase":"analyze the codebase"},{"phrase":"for each"}],"routes_to":["skill:subagent-orchestration"]},{"id":"design-fidelity","triggers":[{"keyword":"prototype"},{"keyword":"mockup"},{"keyword":"wireframe"},{"keyword":"design system"},{"keyword":"design spec"},{"keyword":"Figma"},{"phrase":"match the design"},{"phrase":"build this design"},{"phrase":"design fidelity"},{"phrase":"stick to the design"}],"routes_to":[]},{"id":"domain-adoption-policy","triggers":[{"intent":"adopt new domain"},{"intent":"harvest new domain track"},{"intent":"open a domain plate"},{"keyword":"mobile track"},{"keyword":"ml track"},{"keyword":"blockchain track"},{"path_prefix":".agent-src.uncondensed/skills/"}],"routes_to":[]},{"id":"domain-safety-disclaimer","triggers":[{"keyword":"legal brief"},{"keyword":"contract redline"},{"keyword":"terms of service"},{"keyword":"privacy policy"},{"keyword":"diagnosis"},{"keyword":"symptoms"},{"keyword":"dosage"},{"keyword":"medication"},{"keyword":"investment memo"},{"keyword":"valuation"},{"keyword":"DCF"},{"keyword":"tax position"},{"keyword":"strategic recommendation"},{"keyword":"board memo"},{"keyword":"executive summary"},{"phrase":"review this contract"},{"phrase":"is this symptom"},{"phrase":"should I invest"},{"phrase":"what should we do"}],"routes_to":["skill:brand-identity","skill:brand-strategy","skill:contracts-cognition","skill:dcf-modeling","skill:decision-record","skill:privacy-review","skill:scenario-modeling","skill:stakeholder-tradeoff"]},{"id":"domain-safety-pii","triggers":[{"keyword":"support macro"},{"keyword":"ticket response"},{"keyword":"help desk"},{"keyword":"Zendesk"},{"keyword":"Intercom"},{"keyword":"testimonial"},{"keyword":"case study"},{"keyword":"customer story"},{"keyword":"candidate"},{"keyword":"interview notes"},{"keyword":"scorecard"},{"keyword":"rejection email"},{"keyword":"offer letter"},{"keyword":"invoice"},{"keyword":"accounts receivable"},{"keyword":"accounts payable"},{"keyword":"finance memo"},{"keyword":"log"},{"keyword":"logger"},{"keyword":"Sentry"},{"keyword":"Datadog"},{"keyword":"structured log"},{"keyword":"export to CSV"},{"keyword":"data export"},{"keyword":"partner integration"},{"phrase":"draft a response to"},{"phrase":"marketing email featuring"},{"phrase":"draft feedback for"},{"phrase":"log the user"},{"phrase":"send them the spreadsheet"}],"routes_to":["skill:data-handling-judgment","skill:logging-monitoring","skill:privacy-review","skill:secrets-management"]},{"id":"domain-safety-retention","triggers":[{"keyword":"retention policy"},{"keyword":"data retention"},{"keyword":"record retention"},{"keyword":"ticket retention"},{"keyword":"CRM retention"},{"keyword":"delete financial"},{"keyword":"purge invoice"},{"keyword":"DSAR"},{"keyword":"data subject request"},{"keyword":"right to be forgotten"},{"phrase":"how long should we keep"},{"phrase":"when can we delete"},{"phrase":"delete customer data"},{"phrase":"how long do we keep tickets"}],"routes_to":["skill:data-handling-judgment","skill:privacy-review"]},{"id":"downstream-changes","triggers":[{"intent":"after code edit"},{"keyword":"callers"},{"keyword":"imports"},{"keyword":"downstream"}],"routes_to":[]},{"id":"engineering-safety-floor","triggers":[{"keyword":"production"},{"keyword":"deploy"},{"keyword":"migration"},{"keyword":"schema change"},{"keyword":"DROP TABLE"},{"keyword":"TRUNCATE"},{"keyword":"force push"},{"keyword":"rebase main"},{"keyword":"rollback"},{"keyword":"secrets rotation"},{"keyword":"IAM"},{"keyword":"DNS"},{"keyword":"terraform apply"},{"keyword":"kubectl apply"},{"phrase":"ship to prod"},{"phrase":"deploy to production"},{"phrase":"merge to main"},{"phrase":"release this"}],"routes_to":["skill:launch-readiness","skill:threat-modeling"]},{"id":"external-reference-deep-dive","triggers":[{"intent":"look at how X does it"},{"intent":"compare with reference repo"},{"intent":"use as template / vorlage"},{"intent":"wie macht es X"},{"intent":"vergleiche mit Y"},{"intent":"schau dir Z an"},{"intent":"study this competitor"},{"keyword":"github.com/"},{"keyword":"source of truth"},{"phrase":"reference repo"}],"routes_to":[]},{"id":"finance-safety-floor","triggers":[{"keyword":"runway"},{"keyword":"burn"},{"keyword":"valuation"},{"keyword":"DCF"},{"keyword":"IRR"},{"keyword":"MOIC"},{"keyword":"LTV"},{"keyword":"CAC"},{"keyword":"payback"},{"keyword":"sensitivity"},{"keyword":"fundraise"},{"keyword":"term sheet"},{"keyword":"dilution"},{"keyword":"NRR"},{"keyword":"EBITDA"},{"keyword":"free cash flow"},{"phrase":"what's it worth"},{"phrase":"how long do we have"},{"phrase":"should we raise"},{"phrase":"model the scenarios"}],"routes_to":["skill:dcf-modeling","skill:forecasting","skill:runway-cognition","skill:scenario-modeling","skill:unit-economics-modeling"]},{"id":"framework-neutrality-in-generic-skills","triggers":[{"path_prefix":".agent-src.uncondensed/skills/"},{"path_prefix":".agent-src.uncondensed/rules/"},{"path_prefix":".agent-src.uncondensed/commands/"},{"keyword":"FormRequest"},{"keyword":"PHPStan"},{"keyword":"php artisan"},{"keyword":"composer.json"},{"keyword":"Eloquent"},{"keyword":"Pest"},{"keyword":"Blade"},{"keyword":"vendor/bin"},{"keyword":"Artisan"},{"keyword":"Rector"},{"phrase":"every controller"},{"phrase":"all controllers"},{"phrase":"generic skill"}],"routes_to":[]},{"id":"git-history-discipline","triggers":[{"intent":"rebase the branch"},{"intent":"squash commits"},{"intent":"clean up commit history"},{"intent":"fold this into the previous commit"},{"intent":"tidy history after pushing"},{"intent":"reseat the branch base"},{"intent":"exclude these commits from the branch"},{"keyword":"git rebase"},{"keyword":"rebase --onto"},{"keyword":"reset --hard"},{"keyword":"fixup"},{"keyword":"--amend"},{"keyword":"force-push"},{"keyword":"--force-with-lease"},{"keyword":"squash-merge"},{"phrase":"branch diverged"},{"phrase":"pull --rebase failed"},{"phrase":"ahead and behind"},{"phrase":"unexpected commits on the branch"},{"phrase":"commits I did not create"}],"routes_to":["skill:git-workflow"]},{"id":"icon-consistency","triggers":[{"keyword":"icon"},{"keyword":"iconography"},{"keyword":"lucide"},{"keyword":"heroicons"},{"keyword":"icon set"},{"phrase":"icon system"}],"routes_to":[]},{"id":"image-likeness-and-rights","triggers":[{"keyword":"/image:"},{"keyword":"image generation"},{"keyword":"generate an image"},{"keyword":"logo"},{"keyword":"likeness"},{"keyword":"trademark"},{"keyword":"brand mark"},{"path_prefix":"scripts/ai-image/adapters/"}],"routes_to":[]},{"id":"improve-before-implement","triggers":[{"intent":"implement feature"},{"intent":"architectural change"},{"keyword":"refactor"}],"routes_to":[]},{"id":"invite-challenge","triggers":[{"intent":"complex plan"},{"intent":"design decision"},{"intent":"architectural plan"},{"intent":"multi-step implementation"},{"keyword":"plan"},{"keyword":"design"},{"keyword":"architecture"},{"keyword":"approach"}],"routes_to":[]},{"id":"laravel-translations","triggers":[{"path_prefix":"lang/"},{"keyword":"translation"},{"keyword":"__()"},{"keyword":"trans("}],"routes_to":["skill:laravel"]},{"id":"legal-safety-floor","triggers":[{"keyword":"NDA"},{"keyword":"DPA"},{"keyword":"data processing agreement"},{"keyword":"contract review"},{"keyword":"redline"},{"keyword":"clause"},{"keyword":"GDPR"},{"keyword":"Art. 28"},{"keyword":"controller"},{"keyword":"processor"},{"keyword":"privilege"},{"keyword":"work product"},{"phrase":"review this contract"},{"phrase":"is this a legal problem"},{"phrase":"check this NDA"}],"routes_to":["skill:contract-review","skill:dpa-review","skill:legal-intake-triage","skill:nda-triage"]},{"id":"lethal-trifecta-guard","triggers":[{"path_prefix":"src/skills/"},{"path_prefix":"src/agent-src/commands/"},{"keyword":"lethal trifecta"},{"keyword":"untrusted content"},{"keyword":"exfiltration"},{"keyword":"data exfil"},{"phrase":"fetch and send"},{"phrase":"read the file and post"}],"routes_to":[]},{"id":"linked-projects-onboarding-gate","triggers":[{"intent":"work across two projects"},{"intent":"sibling repository"},{"keyword":"linked project"},{"keyword":"cross-repo"},{"keyword":"sibling repo"},{"path_prefix":".idea/modules.xml"},{"path_prefix":".idea/vcs.xml"}],"routes_to":["guideline:agent-infra/linked-projects-onboarding-gate"]},{"id":"markdown-safe-codeblocks","triggers":[{"intent":"markdown with code blocks"},{"keyword":"triple backticks"},{"file_pattern":"*.md"}],"routes_to":[]},{"id":"media-governance-routing","triggers":[{"keyword":"/video:"},{"keyword":"/image:"},{"keyword":"/audio:"},{"keyword":"deepfake"},{"keyword":"voice clone"},{"keyword":"voice cloning"},{"keyword":"likeness"},{"keyword":"brand impersonation"},{"phrase":"in the style of"},{"phrase":"in the voice of"},{"phrase":"as [public figure]"},{"phrase":"impersonate"}],"routes_to":[]},{"id":"media-sync-ground-truth","triggers":[{"keyword":"lip-sync"},{"keyword":"lip sync"},{"keyword":"lipsync"},{"keyword":"music video"},{"keyword":"beat-cut"},{"keyword":"/video:from-song"},{"keyword":"vocal map"},{"phrase":"cut to the beat"},{"phrase":"sing the"},{"phrase":"mit den lippen"},{"phrase":"lippen passend"}],"routes_to":[]},{"id":"minimal-safe-diff","triggers":[{"intent":"writing a diff"},{"intent":"reviewing a diff"},{"keyword":"drive-by"}],"routes_to":[]},{"id":"missing-tool-handling","triggers":[{"keyword":"command not found"},{"keyword":"not installed"},{"intent":"install tool"}],"routes_to":["guideline:agent-infra/missing-tool-handling"]},{"id":"model-recommendation","triggers":[{"phrase":"switch task"},{"phrase":"new task"},{"phrase":"which model"},{"keyword":"model_tier"}],"routes_to":["guideline:agent-infra/model-recommendation"]},{"id":"no-pr-progress-comments","triggers":[{"intent":"post PR comment"},{"intent":"PR status update"},{"intent":"CI fix progress"},{"keyword":"gh pr comment"},{"keyword":"PullRequestComment"}],"routes_to":[]},{"id":"notes-first-reasoning","triggers":[{"keyword":"debug"},{"keyword":"investigate"},{"keyword":"hypothesis"},{"keyword":"root cause"},{"phrase":"figure out why"},{"phrase":"should we use"}],"routes_to":["skill:memory-consolidation"]},{"id":"output-discipline","triggers":[{"intent":"generating code or multi-section output"},{"keyword":"// rest of component"},{"keyword":"for brevity"},{"keyword":"rest follows the same pattern"},{"phrase":"similar pattern"}],"routes_to":[]},{"id":"persona-governance","triggers":[{"path_prefix":".agent-src.uncondensed/personas/"},{"path_prefix":"dist/agent-src/personas/"},{"keyword":"persona"},{"keyword":"personas"},{"phrase":"new persona"},{"phrase":"add a persona"},{"phrase":"specialist persona"},{"phrase":"review lens"}],"routes_to":["contract:persona-schema"]},{"id":"preservation-guard","triggers":[{"intent":"merge skill"},{"intent":"condense rule"},{"intent":"refactor artifact"},{"keyword":"Iron Law"}],"routes_to":[]},{"id":"provider-lifecycle-discipline","triggers":[{"keyword":"/video:"},{"keyword":"/image:"},{"keyword":"/audio:"},{"keyword":"ai-video"},{"keyword":"ai-image"},{"keyword":"ai-audio"},{"keyword":"adapter"},{"keyword":"provider"},{"path_prefix":"scripts/ai-video/adapters/"},{"path_prefix":"scripts/ai-image/adapters/"},{"path_prefix":"scripts/media/lib/"},{"path_prefix":"agents/.ai-video.xml"},{"phrase":"lifecycle"},{"phrase":"default provider"}],"routes_to":["contract:provider-lifecycle"]},{"id":"reviewer-awareness","triggers":[{"keyword":"reviewer"},{"phrase":"suggest reviewers"},{"phrase":"risk hotspot"},{"phrase":"ownership map"}],"routes_to":["skill:review-routing"]},{"id":"roadmap-ci-steps-policy","triggers":[{"path_prefix":"agents/roadmaps/"},{"path_prefix":"{module_root}/"},{"keyword":"task ci"},{"keyword":"make test"},{"keyword":"npm run check"},{"keyword":"pnpm run check"},{"keyword":"yarn check"},{"keyword":"composer test"},{"phrase":"run the quality pipeline"},{"phrase":"run task ci"},{"phrase":"run the full ci"}],"routes_to":[]},{"id":"role-mode-adherence","triggers":[{"keyword":"active_role"},{"keyword":"role-mode"},{"intent":"mode marker"}],"routes_to":[]},{"id":"rule-type-governance","triggers":[{"path_prefix":".agent-src.uncondensed/rules/"}],"routes_to":["guideline:agent-infra/rule-type-governance"]},{"id":"runtime-safety","triggers":[{"keyword":"execution"},{"keyword":"automated"},{"keyword":"assisted"},{"keyword":"handler"}],"routes_to":[]},{"id":"security-sensitive-stop","triggers":[{"keyword":"auth"},{"keyword":"billing"},{"keyword":"tenant"},{"keyword":"secret"},{"keyword":"webhook"}],"routes_to":[]},{"id":"skill-improvement-trigger","triggers":[{"phrase":"after completing"},{"keyword":"improvement"},{"keyword":"pipeline"}],"routes_to":["skill:skill-improvement-pipeline"]},{"id":"source-discovery-gate","triggers":[{"intent":"before coding"},{"intent":"DB-driven work"},{"keyword":"schema"},{"keyword":"endpoint"},{"phrase":"new API"},{"phrase":"unknown API"},{"phrase":"new vendor package"},{"phrase":"which fields"}],"routes_to":["skill:source-discovery"]},{"id":"strategy-safety-floor","triggers":[{"keyword":"vision"},{"keyword":"positioning"},{"keyword":"moat"},{"keyword":"competitive"},{"keyword":"market entry"},{"keyword":"OKR"},{"keyword":"build vs buy"},{"keyword":"buy vs partner"},{"keyword":"beachhead"},{"keyword":"GTM"},{"keyword":"category"},{"keyword":"where to play"},{"keyword":"where not to play"},{"phrase":"what's our strategy"},{"phrase":"should we enter"},{"phrase":"what's our moat"},{"phrase":"where should we focus"},{"phrase":"should we reorg"}],"routes_to":["skill:build-buy-partner","skill:competitive-moat-analysis","skill:market-entry-analysis","skill:okr-tree-modeling","skill:positioning-strategy","skill:vision-articulation"]},{"id":"think-before-action","triggers":[{"intent":"before coding"},{"intent":"before debugging"},{"intent":"before modifying"}],"routes_to":[]},{"id":"token-budget-discipline","triggers":[{"keyword":"token_budget_class"},{"keyword":"rich skill"},{"intent":"editing a rich-tagged skill"}],"routes_to":[]},{"id":"token-efficiency","triggers":[{"intent":"verbose CLI output"},{"intent":"fetching logs"},{"keyword":"minimize tool calls"}],"routes_to":[]},{"id":"token-optimizer-maintenance","triggers":[{"keyword":"cli-output-handling"},{"keyword":"rtk-output-filtering"},{"keyword":"token-efficiency"},{"keyword":"agent-handoff"},{"keyword":"markitdown"},{"keyword":"token-optimizer"}],"routes_to":["skill:token-optimizer"]},{"id":"tool-safety","triggers":[{"keyword":"allowed_tools"},{"keyword":"tool registry"},{"intent":"external API"}],"routes_to":[]},{"id":"ui-audit-gate","triggers":[{"path_prefix":"resources/views/"},{"path_prefix":"resources/js/"},{"keyword":"component"},{"keyword":"design token"}],"routes_to":["skill:existing-ui-audit","skill:iconography","skill:typography-system"]},{"id":"untrusted-input-defense","triggers":[{"keyword":"untrusted"},{"keyword":"fetched content"},{"keyword":"tool output"},{"keyword":"web page"},{"keyword":"RAG"},{"keyword":"converted"},{"phrase":"treat as instructions"},{"phrase":"from the web"},{"phrase":"scraped"}],"routes_to":[]},{"id":"upstream-proposal","triggers":[{"phrase":"after creating"},{"phrase":"after improving"},{"keyword":"upstream"}],"routes_to":["skill:upstream-contribute"]}],"profiles":{"minimal":["__kernel__"],"balanced":["__kernel__","__tier_1__"],"full":["__kernel__","__tier_1__","__tier_2__"]}}
|
|
@@ -34,10 +34,11 @@ const LEGACY_SETTINGS_REL = '.agent-settings.yml';
|
|
|
34
34
|
// Step count mirrors the UI's `getWizardSteps` plan in `src/ui/wizard/steps.ts`.
|
|
35
35
|
// Bump in lockstep. Default flow = welcome + 7 core steps (editor, personality,
|
|
36
36
|
// cost, roadmap-quality, memory, user-md, review) → 8. Extended mode prepends
|
|
37
|
-
// the install-only lead (ai-tools + roles + packs) →
|
|
38
|
-
// its own top-level surface (not a wizard step); modules on the
|
|
37
|
+
// the install-only lead (ai-tools + roles + packs + legal-consent) → 12. AI
|
|
38
|
+
// Council lives on its own top-level surface (not a wizard step); modules on the
|
|
39
|
+
// Projekt surface.
|
|
39
40
|
const DEFAULT_TOTAL_STEPS = 8;
|
|
40
|
-
const EXTENDED_TOTAL_STEPS =
|
|
41
|
+
const EXTENDED_TOTAL_STEPS = 12;
|
|
41
42
|
/**
|
|
42
43
|
* Discovery-manifest path. Resolved from the package root the server
|
|
43
44
|
* was booted with — same artefact the installer reads (ADR-015 locks
|