@event4u/agent-config 1.14.0 → 1.16.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/agent-handoff.md +1 -1
- package/.agent-src/commands/bug-fix.md +3 -3
- package/.agent-src/commands/bug-investigate.md +2 -2
- package/.agent-src/commands/chat-history-checkpoint.md +3 -3
- package/.agent-src/commands/chat-history-clear.md +2 -2
- package/.agent-src/commands/chat-history-resume.md +2 -2
- package/.agent-src/commands/chat-history.md +3 -3
- package/.agent-src/commands/check-current-md.md +44 -33
- package/.agent-src/commands/commit-in-chunks.md +43 -23
- package/.agent-src/commands/compress.md +34 -2
- package/.agent-src/commands/council-design.md +96 -0
- package/.agent-src/commands/council-optimize.md +115 -0
- package/.agent-src/commands/council-pr.md +123 -0
- package/.agent-src/commands/council.md +219 -0
- package/.agent-src/commands/create-pr.md +23 -0
- package/.agent-src/commands/do-and-judge.md +3 -3
- package/.agent-src/commands/do-in-steps.md +4 -4
- package/.agent-src/commands/e2e-heal.md +1 -1
- package/.agent-src/commands/e2e-plan.md +1 -1
- package/.agent-src/commands/feature-dev.md +8 -0
- package/.agent-src/commands/feature-explore.md +6 -1
- package/.agent-src/commands/feature-plan.md +33 -2
- package/.agent-src/commands/feature-refactor.md +5 -0
- package/.agent-src/commands/feature-roadmap.md +8 -3
- package/.agent-src/commands/feature.md +58 -0
- package/.agent-src/commands/fix-ci.md +5 -0
- package/.agent-src/commands/fix-portability.md +7 -2
- package/.agent-src/commands/fix-pr-bot-comments.md +5 -0
- package/.agent-src/commands/fix-pr-comments.md +5 -0
- package/.agent-src/commands/fix-pr-developer-comments.md +5 -0
- package/.agent-src/commands/fix-references.md +5 -0
- package/.agent-src/commands/fix-seeder.md +5 -0
- package/.agent-src/commands/fix.md +60 -0
- package/.agent-src/commands/jira-ticket.md +1 -1
- package/.agent-src/commands/judge.md +1 -1
- package/.agent-src/commands/memory-add.md +3 -3
- package/.agent-src/commands/memory-full.md +2 -2
- package/.agent-src/commands/memory-promote.md +2 -2
- package/.agent-src/commands/mode.md +5 -5
- package/.agent-src/commands/onboard.md +17 -8
- package/.agent-src/commands/optimize-agents.md +6 -1
- package/.agent-src/commands/optimize-augmentignore.md +14 -0
- package/.agent-src/commands/optimize-rtk-filters.md +5 -0
- package/.agent-src/commands/optimize-skills.md +6 -1
- package/.agent-src/commands/optimize.md +54 -0
- package/.agent-src/commands/propose-memory.md +2 -2
- package/.agent-src/commands/refine-ticket.md +9 -7
- package/.agent-src/commands/review-changes.md +61 -9
- package/.agent-src/commands/review-routing.md +1 -1
- package/.agent-src/commands/roadmap-create.md +42 -4
- package/.agent-src/commands/roadmap-execute.md +9 -7
- package/.agent-src/commands/set-cost-profile.md +11 -3
- package/.agent-src/commands/sync-agent-settings.md +11 -2
- package/.agent-src/commands/tests-create.md +1 -1
- package/.agent-src/commands/tests-execute.md +2 -3
- package/.agent-src/commands/upstream-contribute.md +1 -1
- package/.agent-src/contexts/authority/commit-mechanics.md +57 -0
- package/.agent-src/contexts/authority/destructive-mechanics.md +66 -0
- package/.agent-src/contexts/authority/scope-mechanics.md +87 -0
- package/.agent-src/contexts/execution/autonomy-detection.md +54 -0
- package/.agent-src/contexts/execution/autonomy-examples.md +90 -0
- package/.agent-src/contexts/execution/autonomy-mechanics.md +29 -0
- package/.agent-src/contexts/execution/verification-mechanics.md +80 -0
- package/.agent-src/personas/README.md +1 -1
- package/.agent-src/rules/agent-authority.md +24 -0
- package/.agent-src/rules/architecture.md +1 -1
- package/.agent-src/rules/artifact-drafting-protocol.md +1 -1
- package/.agent-src/rules/artifact-engagement-recording.md +2 -2
- package/.agent-src/rules/ask-when-uncertain.md +1 -1
- package/.agent-src/rules/augment-portability.md +56 -37
- package/.agent-src/rules/autonomous-execution.md +78 -114
- package/.agent-src/rules/capture-learnings.md +1 -1
- package/.agent-src/rules/chat-history-cadence.md +109 -0
- package/.agent-src/rules/chat-history-ownership.md +123 -0
- package/.agent-src/rules/chat-history-visibility.md +96 -0
- package/.agent-src/rules/cli-output-handling.md +1 -1
- package/.agent-src/rules/{command-suggestion.md → command-suggestion-policy.md} +10 -9
- package/.agent-src/rules/commit-conventions.md +1 -1
- package/.agent-src/rules/commit-policy.md +43 -61
- package/.agent-src/rules/context-hygiene.md +3 -3
- package/.agent-src/rules/direct-answers.md +2 -2
- package/.agent-src/rules/docs-sync.md +1 -1
- package/.agent-src/rules/e2e-testing.md +1 -1
- package/.agent-src/rules/guidelines.md +4 -4
- package/.agent-src/rules/improve-before-implement.md +2 -2
- package/.agent-src/rules/language-and-tone.md +41 -96
- package/.agent-src/rules/minimal-safe-diff.md +3 -3
- package/.agent-src/rules/model-recommendation.md +4 -4
- package/.agent-src/rules/no-cheap-questions.md +89 -0
- package/.agent-src/rules/non-destructive-by-default.md +25 -59
- package/.agent-src/rules/onboarding-gate.md +5 -5
- package/.agent-src/rules/review-routing-awareness.md +9 -9
- package/.agent-src/rules/roadmap-progress-sync.md +132 -80
- package/.agent-src/rules/role-mode-adherence.md +3 -3
- package/.agent-src/rules/scope-control.md +65 -46
- package/.agent-src/rules/security-sensitive-stop.md +2 -2
- package/.agent-src/rules/size-enforcement.md +3 -2
- package/.agent-src/rules/think-before-action.md +5 -5
- package/.agent-src/rules/token-efficiency.md +4 -4
- package/.agent-src/rules/{ui-audit-before-build.md → ui-audit-gate.md} +3 -3
- package/.agent-src/rules/user-interaction.md +31 -7
- package/.agent-src/rules/verify-before-complete.md +12 -67
- package/.agent-src/scripts/update_roadmap_progress.py +65 -8
- package/.agent-src/skills/ai-council/SKILL.md +333 -0
- package/.agent-src/skills/api-endpoint/SKILL.md +2 -2
- package/.agent-src/skills/blade-ui/SKILL.md +30 -11
- package/.agent-src/skills/blast-radius-analyzer/SKILL.md +1 -1
- package/.agent-src/skills/bug-analyzer/SKILL.md +1 -1
- package/.agent-src/skills/command-routing/SKILL.md +1 -1
- package/.agent-src/skills/command-writing/SKILL.md +16 -5
- package/.agent-src/skills/conventional-commits-writing/SKILL.md +1 -1
- package/.agent-src/skills/copilot-agents-optimization/SKILL.md +2 -2
- package/.agent-src/skills/developer-like-execution/SKILL.md +2 -2
- package/.agent-src/skills/existing-ui-audit/SKILL.md +24 -9
- package/.agent-src/skills/fe-design/SKILL.md +20 -15
- package/.agent-src/skills/file-editor/SKILL.md +9 -0
- package/.agent-src/skills/flux/SKILL.md +1 -1
- package/.agent-src/skills/git-workflow/SKILL.md +1 -1
- package/.agent-src/skills/guideline-writing/SKILL.md +11 -11
- package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +4 -4
- package/.agent-src/skills/livewire/SKILL.md +27 -8
- package/.agent-src/skills/override-management/SKILL.md +2 -2
- package/.agent-src/skills/php-coder/SKILL.md +1 -1
- package/.agent-src/skills/playwright-testing/SKILL.md +2 -2
- package/.agent-src/skills/readme-reviewer/SKILL.md +1 -1
- package/.agent-src/skills/readme-writing/SKILL.md +1 -1
- package/.agent-src/skills/readme-writing-package/SKILL.md +1 -1
- package/.agent-src/skills/receiving-code-review/SKILL.md +1 -1
- package/.agent-src/skills/refine-ticket/SKILL.md +30 -24
- package/.agent-src/skills/review-routing/SKILL.md +2 -2
- package/.agent-src/skills/roadmap-management/SKILL.md +22 -16
- package/.agent-src/skills/rule-writing/SKILL.md +1 -1
- package/.agent-src/skills/skill-reviewer/SKILL.md +1 -1
- package/.agent-src/skills/skill-writing/SKILL.md +6 -6
- package/.agent-src/skills/subagent-orchestration/SKILL.md +1 -0
- package/.agent-src/skills/systematic-debugging/SKILL.md +1 -1
- package/.agent-src/skills/upstream-contribute/SKILL.md +3 -3
- package/.agent-src/skills/validate-feature-fit/SKILL.md +2 -2
- package/.agent-src/skills/{verify-before-complete → verify-completion-evidence}/SKILL.md +2 -2
- package/.agent-src/templates/agent-settings.md +9 -9
- package/.agent-src/templates/contexts/auth-model.md +1 -1
- package/.agent-src/templates/roadmaps.md +9 -8
- package/.agent-src/templates/scripts/README.md +2 -2
- package/.agent-src/templates/scripts/memory_lookup.py +1 -1
- package/.agent-src/templates/scripts/telemetry/aggregator.py +16 -1
- package/.agent-src/templates/scripts/telemetry/engagement.py +59 -0
- package/.agent-src/templates/scripts/telemetry/report_renderer.py +28 -1
- package/.agent-src/templates/scripts/telemetry_record.py +14 -1
- package/.agent-src/templates/scripts/work_engine/__init__.py +2 -2
- package/.agent-src/templates/scripts/work_engine/cli.py +64 -461
- package/.agent-src/templates/scripts/work_engine/cli_args.py +116 -0
- package/.agent-src/templates/scripts/work_engine/delivery_state.py +3 -3
- package/.agent-src/templates/scripts/work_engine/directives/backend/__init__.py +1 -1
- package/.agent-src/templates/scripts/work_engine/directives/backend/implement.py +1 -1
- package/.agent-src/templates/scripts/work_engine/directives/backend/memory.py +1 -1
- package/.agent-src/templates/scripts/work_engine/directives/backend/plan.py +1 -1
- package/.agent-src/templates/scripts/work_engine/directives/backend/report.py +1 -1
- package/.agent-src/templates/scripts/work_engine/dispatcher.py +1 -1
- package/.agent-src/templates/scripts/work_engine/emitters.py +43 -0
- package/.agent-src/templates/scripts/work_engine/errors.py +19 -0
- package/.agent-src/templates/scripts/work_engine/hook_bootstrap.py +76 -0
- package/.agent-src/templates/scripts/work_engine/input_builders.py +163 -0
- package/.agent-src/templates/scripts/work_engine/migration/v0_to_v1.py +34 -2
- package/.agent-src/templates/scripts/work_engine/persona_policy.py +1 -1
- package/.agent-src/templates/scripts/work_engine/resolvers/prompt.py +1 -1
- package/.agent-src/templates/scripts/work_engine/state_io.py +202 -0
- package/.claude-plugin/marketplace.json +10 -2
- package/AGENTS.md +16 -12
- package/CHANGELOG.md +206 -9
- package/README.md +51 -52
- package/config/agent-settings.template.yml +58 -1
- package/config/gitignore-block.txt +3 -0
- package/docs/MIGRATION.md +122 -0
- package/docs/architecture.md +83 -34
- package/docs/catalog.md +331 -0
- package/docs/contracts/STABILITY.md +134 -0
- package/docs/contracts/adr-chat-history-split.md +132 -0
- package/docs/contracts/adr-command-suggestion.md +146 -0
- package/docs/contracts/adr-implement-ticket-runtime.md +122 -0
- package/docs/contracts/adr-product-ui-track.md +384 -0
- package/docs/contracts/adr-prompt-driven-execution.md +187 -0
- package/docs/contracts/agent-memory-contract.md +149 -0
- package/docs/contracts/artifact-engagement-flow.md +262 -0
- package/docs/contracts/command-clusters.md +126 -0
- package/docs/contracts/command-suggestion-flow.md +148 -0
- package/docs/contracts/implement-ticket-flow.md +628 -0
- package/docs/contracts/linear-ai-rules-inclusion.md +143 -0
- package/docs/contracts/linear-ai-three-layers.md +131 -0
- package/docs/contracts/load-context-schema.md +186 -0
- package/docs/contracts/rule-interactions.md +107 -0
- package/docs/contracts/rule-interactions.yml +238 -0
- package/docs/contracts/rule-priority-hierarchy.md +87 -0
- package/docs/contracts/ui-stack-extension.md +236 -0
- package/docs/contracts/ui-track-flow.md +338 -0
- package/docs/customization.md +14 -0
- package/docs/end-to-end-walkthroughs.md +165 -0
- package/docs/getting-started.md +27 -9
- package/docs/github-topics.md +12 -3
- package/docs/guidelines/agent-infra/language-and-tone-examples.md +79 -0
- package/{.agent-src → docs}/guidelines/docs/readme-size-and-splitting.md +26 -25
- package/docs/guidelines/php/git.md +164 -0
- package/docs/installation.md +42 -6
- package/docs/migrations/commands-1.15.0.md +112 -0
- package/docs/showcase.md +9 -4
- package/docs/skills-catalog.md +14 -8
- package/docs/ui-track-mental-model.md +121 -0
- package/llms.txt +13 -7
- package/package.json +1 -1
- package/scripts/agent-config +23 -0
- package/scripts/ai_council/__init__.py +39 -0
- package/scripts/ai_council/_default_prices.py +41 -0
- package/scripts/ai_council/_one_off_rebalancing_audit.py +149 -0
- package/scripts/ai_council/_one_off_roundtrip.py +106 -0
- package/scripts/ai_council/budget_guard.py +172 -0
- package/scripts/ai_council/bundler.py +261 -0
- package/scripts/ai_council/clients.py +381 -0
- package/scripts/ai_council/modes.py +127 -0
- package/scripts/ai_council/orchestrator.py +350 -0
- package/scripts/ai_council/pricing.py +213 -0
- package/scripts/ai_council/project_context.py +159 -0
- package/scripts/ai_council/prompts.py +232 -0
- package/scripts/ai_council/session.py +144 -0
- package/scripts/build_linear_digest.py +4 -4
- package/scripts/check_always_budget.py +126 -0
- package/scripts/check_augmentignore.py +69 -0
- package/scripts/check_command_count_messaging.py +120 -0
- package/scripts/check_portability.py +57 -0
- package/scripts/check_public_catalog_links.py +122 -0
- package/scripts/check_public_links.py +185 -0
- package/scripts/check_references.py +5 -1
- package/scripts/check_roadmap_trackable.py +111 -0
- package/scripts/command_suggester/cooldown.py +1 -1
- package/scripts/generate_index.py +266 -0
- package/scripts/install_anthropic_key.sh +5 -0
- package/scripts/install_openai_key.sh +106 -0
- package/scripts/lint_load_context.py +163 -0
- package/scripts/lint_no_new_atomic_commands.py +179 -0
- package/scripts/lint_rule_interactions.py +149 -0
- package/scripts/memory_lookup.py +1 -1
- package/scripts/release.py +297 -64
- package/scripts/schemas/command.schema.json +20 -0
- package/scripts/schemas/rule.schema.json +10 -0
- package/scripts/skill_linter.py +26 -4
- package/scripts/sync_agent_settings.py +1 -1
- package/scripts/update_counts.py +19 -4
- package/scripts/update_prices.py +124 -0
- package/.agent-src/guidelines/php/git.md +0 -96
- package/.agent-src/rules/chat-history.md +0 -200
- /package/.agent-src/rules/{slash-commands.md → slash-command-routing-policy.md} +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/agent-interaction-and-decision-quality.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/break-glass-usage.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/developer-judgment.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/engineering-memory-data-format.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/layered-settings.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/memory-access.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/naming.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/output-patterns.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/review-routing-data-format.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/role-contracts.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/role-mode-router.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/runtime-layer.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/self-improvement-pipeline.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/size-and-scope.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/tool-integration.md +0 -0
- /package/{.agent-src → docs}/guidelines/e2e/playwright.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/api-design.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/artisan-commands.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/blade-ui.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/controllers.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/database.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/eloquent.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/flux.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/general.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/jobs.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/livewire.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/logging.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/naming.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/dependency-injection.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/dtos.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/events.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/factory.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/pipelines.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/policies.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/repositories.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/service-layer.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/strategy.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/performance.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/resources.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/security.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/sql.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/validations.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/websocket.md +0 -0
|
@@ -73,7 +73,7 @@ Show the handoff prompt in a fenced code block and say:
|
|
|
73
73
|
and without any persistent file.
|
|
74
74
|
- [`/chat-history-resume`](chat-history-resume.md) is **pull-based**: the
|
|
75
75
|
new chat reads `.agent-chat-history` from disk (written by the
|
|
76
|
-
[`chat-history`](../rules/chat-history.md) rule). Works only on the
|
|
76
|
+
[`chat-history`](../rules/chat-history-ownership.md) rule). Works only on the
|
|
77
77
|
same machine and same repo, but captures more detail (every phase /
|
|
78
78
|
tool call / decision the prior session logged).
|
|
79
79
|
|
|
@@ -75,8 +75,8 @@ RISIKO-CHECK:
|
|
|
75
75
|
For each change:
|
|
76
76
|
|
|
77
77
|
1. **Read the file** before modifying.
|
|
78
|
-
2. **Make the change**
|
|
79
|
-
3. **Check for downstream effects** —
|
|
78
|
+
2. **Make the change** with the file-edit tool available to the agent.
|
|
79
|
+
3. **Check for downstream effects** — search the codebase for callers.
|
|
80
80
|
4. **Update related code** if signatures or behavior changed.
|
|
81
81
|
|
|
82
82
|
### 4. Quality checks
|
|
@@ -182,4 +182,4 @@ What next?
|
|
|
182
182
|
|
|
183
183
|
## See also
|
|
184
184
|
|
|
185
|
-
- [`role-contracts`](
|
|
185
|
+
- [`role-contracts`](../../docs/guidelines/agent-infra/role-contracts.md#developer) — Developer mode output contract (Goal / Plan / Changes / Tests / Open questions)
|
|
@@ -175,5 +175,5 @@ What's next?
|
|
|
175
175
|
|
|
176
176
|
## See also
|
|
177
177
|
|
|
178
|
-
- [`role-contracts`](
|
|
179
|
-
- [`role-contracts`](
|
|
178
|
+
- [`role-contracts`](../../docs/guidelines/agent-infra/role-contracts.md#incident) — Incident mode output contract (Symptom / Reproduction / Minimal reversible change / Deferred verification / Follow-up commitment) — use when the bug is a live production issue with `break-glass: true`
|
|
179
|
+
- [`role-contracts`](../../docs/guidelines/agent-infra/role-contracts.md#developer) — Developer mode output contract for non-incident bugs
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: chat-history-checkpoint
|
|
3
|
-
description: Append a phase-boundary entry to .agent-chat-history —
|
|
3
|
+
description: Append a phase-boundary entry to .agent-chat-history — CHECKPOINT fallback for platforms without a native hook (Augment IDE, Cursor pre-1.7, Cline non-Mac/Linux). ~1s.
|
|
4
4
|
disable-model-invocation: true
|
|
5
5
|
suggestion:
|
|
6
6
|
eligible: true
|
|
@@ -104,7 +104,7 @@ If the helper returned `skipped_cadence`, surface it:
|
|
|
104
104
|
|
|
105
105
|
- The command writes through the same ownership-state machine as
|
|
106
106
|
hooks — a `foreign` log triggers the
|
|
107
|
-
[`chat-history`](../rules/chat-history.md) Foreign-Prompt before any
|
|
107
|
+
[`chat-history`](../rules/chat-history-ownership.md) Foreign-Prompt before any
|
|
108
108
|
append. This is intentional; the checkpoint must not silently
|
|
109
109
|
hijack another session's log.
|
|
110
110
|
- The `phase` payload key is required. Other keys are accepted but
|
|
@@ -117,7 +117,7 @@ If the helper returned `skipped_cadence`, surface it:
|
|
|
117
117
|
|
|
118
118
|
## See also
|
|
119
119
|
|
|
120
|
-
- [`chat-history`](../rules/chat-history.md) — the rule defining the
|
|
120
|
+
- [`chat-history`](../rules/chat-history-ownership.md) — the rule defining the
|
|
121
121
|
conditional Iron Law (HOOK platforms vs CHECKPOINT/MANUAL platforms)
|
|
122
122
|
- [`/chat-history`](chat-history.md) — read-only status display
|
|
123
123
|
- [`/chat-history-resume`](chat-history-resume.md) — adopt + load
|
|
@@ -24,7 +24,7 @@ touching the file, unless the file does not exist in the first place.
|
|
|
24
24
|
- Keep the entries but re-point the header → [`/chat-history-resume`](chat-history-resume.md).
|
|
25
25
|
- Disable logging entirely → set `chat_history.enabled: false` in
|
|
26
26
|
`.agent-settings.yml`; see
|
|
27
|
-
[`layered-settings`](
|
|
27
|
+
[`layered-settings`](../../docs/guidelines/agent-infra/layered-settings.md#section-aware-merge-rules).
|
|
28
28
|
Disabling does not delete the existing file; run this command
|
|
29
29
|
afterwards if you also want it gone.
|
|
30
30
|
|
|
@@ -96,7 +96,7 @@ effect — this command is scoped to the file on disk only.
|
|
|
96
96
|
|
|
97
97
|
## See also
|
|
98
98
|
|
|
99
|
-
- [`chat-history`](../rules/chat-history.md) — the rule that writes the file
|
|
99
|
+
- [`chat-history`](../rules/chat-history-ownership.md) — the rule that writes the file
|
|
100
100
|
- [`/chat-history`](chat-history.md) — status inspection
|
|
101
101
|
- [`/chat-history-resume`](chat-history-resume.md) — load + adopt instead of wipe
|
|
102
102
|
- [`agent-settings` template](../templates/agent-settings.md) — `chat_history.*` reference
|
|
@@ -17,7 +17,7 @@ flow: silent summarize, adopt, merge, or replace.
|
|
|
17
17
|
|
|
18
18
|
Use after a crashed chat, after switching tools (Augment → Claude Code),
|
|
19
19
|
or when the agent showed the foreign- or returning-session prompt from
|
|
20
|
-
the [`chat-history`](../rules/chat-history.md) rule and the user picked
|
|
20
|
+
the [`chat-history`](../rules/chat-history-ownership.md) rule and the user picked
|
|
21
21
|
"resume".
|
|
22
22
|
|
|
23
23
|
## When NOT to use
|
|
@@ -174,7 +174,7 @@ the user decides what to do next.
|
|
|
174
174
|
|
|
175
175
|
## See also
|
|
176
176
|
|
|
177
|
-
- [`chat-history`](../rules/chat-history.md) — the rule that triggers
|
|
177
|
+
- [`chat-history`](../rules/chat-history-ownership.md) — the rule that triggers
|
|
178
178
|
this command via the foreign- and returning-session prompts
|
|
179
179
|
- [`/chat-history`](chat-history.md) — status inspection without adopting
|
|
180
180
|
- [`/chat-history-clear`](chat-history-clear.md) — wipe instead of adopt
|
|
@@ -12,7 +12,7 @@ suggestion:
|
|
|
12
12
|
# /chat-history
|
|
13
13
|
|
|
14
14
|
Inspect `.agent-chat-history` — the JSONL log maintained by the
|
|
15
|
-
[`chat-history`](../rules/chat-history.md) rule for crash recovery.
|
|
15
|
+
[`chat-history`](../rules/chat-history-ownership.md) rule for crash recovery.
|
|
16
16
|
|
|
17
17
|
Shows:
|
|
18
18
|
|
|
@@ -31,7 +31,7 @@ Read-only — this command never writes to the file.
|
|
|
31
31
|
- Wipe the file → [`/chat-history-clear`](chat-history-clear.md).
|
|
32
32
|
- Configure logging behavior → edit `.agent-settings.yml` directly
|
|
33
33
|
(`chat_history.*`); see
|
|
34
|
-
[`layered-settings`](
|
|
34
|
+
[`layered-settings`](../../docs/guidelines/agent-infra/layered-settings.md#section-aware-merge-rules).
|
|
35
35
|
|
|
36
36
|
## Steps
|
|
37
37
|
|
|
@@ -100,7 +100,7 @@ append may trigger overflow handling.
|
|
|
100
100
|
|
|
101
101
|
## See also
|
|
102
102
|
|
|
103
|
-
- [`chat-history`](../rules/chat-history.md) — the rule that writes the file
|
|
103
|
+
- [`chat-history`](../rules/chat-history-ownership.md) — the rule that writes the file
|
|
104
104
|
- [`/chat-history-resume`](chat-history-resume.md) — adopt + load
|
|
105
105
|
- [`/chat-history-clear`](chat-history-clear.md) — wipe
|
|
106
106
|
- [`agent-settings` template](../templates/agent-settings.md) — `chat_history.*` reference
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: check-current-md
|
|
3
|
-
description: Check the
|
|
3
|
+
description: Check the open .md file (or a passed path) for German outside DE:/EN: anchor blocks — umlauts, function words, untranslated quotes. Reports and offers fixes.
|
|
4
4
|
disable-model-invocation: true
|
|
5
5
|
suggestion:
|
|
6
6
|
eligible: false
|
|
@@ -9,23 +9,23 @@ suggestion:
|
|
|
9
9
|
|
|
10
10
|
# check-current-md
|
|
11
11
|
|
|
12
|
-
Manual runner for [`md-language-check`](../skills/md-language-check/SKILL.md)
|
|
13
|
-
Use to spot-check an `.md` file the agent did not just edit, or to
|
|
14
|
-
before opening a PR.
|
|
12
|
+
Manual runner for the [`md-language-check`](../skills/md-language-check/SKILL.md)
|
|
13
|
+
skill. Use to spot-check an `.md` file the agent did not just edit, or to
|
|
14
|
+
audit a file before opening a PR.
|
|
15
15
|
|
|
16
16
|
## Instructions
|
|
17
17
|
|
|
18
18
|
### 1. Resolve target paths
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
in the editor (per `personal.ide` open-file
|
|
22
|
-
no path passed:
|
|
20
|
+
If the user passed one or more paths, use those. Otherwise, default to
|
|
21
|
+
the file currently open in the editor (per `personal.ide` open-file
|
|
22
|
+
context). If no file is open and no path was passed:
|
|
23
23
|
|
|
24
24
|
```
|
|
25
25
|
> ❌ No target file. Pass a path: /check-current-md path/to/file.md
|
|
26
26
|
```
|
|
27
27
|
|
|
28
|
-
Stop.
|
|
28
|
+
Stop here.
|
|
29
29
|
|
|
30
30
|
### 2. Run the checker
|
|
31
31
|
|
|
@@ -33,8 +33,11 @@ Stop.
|
|
|
33
33
|
python3 scripts/check_md_language.py <path> [<path> …] --format json
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
-
Exit codes:
|
|
37
|
-
|
|
36
|
+
Exit codes:
|
|
37
|
+
|
|
38
|
+
- `0` → no findings; report and stop
|
|
39
|
+
- `1` → findings present; continue to step 3
|
|
40
|
+
- `3` → internal error; surface stderr and stop
|
|
38
41
|
|
|
39
42
|
### 3. Display findings
|
|
40
43
|
|
|
@@ -46,7 +49,7 @@ internal error (surface stderr, stop).
|
|
|
46
49
|
Found: {count} violation(s) across {files} file(s)
|
|
47
50
|
```
|
|
48
51
|
|
|
49
|
-
|
|
52
|
+
For each violation:
|
|
50
53
|
|
|
51
54
|
```
|
|
52
55
|
{file}:{line} — kind: {umlaut|de_word} — match: `{matched_text}`
|
|
@@ -57,14 +60,16 @@ Group by file when multiple files are scanned.
|
|
|
57
60
|
|
|
58
61
|
### 4. Classify and propose fixes
|
|
59
62
|
|
|
63
|
+
For each violation, propose one of:
|
|
64
|
+
|
|
60
65
|
| Cause | Proposed fix |
|
|
61
66
|
|---|---|
|
|
62
|
-
| German sentence in body prose | Translate to English |
|
|
67
|
+
| German sentence in body prose | Translate the line to English |
|
|
63
68
|
| Quoted German token used as example | Move into a labeled `DE: … · EN: …` block |
|
|
64
|
-
| Meta-
|
|
65
|
-
|
|
|
69
|
+
| Meta-documentation that documents trigger words | Append `<!-- md-language-check: ignore -->` to the line |
|
|
70
|
+
| Line is intentionally bilingual but unlabeled | Reformat as labeled anchor block |
|
|
66
71
|
|
|
67
|
-
|
|
72
|
+
Present a summary:
|
|
68
73
|
|
|
69
74
|
```
|
|
70
75
|
Proposed fixes:
|
|
@@ -76,20 +81,21 @@ Summary:
|
|
|
76
81
|
> 3. Skip — report only
|
|
77
82
|
```
|
|
78
83
|
|
|
79
|
-
Recommendation: **2 — Apply interactively** when ≥3 findings,
|
|
80
|
-
|
|
84
|
+
Recommendation: **2 — Apply interactively** when ≥3 findings, **1 —
|
|
85
|
+
Apply all fixes** for ≤2 findings or when all are pure translations.
|
|
81
86
|
|
|
82
87
|
### 5. Apply fixes
|
|
83
88
|
|
|
84
89
|
Edit only the source-of-truth file:
|
|
85
90
|
|
|
86
|
-
- `.agent-src.uncompressed/` → edit directly
|
|
87
|
-
- `.agent-src/` → edit the matching
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
-
|
|
91
|
+
- Path under `.agent-src.uncompressed/` → edit there directly
|
|
92
|
+
- Path under `.agent-src/` → edit the matching
|
|
93
|
+
`.agent-src.uncompressed/` file instead, then run
|
|
94
|
+
`bash scripts/compress.sh --sync`
|
|
95
|
+
- Path under `.augment/` → same as `.agent-src/` (it's a projection)
|
|
96
|
+
- Path under `agents/` → edit directly (no compression layer)
|
|
91
97
|
|
|
92
|
-
|
|
98
|
+
After all fixes, re-run:
|
|
93
99
|
|
|
94
100
|
```bash
|
|
95
101
|
python3 scripts/check_md_language.py <path> [<path> …]
|
|
@@ -97,27 +103,32 @@ python3 scripts/check_md_language.py <path> [<path> …]
|
|
|
97
103
|
|
|
98
104
|
### 6. Mark hashes (only if `.agent-src.uncompressed/` was edited)
|
|
99
105
|
|
|
106
|
+
For each modified source file:
|
|
107
|
+
|
|
100
108
|
```bash
|
|
101
109
|
python3 scripts/compress.py --mark-done "{relative_path}"
|
|
102
110
|
```
|
|
103
111
|
|
|
104
|
-
|
|
112
|
+
This keeps `.compression-hashes.json` consistent with the new content.
|
|
105
113
|
|
|
106
114
|
## Rules
|
|
107
115
|
|
|
108
|
-
- **Never edit `.augment/` directly** — it's a generated projection
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
- **
|
|
116
|
+
- **Never edit `.augment/` directly** — it's a generated projection.
|
|
117
|
+
Per [`augment-source-of-truth`](../rules/augment-source-of-truth.md),
|
|
118
|
+
the source is `.agent-src.uncompressed/`.
|
|
119
|
+
- **Per-line ignore marker is reserved** for meta-documentation that
|
|
120
|
+
must quote German tokens; do NOT use it as a generic mute.
|
|
121
|
+
- **Frontmatter is exempt** — the checker skips YAML frontmatter at
|
|
122
|
+
the head of the file; do not try to "fix" frontmatter.
|
|
123
|
+
- **Do NOT commit or push** — finishing the check leaves the working
|
|
124
|
+
tree to the user.
|
|
114
125
|
|
|
115
126
|
## When NOT to use
|
|
116
127
|
|
|
117
128
|
- Project content outside `.agent-src*/`, `.augment/`, or `agents/`
|
|
118
|
-
follows a different language policy
|
|
119
|
-
- During autonomous edits the [`md-language-check`](../skills/md-language-check/SKILL.md)
|
|
120
|
-
skill already gates saves; this command is for **manual** spot-checks
|
|
129
|
+
follows a different language policy — do not enforce English there.
|
|
130
|
+
- During autonomous edits, the [`md-language-check`](../skills/md-language-check/SKILL.md)
|
|
131
|
+
skill already gates saves; this command is for **manual** spot-checks.
|
|
121
132
|
|
|
122
133
|
## See also
|
|
123
134
|
|
|
@@ -11,10 +11,10 @@ suggestion:
|
|
|
11
11
|
|
|
12
12
|
# commit-in-chunks
|
|
13
13
|
|
|
14
|
-
Auto-split and commit all local changes in one go. Use when you
|
|
15
|
-
commits made without being asked to confirm each batch. Sibling
|
|
16
|
-
[`/commit`](commit.md), which
|
|
17
|
-
|
|
14
|
+
Auto-split and commit all local changes in one go. Use this when you
|
|
15
|
+
want commits made without being asked to confirm each batch. Sibling
|
|
16
|
+
of [`/commit`](commit.md), which presents the plan and waits for
|
|
17
|
+
approval. This command skips the approval step.
|
|
18
18
|
|
|
19
19
|
Per [`autonomous-execution`](../rules/autonomous-execution.md), the
|
|
20
20
|
agent does **not** commit on its own initiative — invoking this
|
|
@@ -30,29 +30,36 @@ git diff --stat
|
|
|
30
30
|
git diff --cached --stat
|
|
31
31
|
```
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
If there are no uncommitted changes (staged or unstaged), report
|
|
34
|
+
"Nothing to commit." and stop.
|
|
34
35
|
|
|
35
36
|
### 2. Determine the ticket number
|
|
36
37
|
|
|
37
|
-
- Extract ticket ID from current branch (e.g. `feat/DEV-1234/...`
|
|
38
|
-
|
|
38
|
+
- Extract the ticket ID from the current branch name (e.g. `feat/DEV-1234/...`
|
|
39
|
+
→ `DEV-1234`).
|
|
40
|
+
- If no ticket ID is found, omit the scope from the messages — write
|
|
41
|
+
`chore: ...` not `chore(): ...`. Do **not** ask the user for one.
|
|
39
42
|
|
|
40
43
|
### 3. Analyze and split
|
|
41
44
|
|
|
42
|
-
Group changed files into logical units
|
|
45
|
+
Group changed files into logical units following [`/commit`](commit.md)
|
|
46
|
+
step 3 grouping rules:
|
|
43
47
|
|
|
44
48
|
- Same feature / fix → one commit.
|
|
45
49
|
- Migration + corresponding model/seeder → one commit.
|
|
46
|
-
- Test + class under test → one commit.
|
|
47
|
-
- Style-only (ECS/Rector/formatter) → separate `style:` /
|
|
50
|
+
- Test + the class under test → one commit.
|
|
51
|
+
- Style-only changes (ECS/Rector/formatter) → separate `style:` /
|
|
52
|
+
`chore:` commit when mixed with logic changes.
|
|
48
53
|
- Truly unrelated change → its own commit.
|
|
49
54
|
|
|
50
55
|
Splitting rules:
|
|
51
|
-
- **Do NOT split arbitrarily** — only when logically
|
|
56
|
+
- **Do NOT split arbitrarily** — only when the changes are logically
|
|
57
|
+
independent.
|
|
52
58
|
- **Prefer fewer, coherent commits** over many tiny ones.
|
|
53
|
-
- **Tests go with the code they test** unless test-only changes are
|
|
59
|
+
- **Tests go with the code they test** unless test-only changes are
|
|
60
|
+
large and noisy.
|
|
54
61
|
|
|
55
|
-
Generate messages per [`commit-conventions`](../rules/commit-conventions.md).
|
|
62
|
+
Generate commit messages per [`commit-conventions`](../rules/commit-conventions.md).
|
|
56
63
|
|
|
57
64
|
### 4. Commit immediately
|
|
58
65
|
|
|
@@ -63,10 +70,13 @@ git add {files...}
|
|
|
63
70
|
git commit -m "{message}"
|
|
64
71
|
```
|
|
65
72
|
|
|
66
|
-
No "looks good?" prompt. No confirmation.
|
|
73
|
+
No "looks good?" prompt. No confirmation step. The user invoked this
|
|
74
|
+
command knowing the plan would be executed.
|
|
67
75
|
|
|
68
76
|
### 5. Report
|
|
69
77
|
|
|
78
|
+
Show a summary:
|
|
79
|
+
|
|
70
80
|
```
|
|
71
81
|
Created N commits:
|
|
72
82
|
1. {sha1} feat(DEV-1234): {summary}
|
|
@@ -80,19 +90,29 @@ Include `git log --oneline -N` output for verification.
|
|
|
80
90
|
|
|
81
91
|
- **Never push** — pushing remains explicit per [`scope-control`](../rules/scope-control.md#git-operations--permission-gated).
|
|
82
92
|
- **Never modify files** — only stage and commit existing changes.
|
|
83
|
-
- **Do NOT add untracked files** unless clearly part of the
|
|
84
|
-
|
|
85
|
-
- **
|
|
86
|
-
- **
|
|
93
|
+
- **Do NOT add untracked files** unless they are clearly part of the
|
|
94
|
+
change (check with `git status` first).
|
|
95
|
+
- **Follow commit conventions** as defined in [`commit-conventions`](../rules/commit-conventions.md).
|
|
96
|
+
- **Stop on first failure** — if `git commit` fails (hook rejection,
|
|
97
|
+
pre-commit lint error), stop, report the error, and do not continue
|
|
98
|
+
with the remaining planned commits. Leave staged files for the user
|
|
99
|
+
to inspect.
|
|
100
|
+
- **No interactive prompts** — fail fast over hanging waiting for
|
|
101
|
+
input.
|
|
87
102
|
|
|
88
103
|
## When NOT to use
|
|
89
104
|
|
|
90
|
-
-
|
|
91
|
-
|
|
92
|
-
-
|
|
105
|
+
- The user has not seen the diff yet and would benefit from review →
|
|
106
|
+
use [`/commit`](commit.md) instead.
|
|
107
|
+
- The diff includes large unrelated changes the user might want to
|
|
108
|
+
reorganise → use [`/commit`](commit.md).
|
|
109
|
+
- The repo has a pre-commit hook that requires manual response → fix
|
|
110
|
+
the hook or use `/commit`.
|
|
93
111
|
|
|
94
112
|
## See also
|
|
95
113
|
|
|
96
114
|
- [`/commit`](commit.md) — split + present plan + wait for approval
|
|
97
|
-
- [`autonomous-execution`](../rules/autonomous-execution.md) — the
|
|
98
|
-
-
|
|
115
|
+
- [`autonomous-execution`](../rules/autonomous-execution.md) — the
|
|
116
|
+
rule that defines the no-ask commit default this command opts out of
|
|
117
|
+
- [`commit-conventions`](../rules/commit-conventions.md) — message
|
|
118
|
+
format
|
|
@@ -34,7 +34,8 @@ bash scripts/compress.sh --changed
|
|
|
34
34
|
This lists only `.md` files whose source has changed since the last compression (based on
|
|
35
35
|
stored SHA-256 hashes). If no files changed → you're done.
|
|
36
36
|
|
|
37
|
-
If you need to see ALL files regardless of change status:
|
|
37
|
+
If you need to see ALL files regardless of change status:
|
|
38
|
+
`bash scripts/compress.sh --list`.
|
|
38
39
|
|
|
39
40
|
## Step 3: Compress each changed .md file
|
|
40
41
|
|
|
@@ -71,6 +72,7 @@ For each changed `.md` file:
|
|
|
71
72
|
- Concrete validation checks
|
|
72
73
|
- Gotchas based on real failure patterns
|
|
73
74
|
- Anti-patterns that prevent recurring failures
|
|
75
|
+
- **Iron Law sections** — see "Iron Laws — do not touch" below
|
|
74
76
|
5. **Enrich (SKILL.md files only):** During compression, also improve agent-effectiveness:
|
|
75
77
|
- **Validation steps:** If a Procedure ends with a vague validation ("check if it works"),
|
|
76
78
|
replace with concrete checks (expected output, commands to verify, specific conditions)
|
|
@@ -140,9 +142,39 @@ Show a summary table with per-category stats (files compressed, avg savings).
|
|
|
140
142
|
(useful after an initial full compression or when bootstrapping the hash file).
|
|
141
143
|
- A file with no stored hash is always treated as "changed".
|
|
142
144
|
|
|
145
|
+
## Iron Laws — do not touch
|
|
146
|
+
|
|
147
|
+
Sections under headings matching `Iron Law`, `Iron Laws`, or `The Iron Law` (any
|
|
148
|
+
heading level, numbered variants like `Iron Law 1` included) are **load-bearing
|
|
149
|
+
behavioral rules**. Compression rules above do **not** apply to them.
|
|
150
|
+
|
|
151
|
+
For every Iron Law section in a source file:
|
|
152
|
+
|
|
153
|
+
- **Copy the heading verbatim**, exact text, exact `#` level. NEVER downgrade
|
|
154
|
+
`## Iron Law` to `### Iron Law` or to inline `**Iron Law:**`.
|
|
155
|
+
- **Copy the fenced code block byte-for-byte**, including capitalization, line
|
|
156
|
+
breaks, and trailing punctuation.
|
|
157
|
+
- **Copy the negation clauses verbatim** — `NO X`, `NEVER Y`, `NOT Z`. These
|
|
158
|
+
are the law's exception denials; stripping them weakens the rule.
|
|
159
|
+
- **Caveman the prose, keep every passage** — every paragraph, every list
|
|
160
|
+
item, and every fenced code block from the source must appear in the
|
|
161
|
+
compressed output, in order. Drop articles, shorten phrasing, primitive
|
|
162
|
+
grammar, terse cave-speak — all encouraged. What's forbidden is dropping
|
|
163
|
+
whole sentences, merging two paragraphs into one, or skipping a bullet.
|
|
164
|
+
One paragraph → one paragraph; one bullet → one bullet.
|
|
165
|
+
- **No word-count budget** — compress the prose as hard as caveman style
|
|
166
|
+
allows. The check is structural (passage count), not quantitative.
|
|
167
|
+
|
|
168
|
+
`scripts/check_compression.py` enforces these mechanically — `iron_law_missing`,
|
|
169
|
+
`iron_law_passage_dropped`, and `iron_law_heading_downgrade` are `error`-level
|
|
170
|
+
and block CI.
|
|
171
|
+
|
|
172
|
+
If an Iron Law section genuinely contains filler (rare): edit the SOURCE in
|
|
173
|
+
`.agent-src.uncompressed/`, not the compressed copy. Source is the truth.
|
|
174
|
+
|
|
143
175
|
## Compression quality checklist
|
|
144
176
|
|
|
145
|
-
**Also apply the `preservation-guard` rule** — strongest validation, example, anti-pattern, and decision hints must survive compression.
|
|
177
|
+
**Also apply the `preservation-guard` rule** — strongest validation, example, anti-pattern, and decision hints must survive compression. Iron Laws are non-negotiable.
|
|
146
178
|
|
|
147
179
|
After compressing each file, verify:
|
|
148
180
|
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: council-design
|
|
3
|
+
cluster: optimize
|
|
4
|
+
skills: [ai-council]
|
|
5
|
+
description: Run the council on a design document, ADR, or architecture proposal — surfaces hidden coupling, missing rollback, and sequencing risk before commitment.
|
|
6
|
+
disable-model-invocation: true
|
|
7
|
+
suggestion:
|
|
8
|
+
eligible: true
|
|
9
|
+
trigger_description: "council on this design, second opinion on the ADR, external review of architecture proposal"
|
|
10
|
+
trigger_context: "user has a design doc / ADR / architecture proposal and wants an external review before commitment"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# council-design
|
|
14
|
+
|
|
15
|
+
## Instructions
|
|
16
|
+
|
|
17
|
+
Specialised council mode for **design documents, ADRs, and
|
|
18
|
+
architecture proposals**. Wraps `/council files:<paths>` (or
|
|
19
|
+
`/council prompt:"…"`) with the `design` mode neutrality preamble that
|
|
20
|
+
focuses members on architectural risk rather than line-level
|
|
21
|
+
correctness.
|
|
22
|
+
|
|
23
|
+
### 1. Resolve the artefact
|
|
24
|
+
|
|
25
|
+
The user invoked `/council-design <path>` or `/council-design`. If no
|
|
26
|
+
path was supplied, ask (one question per turn):
|
|
27
|
+
|
|
28
|
+
> Which design artefact should the council review?
|
|
29
|
+
>
|
|
30
|
+
> 1. A file path (ADR, design doc, RFC)
|
|
31
|
+
> 2. Multiple files / a directory (the bundler will gather them)
|
|
32
|
+
> 3. A free-form proposal in the chat — paste it now
|
|
33
|
+
|
|
34
|
+
Pick **1** or **2** → use `files:` mode of `/council`.
|
|
35
|
+
Pick **3** → use `prompt:` mode of `/council`.
|
|
36
|
+
|
|
37
|
+
### 2. Capture the originating ask
|
|
38
|
+
|
|
39
|
+
Look for the artefact's stated goal — the first paragraph after the
|
|
40
|
+
title, or a `## Goal` / `## Problem` section if present. That goal is
|
|
41
|
+
the `original_ask` for the handoff preamble. If the artefact has no
|
|
42
|
+
goal section, ask the user (one question per turn):
|
|
43
|
+
|
|
44
|
+
> What is the goal of this design? (one sentence — used as neutral
|
|
45
|
+
> framing for the council, not their analysis)
|
|
46
|
+
|
|
47
|
+
### 3. Run /council with the design mode preamble
|
|
48
|
+
|
|
49
|
+
Invoke the matching `/council` form:
|
|
50
|
+
|
|
51
|
+
- `files:` → `/council files:<paths>` with `mode_override=design`.
|
|
52
|
+
- `prompt:` → `/council prompt:"<artefact text>"` with
|
|
53
|
+
`mode_override=design`.
|
|
54
|
+
|
|
55
|
+
The `design` mode addendum from `scripts/ai_council/prompts.py`
|
|
56
|
+
focuses council members on:
|
|
57
|
+
|
|
58
|
+
- Trust-boundary and module-coupling risk.
|
|
59
|
+
- Rollback / kill-switch criteria the design omits.
|
|
60
|
+
- Sequencing risk (does step N really not block step N+1?).
|
|
61
|
+
- Open questions disguised as decisions.
|
|
62
|
+
|
|
63
|
+
The cost gate from `/council` Step 3 still applies.
|
|
64
|
+
|
|
65
|
+
### 4. Render the report
|
|
66
|
+
|
|
67
|
+
Use the standard stacked + Convergence/Divergence layout. Add a
|
|
68
|
+
one-line header at the top so reviewers know the lens:
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
## Council on <artefact path or "free-form proposal"> — design lens
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### 5. Hand back to the user
|
|
75
|
+
|
|
76
|
+
The council is **advisory**. Do **not** rewrite the design based on
|
|
77
|
+
findings. Surface convergent + divergent points and let the user
|
|
78
|
+
decide which to fold in via `/feature plan` or `/feature refactor`.
|
|
79
|
+
|
|
80
|
+
### Hard floor (restated)
|
|
81
|
+
|
|
82
|
+
`/council-design` produces **text only**. It does NOT edit the
|
|
83
|
+
design file, open ADR PRs, or modify the codebase.
|
|
84
|
+
|
|
85
|
+
## Failure modes
|
|
86
|
+
|
|
87
|
+
- **No artefact resolvable** → ask once; if still empty, stop.
|
|
88
|
+
- **Artefact too large** → bundler raises `BundleTooLarge`; suggest
|
|
89
|
+
splitting (`/council files:<single-file>` per section).
|
|
90
|
+
|
|
91
|
+
## See also
|
|
92
|
+
|
|
93
|
+
- `/council` — base orchestration entry point.
|
|
94
|
+
- `/feature plan` / `/feature refactor` — where design changes get
|
|
95
|
+
written, after the council surfaces issues.
|
|
96
|
+
- `ai-council` skill — neutrality guidelines.
|