@event4u/agent-config 1.21.0 → 1.23.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/agents/cleanup.md +31 -17
- package/.agent-src/commands/bug-fix.md +1 -0
- package/.agent-src/commands/bug-investigate.md +1 -0
- package/.agent-src/commands/challenge-me/vision.md +348 -0
- package/.agent-src/commands/challenge-me/with-docs.md +333 -0
- package/.agent-src/commands/challenge-me.md +61 -0
- package/.agent-src/commands/commit/in-chunks.md +30 -10
- package/.agent-src/commands/commit.md +46 -6
- package/.agent-src/commands/compress.md +19 -13
- package/.agent-src/commands/cost-report.md +120 -0
- package/.agent-src/commands/council/default.md +64 -17
- package/.agent-src/commands/create-pr/description-only.md +8 -0
- package/.agent-src/commands/create-pr.md +99 -80
- package/.agent-src/commands/feature/plan.md +13 -7
- package/.agent-src/commands/grill-me.md +38 -0
- package/.agent-src/commands/judge/steps.md +1 -1
- package/.agent-src/commands/memory/add.md +16 -8
- package/.agent-src/commands/memory/promote.md +17 -9
- package/.agent-src/commands/optimize/rtk.md +16 -11
- package/.agent-src/commands/prepare-for-review.md +12 -6
- package/.agent-src/commands/project-analyze.md +31 -20
- package/.agent-src/commands/review-changes.md +24 -15
- package/.agent-src/commands/roadmap/ai-council.md +183 -0
- package/.agent-src/commands/roadmap/create.md +20 -10
- package/.agent-src/commands/roadmap/process-full.md +58 -0
- package/.agent-src/commands/roadmap/process-phase.md +69 -0
- package/.agent-src/commands/roadmap/process-step.md +57 -0
- package/.agent-src/commands/roadmap.md +44 -16
- package/.agent-src/commands/threat-model.md +1 -0
- package/.agent-src/contexts/augment-infrastructure.md +1 -1
- package/.agent-src/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md +53 -18
- package/.agent-src/contexts/contracts/frugality-charter.md +57 -0
- package/.agent-src/contexts/execution/roadmap-process-loop.md +125 -0
- package/.agent-src/contexts/skills-and-commands.md +1 -1
- package/.agent-src/rules/architecture.md +9 -0
- package/.agent-src/rules/ask-when-uncertain.md +3 -13
- package/.agent-src/rules/caveman-speak.md +78 -0
- package/.agent-src/rules/direct-answers.md +5 -14
- package/.agent-src/rules/improve-before-implement.md +1 -0
- package/.agent-src/rules/invite-challenge.md +71 -0
- package/.agent-src/rules/markdown-safe-codeblocks.md +6 -7
- package/.agent-src/rules/no-cheap-questions.md +4 -14
- package/.agent-src/rules/token-efficiency.md +5 -7
- package/.agent-src/skills/adr-create/SKILL.md +197 -0
- package/.agent-src/skills/adversarial-review/SKILL.md +1 -0
- package/.agent-src/skills/agent-docs-writing/SKILL.md +23 -1
- package/.agent-src/skills/ai-council/SKILL.md +132 -8
- package/.agent-src/skills/bug-analyzer/SKILL.md +1 -0
- package/.agent-src/skills/command-writing/SKILL.md +23 -0
- package/.agent-src/skills/context-authoring/SKILL.md +23 -0
- package/.agent-src/skills/conventional-commits-writing/SKILL.md +23 -0
- package/.agent-src/skills/guideline-writing/SKILL.md +22 -0
- package/.agent-src/skills/persona-writing/SKILL.md +153 -0
- package/.agent-src/skills/readme-writing/SKILL.md +20 -0
- package/.agent-src/skills/readme-writing-package/SKILL.md +19 -0
- package/.agent-src/skills/roadmap-management/SKILL.md +7 -7
- package/.agent-src/skills/roadmap-writing/SKILL.md +157 -0
- package/.agent-src/skills/rule-writing/SKILL.md +22 -0
- package/.agent-src/skills/script-writing/SKILL.md +226 -0
- package/.agent-src/skills/skill-writing/SKILL.md +23 -0
- package/.agent-src/skills/systematic-debugging/SKILL.md +22 -2
- package/.agent-src/skills/technical-specification/SKILL.md +58 -1
- package/.agent-src/skills/test-driven-development/SKILL.md +24 -0
- package/.agent-src/skills/threat-modeling/SKILL.md +1 -0
- package/.agent-src/templates/agent-settings.md +87 -3
- package/.agent-src/templates/command.md +30 -9
- package/.agent-src/templates/roadmaps.md +10 -2
- package/.agent-src/templates/rule.md +8 -0
- package/.agent-src/templates/skill.md +49 -0
- package/.claude-plugin/marketplace.json +14 -2
- package/AGENTS.md +3 -3
- package/CHANGELOG.md +73 -0
- package/README.md +5 -5
- package/config/agent-settings.template.yml +22 -0
- package/docs/architecture.md +4 -4
- package/docs/contracts/command-clusters.md +45 -1
- package/docs/customization.md +72 -0
- package/docs/decisions/ADR-003-flat-cluster-subs-and-colon-syntax.md +126 -0
- package/docs/decisions/INDEX.md +15 -0
- package/docs/getting-started.md +2 -2
- package/docs/guidelines/agent-infra/asking-and-brevity-examples.md +27 -19
- package/docs/guidelines/agent-infra/carve-out-predicates.md +17 -0
- package/docs/guidelines/agent-infra/mcp-request-signing.md +199 -0
- package/docs/guidelines/agent-infra/naming.md +1 -1
- package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +11 -4
- package/package.json +1 -1
- package/scripts/_lib/__init__.py +5 -0
- package/scripts/_lib/script_output.py +140 -0
- package/scripts/_phase2_shim_helper.py +1 -1
- package/scripts/adr/regenerate_index.py +79 -0
- package/scripts/ai_council/one_off_archive/2026-05/_one_off_add_quiet.py +149 -0
- package/scripts/ai_council/one_off_archive/2026-05/_one_off_inject_quiet_flag.py +33 -0
- package/scripts/ai_council/one_off_archive/2026-05/_one_off_measure_v2.sh +36 -0
- package/scripts/ai_council/one_off_archive/2026-05/_one_off_measure_verbosity.sh +26 -0
- package/scripts/ai_council/one_off_archive/2026-05/_one_off_per_task.sh +41 -0
- package/scripts/ai_council/one_off_archive/2026-05/_one_off_silent_taskfiles.py +98 -0
- package/scripts/check_augmentignore.py +4 -1
- package/scripts/check_command_count_messaging.py +4 -1
- package/scripts/check_compressed_paths.py +4 -1
- package/scripts/check_council_layout.py +4 -1
- package/scripts/check_council_references.py +4 -1
- package/scripts/check_iron_law_prominence.py +3 -1
- package/scripts/check_md_language.py +3 -1
- package/scripts/check_memory_proposal.py +3 -1
- package/scripts/check_public_catalog_links.py +4 -1
- package/scripts/check_reply_consistency.py +8 -2
- package/scripts/check_roadmap_trackable.py +4 -1
- package/scripts/compile_router.py +27 -0
- package/scripts/compress.py +33 -19
- package/scripts/cost/budget.mjs +152 -0
- package/scripts/cost/track.mjs +144 -0
- package/scripts/council_cli.py +127 -10
- package/scripts/first-run.sh +3 -9
- package/scripts/install-hooks.sh +19 -1
- package/scripts/install.py +17 -12
- package/scripts/install.sh +19 -8
- package/scripts/lint_examples.py +6 -2
- package/scripts/lint_handoffs.py +4 -1
- package/scripts/lint_load_context.py +4 -1
- package/scripts/lint_roadmap_complexity.py +6 -2
- package/scripts/lint_rule_interactions.py +4 -1
- package/scripts/lint_rule_tiers.py +4 -1
- package/scripts/measure_frugality_savings.py +164 -0
- package/scripts/migrate_command_suggestions.py +2 -2
- package/scripts/runtime_dispatcher.py +11 -0
- package/scripts/schemas/command.schema.json +5 -0
- package/scripts/schemas/rule.schema.json +5 -0
- package/scripts/schemas/skill.schema.json +5 -0
- package/scripts/skill_linter.py +208 -3
- package/.agent-src/commands/roadmap/execute.md +0 -109
package/CHANGELOG.md
CHANGED
|
@@ -318,6 +318,79 @@ our recommendation order, not its support status.
|
|
|
318
318
|
users" tension without removing any path that an existing user
|
|
319
319
|
might rely on.
|
|
320
320
|
|
|
321
|
+
## [1.23.0](https://github.com/event4u-app/agent-config/compare/1.22.0...1.23.0) (2026-05-08)
|
|
322
|
+
|
|
323
|
+
### Features
|
|
324
|
+
|
|
325
|
+
* **skills:** add script-writing skill for scripts/ conventions ([1f8655d](https://github.com/event4u-app/agent-config/commit/1f8655d6cbf007410e3846ab502eea5745a7f66f))
|
|
326
|
+
* **scripts:** Phase 10.7 --quiet flag + silent Taskfile + caveman compile-time toggle ([1d319e6](https://github.com/event4u-app/agent-config/commit/1d319e61a3c782eb5c86075f34275306a67c621c))
|
|
327
|
+
* **linter:** frugality charter writer-cite validator + writer skill citations ([0e34709](https://github.com/event4u-app/agent-config/commit/0e3470965d5e2f4a8b11f27137d4ba43d2471be2))
|
|
328
|
+
* **verbosity:** add verbosity toggles + gate routine outputs ([580d4cc](https://github.com/event4u-app/agent-config/commit/580d4cc2d1f4d4b091b6128f0a29d1f7e619895d))
|
|
329
|
+
* **roadmap-sync:** pre-commit backstop blocks stale dashboard ([c577fc0](https://github.com/event4u-app/agent-config/commit/c577fc0aabc13faaae64c88d20d8ca66338ae5fc))
|
|
330
|
+
* **create-pr:** drop council-review prompt ([e694811](https://github.com/event4u-app/agent-config/commit/e694811f7ca06b3db275cc70e83e6dbc4db72e42))
|
|
331
|
+
* cite SPARC escalation thresholds in test-driven-development ([836f2ed](https://github.com/event4u-app/agent-config/commit/836f2edc2c288bcc7f878e97f42de954add8bb5b))
|
|
332
|
+
* add mcp-request-signing guideline with HTTP-bridge appendix ([2ab67cd](https://github.com/event4u-app/agent-config/commit/2ab67cd401333ea61f47d43e952e7b07958feff3))
|
|
333
|
+
* add cost-report command with token cost tracking ([262d865](https://github.com/event4u-app/agent-config/commit/262d865072d613647a439e89f83ded7334b60b1b))
|
|
334
|
+
* add adr-create skill with index regeneration script ([7225105](https://github.com/event4u-app/agent-config/commit/7225105797d6810cad75bfa851f02b100e41ba29))
|
|
335
|
+
|
|
336
|
+
### Bug Fixes
|
|
337
|
+
|
|
338
|
+
* **docs:** bump command counts to 103 after cost-report addition ([2810fa5](https://github.com/event4u-app/agent-config/commit/2810fa5a54b7099123ae65e6c7c1325430bf3b77))
|
|
339
|
+
|
|
340
|
+
### Documentation
|
|
341
|
+
|
|
342
|
+
* sync counts (139 skills, 60 rules) + meta cleanups ([00c8b21](https://github.com/event4u-app/agent-config/commit/00c8b211edbc86cbe2f886107227e6bd46049c3b))
|
|
343
|
+
* codify defer-with-trigger harvest policy ([b30dcd7](https://github.com/event4u-app/agent-config/commit/b30dcd72d0ffbd1fb2dbdd8ca28493a5b05a6bed))
|
|
344
|
+
|
|
345
|
+
### Refactoring
|
|
346
|
+
|
|
347
|
+
* **rules:** apply trim-frugality-canon Phase 1-3 trims ([ea1828a](https://github.com/event4u-app/agent-config/commit/ea1828af7bc69426386f6852cb69891309dce65f))
|
|
348
|
+
|
|
349
|
+
### Chores
|
|
350
|
+
|
|
351
|
+
* regenerate stale generated mirrors ([ea52e94](https://github.com/event4u-app/agent-config/commit/ea52e94415c4db5598e91d001e0fbeee10cae9be))
|
|
352
|
+
* regenerate auto-generated artefacts ([fbe7d9e](https://github.com/event4u-app/agent-config/commit/fbe7d9ef137c9e584d7f88ce660afe29ab1a8d00))
|
|
353
|
+
* bump skill/command/guideline counts and compression hashes ([18f4fad](https://github.com/event4u-app/agent-config/commit/18f4fad2372fd4347210199986909319c24ea0ec))
|
|
354
|
+
* archive ruflo-adoption, move caveman-integration to skipped ([4c6c1eb](https://github.com/event4u-app/agent-config/commit/4c6c1eb1e00356421e0038704a82e1f10ac9a3e5))
|
|
355
|
+
|
|
356
|
+
## [1.22.0](https://github.com/event4u-app/agent-config/compare/1.21.0...1.22.0) (2026-05-07)
|
|
357
|
+
|
|
358
|
+
### Features
|
|
359
|
+
|
|
360
|
+
* **commands:** add /grill-me alias for /challenge-me + expand triggers ([d2be4ee](https://github.com/event4u-app/agent-config/commit/d2be4ee1a97d2ca2374c6543e0fd908eca0a0f1a))
|
|
361
|
+
* **challenge-me:** add !roadmap and !ai triggers ([7bfbd69](https://github.com/event4u-app/agent-config/commit/7bfbd6943852d781ca7ad29e51750de24d3ef413))
|
|
362
|
+
* **create-pr:** default to skipping description preview to save tokens ([80e77ae](https://github.com/event4u-app/agent-config/commit/80e77aed76a13c26fac8316bc5d58a3533dbbe44))
|
|
363
|
+
* **council:** add critical-evaluation stance for council findings ([7e2524b](https://github.com/event4u-app/agent-config/commit/7e2524b75fd84ca4b6afb6deae0b8777e8b81ac7))
|
|
364
|
+
* **council:** add /roadmap:ai-council deep-tier sub-command ([c5933e4](https://github.com/event4u-app/agent-config/commit/c5933e4b2301a0f9d1c116d2843ed4953bd92163))
|
|
365
|
+
* replace /roadmap-execute with autonomous /roadmap:process-* cluster ([9d4ffd0](https://github.com/event4u-app/agent-config/commit/9d4ffd0815fb7923b337bfd0b3847d9bc5a01e54))
|
|
366
|
+
* **council:** mark architecture/refactor/bug-diagnose artefacts as deep ([6f903c1](https://github.com/event4u-app/agent-config/commit/6f903c194e4bc54512e93a32e1876e84d0292401))
|
|
367
|
+
* **council:** add deep reasoning depth tier with schema enforcement ([f4efd7a](https://github.com/event4u-app/agent-config/commit/f4efd7a11b9d57e93153e6e4605c968565c8924d))
|
|
368
|
+
* **linter:** require suggestion block on commands ([231df91](https://github.com/event4u-app/agent-config/commit/231df918b2d15ea9cc2fa8fe12bae4c2482990df))
|
|
369
|
+
* add --siblings council mode and refine convener wording ([9075647](https://github.com/event4u-app/agent-config/commit/9075647ba520efb5f10ab7612970111e9f9d16e9))
|
|
370
|
+
* add PRD template to technical-specification ([f9ee749](https://github.com/event4u-app/agent-config/commit/f9ee7496434f9342d6b46b95dce14c4703d07d96))
|
|
371
|
+
* add 6-phase loop checklist to systematic-debugging ([29c9e94](https://github.com/event4u-app/agent-config/commit/29c9e9419c9d08dd93c4fc7364e51b93bc771131))
|
|
372
|
+
* add invite-challenge rule for pre-execution goal restatement ([e96da5f](https://github.com/event4u-app/agent-config/commit/e96da5fdf124da3582e454fc625fe32a27ada634))
|
|
373
|
+
* add /challenge-me cluster with vision and with-docs sub-commands ([74481ef](https://github.com/event4u-app/agent-config/commit/74481ef7e7850d3e015ff0f9853be6ea618ac1d9))
|
|
374
|
+
|
|
375
|
+
### Documentation
|
|
376
|
+
|
|
377
|
+
* **roadmap:** drop council-response file links per no-council-references ([d792100](https://github.com/event4u-app/agent-config/commit/d792100ef6b2727cca1338c89fefc4c591513265))
|
|
378
|
+
* **readme:** bump hero command count from 100 to 102 ([3212db4](https://github.com/event4u-app/agent-config/commit/3212db48fb1d62a70f9e87cf9307ee73059b7e4e))
|
|
379
|
+
* **roadmap:** integrate R5 council verdict for caveman-insurance ([38b26e2](https://github.com/event4u-app/agent-config/commit/38b26e2f00504a7c6c821c356964cb0cabefd905))
|
|
380
|
+
* **roadmap:** incorporate R4 verdict + structural findings into caveman integration ([c50f39b](https://github.com/event4u-app/agent-config/commit/c50f39bc9b08c8d59c4cf547aeec7fffbff38bc0))
|
|
381
|
+
* **roadmap:** convert caveman integration Phase 2 to hard cutover ([fb459be](https://github.com/event4u-app/agent-config/commit/fb459be70a093eea1814a38a3b1fec9cf9261363))
|
|
382
|
+
* **harvest:** add Superpowers harvest roadmap, hardened by council R2 ([e559259](https://github.com/event4u-app/agent-config/commit/e559259f789014603067e87141d9feb815b480ab))
|
|
383
|
+
* **harvest:** analyze obra/superpowers v5.1.0 for adoption candidates ([e89e0ee](https://github.com/event4u-app/agent-config/commit/e89e0eeadc4b76517b181c559422e88df5c8122a))
|
|
384
|
+
* **council:** document council_depth frontmatter convention in templates ([ba56412](https://github.com/event4u-app/agent-config/commit/ba56412c76204bbe49366bbceb62e4d31c994fc2))
|
|
385
|
+
|
|
386
|
+
### Chores
|
|
387
|
+
|
|
388
|
+
* **sync:** re-sync compressed mirror with create-pr preview-gate + agent-settings preview_description ([ceab79e](https://github.com/event4u-app/agent-config/commit/ceab79e23be2c1d4ba504b80426d1b91ffdaadd1))
|
|
389
|
+
* bump artefact counts and refresh compression hashes ([2801342](https://github.com/event4u-app/agent-config/commit/28013424668177fc23df45cc56390faba6fd010e))
|
|
390
|
+
* regenerate tool-dir symlinks for challenge-me and invite-challenge ([b3b0ada](https://github.com/event4u-app/agent-config/commit/b3b0ada9ce108b220289c9f044b3f3d0209f0a12))
|
|
391
|
+
* bump artefact counts and refresh compression hashes ([4147de3](https://github.com/event4u-app/agent-config/commit/4147de3b4da24494128a847be194ac901e506df9))
|
|
392
|
+
* sync compressed projection for challenge-me cluster ([9165762](https://github.com/event4u-app/agent-config/commit/91657620e6d822fbe28923e3b008e218f13e5cea))
|
|
393
|
+
|
|
321
394
|
## [1.21.0](https://github.com/event4u-app/agent-config/compare/1.20.0...1.21.0) (2026-05-06)
|
|
322
395
|
|
|
323
396
|
### Features
|
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@ Give your AI agents an audit-disciplined orchestration contract — testing, Git
|
|
|
7
7
|
> Your agent picks up the project's stack, runs tests, prepares PRs, fixes CI — and follows your team's coding standards while doing it. Stack-aware skill sets ship for PHP (Laravel · Symfony · Zend/Laminas), JavaScript (Next.js · React · Node), and cross-stack concerns (API · testing · security · observability).
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
10
|
-
<strong>
|
|
10
|
+
<strong>140 Skills</strong> · <strong>60 Rules</strong> · <strong>103 Commands</strong> · <strong>58 Guidelines</strong> · <strong>8 AI Tools</strong>
|
|
11
11
|
</p>
|
|
12
12
|
|
|
13
13
|
---
|
|
@@ -343,7 +343,7 @@ kernel set: [`docs/contracts/kernel-membership.md`](docs/contracts/kernel-member
|
|
|
343
343
|
| [`/jira-ticket`](.agent-src/commands/jira-ticket.md) | Read ticket from branch, implement feature |
|
|
344
344
|
| [`/compress`](.agent-src/commands/compress.md) | Compress skills for token efficiency |
|
|
345
345
|
|
|
346
|
-
→ [Browse all
|
|
346
|
+
→ [Browse all 103 active commands](.agent-src/commands/)
|
|
347
347
|
|
|
348
348
|
---
|
|
349
349
|
|
|
@@ -368,7 +368,7 @@ Every developer gets the same behavior. No per-user setup needed.
|
|
|
368
368
|
native slash-commands)
|
|
369
369
|
|
|
370
370
|
> **What this means in practice:** Augment Code and Claude Code get the full
|
|
371
|
-
> package (rules +
|
|
371
|
+
> package (rules + 140 skills + 103 native commands). Cursor, Cline, Windsurf,
|
|
372
372
|
> Gemini CLI, and GitHub Copilot only get the **rules** natively; skills and
|
|
373
373
|
> commands are available to them as documentation the agent can read, not as
|
|
374
374
|
> first-class features.
|
|
@@ -413,6 +413,8 @@ for the per-rule routing.
|
|
|
413
413
|
- **Challenge to improve** — agents are thought partners, not yes-machines
|
|
414
414
|
- **Strict by design** — quality over flexibility
|
|
415
415
|
- **Zero overhead by default** — nothing runs until you ask for it
|
|
416
|
+
- **Terse-by-default chat output** — verbosity flags off, intent narration off,
|
|
417
|
+
caveman-speak prose-only — flip back via [`docs/customization.md` § Verbosity](docs/customization.md#verbosity)
|
|
416
418
|
|
|
417
419
|
---
|
|
418
420
|
|
|
@@ -480,10 +482,8 @@ re-enabled or the chat ends. Full scoring contract and hardening:
|
|
|
480
482
|
Edit in `.agent-src.uncompressed/`, compress, verify:
|
|
481
483
|
|
|
482
484
|
```bash
|
|
483
|
-
task sync # Sync non-.md files
|
|
484
485
|
task ci # Run all CI checks
|
|
485
486
|
task test # Run all tests
|
|
486
|
-
task lint-skills # Lint skills, rules, commands
|
|
487
487
|
```
|
|
488
488
|
|
|
489
489
|
→ Full commands and project structure: [**docs/development.md**](docs/development.md)
|
|
@@ -238,6 +238,16 @@ ai_council:
|
|
|
238
238
|
# invocation (or `--rounds N` to the CLI) to override.
|
|
239
239
|
min_rounds: 2
|
|
240
240
|
|
|
241
|
+
# Higher floor for deep-reasoning artefacts (architecture review,
|
|
242
|
+
# refactoring proposals, bug-diagnosis runs). Activated when the
|
|
243
|
+
# consuming rule, skill, or command declares `council_depth: deep`
|
|
244
|
+
# in its frontmatter, or the user passes `--depth deep` to the CLI.
|
|
245
|
+
# Effective rounds = max(deep_min_rounds, min_rounds), so this floor
|
|
246
|
+
# is monotonic — lowering it below `min_rounds` has no effect.
|
|
247
|
+
# Standard tasks keep `min_rounds`; cost rises only when an artefact
|
|
248
|
+
# opts in. Set to `min_rounds` to disable the deep tier.
|
|
249
|
+
deep_min_rounds: 3
|
|
250
|
+
|
|
241
251
|
# Hard cost ceiling per /council invocation. The orchestrator pauses
|
|
242
252
|
# before any member whose projected spend would breach a cap and asks
|
|
243
253
|
# the user to continue. `max_total_usd: 0` disables the USD ceiling
|
|
@@ -298,3 +308,15 @@ commands:
|
|
|
298
308
|
# Commands to never suggest. Still work when typed explicitly.
|
|
299
309
|
# Example: ["/refine-ticket", "/work"]
|
|
300
310
|
blocklist: []
|
|
311
|
+
|
|
312
|
+
# --- /create-pr behavior ---
|
|
313
|
+
#
|
|
314
|
+
# Pre-creation preview of the generated PR description.
|
|
315
|
+
# false (default): skip the title/body preview + adjust loop in
|
|
316
|
+
# /create-pr; use the generated content directly. Saves agent tokens
|
|
317
|
+
# by avoiding a re-render of the full description in chat.
|
|
318
|
+
# true: show title and body in copyable code blocks and ask for
|
|
319
|
+
# adjustments before creating the PR.
|
|
320
|
+
# /create-pr:description-only always previews — that is its sole purpose.
|
|
321
|
+
create_pr:
|
|
322
|
+
preview_description: false
|
package/docs/architecture.md
CHANGED
|
@@ -96,10 +96,10 @@ fails on any source-side violation, without producing artifacts.
|
|
|
96
96
|
|
|
97
97
|
| Layer | Count | Purpose |
|
|
98
98
|
|---|---|---|
|
|
99
|
-
| **Skills** |
|
|
100
|
-
| **Rules** |
|
|
101
|
-
| **Commands** |
|
|
102
|
-
| **Guidelines** |
|
|
99
|
+
| **Skills** | 140 | On-demand expertise — stack analysis (Laravel · Symfony · Zend / Laminas · Next.js · React · Node), testing, Docker, API design, security, observability, … |
|
|
100
|
+
| **Rules** | 60 | Always-active constraints — coding standards, scope control, verification, language-and-tone, agent-authority |
|
|
101
|
+
| **Commands** | 103 | Slash-command workflows — `/commit`, `/create-pr`, `/fix ci`, `/optimize skills`, `/feature plan`, `/work`, `/implement-ticket`, `/compress`, … |
|
|
102
|
+
| **Guidelines** | 58 | Reference material cited by skills — PHP patterns, Eloquent, Playwright, agent-infra, … |
|
|
103
103
|
| **Templates** | 7 | Scaffolds for features, roadmaps, contexts, skills, overrides |
|
|
104
104
|
| **Contexts** | 5 | Shared knowledge about the system itself |
|
|
105
105
|
|
|
@@ -33,7 +33,7 @@ column 1 of this table.
|
|
|
33
33
|
| `chat-history` | 2 | `show` · `import` · `learn` | `chat-history` (legacy status) — `resume` / `clear` / `checkpoint` removed in `road-to-chat-history-hook-only` (auto-adopt + structural hooks); `import` (verbatim cross-session render) and `learn` (project-improving learning extraction) added in the v4 stateless schema |
|
|
34
34
|
| `agents` | 2 | `audit` · `cleanup` · `prepare` | `agents-audit` · `agents-cleanup` · `agents-prepare` |
|
|
35
35
|
| `memory` | 2 | `add` · `load` · `promote` · `propose` | `memory-add` · `memory-full` · `memory-promote` · `propose-memory` |
|
|
36
|
-
| `roadmap` | 2 | `create` · `
|
|
36
|
+
| `roadmap` | 2 | `create` · `ai-council` · `process-step` · `process-phase` · `process-full` | `roadmap-create` · `roadmap-execute` (replaced — autonomous, no per-step gate; `process-phase` is the default execution scope); `ai-council` added 2026-05-07 — wraps `/council default` with `--input-mode roadmap --depth deep` |
|
|
37
37
|
| `module` | 2 | `create` · `explore` | `module-create` · `module-explore` |
|
|
38
38
|
| `tests` | 2 | `create` · `execute` | `tests-create` · `tests-execute` |
|
|
39
39
|
| `context` | 2 | `create` · `refactor` | `context-create` · `context-refactor` |
|
|
@@ -43,6 +43,7 @@ column 1 of this table.
|
|
|
43
43
|
| `commit` | 2 | `in-chunks` | `commit-in-chunks` |
|
|
44
44
|
| `create-pr` | 2 | `description-only` | `create-pr-description` |
|
|
45
45
|
| `council` | 3 | `default` · `pr` · `design` · `optimize` | `council` (legacy default lens) · `council-pr` · `council-design` · `council-optimize` |
|
|
46
|
+
| `challenge-me` | — | `vision` · `with-docs` | new — Pocock-inspired one-question-at-a-time interview; `vision` is the standard 95%-confidence variant, `with-docs` adds doc/glossary awareness with a session-scoped glossary and load-bearing claim-vs-code verification |
|
|
46
47
|
|
|
47
48
|
**Net change:** Phase 1 collapsed 15 atomics → 3 clusters; Phase 2
|
|
48
49
|
collapses 26 atomics → 11 sub-command clusters. Sub-commands use
|
|
@@ -51,6 +52,49 @@ autocomplete them. The standalone `/review` surface that mirrors
|
|
|
51
52
|
`judge solo` lives at
|
|
52
53
|
[`commands/review-changes.md`](../../.agent-src.uncompressed/commands/review-changes.md).
|
|
53
54
|
|
|
55
|
+
## Cluster depth and sub-command naming
|
|
56
|
+
|
|
57
|
+
Locked by [ADR-003](../decisions/ADR-003-flat-cluster-subs-and-colon-syntax.md)
|
|
58
|
+
(2026-05-07). The shape is the default for **every** new cluster and
|
|
59
|
+
every new sub-command added to an existing cluster.
|
|
60
|
+
|
|
61
|
+
1. **Flat only.** A cluster has exactly one level of sub-commands.
|
|
62
|
+
No sub-sub-commands. A dispatcher routes `/cluster <sub>` to a
|
|
63
|
+
single sub-file; sub-files do not dispatch further. Two-level
|
|
64
|
+
dispatch is a deliberate contract change requiring a new ADR
|
|
65
|
+
superseding ADR-003.
|
|
66
|
+
|
|
67
|
+
2. **Composite sub-names for verb+scope.** When a cluster carries
|
|
68
|
+
multiple verbs (e.g. authoring + execution), encode the verb in
|
|
69
|
+
the sub-name, joined with `-`:
|
|
70
|
+
|
|
71
|
+
- ✅ `/roadmap:create` · `/roadmap:process-step` ·
|
|
72
|
+
`/roadmap:process-phase` · `/roadmap:process-full`
|
|
73
|
+
- ❌ `/roadmap:process:phase` (sub-sub — forbidden)
|
|
74
|
+
- ❌ `/roadmap:step` · `/roadmap:phase` · `/roadmap:full`
|
|
75
|
+
(verb hidden — breaks symmetry with `create`)
|
|
76
|
+
- ❌ separate `/roadmap-process` cluster (domain split — forbidden
|
|
77
|
+
when one cluster can carry both verbs flat)
|
|
78
|
+
|
|
79
|
+
Sibling sub-names stay in the same shape: either all bare verbs,
|
|
80
|
+
all bare nouns/scopes, or all composite. Mixing bare and composite
|
|
81
|
+
in the same cluster is allowed only when the bare sibling is the
|
|
82
|
+
cluster's primary verb (e.g. `/roadmap:create` + `process-*`
|
|
83
|
+
composites).
|
|
84
|
+
|
|
85
|
+
3. **Sub-name format.** kebab-case (`pr-bots`, `process-phase`),
|
|
86
|
+
≤ 24 chars, no leading verb that duplicates the cluster name
|
|
87
|
+
(use `/fix:ci`, not `/fix:fix-ci`).
|
|
88
|
+
|
|
89
|
+
4. **Colon-canonical invocation.**
|
|
90
|
+
`/<cluster>:<sub>` is the canonical form everywhere — catalog,
|
|
91
|
+
docs, examples, deprecation warnings. The space-separated form
|
|
92
|
+
`/<cluster> <sub>` is a first-class equivalent and routes to the
|
|
93
|
+
same dispatcher; it must keep working. Autocompletion-aware UIs
|
|
94
|
+
surface the colon form because it stays a single token. Full
|
|
95
|
+
semantics: [`slash-command-routing-policy-mechanics.md`](../../.agent-src.uncompressed/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md)
|
|
96
|
+
§ Routing semantics.
|
|
97
|
+
|
|
54
98
|
## Frontmatter contract
|
|
55
99
|
|
|
56
100
|
A new command file under `.agent-src.uncompressed/commands/` MUST
|
package/docs/customization.md
CHANGED
|
@@ -120,6 +120,78 @@ behavior — the per-profile table is just the initial default.
|
|
|
120
120
|
|
|
121
121
|
`custom` ignores these defaults — set every value explicitly.
|
|
122
122
|
|
|
123
|
+
### Verbosity
|
|
124
|
+
|
|
125
|
+
The `verbosity:` block and `caveman.speak_scope` control how much narration
|
|
126
|
+
the agent emits around routine actions. Defaults are tuned for token
|
|
127
|
+
frugality — flip values to `true` (or higher tier) to restore legacy verbose
|
|
128
|
+
output. Iron-Law gates (`commit-policy`, `scope-control` git-ops,
|
|
129
|
+
`non-destructive-by-default`) ALWAYS confirm regardless of these flags.
|
|
130
|
+
|
|
131
|
+
| Setting | Values | Default | Description |
|
|
132
|
+
|---|---|---|---|
|
|
133
|
+
| `verbosity.preview_artifacts` | `true`, `false` | `false` | Show generated commit messages, PR titles/bodies, and branch names before acting. `false` = use the generated content directly. |
|
|
134
|
+
| `verbosity.routine_confirmations` | `true`, `false` | `false` | Confirmation prompts for routine workflow steps when there is one obvious answer ("looks good — commit?"). Iron-Law gates always ask regardless. |
|
|
135
|
+
| `verbosity.offer_council_in_delivery` | `true`, `false` | `false` | Offer "run AI Council on this?" inside delivery commands (`/feature-plan`, `/review-changes`, `/roadmap-create`). The `/council` command itself is unaffected. |
|
|
136
|
+
| `verbosity.post_action_reports` | `off`, `minimal`, `full` | `minimal` | Multi-line status / summary blocks after a successful action. `off` = no report; `minimal` = one-line confirmation; `full` = bullet list. |
|
|
137
|
+
| `verbosity.intent_announcements` | `true`, `false` | `false` | Intent announcements ("Let me check…", "Now I will…", "Found it") in skill bodies. `false` = act and emit the result. |
|
|
138
|
+
| `verbosity.script_output` | `silent`, `minimal`, `verbose` | `minimal` | Stdout chatter from `scripts/*.py`, `scripts/*.sh`, and `.augment/scripts/`. `silent` = stderr only; `minimal` = one summary line per script; `verbose` = pre-Phase-10 per-step prints. Iron-Law surfaces (release confirms, install secrets prompts, error markers) ignore this key. |
|
|
139
|
+
| `verbosity.taskfile_command_echo` | `true`, `false` | `false` | Suppress the `task: [name] cmd...` echo Taskfile prints before each task body. `true` = echoes preserved (legacy behaviour); `false` = `silent: true` is set on every Phase-10 safe task. |
|
|
140
|
+
| `caveman.speak_scope` | `off`, `prose_only`, `aggressive` | `prose_only` | How widely caveman-speak grammar applies in chat. `off` = no caveman; `prose_only` = caveman in body prose, numbered options + Iron-Law-literal blocks stay full prose; `aggressive` = caveman everywhere except Iron-Law literals. |
|
|
141
|
+
|
|
142
|
+
The cross-rule index for these defaults lives in
|
|
143
|
+
[`.agent-src.uncompressed/contexts/contracts/frugality-charter.md`](../.agent-src.uncompressed/contexts/contracts/frugality-charter.md).
|
|
144
|
+
Writer skills (`skill-writing`, `rule-writing`, `command-writing`,
|
|
145
|
+
`guideline-writing`, `roadmap-writing`, `persona-writing`,
|
|
146
|
+
`agent-docs-writing`, `context-authoring`, `conventional-commits-writing`,
|
|
147
|
+
`readme-writing`, `readme-writing-package`, `adr-create`) cite the charter
|
|
148
|
+
under their `## Frugality Standards` section.
|
|
149
|
+
|
|
150
|
+
#### Behavior change vs. legacy — `/create-pr` silent draft default
|
|
151
|
+
|
|
152
|
+
When `verbosity.routine_confirmations: false` (the new default),
|
|
153
|
+
`/create-pr` creates the PR as a **draft silently** instead of asking
|
|
154
|
+
"draft or ready?". A one-line postscript surfaces the override:
|
|
155
|
+
|
|
156
|
+
```
|
|
157
|
+
→ #42 opened: https://github.com/org/repo/pull/42
|
|
158
|
+
→ created as draft — run `gh pr ready 42` to flip
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
Per-invocation overrides (no settings change required):
|
|
162
|
+
|
|
163
|
+
| You want | Argument |
|
|
164
|
+
|---|---|
|
|
165
|
+
| Ready-for-review immediately | `/create-pr:ready` or `/create-pr:final` |
|
|
166
|
+
| Explicit draft (no postscript change) | `/create-pr:draft` |
|
|
167
|
+
| Numbered prompt restored | set `verbosity.routine_confirmations: true` |
|
|
168
|
+
|
|
169
|
+
`/create-pr` still skips the AI council prompt unconditionally per the
|
|
170
|
+
existing carve-out — `verbosity.offer_council_in_delivery` does not
|
|
171
|
+
re-enable it. Use `/council diff:<base>..<head>` separately.
|
|
172
|
+
|
|
173
|
+
#### Script-output level — env-var overrides
|
|
174
|
+
|
|
175
|
+
`verbosity.script_output` is read by `scripts/_lib/script_output.py`.
|
|
176
|
+
For incident debugging when editing `.agent-settings.yml` is awkward,
|
|
177
|
+
two env vars override the file for the current process tree:
|
|
178
|
+
|
|
179
|
+
| Env var | Value | Effect |
|
|
180
|
+
|---|---|---|
|
|
181
|
+
| `AGENT_SCRIPT_VERBOSITY` | `silent`, `minimal`, `verbose` | Authoritative — wins over the settings file |
|
|
182
|
+
| `SCRIPT_OUTPUT_VERBOSE` | `1` | Alias — equivalent to `AGENT_SCRIPT_VERBOSITY=verbose` |
|
|
183
|
+
|
|
184
|
+
Once the helper resolves the level, it exports the resolved value back
|
|
185
|
+
into `AGENT_SCRIPT_VERBOSITY` so child processes inherit the same level
|
|
186
|
+
without re-reading the settings file. Per-call `--quiet` flags on a
|
|
187
|
+
child script still win at the call site (per-call override > inherited
|
|
188
|
+
level).
|
|
189
|
+
|
|
190
|
+
Iron-Law surfaces — production-deploy confirmation prompts in
|
|
191
|
+
`scripts/release.py`, secret-installer prompts in `install_*_key.sh`,
|
|
192
|
+
and any output via `error()` — bypass the helper and stay loud at every
|
|
193
|
+
level.
|
|
194
|
+
|
|
123
195
|
---
|
|
124
196
|
|
|
125
197
|
## Project documentation
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
# ADR-003 — Flat Cluster Sub-Commands and Colon-Canonical Invocation
|
|
2
|
+
|
|
3
|
+
- **Status:** Accepted (2026-05-07)
|
|
4
|
+
- **Phase:** Command-cluster contract (Phase 2 follow-up)
|
|
5
|
+
- **Supersedes:** none — extends the locked cluster set in
|
|
6
|
+
`docs/contracts/command-clusters.md`.
|
|
7
|
+
- **Related:** `roadmap-process` migration (2026-05-07) — the trigger
|
|
8
|
+
that forced the decision; `contexts/execution/roadmap-process-loop.md`
|
|
9
|
+
(the shared mechanics extracted alongside).
|
|
10
|
+
|
|
11
|
+
## Context
|
|
12
|
+
|
|
13
|
+
`roadmap-execute` was being replaced by an autonomous-execution surface
|
|
14
|
+
with three scopes: single step, single phase, full roadmap. The
|
|
15
|
+
question was where those three commands live in the cluster catalog.
|
|
16
|
+
Four shapes were on the table:
|
|
17
|
+
|
|
18
|
+
- **A — separate `/roadmap-process` cluster.** Two top-level clusters
|
|
19
|
+
(`/roadmap` for authoring, `/roadmap-process` for execution).
|
|
20
|
+
- **B — sub-sub-commands** (`/roadmap:process:phase`). One cluster,
|
|
21
|
+
two-level dispatch.
|
|
22
|
+
- **C — flat under `/roadmap`, no verb** (`/roadmap:step` ·
|
|
23
|
+
`/roadmap:phase` · `/roadmap:full`). Verb hidden in cluster
|
|
24
|
+
description.
|
|
25
|
+
- **D — flat under `/roadmap`, verb fused with scope**
|
|
26
|
+
(`/roadmap:process-step` · `/roadmap:process-phase` ·
|
|
27
|
+
`/roadmap:process-full`). One cluster, one dispatch level, composite
|
|
28
|
+
sub-name carries the verb.
|
|
29
|
+
|
|
30
|
+
Existing infrastructure assumed a single dispatch level: the contract
|
|
31
|
+
table at `docs/contracts/command-clusters.md`, the linter
|
|
32
|
+
`scripts/lint_no_new_atomic_commands.py`, and the dispatcher-shape
|
|
33
|
+
checker `scripts/check_cluster_patterns.py` all parse one column of
|
|
34
|
+
sub-names per cluster.
|
|
35
|
+
|
|
36
|
+
## Decision
|
|
37
|
+
|
|
38
|
+
1. **Cluster depth stays flat.** A cluster has exactly one level of
|
|
39
|
+
sub-commands. No sub-sub-commands. Option B is rejected.
|
|
40
|
+
|
|
41
|
+
2. **Verb-and-scope sub-commands use a composite name** joined by `-`
|
|
42
|
+
(`process-step`, `process-phase`, `process-full`). The verb stays
|
|
43
|
+
visible in the autocomplete list; symmetry with sibling
|
|
44
|
+
sub-commands (`/roadmap:create`) is preserved as
|
|
45
|
+
verb-or-noun-per-sub. Option D wins over C.
|
|
46
|
+
|
|
47
|
+
3. **Colon is the canonical invocation form** (`/<cluster>:<sub>`).
|
|
48
|
+
The space-separated form (`/<cluster> <sub>`) remains a
|
|
49
|
+
first-class equivalent — both forms route to the same dispatcher.
|
|
50
|
+
Autocompletion-aware UIs (Claude Code picker, IDE slash-menus,
|
|
51
|
+
shell completers) MUST surface the colon form because it stays a
|
|
52
|
+
single token.
|
|
53
|
+
|
|
54
|
+
4. **Future verb+scope clusters follow the same shape.** Any future
|
|
55
|
+
cluster with multiple verbs (e.g. an authoring verb and an
|
|
56
|
+
execution verb) uses composite sub-names rather than introducing a
|
|
57
|
+
second cluster or a second dispatch level.
|
|
58
|
+
|
|
59
|
+
## Rationale
|
|
60
|
+
|
|
61
|
+
- **Option A (separate cluster)** scatters one domain across two
|
|
62
|
+
top-level surfaces. Users have to remember which cluster owns
|
|
63
|
+
which verb; the catalog grows without adding capability.
|
|
64
|
+
- **Option B (sub-sub)** would be the first two-level dispatcher in
|
|
65
|
+
the repo. Cost: contract change in `command-clusters.md`,
|
|
66
|
+
linter change in `lint_no_new_atomic_commands.py` (parse a second
|
|
67
|
+
column), pattern-checker change in `check_cluster_patterns.py`
|
|
68
|
+
(allow nested dispatch sections), plus an ADR to set the precedent
|
|
69
|
+
— for a cohesion benefit that Option D delivers at zero
|
|
70
|
+
architectural cost.
|
|
71
|
+
- **Option C (no verb)** breaks symmetry: `/roadmap:create` is a
|
|
72
|
+
verb, `/roadmap:phase` is a scope. The mental model becomes
|
|
73
|
+
inconsistent in the same cluster.
|
|
74
|
+
- **Option D (composite verb-scope)** keeps the cluster flat, keeps
|
|
75
|
+
the verb visible, costs nothing in the linter or contract
|
|
76
|
+
parser (one row, four sub-names, kebab-case as before), and
|
|
77
|
+
scales to any future verb+scope cluster.
|
|
78
|
+
|
|
79
|
+
The colon form was already canonical for flag-clusters
|
|
80
|
+
(`/commit:in-chunks`, `/create-pr:description-only`). Promoting it
|
|
81
|
+
to the canonical form for dispatcher-clusters too unifies the
|
|
82
|
+
catalog: every sub-command is a single token.
|
|
83
|
+
|
|
84
|
+
## Consequences
|
|
85
|
+
|
|
86
|
+
- **Pro:** Zero architectural cost. The locked contract, both
|
|
87
|
+
linters, the dispatcher pattern checker, and the routing rule all
|
|
88
|
+
keep working unchanged. The cluster row in
|
|
89
|
+
`docs/contracts/command-clusters.md` extends with three new
|
|
90
|
+
sub-names.
|
|
91
|
+
- **Pro:** Single-token autocompletion across the entire command
|
|
92
|
+
surface. Greppable in chat history and logs.
|
|
93
|
+
- **Pro:** Domain cohesion — `/roadmap:*` covers the full
|
|
94
|
+
authoring + execution lifecycle.
|
|
95
|
+
- **Con:** Sub-names get longer when the verb is non-obvious from the
|
|
96
|
+
cluster. `/roadmap:process-phase` is 24 chars vs.
|
|
97
|
+
`/roadmap-process:phase` (Option A, 23 chars) or
|
|
98
|
+
`/roadmap:phase` (Option C, 16 chars). Acceptable trade for
|
|
99
|
+
symmetry and zero contract churn.
|
|
100
|
+
- **Con:** A cluster cannot grow into a true two-level surface
|
|
101
|
+
without revisiting this ADR. Rolling back to Option B is the
|
|
102
|
+
escape hatch if a future cluster genuinely needs nested verbs.
|
|
103
|
+
|
|
104
|
+
## Rollback
|
|
105
|
+
|
|
106
|
+
If a future cluster grows past ~8 sibling sub-commands and the
|
|
107
|
+
composite-name pattern produces ambiguous or unreadable
|
|
108
|
+
sub-commands, revisit by:
|
|
109
|
+
|
|
110
|
+
1. Splitting the cluster into two flat clusters (Option A on a
|
|
111
|
+
case-by-case basis), or
|
|
112
|
+
2. Introducing sub-sub-commands as a deliberate contract change —
|
|
113
|
+
updating `command-clusters.md`, `lint_no_new_atomic_commands.py`,
|
|
114
|
+
`check_cluster_patterns.py`, and superseding this ADR.
|
|
115
|
+
|
|
116
|
+
Both moves are reversible. This ADR locks the default, not the
|
|
117
|
+
ceiling.
|
|
118
|
+
|
|
119
|
+
## See also
|
|
120
|
+
|
|
121
|
+
- [`docs/contracts/command-clusters.md`](../contracts/command-clusters.md)
|
|
122
|
+
— locked cluster set + sub-command naming contract.
|
|
123
|
+
- [`.agent-src.uncompressed/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md`](../../.agent-src.uncompressed/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md)
|
|
124
|
+
— runtime routing semantics and the colon-canonical rule.
|
|
125
|
+
- [`.agent-src.uncompressed/contexts/execution/roadmap-process-loop.md`](../../.agent-src.uncompressed/contexts/execution/roadmap-process-loop.md)
|
|
126
|
+
— the shared mechanics that motivated the cluster shape.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# ADR Index
|
|
2
|
+
|
|
3
|
+
_Auto-generated by `scripts/adr/regenerate_index.py`. Do not edit._
|
|
4
|
+
|
|
5
|
+
| # | Title | Status | Date | Supersedes |
|
|
6
|
+
|---|---|---|---|---|
|
|
7
|
+
| [ADR-001](ADR-001-kernel-swap-deferred.md) | Kernel Swap Deferred | accepted | 2026-05-06 | — |
|
|
8
|
+
| [ADR-002](ADR-002-kernel-bucket-overrides.md) | Kernel Bucket Overrides | — | — | — |
|
|
9
|
+
| [ADR-003](ADR-003-flat-cluster-subs-and-colon-syntax.md) | Flat Cluster Subs And Colon Syntax | — | — | — |
|
|
10
|
+
|
|
11
|
+
## Unnumbered (legacy)
|
|
12
|
+
|
|
13
|
+
| # | Title | Status | Date | Supersedes |
|
|
14
|
+
|---|---|---|---|---|
|
|
15
|
+
| [ADR-rule-kernel-and-router](ADR-rule-kernel-and-router.md) | — | — | — | — |
|
package/docs/getting-started.md
CHANGED
|
@@ -115,7 +115,7 @@ Your agent is now:
|
|
|
115
115
|
- **Respecting your codebase** — no conflicting patterns
|
|
116
116
|
- **Following standards** — consistent code quality
|
|
117
117
|
|
|
118
|
-
This is enforced automatically by
|
|
118
|
+
This is enforced automatically by 60 rules. No configuration needed.
|
|
119
119
|
|
|
120
120
|
---
|
|
121
121
|
|
|
@@ -153,7 +153,7 @@ Your agent now understands slash commands:
|
|
|
153
153
|
| `/quality-fix` | Run and fix all quality checks |
|
|
154
154
|
| `/chat-history` | Inspect the persistent chat-history log (read-only `show`) |
|
|
155
155
|
|
|
156
|
-
→ [Browse all
|
|
156
|
+
→ [Browse all 103 active commands](../.agent-src/commands/)
|
|
157
157
|
|
|
158
158
|
---
|
|
159
159
|
|
|
@@ -12,21 +12,22 @@ always-loaded rule body — extracted to fit the always-rule budget.
|
|
|
12
12
|
|
|
13
13
|
## Vague-request triggers — example questions
|
|
14
14
|
|
|
15
|
-
Companion to `ask-when-uncertain` § Vague-request triggers.
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
Companion to `ask-when-uncertain` § Vague-request triggers. This
|
|
16
|
+
section is the canonical home for the nine trigger patterns, the
|
|
17
|
+
missing-info each one hides, and the example clarifying question —
|
|
18
|
+
the rule cites it instead of restating the catalog.
|
|
18
19
|
|
|
19
|
-
| Pattern | Example clarifying question |
|
|
20
|
-
|
|
21
|
-
| "improve / optimize this" | "Optimize for what — execution speed or readability?" |
|
|
22
|
-
| "add caching" | "Which cache driver, and what invalidates it?" |
|
|
23
|
-
| "make it better / cleaner" | "What specifically feels wrong in the current code?" |
|
|
24
|
-
| "clean up this file" | "Remove unused code, reformat, or restructure?" |
|
|
25
|
-
| "fix this" (
|
|
26
|
-
| "refactor X" | "Refactor toward what — smaller methods, extract class, or something else?" |
|
|
27
|
-
| "use best practices" | "Best practices for what specifically — testing, naming, structure?" |
|
|
28
|
-
| "handle errors properly" | "For which failure modes, and what should happen on error?" |
|
|
29
|
-
| "add a UI / component / tile / page"
|
|
20
|
+
| Pattern | Missing info | Example clarifying question |
|
|
21
|
+
|---|---|---|
|
|
22
|
+
| "improve / optimize this" | metric — speed, readability, memory? | "Optimize for what — execution speed or readability?" |
|
|
23
|
+
| "add caching" | store, scope, invalidation | "Which cache driver, and what invalidates it?" |
|
|
24
|
+
| "make it better / cleaner" | by what standard? | "What specifically feels wrong in the current code?" |
|
|
25
|
+
| "clean up this file" | dead code, format, refactor? | "Remove unused code, reformat, or restructure?" |
|
|
26
|
+
| "fix this" (no symptom) | what output is wrong? | "What output/behavior is wrong right now?" |
|
|
27
|
+
| "refactor X" | target pattern, boundaries | "Refactor toward what — smaller methods, extract class, or something else?" |
|
|
28
|
+
| "use best practices" | whose, for what? | "Best practices for what specifically — testing, naming, structure?" |
|
|
29
|
+
| "handle errors properly" | which errors — log/retry/propagate? | "For which failure modes, and what should happen on error?" |
|
|
30
|
+
| "add a UI / component / tile / page" in mixed-framework repo | which stack? | "This repo uses {A} and {B} for UI — which one for this?" |
|
|
30
31
|
|
|
31
32
|
## One-question-per-turn — why serial always wins
|
|
32
33
|
|
|
@@ -49,8 +50,10 @@ next. Serial preserves the framing; parallel destroys it.
|
|
|
49
50
|
|
|
50
51
|
## Cheap-question class catalog — extended examples
|
|
51
52
|
|
|
52
|
-
Companion to `no-cheap-questions` § What counts as cheap.
|
|
53
|
-
|
|
53
|
+
Companion to `no-cheap-questions` § What counts as cheap. This
|
|
54
|
+
section is the canonical home for the nine cheap-question classes
|
|
55
|
+
and their per-class patterns — the rule cites it instead of
|
|
56
|
+
restating the catalog.
|
|
54
57
|
|
|
55
58
|
| Class | Pattern · why cheap | Concrete example |
|
|
56
59
|
|---|---|---|
|
|
@@ -66,9 +69,10 @@ lists the classes; this file adds longer-form examples per class.
|
|
|
66
69
|
|
|
67
70
|
## Direct-answers — severity-tiered claim examples
|
|
68
71
|
|
|
69
|
-
Companion to `direct-answers` § Iron Law 2 (no invented facts).
|
|
70
|
-
|
|
71
|
-
|
|
72
|
+
Companion to `direct-answers` § Iron Law 2 (no invented facts). This
|
|
73
|
+
section is the canonical home for the severity tiers, per-tier
|
|
74
|
+
verification actions, and the override carve-out — the rule cites it
|
|
75
|
+
instead of restating the table.
|
|
72
76
|
|
|
73
77
|
| Severity | Examples | Verification action |
|
|
74
78
|
|---|---|---|
|
|
@@ -76,6 +80,10 @@ hedge-language patterns.
|
|
|
76
80
|
| **Medium — project-shape** | "This project uses Pest for testing", "controllers live under `app/Http/Controllers`" | Verify if one tool call reaches it; otherwise hedge: *"I'd guess X — not checked"*. |
|
|
77
81
|
| **Low — well-known idioms** | "PHP `array_map` returns a new array", "git tags are immutable", "JS arrays are zero-indexed" | Inference acceptable. Mark as inference if not 100% sure. |
|
|
78
82
|
|
|
83
|
+
**Override:** "just guess" / "rough estimate" / "skip verify" in the
|
|
84
|
+
user's turn drops every claim to **Low** for that turn only. Reverts
|
|
85
|
+
on the next turn unless the user repeats the override.
|
|
86
|
+
|
|
79
87
|
Hedge-language patterns:
|
|
80
88
|
|
|
81
89
|
- ✅ "haven't verified X — likely from {known-similar-codebase}"
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Decidable Carve-Out Predicates
|
|
2
|
+
|
|
3
|
+
Companion to [`frugality-charter`](../../../.agent-src.uncompressed/contexts/contracts/frugality-charter.md). Each carve-out below carries a one-sentence test. If the test cannot be answered yes/no from the artifact alone, the carve-out does not fire and default-terse rules apply.
|
|
4
|
+
|
|
5
|
+
## Predicates
|
|
6
|
+
|
|
7
|
+
- **Iron-Law literal** — the prose is an ALL-CAPS fenced block inside a rule whose title appears in [`docs/contracts/kernel-membership.md`](../../contracts/kernel-membership.md).
|
|
8
|
+
|
|
9
|
+
- **Numbered-options with genuine trade-off** — the options differ in consequence (a chosen path produces a measurably different artifact or state), not in sequencing or output format. Per [`no-cheap-questions § What counts as cheap`](../../../.agent-src.uncompressed/rules/no-cheap-questions.md#what-counts-as-cheap).
|
|
10
|
+
|
|
11
|
+
- **Security-sensitive prompt** — the prompt requires credential input OR modifies auth / tenant / secret state, matching a trigger in [`security-sensitive-stop`](../../../.agent-src.uncompressed/rules/security-sensitive-stop.md).
|
|
12
|
+
|
|
13
|
+
- **Structured CLI contract** — the script's stdout is consumed by another script (a downstream parser exists under `scripts/` or `.augment/scripts/`), so the format is part of an interface contract, not narration.
|
|
14
|
+
|
|
15
|
+
## How to use
|
|
16
|
+
|
|
17
|
+
Writer skills (`skill-writing`, `rule-writing`, `command-writing`, `guideline-writing`, `context-authoring`, `agent-docs-writing`, `conventional-commits-writing`, `readme-writing`, `readme-writing-package`, `adr-create`, `persona-writing`, `roadmap-writing`) cite this file when an artifact's pre-save check needs a decidable test for a carve-out exception. The default is **terse** — predicates here only fire when the artifact provides the yes/no evidence.
|