@event4u/agent-config 9.8.0 → 9.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +278 -298
- package/CONTRIBUTING.md +23 -7
- package/MIGRATION.md +20 -0
- package/README.md +55 -9
- package/dist/agent-src/commands/agents/audit.md +1 -1
- package/dist/agent-src/commands/agents/optimize.md +2 -2
- package/dist/agent-src/commands/agents/user.md +1 -1
- package/dist/agent-src/commands/agents.md +1 -1
- package/dist/agent-src/commands/check-current-md.md +3 -3
- package/dist/agent-src/commands/fix/portability.md +2 -2
- package/dist/agent-src/commands/fix/pr-comments-loop.md +136 -0
- package/dist/agent-src/commands/fix/refs.md +2 -2
- package/dist/agent-src/commands/fix/route.md +4 -3
- package/dist/agent-src/commands/fix.md +9 -6
- package/dist/agent-src/commands/ghostwriter.md +1 -1
- package/dist/agent-src/commands/image.md +1 -1
- package/dist/agent-src/commands/optimize/augmentignore.md +1 -1
- package/dist/agent-src/commands/optimize/skills.md +2 -2
- package/dist/agent-src/commands/post-as.md +1 -1
- package/dist/agent-src/commands/research.md +1 -1
- package/dist/agent-src/commands/roadmap/ai-council.md +1 -1
- package/dist/agent-src/commands/security-audit-config.md +1 -1
- package/dist/agent-src/commands/team/delegate.md +4 -0
- package/dist/agent-src/commands/video.md +1 -1
- package/dist/agent-src/contexts/authority/kernel-rule-edits.md +1 -1
- package/dist/agent-src/contexts/contracts/emergency-triage-block.md +2 -2
- package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +48 -2
- package/dist/agent-src/contexts/execution/orchestration-telemetry.md +10 -0
- package/dist/agent-src/contexts/execution/subagent-modes-detail.md +109 -8
- package/dist/agent-src/contexts/execution/subagent-response-contract.md +20 -0
- package/dist/agent-src/contexts/execution/subagent-spawn-contract.md +53 -3
- package/dist/agent-src/rules/code-provenance.md +112 -0
- package/dist/agent-src/rules/external-code-graph-interop.md +4 -4
- package/dist/agent-src/rules/history-discipline.md +80 -0
- package/dist/agent-src/rules/no-roadmap-references.md +1 -1
- package/dist/agent-src/rules/php-coding.md +1 -0
- package/dist/agent-src/rules/reviewer-awareness.md +1 -0
- package/dist/agent-src/rules/roadmap-ci-steps-policy.md +1 -0
- package/dist/agent-src/rules/roadmap-progress-sync.md +7 -0
- package/dist/agent-src/rules/scale-discipline.md +92 -0
- package/dist/agent-src/rules/security-sensitive-stop.md +10 -0
- package/dist/agent-src/rules/session-canary.md +77 -0
- package/dist/agent-src/rules/token-optimizer-maintenance.md +1 -1
- package/dist/agent-src/rules/tool-safety.md +3 -1
- package/dist/agent-src/rules/untrusted-input-defense.md +10 -0
- package/dist/agent-src/skills/agent-security-review/SKILL.md +1 -1
- package/dist/agent-src/skills/code-intelligence/SKILL.md +17 -14
- package/dist/agent-src/skills/condense-memory/SKILL.md +1 -1
- package/dist/agent-src/skills/corpus-grounding/SKILL.md +0 -3
- package/dist/agent-src/skills/description-assist/SKILL.md +1 -1
- package/dist/agent-src/skills/design-review/SKILL.md +5 -6
- package/dist/agent-src/skills/design-tokens/SKILL.md +0 -1
- package/dist/agent-src/skills/history-design/SKILL.md +101 -0
- package/dist/agent-src/skills/history-design/evals/triggers.json +17 -0
- package/dist/agent-src/skills/humanizer/SKILL.md +3 -3
- package/dist/agent-src/skills/image-editing/SKILL.md +1 -1
- package/dist/agent-src/skills/image-generation/SKILL.md +2 -1
- package/dist/agent-src/skills/image-provider-routing/SKILL.md +2 -2
- package/dist/agent-src/skills/launch-readiness/SKILL.md +1 -1
- package/dist/agent-src/skills/license-compliance-audit/SKILL.md +161 -0
- package/dist/agent-src/skills/license-compliance-audit/evals/triggers.json +52 -0
- package/dist/agent-src/skills/license-compliance-borrow-check/SKILL.md +145 -0
- package/dist/agent-src/skills/license-compliance-borrow-check/evals/triggers.json +52 -0
- package/dist/agent-src/skills/license-compliance-credits/SKILL.md +97 -0
- package/dist/agent-src/skills/license-compliance-credits/evals/triggers.json +52 -0
- package/dist/agent-src/skills/md-language-check/SKILL.md +1 -1
- package/dist/agent-src/skills/override-management/SKILL.md +1 -1
- package/dist/agent-src/skills/prediction-pool-optimizer/SKILL.md +7 -7
- package/dist/agent-src/skills/project-analysis-core/SKILL.md +1 -1
- package/dist/agent-src/skills/prompt-engineering-image/SKILL.md +3 -2
- package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +2 -2
- package/dist/agent-src/skills/recursive-verification/SKILL.md +6 -0
- package/dist/agent-src/skills/refine-ticket/SKILL.md +3 -3
- package/dist/agent-src/skills/roadmap-writing/SKILL.md +4 -0
- package/dist/agent-src/skills/rtk-output-filtering/SKILL.md +31 -12
- package/dist/agent-src/skills/rule-refactor/SKILL.md +3 -3
- package/dist/agent-src/skills/schema-review/SKILL.md +92 -0
- package/dist/agent-src/skills/schema-review/evals/triggers.json +17 -0
- package/dist/agent-src/skills/secrets-management/SKILL.md +3 -4
- package/dist/agent-src/skills/security-audit/SKILL.md +1 -1
- package/dist/agent-src/skills/security-maturity-assessment/SKILL.md +1 -1
- package/dist/agent-src/skills/skill-improvement-pipeline/SKILL.md +3 -3
- package/dist/agent-src/skills/skill-writing/SKILL.md +2 -2
- package/dist/agent-src/skills/source-discovery/SKILL.md +5 -5
- package/dist/agent-src/skills/subagent-orchestration/SKILL.md +45 -85
- package/dist/agent-src/skills/subagent-orchestration/prompts/README.md +5 -4
- package/dist/agent-src/skills/systematic-debugging/SKILL.md +2 -2
- package/dist/agent-src/skills/tailwind-engineer/SKILL.md +2 -3
- package/dist/agent-src/skills/token-optimizer/SKILL.md +4 -4
- package/dist/agent-src/skills/verify-repair-loop/SKILL.md +1 -1
- package/dist/agent-src/skills/worktree-lifecycle/SKILL.md +2 -3
- package/dist/agent-src/templates/AGENTS.md +1 -1
- package/dist/agent-src/templates/agents/.gitattributes.fragment +25 -6
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/dist/agent-src/templates/command.md +3 -3
- package/dist/agent-src/templates/persona.md +2 -2
- package/dist/agent-src/templates/rule.md +2 -2
- package/dist/agent-src/templates/scripts/telemetry/engagement.ts +77 -0
- package/dist/agent-src/templates/scripts/telemetry_record.ts +33 -1
- package/dist/cli/commands/doctorShell.js +20 -0
- package/dist/cli/commands/doctorShell.js.map +1 -1
- package/dist/cli/commands/rtkDetect.js +58 -0
- package/dist/cli/commands/rtkDetect.js.map +1 -0
- package/dist/cli/firstRunNotice.js +70 -0
- package/dist/cli/firstRunNotice.js.map +1 -0
- package/dist/cli/main.js +35 -3
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/registry.js +7 -1
- package/dist/cli/registry.js.map +1 -1
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +362 -78
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +6 -4
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +90 -8
- package/dist/discovery/trust-report.md +11 -11
- package/dist/discovery/workspaces.json +31 -7
- package/dist/hooks/dispatch.js +19475 -0
- package/dist/install/agentSwitchDetection.js +75 -0
- package/dist/install/agentSwitchDetection.js.map +1 -0
- package/dist/install/agentSwitchProfile.js +117 -0
- package/dist/install/agentSwitchProfile.js.map +1 -0
- package/dist/install/atomic.js +1 -1
- package/dist/install/detect.js +1 -1
- package/dist/install/install.mjs +775 -486
- package/dist/install/rtkDetection.js +213 -0
- package/dist/install/rtkDetection.js.map +1 -0
- package/dist/install/rule_scope.js +2 -1
- package/dist/install/rule_scope.js.map +1 -1
- package/dist/install/types.js +2 -2
- package/dist/install/wizard-plan.js +1 -1
- package/dist/install/wizardDismissals.js +58 -0
- package/dist/install/wizardDismissals.js.map +1 -0
- package/dist/mcp/awesome-mcp-servers.row.md +1 -1
- package/dist/mcp/mcp-cloudflare-catalogue.json +1 -1
- package/dist/mcp/registry-manifest.json +15 -4
- package/dist/mcp/server.json +20 -0
- package/dist/mcp/server.mjs +44292 -0
- package/dist/router.json +1 -1
- package/dist/scripts/condense.js +14 -7
- package/dist/scripts/condense.js.map +1 -1
- package/dist/server/app.js +4 -2
- package/dist/server/app.js.map +1 -1
- package/dist/server/io/sharedWriteCheck.js +101 -0
- package/dist/server/io/sharedWriteCheck.js.map +1 -0
- package/dist/server/routes/ping.js +14 -0
- package/dist/server/routes/ping.js.map +1 -1
- package/dist/server/routes/settings.js +21 -4
- package/dist/server/routes/settings.js.map +1 -1
- package/dist/server/routes/userMd.js +21 -4
- package/dist/server/routes/userMd.js.map +1 -1
- package/dist/server/routes/wizard.js +68 -25
- package/dist/server/routes/wizard.js.map +1 -1
- package/dist/server/schemas/settings.js +4 -2
- package/dist/server/schemas/settings.js.map +1 -1
- package/dist/ui/assets/index-BpSQt5vm.js +40 -0
- package/dist/ui/assets/index-BpSQt5vm.js.map +1 -0
- package/dist/ui/assets/index-jSfMW8_t.css +1 -0
- package/dist/ui/index.html +2 -2
- package/docs/MIGRATION.md +16 -0
- package/docs/guidelines/component-oriented-and-oop-development.md +4 -2
- package/package.json +21 -11
- package/src/agent-src/templates/AGENTS.md +1 -1
- package/src/agent-src/templates/scripts/telemetry/engagement.ts +77 -0
- package/src/agent-src/templates/scripts/telemetry_record.ts +33 -1
- package/src/config/agent-settings.template.yml +52 -14
- package/src/config/discovery/packs.yml +22 -0
- package/src/config/discovery/workspaces.yml +1 -1
- package/src/config/evaluator-budgets.json +47 -0
- package/src/config/hook-latency-budget.json +20 -0
- package/src/install/agentSwitchDetection.ts +90 -0
- package/src/install/agentSwitchProfile.ts +131 -0
- package/src/install/atomic.ts +1 -1
- package/src/install/detect.ts +1 -1
- package/src/install/rtkDetection.ts +274 -0
- package/src/install/rule_scope.ts +9 -2
- package/src/install/types.ts +2 -2
- package/src/install/wizard-plan.ts +1 -1
- package/src/install/wizardDismissals.ts +60 -0
- package/src/scripts/_cli/cmd_doctor.ts +62 -1
- package/src/scripts/_cli/cmd_memory_get.ts +197 -0
- package/src/scripts/_cli/cmd_refresh.ts +30 -0
- package/src/scripts/_dispatch.bash +81 -0
- package/src/scripts/_lib/auto_dispatch.corpus.test.ts +64 -1
- package/src/scripts/_lib/auto_dispatch.ts +76 -0
- package/src/scripts/_lib/detect_target_license.ts +714 -0
- package/src/scripts/_lib/fixtures/secret-detector/negatives.txt +5 -0
- package/src/scripts/_lib/fixtures/secret-detector/positives.txt +4 -0
- package/src/scripts/_lib/install_drift.ts +194 -0
- package/src/scripts/_lib/memory_fts_index.ts +390 -0
- package/src/scripts/_lib/orchestration_record.ts +91 -2
- package/src/scripts/_lib/persistence/adapter_raw_sql.ts +443 -0
- package/src/scripts/_lib/persistence/detect_audit_coverage.ts +423 -0
- package/src/scripts/_lib/persistence/detect_bounded_reads.ts +154 -0
- package/src/scripts/_lib/persistence/detect_index_parity.ts +576 -0
- package/src/scripts/_lib/persistence/detect_n1_eloquent.ts +226 -0
- package/src/scripts/_lib/persistence/detect_offload.ts +441 -0
- package/src/scripts/_lib/persistence/detect_prisma_growth.ts +74 -0
- package/src/scripts/_lib/persistence/offload_catalog.ts +73 -0
- package/src/scripts/_lib/persistence/types.ts +109 -0
- package/src/scripts/_lib/rtk_allowlist.ts +44 -0
- package/src/scripts/_lib/secret_detector.test.ts +5 -0
- package/src/scripts/_lib/secret_detector.ts +9 -0
- package/src/scripts/_lib/secret_detector_adversarial.test.ts +116 -0
- package/src/scripts/_lib/spawn_env.ts +7 -0
- package/src/scripts/_lib/sqlite_guard.ts +191 -0
- package/src/scripts/_lib/subagent_spawn.ts +53 -0
- package/src/scripts/_lib/worker_budget.ts +107 -0
- package/src/scripts/ai_council/blind_review.ts +0 -0
- package/src/scripts/ai_council/config.ts +12 -6
- package/src/scripts/ai_council/orchestrator.ts +73 -3
- package/src/scripts/ai_team/review_gate.ts +8 -10
- package/src/scripts/ai_team/team_dispatch.ts +48 -0
- package/src/scripts/audit_initial_context.ts +1 -1
- package/src/scripts/bench_cross_source_eval.ts +400 -0
- package/src/scripts/bench_honesty_score.ts +1093 -0
- package/src/scripts/bench_hook_latency.ts +218 -0
- package/src/scripts/build_mcp_catalog.ts +275 -0
- package/src/scripts/build_mcp_registry_manifest.ts +46 -0
- package/src/scripts/build_proof.ts +45 -0
- package/src/scripts/chat_history.ts +8 -5
- package/src/scripts/check_backstop_debt.ts +23 -13
- package/src/scripts/check_bundle_path_leakage.ts +343 -0
- package/src/scripts/check_evaluator_budgets.ts +99 -0
- package/src/scripts/check_knowledge_sharing.ts +12 -1
- package/src/scripts/check_no_external_sources.ts +2 -2
- package/src/scripts/check_source_pointer_freshness.ts +28 -3
- package/src/scripts/code_graph/build.ts +0 -0
- package/src/scripts/code_graph/cli.ts +181 -9
- package/src/scripts/code_graph/detect.ts +52 -0
- package/src/scripts/code_graph/intent.ts +45 -0
- package/src/scripts/code_graph/query.ts +143 -29
- package/src/scripts/code_graph/sqlite_store.ts +174 -0
- package/src/scripts/condense.ts +14 -6
- package/src/scripts/context_hygiene_hook.ts +8 -5
- package/src/scripts/council_cli.ts +126 -12
- package/src/scripts/detect_target_license.ts +203 -0
- package/src/scripts/evaluator_umbrella.sh +145 -0
- package/src/scripts/external_sources_denylist.json +5 -3
- package/src/scripts/first_run_gate_hook.ts +9 -5
- package/src/scripts/hermetic-install.sh +3 -3
- package/src/scripts/hook_manifest.yaml +55 -16
- package/src/scripts/hooks/block_kernel_rule_writes.ts +212 -0
- package/src/scripts/hooks/block_no_verify.ts +9 -9
- package/src/scripts/hooks/code_graph_nudge_hook.ts +11 -4
- package/src/scripts/hooks/concern_registry.ts +75 -0
- package/src/scripts/hooks/design_slop_hook.ts +8 -5
- package/src/scripts/hooks/dispatch_entry.ts +37 -0
- package/src/scripts/hooks/dispatch_hook.ts +176 -3
- package/src/scripts/hooks/hook_stdin.ts +42 -0
- package/src/scripts/hooks/rtk_wrap_hook.ts +26 -12
- package/src/scripts/hot_context_hook.ts +7 -6
- package/src/scripts/injection_scan_hook.ts +9 -1
- package/src/scripts/install +6 -6
- package/src/scripts/install-hooks.sh +4 -4
- package/src/scripts/install.sh +5 -4
- package/src/scripts/install.ts +264 -23
- package/src/scripts/learning_sidecar.ts +0 -0
- package/src/scripts/lint_budget_ownership.ts +89 -0
- package/src/scripts/lint_command_routing.ts +35 -5
- package/src/scripts/lint_command_verbs.ts +42 -9
- package/src/scripts/lint_consumer_internal_refs.ts +211 -0
- package/src/scripts/lint_discovery_vocabulary.ts +2 -0
- package/src/scripts/lint_documented_commands.ts +670 -0
- package/src/scripts/lint_framework_leakage.ts +17 -3
- package/src/scripts/lint_framework_leakage_allowlist.json +32 -0
- package/src/scripts/lint_governed_writes.ts +335 -0
- package/src/scripts/lint_hidden_unicode.ts +6 -0
- package/src/scripts/lint_mcp_registry_manifest.ts +26 -1
- package/src/scripts/lint_memory_tripwire.ts +186 -0
- package/src/scripts/lint_override_kernel_guard.ts +74 -26
- package/src/scripts/lint_persistence.ts +171 -0
- package/src/scripts/lint_pre_migration_refs.ts +106 -0
- package/src/scripts/lint_provenance.ts +547 -0
- package/src/scripts/lint_provenance_vocabulary.ts +437 -0
- package/src/scripts/lint_spawn_payload.ts +283 -0
- package/src/scripts/lint_store_boundary.ts +152 -0
- package/src/scripts/lint_versioned_cache.ts +7 -1
- package/src/scripts/mcp_server/__main__.ts +7 -2
- package/src/scripts/mcp_server/catalog.ts +23 -1
- package/src/scripts/mcp_server/consumer_tool_catalog.json +563 -193
- package/src/scripts/mcp_server/prompts.ts +6 -0
- package/src/scripts/mcp_server/tool_catalog_source.ts +332 -0
- package/src/scripts/mcp_server/tools.ts +56 -5
- package/src/scripts/mcp_telemetry_query.ts +2 -33
- package/src/scripts/mcp_telemetry_store.ts +64 -34
- package/src/scripts/memory_learn_hook.ts +126 -0
- package/src/scripts/memory_lookup.ts +0 -0
- package/src/scripts/memory_replay_24.ts +312 -0
- package/src/scripts/memory_report.ts +16 -3
- package/src/scripts/memory_signal.ts +48 -0
- package/src/scripts/memory_status.ts +6 -0
- package/src/scripts/minimal_safe_diff_hook.ts +8 -5
- package/src/scripts/onboarding_gate_hook.ts +8 -5
- package/src/scripts/orchestration_record.ts +16 -0
- package/src/scripts/pr_url_reminder_hook.ts +8 -1
- package/src/scripts/prepack-check.mjs +17 -0
- package/src/scripts/prepack_lifecycle_check.d.mts +8 -0
- package/src/scripts/prepack_lifecycle_check.mjs +82 -0
- package/src/scripts/profile_staleness_hook.ts +8 -7
- package/src/scripts/report_install_drift.ts +109 -0
- package/src/scripts/roadmap_progress_hook.ts +8 -5
- package/src/scripts/schemas/license-policy.schema.json +89 -0
- package/src/scripts/schemas/provenance-borrow.schema.json +46 -0
- package/src/scripts/schemas/rule.schema.json +10 -0
- package/src/scripts/self_review_gate.test.ts +173 -1
- package/src/scripts/self_review_gate.ts +155 -15
- package/src/scripts/session_canary_hook.ts +182 -0
- package/src/scripts/smoke_quickstart.ts +2 -2
- package/src/scripts/surface_probe_hook.ts +8 -7
- package/src/scripts/sync_gitattributes.ts +310 -0
- package/src/scripts/team_review_gate_hook.ts +13 -16
- package/src/scripts/verify_before_complete_hook.ts +8 -5
- package/src/scripts/wrapper_freshness_hook.ts +8 -7
- package/src/server/schemas/settings.ts +8 -2
- package/dist/ui/assets/index-BPFMZWUs.css +0 -1
- package/dist/ui/assets/index-CrmZ34Rg.js +0 -40
- package/dist/ui/assets/index-CrmZ34Rg.js.map +0 -1
- package/docs/CLAIMS.md +0 -286
- package/docs/DISTRIBUTION_CHECKLIST.md +0 -170
- package/docs/RELEASE_STORY_TEMPLATE.md +0 -37
- package/docs/SKILL_CENSUS.md +0 -352
- package/docs/adrs/cost/0001-hard-stop-hook.md +0 -114
- package/docs/adrs/cost/README.md +0 -9
- package/docs/adrs/memory/0001-consumer-side-snapshot.md +0 -119
- package/docs/adrs/memory/README.md +0 -10
- package/docs/adrs/router/0001-three-tier-routing.md +0 -119
- package/docs/adrs/router/README.md +0 -9
- package/docs/adrs/schema/0001-json-schema-frontmatter.md +0 -102
- package/docs/adrs/schema/README.md +0 -9
- package/docs/adrs/smoke/0001-per-tier-smoke-scripts.md +0 -99
- package/docs/adrs/smoke/README.md +0 -9
- package/docs/adrs/telegraph/0001-default-off-until-bench.md +0 -93
- package/docs/adrs/telegraph/README.md +0 -9
- package/docs/announcements/2026-05-non-dev-launch.md +0 -79
- package/docs/announcements/2026-07-honest-cost-sweep-launch.md +0 -84
- package/docs/anti-reskin-gate.md +0 -60
- package/docs/architecture/augment-projection.md +0 -70
- package/docs/architecture/claude-bundle.md +0 -77
- package/docs/architecture/current-onboard-baseline.md +0 -126
- package/docs/architecture/current-safety-behavior.md +0 -137
- package/docs/architecture/multi-tool-projection.md +0 -125
- package/docs/architecture/setup-vs-settings-shared-surface.md +0 -114
- package/docs/architecture/source-projection.md +0 -85
- package/docs/architecture.md +0 -390
- package/docs/archive/CHANGELOG-6.0.0-overview.md +0 -953
- package/docs/archive/CHANGELOG-7.0.0.md +0 -419
- package/docs/archive/CHANGELOG-pre-2.11.0.md +0 -141
- package/docs/archive/CHANGELOG-pre-2.15.0.md +0 -244
- package/docs/archive/CHANGELOG-pre-2.16.0.md +0 -48
- package/docs/archive/CHANGELOG-pre-2.17.0.md +0 -63
- package/docs/archive/CHANGELOG-pre-2.2.0.md +0 -2138
- package/docs/archive/CHANGELOG-pre-2.20.0.md +0 -159
- package/docs/archive/CHANGELOG-pre-2.25.0.md +0 -191
- package/docs/archive/CHANGELOG-pre-2.7.0.md +0 -185
- package/docs/archive/CHANGELOG-pre-3.0.0.md +0 -130
- package/docs/archive/CHANGELOG-pre-3.1.0.md +0 -167
- package/docs/archive/CHANGELOG-pre-3.2.0.md +0 -268
- package/docs/archive/CHANGELOG-pre-4.0.0.md +0 -80
- package/docs/archive/CHANGELOG-pre-4.5.0.md +0 -289
- package/docs/archive/CHANGELOG-pre-5.4.0.md +0 -260
- package/docs/archive/CHANGELOG-pre-5.9.0.md +0 -270
- package/docs/archive/CHANGELOG-pre-6.0.0.md +0 -473
- package/docs/archive/CHANGELOG-pre-7.0.0.md +0 -126
- package/docs/archive/CHANGELOG-pre-8.0.0.md +0 -301
- package/docs/archive/CHANGELOG-pre-8.1.0.md +0 -316
- package/docs/archive/CHANGELOG-pre-8.12.0.md +0 -304
- package/docs/archive/CHANGELOG-pre-8.9.0.md +0 -306
- package/docs/archive/CHANGELOG-pre-9.2.0.md +0 -276
- package/docs/artefact-census.md +0 -71
- package/docs/benchmark.md +0 -785
- package/docs/benchmark.pinned.yml +0 -31
- package/docs/benchmarks.md +0 -85
- package/docs/capability-matrix.md +0 -33
- package/docs/case-studies/_template.md +0 -60
- package/docs/case-studies/frontend-design-positioning.md +0 -86
- package/docs/catalog.md +0 -726
- package/docs/command-flows.md +0 -272
- package/docs/command-naming-audit.md +0 -60
- package/docs/comparison.yaml +0 -87
- package/docs/contracts/CHANGELOG-conventions.md +0 -149
- package/docs/contracts/STABILITY.md +0 -188
- package/docs/contracts/adoption-signal-floor.md +0 -127
- package/docs/contracts/adr-architectural-consensus-mechanism.md +0 -68
- package/docs/contracts/adr-chat-history-split.md +0 -140
- package/docs/contracts/adr-command-suggestion.md +0 -144
- package/docs/contracts/adr-forecast-construction-shape.md +0 -90
- package/docs/contracts/adr-gtm-context-spine.md +0 -116
- package/docs/contracts/adr-implement-ticket-runtime.md +0 -121
- package/docs/contracts/adr-install-user-type-axis.md +0 -107
- package/docs/contracts/adr-layout.md +0 -107
- package/docs/contracts/adr-level-6-productization.md +0 -145
- package/docs/contracts/adr-mcp-runtime.md +0 -128
- package/docs/contracts/adr-product-ui-track.md +0 -381
- package/docs/contracts/adr-prompt-driven-execution.md +0 -186
- package/docs/contracts/adr-settings-sync-engine.md +0 -128
- package/docs/contracts/adr-user-types-axis.md +0 -127
- package/docs/contracts/adr-wing4-context-spine.md +0 -126
- package/docs/contracts/agent-user-schema.md +0 -170
- package/docs/contracts/agents-layout.md +0 -148
- package/docs/contracts/agents-md-tech-stack.md +0 -75
- package/docs/contracts/ai-council-config.md +0 -829
- package/docs/contracts/ai-team-config.md +0 -224
- package/docs/contracts/analysis-memory-loop.md +0 -149
- package/docs/contracts/at-rest-encryption.md +0 -191
- package/docs/contracts/audit-log-v1.md +0 -150
- package/docs/contracts/auto-orchestration-v1.md +0 -70
- package/docs/contracts/benchmark-ab-contract.md +0 -106
- package/docs/contracts/benchmark-corpus-spec.md +0 -125
- package/docs/contracts/benchmark-report-schema.md +0 -113
- package/docs/contracts/branch-protection-policy.md +0 -139
- package/docs/contracts/brand-token-consumption.md +0 -74
- package/docs/contracts/capability-boundary.md +0 -69
- package/docs/contracts/capability-packs.md +0 -217
- package/docs/contracts/ci-cost-budget.md +0 -111
- package/docs/contracts/ci-green-floor.md +0 -141
- package/docs/contracts/command-category-governance.md +0 -84
- package/docs/contracts/command-clusters.md +0 -399
- package/docs/contracts/command-surface-tiers.md +0 -176
- package/docs/contracts/command-taxonomy.md +0 -137
- package/docs/contracts/condensation-default-kill-criterion.md +0 -116
- package/docs/contracts/config-presets.md +0 -144
- package/docs/contracts/conformance.md +0 -84
- package/docs/contracts/consumer-bridge.md +0 -73
- package/docs/contracts/context-paths.md +0 -101
- package/docs/contracts/context-spine.md +0 -179
- package/docs/contracts/cost-dashboard.md +0 -143
- package/docs/contracts/cost-enforcement.md +0 -134
- package/docs/contracts/cost-profile-defaults.md +0 -110
- package/docs/contracts/cost-summary-schema.md +0 -107
- package/docs/contracts/creative-pack-boundary.md +0 -63
- package/docs/contracts/cross-repo-retrieval.md +0 -64
- package/docs/contracts/cross-wing-handoff.md +0 -134
- package/docs/contracts/daily-workspace.md +0 -147
- package/docs/contracts/decision-engine-gates.md +0 -120
- package/docs/contracts/decision-trace-v1.md +0 -177
- package/docs/contracts/design-artifact-lifecycle.md +0 -93
- package/docs/contracts/design-artifact-verification.md +0 -153
- package/docs/contracts/discovery-manifest.md +0 -209
- package/docs/contracts/discovery-manifest.schema.json +0 -254
- package/docs/contracts/evidence-based-pruning.md +0 -102
- package/docs/contracts/explain-modes.md +0 -187
- package/docs/contracts/explain-trace.schema.json +0 -144
- package/docs/contracts/file-ownership-matrix.json +0 -13941
- package/docs/contracts/file-ownership-matrix.md +0 -135
- package/docs/contracts/frontmatter-contract.md +0 -140
- package/docs/contracts/ghostwriter-schema.md +0 -337
- package/docs/contracts/governance-enforcement-projection.md +0 -159
- package/docs/contracts/gui-wizard.md +0 -350
- package/docs/contracts/harness-expectations.md +0 -128
- package/docs/contracts/hook-architecture-v1.md +0 -325
- package/docs/contracts/host-agent-protocol.md +0 -110
- package/docs/contracts/implement-ticket-flow.md +0 -625
- package/docs/contracts/init-telemetry.md +0 -132
- package/docs/contracts/injected-block-authenticity-model.md +0 -66
- package/docs/contracts/install-layout.md +0 -249
- package/docs/contracts/install-scopes.md +0 -82
- package/docs/contracts/installed-tools-lockfile.md +0 -144
- package/docs/contracts/installer-agent-mode.md +0 -137
- package/docs/contracts/iron-law-overrides.txt +0 -26
- package/docs/contracts/kernel-membership.md +0 -339
- package/docs/contracts/linear-ai-rules-inclusion.md +0 -143
- package/docs/contracts/linear-ai-three-layers.md +0 -130
- package/docs/contracts/linter-structural-model.md +0 -181
- package/docs/contracts/load-context-budget-model.md +0 -259
- package/docs/contracts/load-context-schema.md +0 -220
- package/docs/contracts/local-analytics.md +0 -160
- package/docs/contracts/local-knowledge-ingestion.md +0 -96
- package/docs/contracts/local-server-api.md +0 -134
- package/docs/contracts/local-server-ports.md +0 -53
- package/docs/contracts/low-impact-corpus-format.md +0 -95
- package/docs/contracts/mcp-beta-criteria.md +0 -130
- package/docs/contracts/mcp-cloud-scope.md +0 -355
- package/docs/contracts/mcp-discovery-phase-notice.md +0 -60
- package/docs/contracts/mcp-phase-1-scope.md +0 -272
- package/docs/contracts/mcp-registry-manifest.schema.json +0 -129
- package/docs/contracts/mcp-tool-inventory.md +0 -64
- package/docs/contracts/mcp-tool-stub-envelope.md +0 -78
- package/docs/contracts/measurement-baseline.md +0 -103
- package/docs/contracts/memory-visibility-v1.md +0 -160
- package/docs/contracts/mental-models.md +0 -336
- package/docs/contracts/migrate-command.md +0 -233
- package/docs/contracts/multi-tool-projection-fidelity.md +0 -134
- package/docs/contracts/namespace.md +0 -125
- package/docs/contracts/no-runtime-boundary.md +0 -61
- package/docs/contracts/one-off-script-lifecycle.md +0 -110
- package/docs/contracts/orchestration-dsl-v1.md +0 -153
- package/docs/contracts/package-self-orientation.md +0 -163
- package/docs/contracts/pilot/agent-authority.md +0 -24
- package/docs/contracts/pilot/direct-answers.md +0 -70
- package/docs/contracts/pilot/language-and-tone.md +0 -63
- package/docs/contracts/plain-language-surface.md +0 -117
- package/docs/contracts/prelaunch-diagnostics.md +0 -151
- package/docs/contracts/profile-system.md +0 -167
- package/docs/contracts/reasoning-discipline-protocol.md +0 -83
- package/docs/contracts/release-pr-gating.md +0 -151
- package/docs/contracts/release-sizing.md +0 -107
- package/docs/contracts/release-trunk-sync.md +0 -105
- package/docs/contracts/review-lens-schema.md +0 -64
- package/docs/contracts/roadmap-complexity-standard.md +0 -138
- package/docs/contracts/role-experience.md +0 -125
- package/docs/contracts/router-blending.md +0 -71
- package/docs/contracts/rule-classification.md +0 -171
- package/docs/contracts/rule-interactions.md +0 -132
- package/docs/contracts/rule-interactions.yml +0 -260
- package/docs/contracts/rule-priority-hierarchy.md +0 -88
- package/docs/contracts/rule-router.md +0 -287
- package/docs/contracts/safety-model.md +0 -129
- package/docs/contracts/session-profile-overlay.md +0 -157
- package/docs/contracts/settings-api.md +0 -264
- package/docs/contracts/settings-gui-agent-mode.schema.json +0 -128
- package/docs/contracts/settings-sync-yaml-subset.md +0 -139
- package/docs/contracts/skill-bundled-assets.md +0 -62
- package/docs/contracts/skill-discovery.md +0 -80
- package/docs/contracts/skill-distribution-channels.md +0 -66
- package/docs/contracts/skill-domains.md +0 -144
- package/docs/contracts/skill-dry-run.md +0 -47
- package/docs/contracts/skill-family-map.yml +0 -915
- package/docs/contracts/smoke-contracts.md +0 -144
- package/docs/contracts/subagent-boundary.md +0 -74
- package/docs/contracts/surface-agent-contracts.md +0 -153
- package/docs/contracts/surface-matrix.md +0 -108
- package/docs/contracts/surface-tiers.md +0 -81
- package/docs/contracts/telegraph-telemetry.md +0 -83
- package/docs/contracts/ticket-bundle-format.md +0 -233
- package/docs/contracts/tier-3-contrib-plugin.md +0 -137
- package/docs/contracts/trust-and-safety.md +0 -144
- package/docs/contracts/ui-stack-extension.md +0 -237
- package/docs/contracts/ui-track-flow.md +0 -329
- package/docs/contracts/universal-skills.md +0 -91
- package/docs/contracts/user-type-schema.md +0 -146
- package/docs/contracts/value-dashboard-spec.md +0 -378
- package/docs/contracts/value-report-schema.md +0 -168
- package/docs/contracts/workflow-packs.md +0 -121
- package/docs/contracts/workspace-boundary.md +0 -84
- package/docs/contracts/workspace-documents.md +0 -144
- package/docs/contracts/write-engine.md +0 -182
- package/docs/cookbook.md +0 -152
- package/docs/customization.md +0 -696
- package/docs/decisions/ADR-001-kernel-swap-deferred.md +0 -109
- package/docs/decisions/ADR-002-kernel-bucket-overrides.md +0 -135
- package/docs/decisions/ADR-003-flat-cluster-subs-and-colon-syntax.md +0 -137
- package/docs/decisions/ADR-004-rule-governance-pruning.md +0 -240
- package/docs/decisions/ADR-005-subagent-worktrees.md +0 -120
- package/docs/decisions/ADR-006-skill-tools-python-pilot.md +0 -114
- package/docs/decisions/ADR-007-agent-discovery-scopes.md +0 -371
- package/docs/decisions/ADR-008-installed-tools-manifest.md +0 -160
- package/docs/decisions/ADR-009-event4u-namespace.md +0 -188
- package/docs/decisions/ADR-010-profile-pack-preset-boundary.md +0 -168
- package/docs/decisions/ADR-011-domain-pack-readiness.md +0 -213
- package/docs/decisions/ADR-012-typescript-cli-shell.md +0 -162
- package/docs/decisions/ADR-013-discovery-frontmatter-contract.md +0 -342
- package/docs/decisions/ADR-014-gui-framework-choice.md +0 -136
- package/docs/decisions/ADR-015-discovery-manifest-contract.md +0 -146
- package/docs/decisions/ADR-016-installer-architecture.md +0 -191
- package/docs/decisions/ADR-017-monorepo-physical-layout.md +0 -261
- package/docs/decisions/ADR-018-trust-and-safety-layer.md +0 -159
- package/docs/decisions/ADR-019-router-json-dist-location.md +0 -124
- package/docs/decisions/ADR-020-global-only-consumer-scope.md +0 -213
- package/docs/decisions/ADR-021-deployment-shape.md +0 -153
- package/docs/decisions/ADR-022-daily-workspace-decomposition.md +0 -140
- package/docs/decisions/ADR-023-host-agent-protocol.md +0 -129
- package/docs/decisions/ADR-024-workspace-v0-feature-floor.md +0 -126
- package/docs/decisions/ADR-025-workspace-chrome.md +0 -119
- package/docs/decisions/ADR-026-explain-mode-translation.md +0 -117
- package/docs/decisions/ADR-027-changelog-machine-vs-manual.md +0 -129
- package/docs/decisions/ADR-028-root-layout.md +0 -147
- package/docs/decisions/ADR-029-multi-workspace-deferred.md +0 -122
- package/docs/decisions/ADR-030-claude-code-command-projection.md +0 -147
- package/docs/decisions/ADR-031-validation-severity-tiers-and-projection-roundtrip.md +0 -97
- package/docs/decisions/ADR-032-linked-projects-scope.md +0 -122
- package/docs/decisions/ADR-033-distribution-identity-npm-primary.md +0 -81
- package/docs/decisions/ADR-034-per-skill-model-recommendation-transport.md +0 -63
- package/docs/decisions/ADR-035-model-capability-tiers.md +0 -104
- package/docs/decisions/ADR-036-global-install-browser-wizard-handoff.md +0 -106
- package/docs/decisions/ADR-037-cost-profile-untangle.md +0 -117
- package/docs/decisions/ADR-038-canonical-settings-path.md +0 -96
- package/docs/decisions/ADR-039-claude-skills-untracked.md +0 -139
- package/docs/decisions/ADR-040-execution-model-projection-time-filtering.md +0 -244
- package/docs/decisions/ADR-041-controlled-command-verbs.md +0 -133
- package/docs/decisions/ADR-042-runtime-resolver-decision-gate.md +0 -113
- package/docs/decisions/ADR-043-monorepo-collapse-to-src-domains.md +0 -128
- package/docs/decisions/ADR-044-command-naming-scheme-hyphenated.md +0 -250
- package/docs/decisions/ADR-045-src-source-layout-and-profiles-as-views.md +0 -111
- package/docs/decisions/ADR-046-thin-command-principle.md +0 -93
- package/docs/decisions/ADR-047-framework-neutral-stack-adaptive-commands.md +0 -94
- package/docs/decisions/ADR-048-command-justification-rule.md +0 -106
- package/docs/decisions/ADR-049-configuration-trust-boundary.md +0 -132
- package/docs/decisions/ADR-050-workspace-vs-package-root-boundary.md +0 -121
- package/docs/decisions/ADR-051-uncondensed-source-container-relocation.md +0 -114
- package/docs/decisions/ADR-052-packages-removal-and-pack-home-migration.md +0 -86
- package/docs/decisions/ADR-053-agents-namespace-dual-role-resolution.md +0 -132
- package/docs/decisions/ADR-054-rule-adherence-decay-triggered-restate.md +0 -143
- package/docs/decisions/ADR-055-flow-layer-data-model.md +0 -235
- package/docs/decisions/ADR-056-unvalidated-video-adapters-disposition.md +0 -124
- package/docs/decisions/ADR-057-consolidation-evidence-gate-outcomes.md +0 -135
- package/docs/decisions/ADR-058-condensed-output-relocation-to-dist.md +0 -94
- package/docs/decisions/ADR-059-render-resume-filesystem-as-state.md +0 -161
- package/docs/decisions/ADR-060-comfyui-sandbox-model.md +0 -154
- package/docs/decisions/ADR-061-corpus-grounding-layer.md +0 -230
- package/docs/decisions/ADR-062-encrypt-at-rest-store-architecture.md +0 -121
- package/docs/decisions/ADR-063-append-jsonl-encryption-deferred.md +0 -83
- package/docs/decisions/ADR-064-append-jsonl-per-record-encryption.md +0 -113
- package/docs/decisions/ADR-065-tier3-inbox-handoff-v0.md +0 -86
- package/docs/decisions/ADR-066-skill-body-prerendering.md +0 -93
- package/docs/decisions/ADR-067-glama-registry-listing.md +0 -259
- package/docs/decisions/ADR-068-host-tier-detection.md +0 -90
- package/docs/decisions/ADR-069-prompt-renderer.md +0 -97
- package/docs/decisions/ADR-070-tier1-drive-loop.md +0 -94
- package/docs/decisions/ADR-071-launch-drive-integration.md +0 -95
- package/docs/decisions/ADR-072-codex-gemini-drive-configs.md +0 -90
- package/docs/decisions/ADR-073-drive-health-kill-switch.md +0 -81
- package/docs/decisions/ADR-074-drive-kill-switch-auto-recovery.md +0 -84
- package/docs/decisions/ADR-075-workspace-gui-drive.md +0 -83
- package/docs/decisions/ADR-076-workspace-multi-turn.md +0 -92
- package/docs/decisions/ADR-077-workspace-followup-gui.md +0 -70
- package/docs/decisions/ADR-078-drive-health-panel.md +0 -70
- package/docs/decisions/ADR-079-workspace-host-picker.md +0 -81
- package/docs/decisions/ADR-080-host-session-expired-410.md +0 -92
- package/docs/decisions/ADR-081-drive-health-reset-and-410-affordance.md +0 -71
- package/docs/decisions/ADR-082-410-one-click-relaunch.md +0 -58
- package/docs/decisions/ADR-083-session-thread-and-arbitrary-continuation.md +0 -85
- package/docs/decisions/ADR-084-drive-health-refresh-on-drive.md +0 -52
- package/docs/decisions/ADR-085-mcp-stdio-end-user-distribution-shape.md +0 -158
- package/docs/decisions/ADR-086-read-only-cross-agent-mcp-discovery-helper.md +0 -171
- package/docs/decisions/ADR-087-installer-e2e-test-strategy.md +0 -111
- package/docs/decisions/ADR-088-no-external-runtime-federation.md +0 -144
- package/docs/decisions/ADR-089-lean-local-plugin-install.md +0 -111
- package/docs/decisions/ADR-090-visibility-command-frontmatter-field.md +0 -95
- package/docs/decisions/ADR-091-split-meta-capability-packs.md +0 -113
- package/docs/decisions/ADR-092-defer-command-tier-alias-removal.md +0 -117
- package/docs/decisions/ADR-093-ai-council-config-user-global.md +0 -117
- package/docs/decisions/ADR-094-agent-memory-layer-removal.md +0 -94
- package/docs/decisions/ADR-095-workspace-boundary-contract.md +0 -108
- package/docs/decisions/ADR-096-analysis-workbench.md +0 -110
- package/docs/decisions/ADR-097-mission-recipe-privilege-boundary.md +0 -121
- package/docs/decisions/ADR-098-evidence-first-structure-discovery.md +0 -154
- package/docs/decisions/ADR-099-file-first-pattern-library.md +0 -87
- package/docs/decisions/ADR-100-global-knowledge-card-sharing.md +0 -140
- package/docs/decisions/ADR-101-ticket-bundle-emission.md +0 -109
- package/docs/decisions/ADR-102-ticket-handoff-paste-and-mcp.md +0 -72
- package/docs/decisions/ADR-103-global-knowledge-default-off-until-measured.md +0 -92
- package/docs/decisions/ADR-104-ai-council-config-global-only.md +0 -119
- package/docs/decisions/ADR-105-automatic-subagent-orchestration.md +0 -108
- package/docs/decisions/ADR-106-recursive-verification-benchmark-gate.md +0 -126
- package/docs/decisions/ADR-107-legal-domain-pack-adoption.md +0 -70
- package/docs/decisions/ADR-108-open-source-forever-no-commercial-tier.md +0 -46
- package/docs/decisions/ADR-109-subagent-v1-contract.md +0 -248
- package/docs/decisions/ADR-110-discipline-profile-resolution-locus.md +0 -112
- package/docs/decisions/ADR-111-canonical-glama-listing.md +0 -97
- package/docs/decisions/ADR-112-stdio-lite-stays-read-only.md +0 -92
- package/docs/decisions/ADR-113-ci-native-release-label-trigger.md +0 -209
- package/docs/decisions/ADR-114-commit-policy-iron-law-override.md +0 -85
- package/docs/decisions/ADR-115-command-cluster-consolidation-phase-4.md +0 -91
- package/docs/decisions/ADR-116-memory-tripwire-activation-path.md +0 -144
- package/docs/decisions/ADR-117-subagents-auto-default-on.md +0 -89
- package/docs/decisions/ADR-118-loop-engineering-boundaries.md +0 -162
- package/docs/decisions/ADR-119-global-knowledge-default-on.md +0 -104
- package/docs/decisions/ADR-120-council-chairman-mode.md +0 -70
- package/docs/decisions/ADR-121-knowledge-sensitivity-classes.md +0 -90
- package/docs/decisions/ADR-122-adversarial-verification-council.md +0 -166
- package/docs/decisions/ADR-123-runtime-security-scope-and-spawn-hardening.md +0 -142
- package/docs/decisions/ADR-124-embedded-engine-doctrine.md +0 -255
- package/docs/decisions/ADR-125-doc-screenshot-anonymization.md +0 -131
- package/docs/decisions/ADR-126-internet-reach-operator-tooling.md +0 -254
- package/docs/decisions/ADR-127-enforcement-claims-must-resolve.md +0 -150
- package/docs/decisions/ADR-128-executable-evidence-and-measured-escalation.md +0 -201
- package/docs/decisions/ADR-200-python-to-typescript-migration.md +0 -203
- package/docs/decisions/ADR-rule-kernel-and-router.md +0 -133
- package/docs/decisions/INDEX.md +0 -157
- package/docs/decisions/engine-reclassification-2026-07.md +0 -104
- package/docs/deploy/connector-setup.md +0 -129
- package/docs/deploy/env-vars.md +0 -70
- package/docs/deploy/policy-cookbook.md +0 -130
- package/docs/deploy/quickstart.md +0 -112
- package/docs/deploy/small-team-recipe.md +0 -148
- package/docs/deploy/team-deployment-posture.md +0 -111
- package/docs/design/adversarial-council-eval.md +0 -106
- package/docs/design/council-vs-solo-baseline.md +0 -92
- package/docs/design/cross-model-parity-eval.md +0 -82
- package/docs/design/length-neutral-judge-rerun.md +0 -92
- package/docs/design/utilization-window-criteria.md +0 -51
- package/docs/development.md +0 -230
- package/docs/distribution/awesome-list-submission.md +0 -46
- package/docs/distribution/consumer-matrix.md +0 -96
- package/docs/distribution/launch-story-draft.md +0 -58
- package/docs/distribution/mcp-submission-checklist.md +0 -95
- package/docs/distribution/public-install-smoke.md +0 -68
- package/docs/distribution/registries.md +0 -126
- package/docs/distribution/registry-submissions.md +0 -85
- package/docs/distribution/telemetry-privacy.md +0 -128
- package/docs/distribution/telemetry-schema.md +0 -174
- package/docs/distribution/topics-equivalents-decay-policy.md +0 -51
- package/docs/end-to-end-walkthroughs.md +0 -165
- package/docs/enforcement-by-host.md +0 -51
- package/docs/examples/agent-user.example.md +0 -22
- package/docs/experiences/agency.md +0 -49
- package/docs/experiences/content_creator.md +0 -49
- package/docs/experiences/developer.md +0 -49
- package/docs/experiences/finance.md +0 -50
- package/docs/experiences/founder.md +0 -49
- package/docs/experiences/ops.md +0 -49
- package/docs/featured-commands.md +0 -27
- package/docs/featured-skills.md +0 -95
- package/docs/flows.md +0 -67
- package/docs/getting-started-by-role.md +0 -190
- package/docs/getting-started-laravel.md +0 -72
- package/docs/getting-started-local-stdio.md +0 -77
- package/docs/getting-started.md +0 -254
- package/docs/github-topics.md +0 -93
- package/docs/governance-advantage.md +0 -72
- package/docs/governance.md +0 -96
- package/docs/guides/cross-repo-linked-projects.md +0 -93
- package/docs/guides/cross-repo-retrieval.md +0 -61
- package/docs/guides/frontend-design-corpus-refresh.md +0 -83
- package/docs/guides/gated-platform-reads.md +0 -221
- package/docs/guides/local-analytics.md +0 -125
- package/docs/guides/local-knowledge.md +0 -127
- package/docs/guides/skill-discovery.md +0 -71
- package/docs/guides/skill-preview.md +0 -71
- package/docs/hook-payload-capture.md +0 -221
- package/docs/install-friction-report.md +0 -66
- package/docs/installation.md +0 -959
- package/docs/maintainers/branch-protection.md +0 -105
- package/docs/maintainers/dev-mode.md +0 -106
- package/docs/maintainers/optional-media-deps.md +0 -50
- package/docs/maintainers/system-map.md +0 -85
- package/docs/mcp-registries.md +0 -94
- package/docs/mcp-server.md +0 -175
- package/docs/mcp.md +0 -147
- package/docs/media/proof-demo.cast +0 -14
- package/docs/media/proof-demo.gif +0 -0
- package/docs/migration/consumer-template-consumption-model.md +0 -145
- package/docs/migration/divergences/README.md +0 -55
- package/docs/migration/divergences/_template.md +0 -50
- package/docs/migration/divergences/bench-stats-float-precision.md +0 -72
- package/docs/migration/divergences/mcp-telemetry-node-sqlite.md +0 -61
- package/docs/migration/divergences/pack-mcp-content-gzip-body.md +0 -53
- package/docs/migration/divergences/src-scripts-build_cloud_bundle.md +0 -63
- package/docs/migration/divergences/src-scripts-check_memory.md +0 -91
- package/docs/migration/divergences/src-scripts-inventory_abstraction_budget.md +0 -65
- package/docs/migration/divergences/src-scripts-lint_marketplace.md +0 -57
- package/docs/migration/divergences/src-scripts-lint_mcp_registry_manifest.md +0 -70
- package/docs/migration/divergences/src-scripts-spotcheck_thin_root.md +0 -60
- package/docs/migration/divergences/src-scripts-validate_agent_settings.md +0 -58
- package/docs/migration/node-floor.md +0 -86
- package/docs/migration/v1-to-v2.md +0 -156
- package/docs/migration/yaml-roundtrip-spike.md +0 -163
- package/docs/migrations/commands-1.15.0.md +0 -117
- package/docs/parity/bench-external.json +0 -58
- package/docs/parity/bench.json +0 -41
- package/docs/parity/command-frontmatter.md +0 -60
- package/docs/parity/external-runtime.md +0 -46
- package/docs/personas.md +0 -178
- package/docs/positioning-evidence.md +0 -86
- package/docs/profiles.md +0 -108
- package/docs/proof.md +0 -252
- package/docs/quality.md +0 -98
- package/docs/readme-split-plan.md +0 -102
- package/docs/recruits/_template.md +0 -81
- package/docs/release-runbook.md +0 -141
- package/docs/role-experiences.md +0 -19
- package/docs/safety.md +0 -30
- package/docs/second-brain-scope.md +0 -116
- package/docs/self-review-gate.md +0 -65
- package/docs/setup/enterprise-and-offline.md +0 -201
- package/docs/setup/mcp-client-config.md +0 -358
- package/docs/setup/mcp-cloud-endpoints.md +0 -116
- package/docs/setup/mcp-cloud-registry-listing.md +0 -99
- package/docs/setup/mcp-cloud-setup.md +0 -183
- package/docs/setup/mcp-r2-bootstrap.md +0 -82
- package/docs/setup/mcp-server-docker.md +0 -101
- package/docs/setup/per-ide/aider.md +0 -48
- package/docs/setup/per-ide/antigravity.md +0 -68
- package/docs/setup/per-ide/augment.md +0 -89
- package/docs/setup/per-ide/claude-code.md +0 -97
- package/docs/setup/per-ide/claude-desktop.md +0 -207
- package/docs/setup/per-ide/cline.md +0 -43
- package/docs/setup/per-ide/codebuddy.md +0 -63
- package/docs/setup/per-ide/codex.md +0 -46
- package/docs/setup/per-ide/continue.md +0 -68
- package/docs/setup/per-ide/copilot.md +0 -80
- package/docs/setup/per-ide/cursor.md +0 -125
- package/docs/setup/per-ide/droid.md +0 -65
- package/docs/setup/per-ide/gemini-cli.md +0 -45
- package/docs/setup/per-ide/jetbrains.md +0 -76
- package/docs/setup/per-ide/kilocode.md +0 -66
- package/docs/setup/per-ide/kiro.md +0 -72
- package/docs/setup/per-ide/opencode.md +0 -62
- package/docs/setup/per-ide/qoder.md +0 -63
- package/docs/setup/per-ide/roocode.md +0 -68
- package/docs/setup/per-ide/trae.md +0 -63
- package/docs/setup/per-ide/warp.md +0 -63
- package/docs/setup/per-ide/windsurf.md +0 -109
- package/docs/setup/per-ide/zed.md +0 -73
- package/docs/showcase.md +0 -209
- package/docs/skill-duplication-findings.md +0 -91
- package/docs/skills-catalog.md +0 -265
- package/docs/skills-taxonomy.md +0 -90
- package/docs/spawn-site-policy.md +0 -72
- package/docs/succession.md +0 -80
- package/docs/threat-model.md +0 -30
- package/docs/troubleshooting.md +0 -155
- package/docs/ui-track-mental-model.md +0 -121
- package/docs/us-vs-the-category.md +0 -38
- package/docs/value.md +0 -86
- package/docs/walkthroughs/assets/workspace-role-grid.png +0 -0
- package/docs/walkthroughs/assets/workspace-session-started.png +0 -0
- package/docs/walkthroughs/assets/workspace-task-picker.png +0 -0
- package/docs/walkthroughs/daily-workspace-a11y.md +0 -87
- package/docs/walkthroughs/daily-workspace.md +0 -127
- package/docs/wedge/production-validator/README.md +0 -81
- package/docs/wedge/production-validator/first-run-check.sh +0 -42
- package/docs/wedge/production-validator/production-validator.md +0 -83
- package/docs/wizard.md +0 -173
- package/src/scripts/postinstall_gui.ts +0 -129
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
stability: beta
|
|
3
|
-
keep-beta-until: 2026-08-26
|
|
4
|
-
roadmap_ref: road-to-adoption-proof-and-ci-green.md
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# CI Green Floor
|
|
8
|
-
|
|
9
|
-
> **Status** · v0 / beta · 2026-05-26. Phase A Step 4 of
|
|
10
|
-
> the `road-to-adoption-proof-and-ci-green` roadmap (archived).
|
|
11
|
-
> Defines what counts as a **blocking** CI failure (must be green
|
|
12
|
-
> before merge) vs. an **advisory** signal (visible but not
|
|
13
|
-
> merge-blocking), and the freeze rule that fires when main goes
|
|
14
|
-
> red on a required check.
|
|
15
|
-
|
|
16
|
-
## The Iron Law
|
|
17
|
-
|
|
18
|
-
```
|
|
19
|
-
ANY REQUIRED-CHECK RED ON `main` FREEZES SUBSEQUENT PR MERGES
|
|
20
|
-
UNTIL THE RED IS CLEARED. ADVISORY REDS NEVER FREEZE.
|
|
21
|
-
PHANTOM 0-JOB RUNS ARE ADVISORY BY CONSTRUCTION.
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
The required-check set is the source of truth for what blocks. Every
|
|
25
|
-
other workflow is advisory until it earns inclusion.
|
|
26
|
-
|
|
27
|
-
## Three tiers — blocking · advisory · phantom
|
|
28
|
-
|
|
29
|
-
| Tier | Definition | Effect on merge | Effect on freeze |
|
|
30
|
-
|---|---|---|---|
|
|
31
|
-
| **Blocking** | Listed in [`branch-protection-policy.md`](branch-protection-policy.md) § Per-PR-shape required-check matrix for the current PR shape. | Red blocks the PR merge. | Red on `main` (post-merge) triggers a freeze tag — see [Freeze rule](#freeze-rule-the-mechanics). |
|
|
32
|
-
| **Advisory** | Workflow ships in `.github/workflows/` but is NOT listed in the required-check matrix (e.g. `bench-drift.yml`, `cloud-release.yml`, `deploy-mcp-worker.yml`). | Red is visible on the PR page but does not block merge. | Red on `main` does not freeze. |
|
|
33
|
-
| **Phantom** | Workflow registers a run with `Jobs: 0` and `Conclusion: failure` — typically `workflow_dispatch`-only workflows that GitHub's check-suite still registers on push. | Filtered out of every status query. | Never. |
|
|
34
|
-
|
|
35
|
-
`task ci:status` (Phase A Step 6) is the canonical filter: it
|
|
36
|
-
queries `gh run list`, drops Jobs-0 phantoms, then asserts the
|
|
37
|
-
required-check set has zero non-success conclusions for the
|
|
38
|
-
current HEAD SHA.
|
|
39
|
-
|
|
40
|
-
## Blocking set — anchored to `branch-protection-policy.md`
|
|
41
|
-
|
|
42
|
-
The blocking set is defined per PR shape (feature / release /
|
|
43
|
-
docs-only) in [`branch-protection-policy.md`](branch-protection-policy.md)
|
|
44
|
-
§ Per-PR-shape required-check matrix. The summary for `main`:
|
|
45
|
-
|
|
46
|
-
- **Feature PR set** — `Consistency`, `Smoke Contracts`, `Skill Lint`,
|
|
47
|
-
`Tests` (every matrix entry), `Public Install Smoke`.
|
|
48
|
-
- **Release PR set** — `Consistency`, `Smoke Contracts`, three
|
|
49
|
-
`Release Validation` jobs.
|
|
50
|
-
- **Docs-only PR set** — `Consistency`, `Smoke Contracts`.
|
|
51
|
-
|
|
52
|
-
`task ci:status` reads the same set when run with `--strict` (Phase
|
|
53
|
-
A Step 6); the set is single-sourced from `scripts/ci_status.py`.
|
|
54
|
-
|
|
55
|
-
## Advisory list — explicit non-blockers
|
|
56
|
-
|
|
57
|
-
These workflows MAY fail without blocking merges. Each carries a
|
|
58
|
-
documented rationale (link to the file header or roadmap step) so
|
|
59
|
-
"advisory" never silently expands.
|
|
60
|
-
|
|
61
|
-
| Workflow | Rationale | Promotion criterion |
|
|
62
|
-
|---|---|---|
|
|
63
|
-
| `bench-drift.yml` | Performance bench — informational only until the bench-stability roadmap completes. | Three consecutive green weekly runs after the bench is stabilised. |
|
|
64
|
-
| `cloud-release.yml` | Release artefact publish — Hard-Floor adjacent fix pending. See [`02-deployment-failures.md`](../../agents/evidence/audits/2026-05-ci-triage/02-deployment-failures.md) § Finding 1. | Maintainer ships the rate-limit fix; smoke probe stays green for two consecutive releases. |
|
|
65
|
-
| `deploy-mcp-worker.yml` | MCP worker deploy — auth contract regression pending. See [`02-deployment-failures.md`](../../agents/evidence/audits/2026-05-ci-triage/02-deployment-failures.md) § Finding 2. | Maintainer aligns the smoke probe with the Worker auth gate; passes for two consecutive deploys. |
|
|
66
|
-
| `sync-visibility.yml` | `workflow_dispatch`-only mutator. GitHub registers a phantom 0-job failure on every push to main — documented in the workflow header. **Phantom, not advisory** — `task ci:status` filters it. | n/a; the filter is the fix. |
|
|
67
|
-
| `check-visibility-drift.yml` | PR-paths + schedule + dispatch. Same GitHub Actions quirk produces phantom 0-job failures on push to main. **Phantom, not advisory.** | n/a; the filter is the fix. |
|
|
68
|
-
|
|
69
|
-
Adding a row here is a maintainer-level call: the rationale must
|
|
70
|
-
exist, and the promotion criterion must be writable.
|
|
71
|
-
|
|
72
|
-
## Phantom 0-job runs — the filter
|
|
73
|
-
|
|
74
|
-
A "phantom" run is one where:
|
|
75
|
-
|
|
76
|
-
1. The workflow registers a check-suite entry on the commit, AND
|
|
77
|
-
2. The run has `Jobs: 0` (no job actually executed), AND
|
|
78
|
-
3. The conclusion is `failure`.
|
|
79
|
-
|
|
80
|
-
This is a documented GitHub Actions quirk for `workflow_dispatch`-only
|
|
81
|
-
workflows and for path-filtered workflows whose paths do not match
|
|
82
|
-
the push diff. Removing the `push:` trigger does NOT eliminate the
|
|
83
|
-
phantom; the check-suite still registers.
|
|
84
|
-
|
|
85
|
-
`task ci:status` and `scripts/ci_status.py` drop any run with
|
|
86
|
-
`Jobs: 0` from the tally before computing pass/fail. The phantom
|
|
87
|
-
is visible in the GitHub UI but invisible to the gate.
|
|
88
|
-
|
|
89
|
-
## Freeze rule — the mechanics
|
|
90
|
-
|
|
91
|
-
When a commit lands on `main` and any required-check workflow turns
|
|
92
|
-
red within ~5 minutes (the standard required-check window):
|
|
93
|
-
|
|
94
|
-
1. The required-check status remains red on the merge commit.
|
|
95
|
-
2. Subsequent PRs targeting `main` see the same required-check set
|
|
96
|
-
evaluated against the PR's head SHA. If the same workflow fails
|
|
97
|
-
again on the PR head, the PR is blocked.
|
|
98
|
-
3. The maintainer either (a) reverts the offending commit, or (b)
|
|
99
|
-
ships a fix-forward PR that turns the required check green. No
|
|
100
|
-
PR merges meanwhile.
|
|
101
|
-
|
|
102
|
-
The freeze is therefore behavioural, not enforced via a separate
|
|
103
|
-
"freeze-mode" workflow — branch protection already does the
|
|
104
|
-
gating. `freeze-guard.yml` ([source](../../.github/workflows/freeze-guard.yml))
|
|
105
|
-
is a **different** mechanism: it locks the behavioural baseline of
|
|
106
|
-
the work-engine via golden-transcript diff, and is a required check
|
|
107
|
-
in the engine-path subset (not the universal floor). Both apply
|
|
108
|
-
together; the names don't conflict.
|
|
109
|
-
|
|
110
|
-
## What this contract is not
|
|
111
|
-
|
|
112
|
-
- **Not a list of "all green workflows".** Advisory and phantom
|
|
113
|
-
reds are routine and do not constitute a violation.
|
|
114
|
-
- **Not a guarantee against false-greens.** A workflow that ran
|
|
115
|
-
but tested nothing meaningful can still report success; the
|
|
116
|
-
contract only governs how red signals are routed.
|
|
117
|
-
- **Not a license to add workflows to the blocking set silently.**
|
|
118
|
-
Promotion to blocking is a `branch-protection-policy.md` edit
|
|
119
|
-
with a written rationale and a maintainer review.
|
|
120
|
-
|
|
121
|
-
## Re-audit cadence
|
|
122
|
-
|
|
123
|
-
Re-audit on each of:
|
|
124
|
-
|
|
125
|
-
- A new workflow lands in `.github/workflows/`.
|
|
126
|
-
- A workflow is promoted from advisory to blocking (or vice versa)
|
|
127
|
-
in `branch-protection-policy.md`.
|
|
128
|
-
- A new phantom-failure class is observed (e.g. GitHub Actions ships
|
|
129
|
-
behaviour the filter doesn't catch).
|
|
130
|
-
- Quarterly review (Phase C of `road-to-ci-budget-and-cost.md` or
|
|
131
|
-
its successor).
|
|
132
|
-
|
|
133
|
-
## See also
|
|
134
|
-
|
|
135
|
-
- [`branch-protection-policy.md`](branch-protection-policy.md) —
|
|
136
|
-
the required-check matrix per PR shape.
|
|
137
|
-
- [`release-pr-gating.md`](release-pr-gating.md) — release-PR shape
|
|
138
|
-
detection + cut surface.
|
|
139
|
-
- [`../../agents/evidence/audits/2026-05-ci-triage/01-red-workflows.md`](../../agents/evidence/audits/2026-05-ci-triage/01-red-workflows.md)
|
|
140
|
-
— current red-workflow inventory.
|
|
141
|
-
- `AGENTS.md` § Emergency triage — root-of-repo pointer for agents.
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
stability: beta
|
|
3
|
-
keep-beta-until: 2026-08-17
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Command-category governance
|
|
7
|
-
|
|
8
|
-
> **Status (2026-06-09):** Phase-2b resolved as **Option 1 (light)** — an
|
|
9
|
-
> AI-council tie-break (claude-sonnet-4-5 + gpt-4o) chose light over a
|
|
10
|
-
> full/blocking lint, decisively: no consumer reads `category:` today, so
|
|
11
|
-
> populating all 54 + blocking CI is "supply without demand" (YAGNI), and a
|
|
12
|
-
> blocking gate on a 15%-ambiguous taxonomy enforces *presence, not correctness*
|
|
13
|
-
> — mis-calls made under CI pressure surface later as a re-categorization pass
|
|
14
|
-
> ("pays the cost twice"). What shipped, and the upgrade trigger, are below.
|
|
15
|
-
|
|
16
|
-
## Shipped (Option 1 — light)
|
|
17
|
-
|
|
18
|
-
- **`category:` defined** as an OPTIONAL enum in `command.schema.json`
|
|
19
|
-
(`flow-entry | state-query | product-surface`), **validate-when-present** —
|
|
20
|
-
a declared value must be a valid enum; absence is fine. (Note: the 150
|
|
21
|
-
`src/domains/**/command.md` files are not yet full-schema-validated — a
|
|
22
|
-
pre-existing gap, separate from this field; the enum bites wherever
|
|
23
|
-
command-schema validation runs / when a consumer reads it.)
|
|
24
|
-
- **Creation-time checklist** in the [`command-writing`](../../src/skills/command-writing/SKILL.md)
|
|
25
|
-
skill: categorize a NEW top-level command at authoring; fits-none → it's a
|
|
26
|
-
skill; genuinely ambiguous → omit `category:` and note why (intentionally
|
|
27
|
-
deferred, not forgotten). Sub-commands inherit the parent cluster's category.
|
|
28
|
-
|
|
29
|
-
## Deferred — until the upgrade trigger fires
|
|
30
|
-
|
|
31
|
-
**Full categorization of all 54 top-level commands + a blocking lint + the
|
|
32
|
-
demotion of fits-none commands** are deferred. **Upgrade trigger:** a **merged
|
|
33
|
-
consumer PR** — runnable code that *reads* `category:` (routing, analytics, a
|
|
34
|
-
catalog/discovery grouping, a "daily five" surface). A design doc is not the
|
|
35
|
-
trigger; running code that breaks on miscategorization is. When it lands,
|
|
36
|
-
population + enforcement land together in one focused PR, with the consumer's
|
|
37
|
-
requirements defining the ambiguous categories unambiguously.
|
|
38
|
-
|
|
39
|
-
## The schema (to introduce in Phase 2)
|
|
40
|
-
|
|
41
|
-
Every **visible** command (`suggestion.eligible: true`) declares one
|
|
42
|
-
`category:` in its frontmatter, per [`ADR-048`](../decisions/ADR-048-command-justification-rule.md):
|
|
43
|
-
|
|
44
|
-
```yaml
|
|
45
|
-
category: flow-entry | state-query | product-surface
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
- **flow-entry** — a daily starting point the user TYPES to begin work
|
|
49
|
-
(`work`, `git-commit`, `review-changes`, `fix-ci`, …).
|
|
50
|
-
- **state-query** — a read-only check typed many times a day
|
|
51
|
-
(`agent-status`, `project-health`, `profile-show`, …).
|
|
52
|
-
- **product-surface** — a feature the user starts deliberately
|
|
53
|
-
(`council`, `challenge-me`, `research`, `roadmap`, `video-storyboard`).
|
|
54
|
-
|
|
55
|
-
A command that fits **none** is, per ADR-048, a **skill** — so the lint doubles
|
|
56
|
-
as a demotion signal. That demotion is a product-surface change and is exactly
|
|
57
|
-
why this belongs in Phase 2 (own → age → contract), not a Phase-0 guardrail.
|
|
58
|
-
|
|
59
|
-
## Inventory at hand-off (2026-06-09)
|
|
60
|
-
|
|
61
|
-
- **150** command files (`find src/domains -name command.md`).
|
|
62
|
-
- **125** are visible (`suggestion.eligible: true`) → the categorization set.
|
|
63
|
-
- **0** currently carry a `category:` field.
|
|
64
|
-
|
|
65
|
-
So Phase 2 must: (1) add the `category:` schema to the frontmatter contract +
|
|
66
|
-
validator; (2) categorize the 125 visible commands (a per-command judgment under
|
|
67
|
-
ADR-048, ideally after the Phase-2 ownership map assigns owners); (3) decide the
|
|
68
|
-
demotion path for any command that fits none; (4) ship the `category:` lint as a
|
|
69
|
-
blocking gate once the field is populated (start non-blocking/warn to avoid a
|
|
70
|
-
flag-day, then flip).
|
|
71
|
-
|
|
72
|
-
## Phase-0 closure
|
|
73
|
-
|
|
74
|
-
Phase 0 closes on **step 7a** (the dead-doc-path CI guardrail —
|
|
75
|
-
`check_references.py` extended to `docs/` + `src/`, with tests) **plus this
|
|
76
|
-
hand-off**. The two guardrails guard orthogonal properties (path integrity vs
|
|
77
|
-
command-surface justification), so shipping 7a without 7b creates no false
|
|
78
|
-
confidence about command categorization.
|
|
79
|
-
|
|
80
|
-
## See also
|
|
81
|
-
|
|
82
|
-
- [`ADR-048`](../decisions/ADR-048-command-justification-rule.md) — the three-category contract.
|
|
83
|
-
- [`command-clusters.md`](command-clusters.md) — the command-justification section ADR-048 locks.
|
|
84
|
-
- Positioning roadmap Phase 2 — where the `category:` lint now lands.
|
|
@@ -1,399 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
stability: beta
|
|
3
|
-
keep-beta-until: 2026-08-12
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Command-cluster contract
|
|
7
|
-
|
|
8
|
-
> **Status:** beta — Phase 1 locked for `1.15.0` (top-3 clusters);
|
|
9
|
-
> Phase 2 locked for `1.17.0` (the remaining 12 clusters);
|
|
10
|
-
> Phase 3 locked for `1.17.0` (`council` cluster).
|
|
11
|
-
|
|
12
|
-
The agent-config command surface collapses related atomic commands
|
|
13
|
-
into **verb clusters**. A cluster is a single top-level command
|
|
14
|
-
(e.g. `/fix`) that dispatches to sub-commands (e.g. `/fix ci`,
|
|
15
|
-
`/fix pr-comments`). Old atomic commands stay one release as deprecation
|
|
16
|
-
shims, then disappear.
|
|
17
|
-
|
|
18
|
-
This file is the **locked source of truth** for which clusters
|
|
19
|
-
exist and which sub-commands belong to each. The atomic-command
|
|
20
|
-
linter (`scripts/lint_no_new_atomic_commands.py`) reads this file;
|
|
21
|
-
new atomic commands without a `cluster:` field pointing to an
|
|
22
|
-
entry below fail CI.
|
|
23
|
-
|
|
24
|
-
## Locked clusters
|
|
25
|
-
|
|
26
|
-
The full set, both phases. Linter parses every backticked name in
|
|
27
|
-
column 1 of this table.
|
|
28
|
-
|
|
29
|
-
| Cluster | Phase | Sub-commands | Replaces |
|
|
30
|
-
|---|:-:|---|---|
|
|
31
|
-
| `fix` | 1 | `ci` · `pr-comments` · `pr-bot-comments` · `pr-developer-comments` · `portability` · `refs` · `seeder` · `comments` · `quality` · `route` | `fix-ci` · `fix-pr-comments` · `fix-pr-bot-comments` · `fix-pr-developer-comments` · `fix-portability` · `fix-references` · `fix-seeder`; `comments` added 2026-06-22 — audits the **code comments** in the current branch's diff (simplify / shorten / remove), distinct from the PR-review-thread `pr-comments` sub; `quality` added 2026-07-08 — replaces `quality-fix` (slug reorder, `replaces:` alias); `route` added 2026-07-15 (ecosystem-harvest ergonomics U1) — the classify-and-dispatch entry (adapted from the source's `/smart-fix`; folded into the `fix` verb family to satisfy the ADR-041 controlled-verb vocabulary without a new verb) |
|
|
32
|
-
| `optimize` | 1 | `agents-dir` · `augmentignore` · `rtk` · `skills` · `project` · `prompt` | `optimize-augmentignore` · `optimize-rtk-filters` · `optimize-skills` · former `/optimize agents` and `/optimize agents-md` moved to the `/agents` file-family cluster 2026-05-09; `/agents prepare/audit/cleanup` collapsed into the single `/optimize agents-dir` (flags or wizard) per the agent-doc consolidation; `project` (slug-neutral nest of `optimize-project`, pack move engineering-base → meta) + `prompt` (slug-neutral nest of `optimize-prompt`) added 2026-07-08 — the head now spans agent-layer / project-wide / prompt scopes with a disambiguating menu |
|
|
33
|
-
| `feature` | 1 | `explore` · `plan` · `refactor` · `roadmap` · `dev` | `feature-explore` · `feature-plan` · `feature-refactor` · `feature-roadmap` · `feature-dev` |
|
|
34
|
-
| `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 |
|
|
35
|
-
| `agents` | 2 | `init` · `optimize` · `audit` · `user` | AGENTS.md file family (high-frequency) — repurposed 2026-05-09: `init` (was `/copilot-agents init`) · `optimize` (merger of `/optimize agents-md` + `/copilot-agents optimize`) · `audit` (was `/optimize agents`, collapses old `audit` + `check` verbs); legacy folder ops (`prepare` / `cleanup` / folder-`audit`) moved to `/optimize agents-dir`; `user` sub-cluster added 2026-05-15 — manages the project-root `.agent-user.md` persona file (sub-sub-commands: `init` · `show` · `review` · `accept` · `update`) per [`agent-user-schema`](agent-user-schema.md) |
|
|
36
|
-
| `memory` | 2 | `add` · `load` · `promote` · `propose` · `mine-session` · `learn-low-impact` | `memory-add` · `memory-full` · `memory-promote` · `propose-memory`; `mine-session` added 2026-05-10 — manual transcript-mining sub-command from an internal roadmap (local-only), opt-in via `--confirm-transcript-access` per invocation; `learn-low-impact` added 2026-05-15 — upstreams `## Validated` entries from `agents/decisions/low-impact-decisions.md` to the package seed via a DRAFT PR (re-runs the privacy-floor redactor as a second gate per `low-impact-corpus-privacy-floor`) |
|
|
37
|
-
| `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` |
|
|
38
|
-
| `module` | 2 | `create` · `explore` | `module-create` · `module-explore` |
|
|
39
|
-
| `tests` | 2 | `create` · `execute` · `e2e-plan` · `e2e-heal` | `tests-create` · `tests-execute`; `e2e-plan` / `e2e-heal` added 2026-07-08 — replace the flat `e2e-plan` / `e2e-heal` (slug reorders, `replaces:` aliases; composite sub-names per ADR-003 §2) |
|
|
40
|
-
| `tdd` | 2 | `red` · `green` · `refactor` | new cluster 2026-07-15 (ecosystem-harvest ergonomics U2) — thin per-phase ergonomic split over the `test-driven-development` skill; each sub drives one TDD phase, no logic duplication. Internal visibility. Bare `/tdd` shows the menu. |
|
|
41
|
-
| `context` | 2 | `create` · `refactor` | `context-create` · `context-refactor` |
|
|
42
|
-
| `override` | 2 | `create` · `manage` | `override-create` · `override-manage` |
|
|
43
|
-
| `judge` | 2 | `solo` · `on-diff` · `steps` | `judge` (legacy standalone) · `do-and-judge` · `do-in-steps` |
|
|
44
|
-
| `git-commit` | 2 | `in-chunks` | `commit-in-chunks` · former cluster name `commit` — renamed 2026-06-09 to the path-derived pack-prefixed slug (`src/domains/git/commit/`, ADR-044 amendment; issue #380) |
|
|
45
|
-
| `git-pr-create` | 2 | `description-only` | `create-pr-description` · former cluster `create-pr` — physically merged into the `pr` verb family at `src/domains/git/pr/create/` and renamed 2026-06-09 to the path-derived pack-prefixed slug (ADR-044 amendment; issue #380) |
|
|
46
|
-
| `council` | 3 | `default` · `pr` · `design` · `optimize` · `analysis` | `council` (legacy default lens) · `council-pr` · `council-design` · `council-optimize`; `analysis` added 2026-05-14 — wrapper for local analysis outputs with a Top-N consensus tail block consumed by `/roadmap create` |
|
|
47
|
-
| `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 |
|
|
48
|
-
| `research` | 2 | `deep` · `report` | preliminary-research scaffolder ported from `Weizhena/Deep-Research-skills` (cluster head emits `outline.yaml` + `fields.yaml` against the `research-schema` contract). `:deep` populates per-item JSON in batches with native web-search + JSON-Schema self-validation (no Python runtime); `:report` renders `report.md` directly + optionally emits a `jq` template for deterministic regeneration. `add-items` / `add-fields` intentionally **not** ported — re-run `/research <topic>` to extend the field framework. |
|
|
49
|
-
| `team` | 2 | `review` · `adversarial` · `delegate` · `status` | new 2026-07-12 (road-to-team-mode Phase 2) — cross-model depth review: thin fail-closed delegations to the official codex plugin on Claude-Code hosts under `ai_team` governance ([`ai-team-config`](ai-team-config.md)); default-off (`ai_team.enabled: false`), `delegate` behind the second opt-in `allow_delegate`; internal visibility until the ADR promotion gate |
|
|
50
|
-
| `orchestrate` | — | _(none yet — cluster head only)_ | new — runtime executor for YAML pipelines under `.agent-config/orchestrations/` per the [`orchestration-dsl-v1`](orchestration-dsl-v1.md) contract; chains personas / skills / commands / sub-agents deterministically. Single cluster head; sub-commands deferred until a second verb is needed. |
|
|
51
|
-
| `sync` | 4 | `agent-settings` · `gitignore` · `gitignore-fix` | new cluster 2026-07-08 — absorbs the former single-sub `sync-gitignore` cluster (slug-neutral nests: `sync-agent-settings`, `sync-gitignore`, `sync-gitignore-fix` keep their slugs; the gitignore node keeps its own `fix` sub-dir, mirroring the `agents/user` deep-nest precedent). Bare `/sync` shows the menu. |
|
|
52
|
-
| `ghostwriter` | — | `fetch` · `write` · `list` · `show` · `delete` | new cluster 2026-05-15 — third voice primitive for AI-assisted writing in the public voice of a public figure. Hybrid storage: real-person profiles live consumer-side under `agents/reference/ghostwriter/<slug>.md` (gitignored by default); package source ships only `fictional: true` fixtures. Zero network code in the package — `:fetch` delegates web-fetch / web-search to the host agent. Mandatory disclosure footer on every `:write` output (no opt-out). Schema: [`ghostwriter-schema`](ghostwriter-schema.md). |
|
|
53
|
-
| `humanize` | — | _(none yet — cluster head only)_ | new cluster 2026-07-11 (`road-to-humanized-writing` Phase 3) — on-demand AI-tell removal for deliverable prose (pasted text or file path) via the [`humanizer`](../../src/skills/humanizer/SKILL.md) skill's draft→audit→final loop + the `detect_ai_tells.ts` detector; `--voice=<slug\|me>` reuses the write-engine style-source resolution (no second voice mechanism). Counterpart to the engine-internal step 4b in [`write-engine`](write-engine.md). Single cluster head; sub-commands deferred until a second verb is needed. |
|
|
54
|
-
| `post-as` | — | `me` · `ghostwriter` | new cluster 2026-05-15 — consumer-facing write entry points. `:me` reads `.agent-user.md.voice_sample` and drafts in the maintainer's own voice (no disclosure footer — the user is the author); `:ghostwriter` is a thin alias for `/ghostwriter:write` with the mandatory disclosure footer. Both share the procedural [`write-engine`](write-engine.md) contract — style source and footer are the only axes of variation. |
|
|
55
|
-
| `video` | — | `from-script` · `from-song` · `scene` · `storyboard` · `stitch` | new cluster 2026-05-17 — AI video generation pipeline. Cluster head orchestrates the full flow; `:scene` runs a single scene end-to-end (script → blueprint → still → motion → clip); `:storyboard` expands a script into per-scene blueprints + reference stills with character-lock JSON; `:from-script` walks a multi-scene script through storyboard + per-scene generation; `:from-song` builds a music-video from a song + reference images — derived/briefed timed script (via the `song-to-script` skill + `probe-audio.sh` hybrid segmentation), optional character-lock, then stitch with the song muxed as the master track and a mandatory AI-generation disclosure; `:stitch` concatenates scene clips with `ffmpeg` against a scene manifest. Provider-agnostic via the adapter contract under `scripts/media/lib/adapter-contract.md`; cost-gated with mandatory `AIV_DRYRUN=true` default and explicit confirmation before live provider calls. |
|
|
56
|
-
| `knowledge` | — | `ingest` · `list` · `forget` · `cross-repo` | local-knowledge namespace (employee-product Phase 7); `:cross-repo` added 2026-05-30 (`road-to-leaner-core-and-discovery` Phase 4) — read-only targeted retrieval over opted-in `linked_projects` siblings (ADR-032 Option A), per [`cross-repo-retrieval`](cross-repo-retrieval.md). The pre-existing `ingest`/`list`/`forget` sub-commands are recorded in the registry here for the first time. |
|
|
57
|
-
| `skills` | — | `discover` | new cluster 2026-05-30 (`road-to-leaner-core-and-discovery` Phase 3) — local, explained skill-recommendation surface over the catalog + role shortlists + optional local analytics, per [`skill-discovery`](skill-discovery.md). Every result carries a non-empty `why`; no network, honours the analytics opt-out. |
|
|
58
|
-
| `skill` | — | `preview` | new cluster 2026-05-30 (`road-to-leaner-core-and-discovery` Phase 5) — non-destructive skill/command preview: surfaces the declared steps + files/commands a skill would touch before it runs, per [`skill-dry-run`](skill-dry-run.md). Singular `skill` (one target) vs plural `skills` (the catalog) by design. |
|
|
59
|
-
| `image` | — | `analyse` · `create` · `verify` | new cluster 2026-05-31 (`road-to-character-image-fidelity` Phase 4) — character-image fidelity surface mirroring `/video:*`. `:analyse` extracts a per-feature spec from an image and diffs it against a Canon Spec down to the smallest mole (OCR for lettered tattoos, per-section severity scores, canon-breaking hard gate); `:create` assembles a max-fidelity anchors-first generation prompt from the Canon Spec, governance- + provider-gated, `AIV_DRYRUN=true` default; `:verify` runs the analyser in loop mode against a candidate and reports the gate verdict + remaining diff with plateau/oscillation/budget stop conditions. Skills: [`image-analyser`](../../skills/image-analyser/SKILL.md) + [`image-creator`](../../skills/image-creator/SKILL.md); schema/rubric/loop in [`canon-spec.md`](../../skills/image-analyser/canon-spec.md). |
|
|
60
|
-
| `brand` | — | `strategy` · `identity` · `tokens` · `review` · `voice` | new cluster 2026-06-17 (`road-to-image-brand-followups` Phase 3) — brand-as-first-class-UX surface for `pack-brand`, consulted before `design-intelligence` so brand bounds style. `:strategy` (positioning/archetype/voice/messaging over the brand corpus), `:identity` (logo/colour/type/imagery direction — defines the tokens downstream generation consumes), `:tokens` (derive a DTCG `.tokens.json` source of truth → CSS/Tailwind, no Node), `:review` (audit emitted UI/copy/assets against active brand tokens + voice per the `brand-consistency` gate), `:voice` (voice-and-tone profile). Skills: [`brand-strategy`](../../skills/brand-strategy/SKILL.md) · [`brand-identity`](../../skills/brand-identity/SKILL.md) · [`brand-to-tokens`](../../skills/brand-to-tokens/SKILL.md) · [`brand-audit`](../../skills/brand-audit/SKILL.md) · [`voice-and-tone-design`](../../skills/voice-and-tone-design/SKILL.md). The companion `/imagegen:*` generation cluster (pack-ai-image) is deferred until its adapters' live submit/poll/fetch is wired. |
|
|
61
|
-
|
|
62
|
-
| `team-knowledge` | — | `consolidate` · `bootstrap` | new cluster 2026-07-05 (`road-to-knowledge-system` Phases 5-6) — the repo-tracked team-knowledge layer under `agents/knowledge/{sessions,concepts,procedures,decisions}/`. Distinct from the pre-existing [`knowledge`](#locked-clusters) cluster (arbitrary local-file ingestion into `agents/memory/knowledge/`) — different namespace, different concern. `:consolidate` reads pending typed-observation events (`consolidate_knowledge_events.ts`), finds the nearest existing page per topic (mechanical similarity), and presents a NEW/EXTEND/CONFIRM/CONFLICT batch for human approval — never writes a page automatically. `:bootstrap` (`bootstrap_knowledge.ts`) stages a one-shot deterministic seed (detected package manifest, top-level directories, known config filenames — never file content, never an LLM-invented claim) to a gitignored staging dir for review-then-commit. |
|
|
63
|
-
| `profile` | — | `activate` · `deactivate` · `show` | new cluster 2026-06-02 (`road-to-session-profile-activation`) — session-profile activation: an ephemeral `runtime.active_packs` overlay that biases the surfaced command/skill set to the active pack closure, with no persistence and no execution-gating (recommendation-bias MVP). `:activate <name…>` resolves an alias (`src/config/discovery/session-profiles.yml`) or a raw pack id, fails fast on a not-installed pack, expands the `requires_hint` closure, and writes the overlay atomically to `agents/settings/.agent-settings.local.yml`; `:deactivate [name…]` clears it (or drops named packs, keeping deps a still-active pack needs); `:show` is the observability surface (active packs + surfaced/hidden counts). Overlay = runtime modulation of the existing `pack` axis, not a fifth axis (ADR-010 addendum). Library: `scripts/config/session_profiles.py`; schema in [`session-profile-overlay`](session-profile-overlay.md). |
|
|
64
|
-
| `analyze` | 4 | `postmortem` · `premortem` · `decision` · `near-miss` · `incident` · `reference-repo` | analysis-workbench cluster, registered in this table 2026-07-08 (pre-existing head + five framework subs); `reference-repo` added 2026-07-08 — slug-neutral nest + pack move of `analyze-reference-repo` (engineering-base → analysis-workbench, co-locating with its head) |
|
|
65
|
-
| `bug` | 4 | `fix` · `investigate` | new cluster 2026-07-08 — slug-neutral nests of `bug-fix` + `bug-investigate`; triage entry point (investigate = root cause, fix = plan + implement). Bare `/bug` shows the menu. |
|
|
66
|
-
| `project` | 4 | `analyze` · `health` | new cluster 2026-07-08 — slug-neutral nests of `project-analyze` + `project-health`; project-wide inspection (analyze = full audit, health = read-only). Bare `/project` shows the menu. |
|
|
67
|
-
| `review` | 4 | `changes` · `routing` | new cluster 2026-07-08 — slug-neutral nests of `review-changes` (tier moved to the head: sub is internal, head is the advanced surface) + `review-routing` (pack move meta → engineering-base). `prepare-for-review` deliberately stays flat (council-rejected slug change). Bare `/review` shows the menu. |
|
|
68
|
-
| `package` | 4 | `test` · `reset` | new cluster 2026-07-08 — slug-neutral nests of `package-test` (pack move engineering-base → meta) + `package-reset`; package-install maintenance. Bare `/package` shows the menu. |
|
|
69
|
-
| `cost` | 4 | `report` · `profile` | new cluster 2026-07-08 — slug-neutral nest of `cost-report` + `profile` replacing `set-cost-profile` (slug reorder, `replaces:` alias). Bare `/cost` shows the menu. |
|
|
70
|
-
|
|
71
|
-
**Net change:** Phase 1 collapsed 15 atomics → 3 clusters; Phase 2
|
|
72
|
-
collapses 26 atomics → 11 sub-command clusters. Phase 4 (2026-07-08,
|
|
73
|
-
`road-to-command-structure-optimization`) nests 19 more flat commands
|
|
74
|
-
into 6 new + 4 extended clusters — 15 of them slug-neutral (path
|
|
75
|
-
hyphen-joining keeps the invoked name), 4 slug reorders carried by
|
|
76
|
-
`replaces:` aliases (`fix-quality`, `tests-e2e-plan`, `tests-e2e-heal`,
|
|
77
|
-
`cost-profile`). The five-judge self-review formerly at
|
|
78
|
-
`review-changes` is now the `changes` sub of the `review` cluster.
|
|
79
|
-
|
|
80
|
-
## Bare invocation — deterministic, never guessed
|
|
81
|
-
|
|
82
|
-
Locked with Phase 4 (2026-07-08). Every cluster head defines what a
|
|
83
|
-
bare `/<cluster>` (no sub-command, no auto-detect signal) does:
|
|
84
|
-
|
|
85
|
-
1. **Multi-sub head → numbered menu.** Print the sub-command menu and
|
|
86
|
-
ask; never guess a sub-command. Heads with `auto_detect: true` run
|
|
87
|
-
their detection table first, but LOW confidence still ends in the
|
|
88
|
-
menu (interactive) or `ambiguous_routing` (CI) — never a guess.
|
|
89
|
-
2. **Single-sub head → default-route.** Route to the only sub and say
|
|
90
|
-
so (e.g. `/chat-history` → `import`).
|
|
91
|
-
3. **Documented default-flow exceptions.** A head whose bare
|
|
92
|
-
invocation runs a real default flow declares it in its `## Dispatch`
|
|
93
|
-
section (e.g. `/council` → `default` lens, `/sync gitignore` bare →
|
|
94
|
-
its own `## Default flow`). The exception lives in the head file —
|
|
95
|
-
not in tribal knowledge.
|
|
96
|
-
|
|
97
|
-
`scripts/check_cluster_patterns.ts` enforces the structural side:
|
|
98
|
-
every phase-numbered cluster head carries `## Sub-commands` (with the
|
|
99
|
-
locked table header), `## Dispatch`, and `## Rules`, and every
|
|
100
|
-
`routes_to:` entry must resolve to a real command.
|
|
101
|
-
|
|
102
|
-
## Reserved host names — Claude Code never gets a shadowing `/name`
|
|
103
|
-
|
|
104
|
-
Locked 2026-07-10 (observed: a user-scope `mcp` skill shadowed Claude
|
|
105
|
-
Code's built-in `/mcp` auth dialog). A cluster head or skill whose name
|
|
106
|
-
equals a Claude Code built-in command or bundled skill (`review`,
|
|
107
|
-
`agents`, `memory`, `mcp`, `code-review`, `bug`, `context`, `cost`,
|
|
108
|
-
`skills`, … — canonical set in `src/scripts/_lib/claude_builtin_names.ts`)
|
|
109
|
-
is **withheld from Claude-facing `/name` projections**: the
|
|
110
|
-
`.claude/skills/` command entry is skipped by `condense.ts`, and the
|
|
111
|
-
user-scope installer deploys neither a skill wrapper nor a flat command
|
|
112
|
-
file. Nested `/cluster:sub` commands are unaffected (hyphen/colon-joined
|
|
113
|
-
slugs cannot collide). Skills that keep a reserved name opt out of slash
|
|
114
|
-
registration with `user-invocable: false` (model-invocation only);
|
|
115
|
-
`lint_agent_skill_names.ts` fails CI otherwise. The suite complements
|
|
116
|
-
the host — it never overlays or degrades a built-in. On such names the
|
|
117
|
-
bare-invocation contract above applies to every tool **except** Claude
|
|
118
|
-
Code, where the built-in owns `/name`.
|
|
119
|
-
|
|
120
|
-
## Cluster depth and sub-command naming
|
|
121
|
-
|
|
122
|
-
Locked by [ADR-003](../decisions/ADR-003-flat-cluster-subs-and-colon-syntax.md)
|
|
123
|
-
(2026-05-07). The shape is the default for **every** new cluster and
|
|
124
|
-
every new sub-command added to an existing cluster.
|
|
125
|
-
|
|
126
|
-
1. **Flat only.** A cluster has exactly one level of sub-commands.
|
|
127
|
-
No sub-sub-commands. A dispatcher routes `/cluster <sub>` to a
|
|
128
|
-
single sub-file; sub-files do not dispatch further. Two-level
|
|
129
|
-
dispatch is a deliberate contract change requiring a new ADR
|
|
130
|
-
superseding ADR-003.
|
|
131
|
-
|
|
132
|
-
2. **Composite sub-names for verb+scope.** When a cluster carries
|
|
133
|
-
multiple verbs (e.g. authoring + execution), encode the verb in
|
|
134
|
-
the sub-name, joined with `-`:
|
|
135
|
-
|
|
136
|
-
- ✅ `/roadmap:create` · `/roadmap:process-step` ·
|
|
137
|
-
`/roadmap:process-phase` · `/roadmap:process-full`
|
|
138
|
-
- ❌ `/roadmap:process:phase` (sub-sub — forbidden)
|
|
139
|
-
- ❌ `/roadmap:step` · `/roadmap:phase` · `/roadmap:full`
|
|
140
|
-
(verb hidden — breaks symmetry with `create`)
|
|
141
|
-
- ❌ separate `/roadmap-process` cluster (domain split — forbidden
|
|
142
|
-
when one cluster can carry both verbs flat)
|
|
143
|
-
|
|
144
|
-
Sibling sub-names stay in the same shape: either all bare verbs,
|
|
145
|
-
all bare nouns/scopes, or all composite. Mixing bare and composite
|
|
146
|
-
in the same cluster is allowed only when the bare sibling is the
|
|
147
|
-
cluster's primary verb (e.g. `/roadmap:create` + `process-*`
|
|
148
|
-
composites).
|
|
149
|
-
|
|
150
|
-
3. **Sub-name format.** kebab-case (`pr-bot-comments`, `process-phase`),
|
|
151
|
-
≤ 24 chars, no leading verb that duplicates the cluster name
|
|
152
|
-
(use `/fix:ci`, not `/fix:fix-ci`).
|
|
153
|
-
|
|
154
|
-
4. **Colon-canonical invocation.**
|
|
155
|
-
`/<cluster>:<sub>` is the canonical form everywhere — catalog,
|
|
156
|
-
docs, examples, deprecation warnings. The space-separated form
|
|
157
|
-
`/<cluster> <sub>` is a first-class equivalent and routes to the
|
|
158
|
-
same dispatcher; it must keep working. Autocompletion-aware UIs
|
|
159
|
-
surface the colon form because it stays a single token. Full
|
|
160
|
-
semantics: [`slash-command-routing-policy-mechanics.md`](../../.agent-src.uncondensed/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md)
|
|
161
|
-
§ Routing semantics.
|
|
162
|
-
|
|
163
|
-
## Command justification — a command must earn a top-level slot
|
|
164
|
-
|
|
165
|
-
```
|
|
166
|
-
A NEW COMMAND ONLY EARNS A TOP-LEVEL SLOT IN THREE CASES.
|
|
167
|
-
EVERYTHING ELSE IS A SKILL — THE AGENT TRIGGERS IT BY TASK.
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
Before adding a command, answer: which of these is it?
|
|
171
|
-
|
|
172
|
-
1. **Flow-entry** — a daily starting point of a flow the user TYPES to begin
|
|
173
|
-
work (`work`, `git-commit`, `git-pr-create`, `ticket-implement`,
|
|
174
|
-
`feature-plan`, `review-changes`, `fix-ci`, `test-run`).
|
|
175
|
-
2. **State-query** — a read-only check typed many times a day (`agent-status`,
|
|
176
|
-
`project-health`, `profile-show`).
|
|
177
|
-
3. **Product-surface** — a FEATURE the user starts deliberately (not daily, but
|
|
178
|
-
consciously): `council`, `challenge-me`, `research`, `roadmap`,
|
|
179
|
-
`video-storyboard`. These are products, not implementation helpers — burying
|
|
180
|
-
them as skills destroys discoverability.
|
|
181
|
-
|
|
182
|
-
If none of the three, it is a **skill**. Skills already trigger automatically by
|
|
183
|
-
task, so a sub-action, a one-off/setup-once op, a pipeline stage, a destructive
|
|
184
|
-
op (skill + mandatory confirmation gate — destructive ≠ command), or a system /
|
|
185
|
-
admin op (the `agent-admin` platform surface, NOT a flow) does NOT need a
|
|
186
|
-
top-level command. Sibling variants become a flag, never a second command
|
|
187
|
-
(`commit`, not `commit-in-chunks`; `roadmap --step`, not a separate
|
|
188
|
-
`roadmap-process-step` — and `roadmap` with no scope defaults to processing the
|
|
189
|
-
WHOLE roadmap, because that is why you write one). A new verb still needs an ADR
|
|
190
|
-
per [`ADR-041`](../decisions/ADR-041-controlled-command-verbs.md). A genuine
|
|
191
|
-
skill is `code-review` / `git-workflow` / `testing` — never `council` /
|
|
192
|
-
`challenge-me` / `research`.
|
|
193
|
-
|
|
194
|
-
> The rule that ends "should X be a command?" — a proposed `jira-comment`: not
|
|
195
|
-
> flow-entry, not state-query, not a product-surface feature → skill. Done. The
|
|
196
|
-
> sweet spot is ~40–50 visible commands (workflow + status + product features),
|
|
197
|
-
> not 125 (overwhelms) and not ~29 (buries features). Converged across the
|
|
198
|
-
> 6.0.0-D council passes + feedback (2026-06-03); the dedicated ADR is authored
|
|
199
|
-
> during the 6.0.0-D structural rollout.
|
|
200
|
-
|
|
201
|
-
## Frontmatter contract
|
|
202
|
-
|
|
203
|
-
A new command file under `.agent-src.uncondensed/commands/` MUST
|
|
204
|
-
declare `cluster:` in its frontmatter, pointing to one of the locked
|
|
205
|
-
clusters above:
|
|
206
|
-
|
|
207
|
-
```yaml
|
|
208
|
-
---
|
|
209
|
-
name: fix-ci # legacy slug retained for the shim
|
|
210
|
-
cluster: fix # required: locked cluster name
|
|
211
|
-
sub: ci # required: sub-command identifier (kebab-case)
|
|
212
|
-
description: Fetch CI errors from GitHub Actions and fix them
|
|
213
|
-
---
|
|
214
|
-
```
|
|
215
|
-
|
|
216
|
-
The linter only flags **newly-added** files under `commands/`
|
|
217
|
-
(git status `A`). Pre-existing commands without `cluster:` are
|
|
218
|
-
grandfathered indefinitely; modifying them does NOT require adding
|
|
219
|
-
the field. The goal is to stop the atomic surface from growing,
|
|
220
|
-
not to retro-fit every legacy command into a cluster.
|
|
221
|
-
|
|
222
|
-
## Master / wrapper sub-command shape (`council` cluster)
|
|
223
|
-
|
|
224
|
-
The `council` cluster uses a **master / wrapper** shape within the flat
|
|
225
|
-
ADR-003 dispatch — the only cluster currently shaped this way. It does
|
|
226
|
-
not break ADR-003 (still one level of sub-commands) and is documented
|
|
227
|
-
here so future lens additions follow the same shape.
|
|
228
|
-
|
|
229
|
-
- **Master:** `/council default` owns the full orchestration — Step 1
|
|
230
|
-
(resolve target + capture `original_ask`), Step 2 (configure check +
|
|
231
|
-
price-table freshness), Step 3 (cost confirmation), Step 4 (run CLI),
|
|
232
|
-
Step 5 / 5a / 5b (render → critical-evaluation lens → user options),
|
|
233
|
-
Step 6 (hard floor). See [`commands/council.md` → `## Architecture`](../../.agent-src.uncondensed/commands/council.md).
|
|
234
|
-
- **Wrappers:** `/council pr` · `/council design` · `/council optimize`
|
|
235
|
-
resolve lens-specific input (PR target / design artefact / optimization
|
|
236
|
-
target + metric), capture a wrapper-specific `original_ask`, then
|
|
237
|
-
delegate to `/council default` with `mode_override=<lens>`. They MUST
|
|
238
|
-
NOT re-implement cost-gate, CLI invocation, render, or host-verdict;
|
|
239
|
-
those flow through the master verbatim. Wrapper step references anchor
|
|
240
|
-
to the master (e.g. "cost gate from `/council default` Step 3",
|
|
241
|
-
"render via Step 5/5a/5b of `/council default`"), not the wrapper.
|
|
242
|
-
- **Single source of lens addendums:** lens-specific neutrality
|
|
243
|
-
addendums live in [`scripts/ai_council/prompts.py:_MODE_TABLE`](../../src/scripts/ai_council/prompts.py)
|
|
244
|
-
and are selected by `mode_override`. A new lens = a new `_MODE_TABLE`
|
|
245
|
-
entry **plus** a new wrapper file mirroring the `pr.md` / `design.md` /
|
|
246
|
-
`optimize.md` shape (~100–130 lines). No new master.
|
|
247
|
-
- **Behavioural changes** to the orchestration (e.g. a new render step)
|
|
248
|
-
land in `default.md` + `_MODE_TABLE` only; wrappers inherit
|
|
249
|
-
automatically. This invariant is what makes the shape safe under the
|
|
250
|
-
flat ADR-003 contract — the wrapper is text-only delegation.
|
|
251
|
-
|
|
252
|
-
Cluster-table names are unchanged: `/council default` is the master,
|
|
253
|
-
the other wrappers (`pr`, `design`, `optimize`, `analysis`) follow the
|
|
254
|
-
same shape. The deprecation shims for the four legacy slugs (`/council`,
|
|
255
|
-
`/council-pr`, `/council-design`, `/council-optimize`) continue to
|
|
256
|
-
follow the standard shim contract below.
|
|
257
|
-
|
|
258
|
-
### Wrapper output shapes (consumer contract)
|
|
259
|
-
|
|
260
|
-
Each wrapper renders the standard stacked + Convergence/Divergence
|
|
261
|
-
layout from `/council default` Step 5/5a/5b. Wrappers MAY append a
|
|
262
|
-
**lens-specific tail block** when their output is the input to a
|
|
263
|
-
downstream command — locking the tail shape avoids brittle scraping.
|
|
264
|
-
|
|
265
|
-
| Wrapper | Tail block | Downstream consumer |
|
|
266
|
-
|---|---|---|
|
|
267
|
-
| `pr` | (optional) one-line PR header at top; no structured tail | `gh pr comment` (opt-in single comment) |
|
|
268
|
-
| `design` | (none — open-ended prose) | Human reader; `/feature plan` / `/feature refactor` |
|
|
269
|
-
| `optimize` | (none — open-ended prose) | Human reader |
|
|
270
|
-
| `analysis` | `## Top-N consensus findings (roadmap-ready first)` — numbered list, each finding with `evidence-grade` (confirmed / inferred / speculative), `roadmap-ready` (yes / needs-discovery), `cited by`, `supporting citation` | `/roadmap create` |
|
|
271
|
-
|
|
272
|
-
The `analysis` Top-N block is the only structured tail shipped today.
|
|
273
|
-
Its fields are normative — `/roadmap create` parses them to draft a
|
|
274
|
-
roadmap; renaming or reordering them is a breaking change for the
|
|
275
|
-
council → roadmap pipeline. Cap at N=10 unless the upstream analysis
|
|
276
|
-
has fewer findings.
|
|
277
|
-
|
|
278
|
-
## Deprecation shim contract
|
|
279
|
-
|
|
280
|
-
A shim is a one-file stub that:
|
|
281
|
-
|
|
282
|
-
1. Keeps the old command slug in `.agent-src.uncondensed/commands/`.
|
|
283
|
-
2. Declares `superseded_by:` in frontmatter pointing to the new
|
|
284
|
-
cluster command (e.g. `superseded_by: fix ci`).
|
|
285
|
-
3. Declares `deprecated_in:` with the release version (e.g.
|
|
286
|
-
`deprecated_in: 1.15.0`).
|
|
287
|
-
4. Body contains exactly one warning line in the format:
|
|
288
|
-
```
|
|
289
|
-
⚠️ /<old-name> is deprecated; use /<cluster> <sub> instead.
|
|
290
|
-
```
|
|
291
|
-
5. Otherwise forwards verbatim to the cluster command (no logic).
|
|
292
|
-
|
|
293
|
-
`scripts/skill_linter.py` enforces the warning-line shape on any
|
|
294
|
-
file with `superseded_by:` set.
|
|
295
|
-
|
|
296
|
-
## Removal cycle
|
|
297
|
-
|
|
298
|
-
| State | Phase 1 | Phase 2 |
|
|
299
|
-
|---|---|---|
|
|
300
|
-
| Cluster command shipped, shim active | `1.15.0` | `1.17.0` |
|
|
301
|
-
| Shim emits warning, both work | `1.15.x` / `1.16.x` (≥ one minor cycle) | `1.17.x` (one minor cycle) |
|
|
302
|
-
| Shim removed, only cluster works | `1.17.0` (Phase 1 atomics removed alongside Phase 2 lock-in) | next minor after `1.17.x` |
|
|
303
|
-
|
|
304
|
-
No permanent aliases. Consumers who pin a 1.17 minor get a full
|
|
305
|
-
release window of warnings; the next-minor release notes call out
|
|
306
|
-
the removal explicitly. The 1.17.0 release ships Phase 2 cluster
|
|
307
|
-
locks **and** drops the seven Phase 1 atomic shims at the end of
|
|
308
|
-
their deprecation cycle.
|
|
309
|
-
|
|
310
|
-
## Agent-doc consolidation (2026-05-09)
|
|
311
|
-
|
|
312
|
-
Single-release breaking change folding seven scattered agent-doc
|
|
313
|
-
commands into the `/agents` (file-family) and `/optimize agents-dir`
|
|
314
|
-
surfaces. Frequency-weighted: high-use AGENTS.md operations get the
|
|
315
|
-
short `/agents` namespace; low-use folder ops nest under `/optimize`.
|
|
316
|
-
|
|
317
|
-
| Old command | New command | Note |
|
|
318
|
-
|---|---|---|
|
|
319
|
-
| `/optimize agents-md` | `/agents optimize` | Thin-Root refactor folded into `/agents` |
|
|
320
|
-
| `/optimize agents` | `/agents audit` | read-only audit folded into `/agents`; `audit` + `check` collapsed |
|
|
321
|
-
| `/agents prepare` | `/optimize agents-dir` | `--scaffold` flag or wizard mode |
|
|
322
|
-
| `/agents audit` (folder) | `/optimize agents-dir` | `--audit` flag |
|
|
323
|
-
| `/agents cleanup` | `/optimize agents-dir` | `--fix` flag |
|
|
324
|
-
|
|
325
|
-
Cluster `/copilot-agents` is retired; the file-family operations now
|
|
326
|
-
live under `/agents` (`init`, `optimize`).
|
|
327
|
-
|
|
328
|
-
## Linter behavior
|
|
329
|
-
|
|
330
|
-
`scripts/lint_no_new_atomic_commands.py`:
|
|
331
|
-
|
|
332
|
-
- Reads the locked cluster names from this file (parsed from the
|
|
333
|
-
"Locked clusters" table above — column 1 backticks).
|
|
334
|
-
- Finds every command file **added** since `--baseline`
|
|
335
|
-
(default: `main`) — modifications to existing files are ignored.
|
|
336
|
-
- For each new file, requires `cluster:` to be set to one of the
|
|
337
|
-
locked names — OR `superseded_by:` (the file is a shim).
|
|
338
|
-
- Exits non-zero on the first violation; lists every violator.
|
|
339
|
-
|
|
340
|
-
`--all` mode (manual audit only, not in CI) lints every command
|
|
341
|
-
file and surfaces grandfathered ones — useful when planning a
|
|
342
|
-
future cluster expansion.
|
|
343
|
-
|
|
344
|
-
`scripts/check_cluster_patterns.py` (Phase 2 onward):
|
|
345
|
-
|
|
346
|
-
- Compares each cluster dispatcher's structure against the Phase 1
|
|
347
|
-
reference patterns (`commands/fix.md`, `commands/optimize.md`,
|
|
348
|
-
`commands/feature.md`).
|
|
349
|
-
- Required sections: top-of-file `# /<cluster>`, `## Sub-commands`
|
|
350
|
-
table with `Sub-command | Routes to | Purpose` columns, `## Dispatch`
|
|
351
|
-
steps, `## Migration` notice, `## Rules` block.
|
|
352
|
-
- Fails CI if a new cluster invents a different dispatch shape.
|
|
353
|
-
|
|
354
|
-
## Tier-usage signal contract
|
|
355
|
-
|
|
356
|
-
Empirical retiering needs evidence; evidence needs a signal. The minimum signal the package collects to validate command tiering, with **zero new external surface** and the same privacy floor as artefact-engagement telemetry:
|
|
357
|
-
|
|
358
|
-
| Field | Type | Source | Notes |
|
|
359
|
-
|---|---|---|---|
|
|
360
|
-
| `ts_bucket` | str (ISO-8601 UTC, hour-resolution) | clock at invocation | hour-bucket, not raw timestamp — limits re-identification |
|
|
361
|
-
| `command` | str | dispatcher | the cluster + sub-command (`fix:ci`, `commit`, `work`) — never argv |
|
|
362
|
-
| `tier` | int (0/1/2/3) | `command-surface-tiers.md` lookup at invocation | the tier the command had **at the time of the call** |
|
|
363
|
-
| `outcome` | str | dispatcher exit shape | one of `success` / `error` / `blocked` — no message bodies |
|
|
364
|
-
| `user_hash` | str (sha256 first 16 hex chars) | hash of `$USER` + machine-id salt | distinct-user counting **without** identity recovery — never raw login |
|
|
365
|
-
|
|
366
|
-
**Forbidden — never recorded, enforced at the four privacy layers:**
|
|
367
|
-
|
|
368
|
-
- argv, flags, file paths, file contents.
|
|
369
|
-
- error messages, stdout, stderr.
|
|
370
|
-
- tickets, branch names, repo slugs.
|
|
371
|
-
- exact timestamps (only hour-buckets), exact env-var values.
|
|
372
|
-
- the user's name, email, or IP.
|
|
373
|
-
|
|
374
|
-
**Storage.** Append to `.agent-tier-usage.jsonl` (consumer-project root; configurable via `telemetry.tier_usage.output.path`). Separate file from `.agent-engagement.jsonl` — orthogonal signals, separate retention defaults, separate opt-in.
|
|
375
|
-
|
|
376
|
-
**Settings gate.** `telemetry.tier_usage.enabled` (default `false`, same opt-in posture as artefact-engagement). When disabled, the dispatcher records nothing and incurs zero file IO — the default-off doctrine carries over.
|
|
377
|
-
|
|
378
|
-
**Aggregation.** Local-only, hour-bucketed counts: `(command, tier) → invocation_count` and `(command, tier) → distinct_user_count`. No remote upload anywhere in scope.
|
|
379
|
-
|
|
380
|
-
## Empirical retiering rule
|
|
381
|
-
|
|
382
|
-
A command **stays at Tier-0** at the next minor release only if **both** floors clear:
|
|
383
|
-
|
|
384
|
-
- **Frequency floor.** ≥ N invocations across the trailing W-day window — defaults `N = 20`, `W = 30` (tunable via `.agent-settings.yml` `telemetry.tier_usage.retier`).
|
|
385
|
-
- **Distinct-user floor.** ≥ K distinct `user_hash` values across the same window — default `K = 3`.
|
|
386
|
-
|
|
387
|
-
A command that fails either floor drops to **Tier-1** at the next minor release; the release notes cite the floor that failed. Promotion the other way (Tier-1 → Tier-0) follows the same rule symmetrically and additionally requires explicit listing in `command-surface-tiers.md`.
|
|
388
|
-
|
|
389
|
-
**Authority.** This is a maintainer decision aid, not an autonomous rule — the dispatcher records, `scripts/telemetry/tier_usage_report.py` reports, the maintainer files the move in the next minor release. No runtime tier-flipping.
|
|
390
|
-
|
|
391
|
-
**Floor governance.** N / W / K live in `.agent-settings.yml`; bumping them is a contract change (this file), not a settings change.
|
|
392
|
-
|
|
393
|
-
## See also
|
|
394
|
-
|
|
395
|
-
- [`docs/migrations/commands-1.15.0.md`](../migrations/commands-1.15.0.md) — user-facing migration notes.
|
|
396
|
-
- [`docs/contracts/STABILITY.md`](STABILITY.md) — `beta` level rules apply.
|
|
397
|
-
- [`docs/contracts/command-surface-tiers.md`](command-surface-tiers.md) — what each tier means and what `--help` surfaces.
|
|
398
|
-
- [`docs/contracts/command-taxonomy.md`](command-taxonomy.md) — profile axis (discoverability) layered on top of this verb axis (invocation).
|
|
399
|
-
- [`.agent-src.uncondensed/contexts/contracts/artifact-engagement-flow.md`](../../.agent-src.uncondensed/contexts/contracts/artifact-engagement-flow.md) — sibling telemetry surface; same privacy floor and four-layer enforcement model.
|