@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
package/docs/succession.md
DELETED
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
# Succession — the minimal knowledge to take over
|
|
2
|
-
|
|
3
|
-
> **Bus-factor doc (road-to-maintainer-bus-factor Phase 3).** If the maintainer
|
|
4
|
-
> is unavailable, this is what a successor needs to keep `main` healthy and cut
|
|
5
|
-
> releases. **No secret values live here — pointers only.** Companion:
|
|
6
|
-
> [`release-runbook.md`](release-runbook.md) (the how-to-release steps).
|
|
7
|
-
|
|
8
|
-
## Honest bus-factor (tracked, not inflated)
|
|
9
|
-
|
|
10
|
-
- **Distinct humans who have reviewed/merged in the trailing 90 days: 1** (the
|
|
11
|
-
maintainer, `@matze4u`). The project is a single-maintainer repo; an AI
|
|
12
|
-
self-review gate (deferred — see the roadmap Phase 1) raises the floor but is
|
|
13
|
-
**not** independent human review.
|
|
14
|
-
- Recompute this number honestly at any time:
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
# merged PRs in the last 90 days + who reviewed them
|
|
18
|
-
gh pr list --state merged --search "merged:>=$(date -v-90d +%Y-%m-%d 2>/dev/null || date -d '90 days ago' +%Y-%m-%d)" \
|
|
19
|
-
--json number,author,reviews \
|
|
20
|
-
--jq '[.[] | .reviews[]?.author.login] | unique'
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
Report the count as-is. A bus-factor of 1 stated plainly beats a bus-factor of
|
|
24
|
-
1 implied to be more.
|
|
25
|
-
|
|
26
|
-
## Secrets / tokens — where they live, what they gate
|
|
27
|
-
|
|
28
|
-
Configured in **GitHub → Settings → Secrets and variables → Actions** (repo
|
|
29
|
-
secrets), never in the tree. None is required for the *core* release (version
|
|
30
|
-
bump + tag + GitHub Release); they gate the **downstream** publish/deploy legs.
|
|
31
|
-
|
|
32
|
-
| Secret | Gates | Missing → |
|
|
33
|
-
|---|---|---|
|
|
34
|
-
| `RELEASE_PR_TOKEN` (optional PAT / App token, `contents:write` + `pull-requests:write`) | Unattended release PR checks in [`release.yml`](../.github/workflows/release.yml) | One manual **"Approve workflows to run"** click per release (deliberate checkpoint, not a failure). |
|
|
35
|
-
| — (none: **npm OIDC Trusted Publishing**) | `publish-npm.yml` — uses `id-token: write`, no stored npm token | If OIDC trust is misconfigured on npmjs, npm publish fails; fix the trusted-publisher config on the npm package, not a secret. |
|
|
36
|
-
| `CLOUDFLARE_ACCOUNT_ID`, `CLOUDFLARE_API_TOKEN`, `CLOUDFLARE_WORKER_SUBDOMAIN`, `MCP_SMOKE_TOKEN` | `deploy-mcp-worker.yml` (MCP worker deploy + smoke) | MCP worker deploy skips/fails; core release unaffected. |
|
|
37
|
-
| `ANTHROPIC_API_KEY`, `OPENAI_API_KEY`, `GEMINI_API_KEY` | `cross-model-canary.yml` + any AI-council / self-review automation | Canary + council automation skip; core release unaffected. |
|
|
38
|
-
| `GITHUB_TOKEN` (auto-provided) | all workflows' default auth | n/a — GitHub injects it. |
|
|
39
|
-
|
|
40
|
-
The live source of truth for which workflow needs which secret is the
|
|
41
|
-
`secrets.*` references in [`.github/workflows/`](../.github/workflows/) — grep
|
|
42
|
-
there if this table drifts:
|
|
43
|
-
|
|
44
|
-
```bash
|
|
45
|
-
grep -rhoE "secrets\.[A-Z_]+" .github/workflows/ | sort -u
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
## Operator-gated steps (need a human with credentials)
|
|
49
|
-
|
|
50
|
-
- **Release-PR workflow approval** — the "Approve workflows to run" click when
|
|
51
|
-
`RELEASE_PR_TOKEN` is absent (see the runbook § 3.A).
|
|
52
|
-
- **Branch-protection ruleset** — applied in GitHub → Settings → Rules UI;
|
|
53
|
-
source of truth mirrored in [`branch-protection-policy.md`](contracts/branch-protection-policy.md).
|
|
54
|
-
Not in code; a successor edits it in the UI.
|
|
55
|
-
- **Repo administration** (visibility / rename / delete) — the
|
|
56
|
-
`production-visibility` environment gates manual approval; see
|
|
57
|
-
[`CONTRIBUTING.md`](../CONTRIBUTING.md).
|
|
58
|
-
- **npm trusted-publisher config** — set on npmjs.org for the package, not in
|
|
59
|
-
this repo.
|
|
60
|
-
|
|
61
|
-
## "Healthy main" — what good looks like
|
|
62
|
-
|
|
63
|
-
- Latest `main` commit is green on all required checks for its PR shape
|
|
64
|
-
(see [`branch-protection-policy.md`](contracts/branch-protection-policy.md),
|
|
65
|
-
[`ci-green-floor.md`](contracts/ci-green-floor.md)).
|
|
66
|
-
- No drift gate red: `release-drift.yml`, `release-guard.yml`,
|
|
67
|
-
`check-visibility-drift.yml`, the consistency + claims + proof gates.
|
|
68
|
-
- `docs/CLAIMS.md` resolves (`task check-claims`); `docs/proof.md` is in sync
|
|
69
|
-
(`task build-proof-check`).
|
|
70
|
-
- No completed roadmap left unarchived in `agents/roadmaps/` (the
|
|
71
|
-
`roadmap:progress-check` backstop).
|
|
72
|
-
|
|
73
|
-
## Minimal takeover checklist
|
|
74
|
-
|
|
75
|
-
1. Get `gh` authenticated as a repo admin; confirm `gh auth status`.
|
|
76
|
-
2. Read [`release-runbook.md`](release-runbook.md) end-to-end.
|
|
77
|
-
3. Confirm the secrets above are present for whichever downstream legs matter.
|
|
78
|
-
4. Cut a `--dry-run` release (`task release -- --dry-run`) to see the pipeline
|
|
79
|
-
with zero mutations.
|
|
80
|
-
5. When ready, follow the runbook for a real release.
|
package/docs/threat-model.md
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
# Threat Model — agent-config
|
|
2
|
-
|
|
3
|
-
`agent-config` (AC) is a file-first, **no-runtime** skill/rule/command suite.
|
|
4
|
-
It ships artifacts (skills, rules, commands, MCP configs, hooks, installer) to
|
|
5
|
-
11 host AI tools and is published as `@event4u/agent-config`. It runs no server
|
|
6
|
-
and holds no user data. Threats are about **artifact integrity** and
|
|
7
|
-
**supply-chain / distribution surface**, not app auth or billing.
|
|
8
|
-
|
|
9
|
-
## Threat table
|
|
10
|
-
|
|
11
|
-
| # | Surface | Attack vector | Current controls | Gap | Mitigation |
|
|
12
|
-
|---|---|---|---|---|---|
|
|
13
|
-
| a | **Malicious skill / rule via PR** — a contributed `.md` file smuggles prompt-injection or data-exfiltration payloads into the shipped artifact tree | Adversarial PR contributor embeds: (1) invisible Unicode (bidi / zero-width / Tag-block) to hide instructions, (2) role-takeover imperatives, (3) lethal-trifecta pattern in a new skill (private-data + untrusted-content + egress on one autonomous path) | `lint_hidden_unicode.py` — blocks Trojan-Source and invisible-char attacks; `lint_instruction_smuggling.py` — blocks disclosure-suppression and injection-tag prose; `lint_skill_frontmatter_safety.py` — blocks wildcard `allowed_tools`, `bypassPermissions`, unsafe `execution.type: automated`; PR review gate | No automated SARIF upload to GitHub Code Scanning; lethal-trifecta detection is architectural (rule) not linted structurally beyond the frontmatter check | Wire `lint_agent_security.py --sarif` output to GitHub Advanced Security on every PR (`lint_workflow_security.py` — P2); add structural trifecta check to frontmatter linter |
|
|
14
|
-
| b | **Supply-chain compromise of AC's own deps** — a malicious version of an npm or Python dependency is pulled during CI / install and executes arbitrary code or modifies shipped artifacts | Dependency confusion / typosquatting attack on `package.json` or `requirements.txt` deps; compromised upstream package | `package-lock.json` + `requirements.txt` pin exact versions; CI installs from lockfile (`npm ci`) | No documented dep-audit policy; no Dependabot / Renovate automation; no integrity check (`npm audit` / `pip-audit`) in CI gate | Add `npm audit --audit-level=high` + `pip-audit` as a required CI step; document quarterly manual review cadence; pin Python deps in a lockfile (`pip-compile`) |
|
|
15
|
-
| c | **Hostile consumer-repo environment** — AC's installer or hooks execute inside a repo whose `.git/hooks`, `.env`, or workspace files are attacker-controlled | Consumer repo pre-installs malicious Git hooks that intercept the AC installer or post-install hook; `.env` leaks tokens that AC hooks read; untrusted files are passed to AC linters | AC installer writes its own hooks under its namespace; AC hooks run as the user's shell — they do not read `.env` by design; `untrusted-input-defense` rule governs agent behaviour at runtime | No sandboxed execution for AC hooks; installer does not verify consumer hook integrity before writing | Document that AC hooks must not read repo-local env files; add installer pre-flight that warns if foreign hooks exist in `.git/hooks/`; scope AC hook writes to explicit namespaced filenames |
|
|
16
|
-
| d | **Lethal-trifecta surface** — a skill combining private-data access + untrusted-content ingestion + external communication on one autonomous path enables confused-deputy / data-exfiltration attacks | Prompt-injected content inside a fetched doc instructs an agent to read a local secret and POST it to an attacker-controlled endpoint | `src/rules/lethal-trifecta-guard.md` (Iron Law: break one leg or gate egress behind human-in-the-loop); `src/rules/untrusted-input-defense.md` (untrusted content is data, never instructions; spotlighting); `lint_skill_frontmatter_safety.py` (flags over-broad tool grants) | These are authoring-time controls — no runtime *behavioural-enforcement* layer exists (input sanitization ≠ enforcement — see ADR-123) | Runtime behavioural enforcement stays out of scope for AC (`ADR-123-runtime-security-scope-and-spawn-hardening`): AC ships the rules, the consumer's tool-execution layer enforces them; the outbound content-scan guard is deferred with a `revisit-if`, not silently dropped. `lethal-trifecta-guard.md` and `untrusted-input-defense.md` are the canonical reference — do not re-describe here |
|
|
17
|
-
| e | **Malicious metadata / frontmatter injection** — a PR embeds hostile YAML in a skill's frontmatter (e.g. injecting a trigger keyword that causes a dangerous skill to fire in unintended contexts, or adding `permissionMode: bypassPermissions`) | PR contributor adds `permissionMode: bypassPermissions` or a wildcard `allowed_tools: ["*"]` entry to an existing skill's frontmatter; or crafts a trigger keyword to hijack routing | `lint_skill_frontmatter_safety.py` — HIGH-severity block on `bypassPermissions`, wildcard `allowed_tools`, unsafe `execution.type: automated` without safety floor; `lint_hidden_unicode.py` — catches invisible chars inside frontmatter YAML values; PR review gate; `scripts/validate_frontmatter.py` schema validation | Schema validation does not verify trigger-keyword semantic safety (a plausible keyword that causes over-broad firing is not caught) | Extend `validate_frontmatter.py` to flag trigger keywords that match security-sensitive path prefixes (e.g. a skill triggering on `"auth"` when it has `execution.type: automated`) |
|
|
18
|
-
| f | **Skill self-update — safety-floor rewrite** — an agent is social-engineered (via chat or a PR) into weakening a kernel rule, safety floor, or MCP/tool allowlist | A PR removes the Iron Law block from `non-destructive-by-default.md`; or a chat prompt instructs the agent to edit `security-sensitive-stop.md` to narrow its self-modification clause; or a PR modifies `scope-control` to remove the Hard Floor | `src/rules/security-sensitive-stop.md` — "self-modification via chat" clause: requests to weaken safety floors / kernel rules / MCP allowlists must route through `scope-control` gates; `src/rules/scope-control.md` — kernel-rule edits require own PR + ≥ 24 h soak; `dist/agent-src/` is read-only (source-of-truth rule); `scripts/check_condensation.py` detects Iron-Law section deletion or downgrade | No automated per-rule diff check that fires specifically when a kernel rule's Iron Law section is removed; relies on PR reviewer recognising the file class | Add a CI check (`scripts/check_kernel_rule_integrity.py` — P3+) that asserts Iron Law fenced-code blocks survive unchanged in all files listed in `docs/contracts/kernel-membership.md` |
|
|
19
|
-
| g | **Subprocess spawn-env inheritance** — AC's own transport spawns an external CLI (the AI-council provider CLIs; consumer-runtime hooks spawn `git`) with the full parent `process.env`, so an attacker-influenced env var in the parent becomes RCE when the child (or a `git` it invokes internally) runs | A poisoned `GIT_EXTERNAL_DIFF` / `core.pager` / `GIT_SSH_COMMAND`, the `GIT_CONFIG_COUNT`/`_KEY_<n>`/`_VALUE_<n>` config-injection trio (sets `core.fsmonitor` → shell on every `git status`), a dynamic-loader `LD_PRELOAD` / `DYLD_INSERT_LIBRARIES` / `GCONV_PATH`, `GIT_ALTERNATE_OBJECT_DIRECTORIES` / `HOSTALIASES`, or a runtime hook `NODE_OPTIONS` / `BASH_ENV` / `PYTHONSTARTUP` present in the parent env executes attacker code inside the spawned process (CWE-426, CWE-88, CWE-427) | `src/scripts/_lib/spawn_env.ts::hardenedSpawnEnv()` scrubs the code-execution-injection env families (deny-by-family: loader `LD_*`/`DYLD_*`/`GCONV_PATH`, git `*_COMMAND` + the whole `GIT_CONFIG`/`GIT_CONFIG_*` family + `GIT_ALTERNATE_OBJECT_DIRECTORIES`/`HOSTALIASES`/`GIT_EXTERNAL_DIFF`/`GIT_SSH_COMMAND`/`GIT_PAGER`/`PAGER`, runtime hooks `NODE_OPTIONS`/`BASH_ENV`/`ENV`/`PYTHON*`/`PERL5*`/`RUBYOPT`, `IFS`) and preserves the rest; wired into ALL consumer-runtime spawns — `clients.ts::_runSubprocess`, `hooks/dispatch_hook.ts`, `roadmap_progress_hook.ts`, `hot_context_hook.ts`; falsifiable regression test in `tests/scripts/ai_council/spawn_env.test.ts` (ADR-123 + 2026-07-21 follow-up) | — (consumer-runtime surface fully hardened; maintainer/CI/install sites are env-controlled, not attacker-influenced) | Spawn sites classified in `docs/spawn-site-policy.md` (Consumer Runtime MUST harden / Maintainer / CI / install exempt with rationale); the deferred lint was rejected — the policy doc is the self-enforcing substitute |
|
|
20
|
-
| h | **Secret committed to version control** (CWE-798) — a credential (API key, token, private key, DB password) is written into a tracked file and committed/pushed, leaking it into history, clones, forks, and public scrapers; `git rm` does not un-leak it | An agent (or developer) pastes or generates a real credential into source, `.env`, config, or a fixture and commits it; once pushed to a public remote it is scraped within minutes | `src/rules/secret-vcs-guard.md` (agent-side write/commit-time block → ask → tiered alternative → rotate-first, VCS-agnostic); `src/scripts/_lib/secret_detector.ts` (regex rule pack + Shannon entropy + keyword detector); `src/scripts/check_secret_leak.ts` wired into `task ci` / `ci-strict` as the diff-scoped, non-bypassable CI net; `src/agent-src/templates/github-workflows/secret-scan.yml` (gitleaks) consumer template | The agent-side gate covers only what the agent writes and is one layer; developer-side / GUI commits need the CI net or host push-protection, which the consumer must enable | Ship + document the `secret-scan.yml` template; recommend enabling GitHub Secret Scanning + Push Protection; the optional TruffleHog step adds live-credential verification. Canonical reference: `secret-vcs-guard.md` + `skill:secrets-management` — do not re-describe here |
|
|
21
|
-
|
|
22
|
-
## Review cadence
|
|
23
|
-
|
|
24
|
-
This threat model is reviewed:
|
|
25
|
-
|
|
26
|
-
- **On every security-pillar roadmap phase boundary** — update the table before marking the phase complete.
|
|
27
|
-
- **Quarterly** — as part of the dep-audit cycle (surface b).
|
|
28
|
-
- **When a new linter or kernel rule ships** — re-evaluate affected surfaces.
|
|
29
|
-
|
|
30
|
-
Owner: the package maintainer. Last reviewed: 2026-06-15.
|
package/docs/troubleshooting.md
DELETED
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
# Troubleshooting
|
|
2
|
-
|
|
3
|
-
Common problems and how to resolve them. If your case is not covered,
|
|
4
|
-
please open an [issue](https://github.com/event4u-app/agent-config/issues)
|
|
5
|
-
and include the output of:
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
composer show event4u/agent-config # or: npm ls @event4u/agent-config
|
|
9
|
-
node --version
|
|
10
|
-
|
|
11
|
-
bash scripts/install --verbose --dry-run
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
## Agent doesn't seem to pick up the rules or skills
|
|
17
|
-
|
|
18
|
-
### Check 1: Are the files actually in the project?
|
|
19
|
-
|
|
20
|
-
```bash
|
|
21
|
-
ls -la .augment/rules/ # should list real files (rules are copied)
|
|
22
|
-
ls -la .augment/skills/ # should list symlinks
|
|
23
|
-
ls -la .claude/rules/ # Claude users: should list symlinks
|
|
24
|
-
ls -la .cursor/rules/ # Cursor users: should list symlinks
|
|
25
|
-
cat .windsurfrules # Windsurf users: should be a populated file
|
|
26
|
-
cat .github/copilot-instructions.md # Copilot users: should exist
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
If any of these are missing or empty, the installer either didn't run or
|
|
30
|
-
was interrupted. Re-run it:
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
bash scripts/install --verbose
|
|
34
|
-
# or, to regenerate everything (overwrites existing bridge files):
|
|
35
|
-
bash scripts/install --force
|
|
36
|
-
# or, for one-shot installs without a local node_modules tree:
|
|
37
|
-
npx @event4u/agent-config init --tools=claude-code,cursor
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
### Check 2: Does your agent actually read these directories?
|
|
41
|
-
|
|
42
|
-
| Tool | Expected location |
|
|
43
|
-
|---|---|
|
|
44
|
-
| Augment Code | `.augment/rules/`, `.augment/skills/`, `.augment/commands/` |
|
|
45
|
-
| Claude Code | `.claude/rules/`, `.claude/skills/` (symlinks into `.augment/`) |
|
|
46
|
-
| Cursor | `.cursor/rules/*.mdc` |
|
|
47
|
-
| Cline | `.clinerules/` |
|
|
48
|
-
| Windsurf | `.windsurfrules` (single concatenated file) |
|
|
49
|
-
| Gemini CLI | `GEMINI.md` (symlinked to `AGENTS.md`) |
|
|
50
|
-
| GitHub Copilot | `.github/copilot-instructions.md` + `AGENTS.md` |
|
|
51
|
-
|
|
52
|
-
If a path is missing for your tool, re-running the installer recreates it.
|
|
53
|
-
|
|
54
|
-
### Check 3: Is the plugin-level install masking the project install?
|
|
55
|
-
|
|
56
|
-
If you installed the Augment / Claude Code / Copilot CLI plugin globally
|
|
57
|
-
AND also installed the package in the project, the agent may pick up the
|
|
58
|
-
plugin copy instead of the project copy. This is usually fine — both
|
|
59
|
-
should be the same version — but if they have drifted, pin the project
|
|
60
|
-
version explicitly and reinstall the plugin.
|
|
61
|
-
|
|
62
|
-
---
|
|
63
|
-
|
|
64
|
-
## Installer ran but no files appeared
|
|
65
|
-
|
|
66
|
-
The v2 distribution does **not** ship a `postinstall` hook — installing
|
|
67
|
-
`@event4u/agent-config` via `npm install -g` only puts the `agent-config`
|
|
68
|
-
binary on `$PATH`; it does not seed any project files. Run the
|
|
69
|
-
orchestrator explicitly inside the project root:
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
# One-shot, no local checkout required (recommended)
|
|
73
|
-
npx @event4u/agent-config init --tools=claude-code,cursor
|
|
74
|
-
|
|
75
|
-
# When the global CLI is installed
|
|
76
|
-
agent-config install --tools=claude-code,cursor
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
---
|
|
80
|
-
|
|
81
|
-
## Broken symlinks after upgrading the package
|
|
82
|
-
|
|
83
|
-
When the package version changes, symlinks that pointed to the old
|
|
84
|
-
package path may break. Re-run the installer — it is idempotent:
|
|
85
|
-
|
|
86
|
-
```bash
|
|
87
|
-
npx @event4u/agent-config init --tools=claude-code,cursor
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
The installer replaces stale symlinks with fresh ones pointing at the
|
|
91
|
-
current package path.
|
|
92
|
-
|
|
93
|
-
---
|
|
94
|
-
|
|
95
|
-
## Installation on Windows
|
|
96
|
-
|
|
97
|
-
Native Windows is not a first-class target. The installer relies on Bash
|
|
98
|
-
and Unix-style symlinks. Recommended setup:
|
|
99
|
-
|
|
100
|
-
1. **WSL2** (preferred): install Ubuntu or a distribution of your choice,
|
|
101
|
-
clone the project inside the WSL filesystem, and run
|
|
102
|
-
`npx @event4u/agent-config init` from WSL.
|
|
103
|
-
2. **Git Bash**: works for the basic install, but symlinks require
|
|
104
|
-
Developer Mode (Windows 10 1703+) or admin privileges. Without either,
|
|
105
|
-
Git Bash falls back to copies, which means updates will not propagate
|
|
106
|
-
automatically — re-run the installer after each update.
|
|
107
|
-
3. **Plain PowerShell / cmd**: not supported.
|
|
108
|
-
|
|
109
|
-
If you need native Windows support without WSL, please open an issue —
|
|
110
|
-
we cannot validate changes without access to a Windows setup.
|
|
111
|
-
|
|
112
|
-
---
|
|
113
|
-
|
|
114
|
-
## `Node.js is required but was not found`
|
|
115
|
-
|
|
116
|
-
The installer is Node.js-based and needs Node 20.11+ on PATH.
|
|
117
|
-
|
|
118
|
-
\- **macOS**: install via [nodejs.org](https://nodejs.org/) or `brew install node`.
|
|
119
|
-
\- **Linux**: `apt install nodejs` / `dnf install nodejs` / equivalent (ensure Node 20+).
|
|
120
|
-
\- **Windows**: install from [nodejs.org](https://nodejs.org/); ensure "Add to PATH" is checked.
|
|
121
|
-
or from the Microsoft Store; ensure "Add python.exe to PATH" is
|
|
122
|
-
checked.
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
on Python 3 — it is required for contributors, not just consumers.
|
|
126
|
-
|
|
127
|
-
---
|
|
128
|
-
|
|
129
|
-
## Uninstalling the package
|
|
130
|
-
|
|
131
|
-
There is no dedicated uninstall command yet. Remove the package and
|
|
132
|
-
clean up manually:
|
|
133
|
-
|
|
134
|
-
```bash
|
|
135
|
-
# 1. Remove the dependency (skip when installed via npx / -g)
|
|
136
|
-
npm uninstall @event4u/agent-config
|
|
137
|
-
|
|
138
|
-
# 2. Remove generated content from the project
|
|
139
|
-
rm -rf .augment .claude .cursor .clinerules .windsurfrules GEMINI.md
|
|
140
|
-
rm -f .agent-settings .agent-settings.yml .agent-settings.backup.key-value
|
|
141
|
-
rm -f .github/copilot-instructions.md agent-config
|
|
142
|
-
# Remove the "# event4u/agent-config" block from .gitignore manually
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
Keep `AGENTS.md` if you customized it — it is yours, not the package's.
|
|
146
|
-
|
|
147
|
-
---
|
|
148
|
-
|
|
149
|
-
## Still stuck?
|
|
150
|
-
|
|
151
|
-
Open an [issue](https://github.com/event4u-app/agent-config/issues) with:
|
|
152
|
-
|
|
153
|
-
- your OS and shell,
|
|
154
|
-
- Node / Python versions,
|
|
155
|
-
- full output of `bash scripts/install --verbose --dry-run`.
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
stability: stable
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# UI Track — Mental Model (1 page)
|
|
6
|
-
|
|
7
|
-
> **Audience:** anyone driving `/work` or `/implement-ticket` on a UI-shaped
|
|
8
|
-
> prompt, or reading code that touches `state.directive_set`.
|
|
9
|
-
> **Not a contract.** For shapes, schemas, and slot wiring see
|
|
10
|
-
> [`ui-track-flow.md`](contracts/ui-track-flow.md) and
|
|
11
|
-
> [`adr-product-ui-track.md`](contracts/adr-product-ui-track.md).
|
|
12
|
-
> **Not a roadmap.** Phased delivery lives in
|
|
13
|
-
> [`road-to-product-ui-track.md`](../agents/roadmaps/archive/road-to-product-ui-track.md)
|
|
14
|
-
> and [`road-to-visual-review-loop.md`](../agents/roadmaps/archive/road-to-visual-review-loop.md).
|
|
15
|
-
> This page is the picture you keep in your head while the engine runs.
|
|
16
|
-
|
|
17
|
-
## The three (+1) directive sets
|
|
18
|
-
|
|
19
|
-
| Set | Shape | Halt budget |
|
|
20
|
-
|---|---|---:|
|
|
21
|
-
| `backend` | `refine → memory → analyze → plan → implement → test → verify → report` | depends on confidence band |
|
|
22
|
-
| `ui` | `audit → design → apply → review → polish → report` | **2** (audit pick + design sign-off) |
|
|
23
|
-
| `ui-trivial` | `refine → apply → test → report` | **0** on the happy path |
|
|
24
|
-
| `mixed` | `refine → memory → analyze → contract → ui → stitch → verify → report` | inherits both |
|
|
25
|
-
|
|
26
|
-
The first three are sibling routes; `mixed` stitches `backend` and `ui`
|
|
27
|
-
in one envelope. The dispatcher picks one and refuses to switch
|
|
28
|
-
mid-flight.
|
|
29
|
-
|
|
30
|
-
## When to pick which
|
|
31
|
-
|
|
32
|
-
| Signal | Set |
|
|
33
|
-
|---|---|
|
|
34
|
-
| No UI keywords, no UI envelope, prompt edits services / migrations / tests / config | `backend` |
|
|
35
|
-
| New component / screen / partial; "improve this dashboard"; "build a settings panel"; major edit to a screen | `ui` |
|
|
36
|
-
| Bounded edit, **provably** ≤ 1 file, ≤ 5 changed lines, no new component, no new state, no new dependency | `ui-trivial` |
|
|
37
|
-
| One prompt that adds a backend endpoint **and** the screen that consumes it | `mixed` |
|
|
38
|
-
|
|
39
|
-
The classifier picks; the agent does not override the pick silently.
|
|
40
|
-
A misclassified `ui-trivial` that grows during edit must reclassify
|
|
41
|
-
**loudly** (stop, restart at `audit`) — never quietly upgrade in place.
|
|
42
|
-
|
|
43
|
-
## What the agent must never do
|
|
44
|
-
|
|
45
|
-
1. **Skip the audit.** No new component, screen, or partial without
|
|
46
|
-
`state.ui_audit` populated (or `greenfield_decision` recorded).
|
|
47
|
-
Defense-in-depth: dispatcher refuses *and* `ui-audit-gate`
|
|
48
|
-
refuses, even when the engine is not in the loop.
|
|
49
|
-
2. **Render the UI.** The engine never opens a browser, never takes a
|
|
50
|
-
screenshot, never runs axe. Rendering and a11y scanning happen
|
|
51
|
-
out-of-process; the engine consumes the `preview_envelope` /
|
|
52
|
-
`a11y` envelope written by the skill.
|
|
53
|
-
3. **Edit microcopy.** The design brief is **locked**. `apply` reads
|
|
54
|
-
strings verbatim. `<placeholder>`, `lorem`, `todo:`, `tbd`, `xxx`
|
|
55
|
-
are rejected at the producer (design) **and** the consumer (apply).
|
|
56
|
-
4. **Loop polish indefinitely.** Hard ceiling is 2 rounds, +1 with
|
|
57
|
-
the explicit Extend pick (one-shot, never returns). Round 4 is
|
|
58
|
-
rejected on disk regardless of flags.
|
|
59
|
-
5. **Confuse "ship as-is" with "review clean".** `review_clean=False`
|
|
60
|
-
plus `findings=[]` is a malformed envelope, not a green light.
|
|
61
|
-
|
|
62
|
-
## Where each set stops
|
|
63
|
-
|
|
64
|
-
| Set | Stops cleanly when … | Stops with a halt when … |
|
|
65
|
-
|---|---|---|
|
|
66
|
-
| `ui` | `report` written; design brief + audit + apply + review + polish all `SUCCESS` | audit ambiguous · greenfield decision missing · design unconfirmed · review dirty at ceiling · a11y violation un-accepted · preview render failed |
|
|
67
|
-
| `ui-trivial` | `report` written; classifier preconditions held throughout | preconditions fail mid-flight → reclassify to `ui` (loud halt) |
|
|
68
|
-
| `mixed` | `stitch` joins both subtrees; `verify` + `report` clean | either subtree halts → mixed waits, never auto-completes the other |
|
|
69
|
-
|
|
70
|
-
## What "audit" actually means
|
|
71
|
-
|
|
72
|
-
A non-empty `state.ui_audit` carrying **at least one of**:
|
|
73
|
-
|
|
74
|
-
- `components_found` — `[{path, name, kind, similarity?}]` from
|
|
75
|
-
[`existing-ui-audit`](../dist/agent-src/skills/existing-ui-audit/SKILL.md).
|
|
76
|
-
- `greenfield: true` plus `greenfield_decision ∈ {scaffold, bare, external_reference}`.
|
|
77
|
-
- Legacy `components` alias — same shape.
|
|
78
|
-
|
|
79
|
-
Empty dict, `null`, or a dict without those keys is **not** an audit.
|
|
80
|
-
The gate fires; the dispatcher emits `@agent-directive: existing-ui-audit`
|
|
81
|
-
instead of advancing.
|
|
82
|
-
|
|
83
|
-
## What "design locked" actually means
|
|
84
|
-
|
|
85
|
-
The brief carries `layout`, `components`, `states`, `microcopy`,
|
|
86
|
-
`a11y`. State coverage requires `empty`, `loading`, `error`, `success`,
|
|
87
|
-
`disabled`. `apply` does not re-decide microcopy — it copies strings.
|
|
88
|
-
"The button label feels off" is a **new** design pass, not a polish
|
|
89
|
-
fix.
|
|
90
|
-
|
|
91
|
-
## Polish termination — subjective vs objective
|
|
92
|
-
|
|
93
|
-
| Findings at ceiling | Halt branch | User options |
|
|
94
|
-
|---|---|---|
|
|
95
|
-
| Non-a11y only | `polish_ceiling_reached` | ship as-is · abort · hand off |
|
|
96
|
-
| Includes a11y violation | `polish_a11y_blocking` | extend (one-shot, sets `extension_used=True`) · accept (rule ids land in `accepted_violations`) · abort |
|
|
97
|
-
|
|
98
|
-
Pre-existing a11y violations recorded in `state.ui_audit.a11y_baseline`
|
|
99
|
-
stay informational and never block.
|
|
100
|
-
|
|
101
|
-
## Stack dispatch (apply / review / polish)
|
|
102
|
-
|
|
103
|
-
`state.stack.frontend` decides which skill bundle runs:
|
|
104
|
-
|
|
105
|
-
| Stack | Skill bundle |
|
|
106
|
-
|---|---|
|
|
107
|
-
| `blade-livewire-flux` | `flux` + `livewire` + `blade-ui` |
|
|
108
|
-
| `react-shadcn` | `react-shadcn-ui` |
|
|
109
|
-
| `vue` | `ui-apply-vue` |
|
|
110
|
-
| `plain` (or unknown) | `blade-ui` + Tailwind base |
|
|
111
|
-
|
|
112
|
-
The directive set stays `ui`; only the skill changes. Adding a new
|
|
113
|
-
stack ships as a new skill bundle and a recipe — see
|
|
114
|
-
[`ui-stack-extension.md`](contracts/ui-stack-extension.md).
|
|
115
|
-
|
|
116
|
-
## See also
|
|
117
|
-
|
|
118
|
-
- [`adr-product-ui-track.md`](contracts/adr-product-ui-track.md) — *why* this shape.
|
|
119
|
-
- [`ui-track-flow.md`](contracts/ui-track-flow.md) — slot-by-slot contract.
|
|
120
|
-
- [`ui-stack-extension.md`](contracts/ui-stack-extension.md) — adding a stack.
|
|
121
|
-
- [`ui-audit-gate`](../dist/agent-src/rules/ui-audit-gate.md) — the always-on rule that mirrors the dispatcher gate.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
# Us vs. the category — the honest version
|
|
2
|
-
|
|
3
|
-
<!-- claim:positioning-honest-nulls -->**The only agent layer that publishes
|
|
4
|
-
the runs where it changed nothing.**<!-- /claim --> That line is deliberately
|
|
5
|
-
falsifiable: find a comparable agent layer publishing its own honest-null
|
|
6
|
-
benchmark runs and it updates — that is the point. The category's growth
|
|
7
|
-
playbook is headline numbers nobody can re-run; ours is a claims ledger CI
|
|
8
|
-
refuses to let drift.
|
|
9
|
-
|
|
10
|
-
This page is the adoption-context frame around the CI-locked comparison table.
|
|
11
|
-
The table itself lives on the proof page — every "our evidence" pointer is
|
|
12
|
-
resolved by `task check-comparison` on every build, the category column only
|
|
13
|
-
ever describes what is publicly observable, and no competitor is named or
|
|
14
|
-
counter-claimed:
|
|
15
|
-
|
|
16
|
-
**→ [The comparison table, CI-checked on every build](proof.md#4-what-is-checkable--us-vs-the-category)**
|
|
17
|
-
|
|
18
|
-
## What the rows mean for an adopter
|
|
19
|
-
|
|
20
|
-
- **No runtime.** Nothing to keep alive, nothing that writes state behind
|
|
21
|
-
you — the whole layer compiles into your host agent's own config surface.
|
|
22
|
-
- **Published nulls.** The benchmark page keeps the runs where the package
|
|
23
|
-
changed *nothing* — including the persona-theater question: swapping the
|
|
24
|
-
advisor identities was measured at ~zero effect while the provider choice
|
|
25
|
-
mattered ~15× more, so persona identity was published as a placebo
|
|
26
|
-
(<!-- claim:persona-identity-placebo-null -->the persona-identity A/B is a
|
|
27
|
-
backed honest null<!-- /claim -->) instead of shipped as a feature. A
|
|
28
|
-
council implementation with falsifiable verdicts — including about itself.
|
|
29
|
-
- **A wedge, not a funnel trap.** The 30-second entry is one read-only
|
|
30
|
-
subagent with a scoped, published eval behind its promise
|
|
31
|
-
([what it catches](wedge/production-validator/README.md)) — the platform is
|
|
32
|
-
the second date, not the first.
|
|
33
|
-
|
|
34
|
-
## Verify it yourself
|
|
35
|
-
|
|
36
|
-
Every command on the [proof page § Verify it yourself](proof.md#5-verify-it-yourself)
|
|
37
|
-
runs on a fresh checkout. If a claim here does not resolve, CI is red before
|
|
38
|
-
you ever read it.
|
package/docs/value.md
DELETED
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
# Value Dashboard — what does the package cost, what does it bring?
|
|
2
|
-
|
|
3
|
-
> This page answers **one** question in real numbers: *How many more tokens does the package cost me, and how much does it save back afterwards?* Generated by `scripts/render_value_md.py` from the latest `value-v1` report; source: `internal/bench/reports/value/latest.json`.
|
|
4
|
-
|
|
5
|
-
## How to read this page
|
|
6
|
-
|
|
7
|
-
**Panel A (token ladder)** — read top to bottom. Each rung states: *what it does*, *how many input tokens it adds or saves per request*, and *where we stand cumulatively*. The bold **NET** line at the end is the answer. Deliberately pure tokens — no € comparison, since subscription users pay no per-request API prices.
|
|
8
|
-
|
|
9
|
-
**Panel B (behavior)** — four real comparisons, *with* vs. *without* the package. This is where the non-token value lives: fitting skill selection, stops on risky actions, fewer clarifying questions, more completed tasks.
|
|
10
|
-
|
|
11
|
-
**Confidence markers** on each rung: `✅ measured` = a real value from a report in the repo · `⏳ pending` = not yet measured, the rung contributes 0 to the sum · `⚠️ vendor-claim` = a vendor's claim, not measured by us.
|
|
12
|
-
|
|
13
|
-
## Reference scale
|
|
14
|
-
|
|
15
|
-
- **1,000** requests, on average **8,000** input tokens and **600** output tokens per request
|
|
16
|
-
- Model tier (workload assumption): `sonnet`
|
|
17
|
-
- Anyone running a different workload recomputes it themselves — the methodology is disclosed; nothing is hardcoded or hidden.
|
|
18
|
-
|
|
19
|
-
## Panel A — Cost ladder (cumulative, min → max)
|
|
20
|
-
|
|
21
|
-
Reads top to bottom. Positive Δ values = the package *costs* tokens (rule load is the honest up-front tax); negative Δ values = the package *saves* tokens.
|
|
22
|
-
|
|
23
|
-
| Rung | What it does | Δ tokens | Cumulative | Source |
|
|
24
|
-
|---|---|---:|---:|---|
|
|
25
|
-
| **Without package** | Baseline — the bare request without package rules. | +0 | +0.00% | `n/a` · ✅ measured |
|
|
26
|
-
| With package (rule load) | The always-active rules land in the context of every request. ⚠️ costs first | +59 783 | +747.29% | `internal/bench/reports/projection-cost.json` · ✅ measured |
|
|
27
|
-
| | _Footnote:_ Eager default: all 79 rule files always-on in the `.claude` projection path (0B.6-confirmed for the primary tool). Not just the kernel — this is the honest up-front load; tokens ≈ chars / 4. | | | |
|
|
28
|
-
| + thin (rules as pointers) | Non-kernel rule bodies become router-resolved pointers. | -46 222 | +747.29% | `internal/bench/reports/projection-cost.json` · 🔁 available (default off) |
|
|
29
|
-
| | _Footnote:_ Available behind `lean_projection.mode=thin` (default `eager-all` — hence NOT in the default NET). With thin active: rule layer 59783 → 13561 GPT tok (−46222, −77.3%). MUST-LOAD floor `task trigger-coverage` 26/26 green; live A/B validation pending (harness declined). Rollback = one flip. | | | |
|
|
30
|
-
| + condense (rule shrink) | Build step shrinks rule files before shipping. | -186 | +744.96% | `internal/bench/reports/telegraph-v2.json` · ✅ measured |
|
|
31
|
-
| | _Footnote:_ Aggregate across non-Thin-Root categories; Thin-Root files (AGENTS.md variants) net negative (~−4%) and are excluded from the rung — surfaced separately. | | | |
|
|
32
|
-
| + rtk (filter CLI output) | rtk cuts verbose CLI output before the model input. | -585 | +737.65% | `internal/bench/reports/rtk/latest.json` · ✅ measured |
|
|
33
|
-
| + terse (shorter replies) | Telegraph style aims at terser model replies. | +56 | +738.35% | `internal/bench/reports/telegraph-v1.json` · ✅ measured |
|
|
34
|
-
| | _Footnote:_ Honest: measured median = -9.27% against 'be terse' — telegraph delivers more tokens here, not fewer. We measure, we do not hide. | | | |
|
|
35
|
-
|
|
36
|
-
**NET: extra cost** ⚠️ — **+59 068 tokens / request**, cumulative **+738.35%** vs. baseline.
|
|
37
|
-
|
|
38
|
-
## Panel B — Behavior (with vs. without)
|
|
39
|
-
|
|
40
|
-
Four real comparisons from actual bench runs. This is where the value lives that tokens alone do not measure: whether the agent picks the right skill, stops on risky actions, asks fewer clarifying questions, and completes more tasks.
|
|
41
|
-
|
|
42
|
-
| Metric | What it means | With package | Without package | Δ | Mode |
|
|
43
|
-
|---|---|---:|---:|---:|---|
|
|
44
|
-
| Right-skill selection | How often the right skill activates (top-K hit). | 50.0% | 0.0% | 50.0% | ✅ live |
|
|
45
|
-
| Destructive-op stops | How often the agent stops / asks before destructive ops (of 5). | — | — | — | ⚠️ dry-run |
|
|
46
|
-
| Ask-vs-act ratio | Ratio of clarifying questions to actions — lower = more decisive. | 0.000 | 0.000 | 0.000 | ✅ live |
|
|
47
|
-
| Task completion rate | Share of tasks the agent completes fully. | 84.6% | 0.0% | 84.6% | ✅ live |
|
|
48
|
-
|
|
49
|
-
## Glossary
|
|
50
|
-
|
|
51
|
-
Plain-language definitions for the non-developer reader.
|
|
52
|
-
|
|
53
|
-
- **Token** — the unit a language model bills in. Rule of thumb: one token ≈ 4 characters of German/English prose. 1,000 tokens ≈ 750 words.
|
|
54
|
-
- **Input tokens** — everything the model reads per turn (system prompt, always-active rules, your message, earlier conversation). The package adds rules here — installation costs input tokens.
|
|
55
|
-
- **Output tokens** — what the model writes back. Usually fewer than input. More expensive per token than input.
|
|
56
|
-
- **condense** — a build step that shrinks the rule files before shipping (`.agent-src.uncondensed` → `dist/agent-src`). Saves input tokens on every request.
|
|
57
|
-
- **rtk** — the *Rust Token Killer*, a CLI wrapper that filters verbose output (`git status`, lint output, test runners) before the model reads it. Saves input tokens on tool calls.
|
|
58
|
-
- **terse / telegraph** — a style (short phrases, dropped articles) the agent uses for terser answers. Saves output tokens — when the corpus rewards it.
|
|
59
|
-
- **Without package / With package** — the two arms of the A/B comparison.
|
|
60
|
-
- **Δ tokens** — input-token difference per request against the baseline. Deliberately the only cost unit: a € comparison would imply per-request API prices that subscription users do not pay.
|
|
61
|
-
|
|
62
|
-
## Methodology & sources
|
|
63
|
-
|
|
64
|
-
This page is a **derived** view — not its own measurement. It summarizes three existing bench surfaces (see the 'Source' column in Panel A). The machine-readable raw reports remain the source of truth:
|
|
65
|
-
|
|
66
|
-
- `internal/bench/reports/telegraph-v1.json` / `telegraph-v2.json` — Telegraph/condense measurements.
|
|
67
|
-
|
|
68
|
-
- `agents/runtime/frugality/baseline.jsonl` — the package load (Metric A footprint).
|
|
69
|
-
|
|
70
|
-
- `internal/bench/reports/rtk/latest.json` — the rtk measurement (new, Phase 2).
|
|
71
|
-
|
|
72
|
-
- `internal/bench/reports/ab/*-ab-trackb-{with,without}.json` — A/B Track B (behavior).
|
|
73
|
-
|
|
74
|
-
- `internal/bench/reports/*-dev.json` — dev-corpus selection accuracy.
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
**A/B technical appendix:** [`docs/benchmark.md`](benchmark.md) carries the cache-key, integrity, and methodology details of the A/B bench — anyone who wants to see the variant-axis proof reads on there.
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
**Notes from the report:**
|
|
81
|
-
|
|
82
|
-
- Cost is reported in tokens only — no € figure. Per-call API pricing misleads subscription users; tokens are the currency-neutral metric.
|
|
83
|
-
- Pending rungs contribute 0 to the cumulative until measured.
|
|
84
|
-
- Reference scale: 1000 requests × 8000 input / 600 output tokens per request.
|
|
85
|
-
|
|
86
|
-
_Last rendered: `2026-06-06T08:42:18+00:00`_
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
stability: beta
|
|
3
|
-
keep-beta-until: 2026-08-26
|
|
4
|
-
roadmap_ref: road-to-frictionless-employee-workspace.md
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Daily Workspace — Accessibility Audit (WCAG 2.2 AA)
|
|
8
|
-
|
|
9
|
-
Audit pass for `src/ui/pages/WorkspacePage.tsx` against WCAG 2.2 AA.
|
|
10
|
-
Run-date: 2026-05-26. Owner: maintainer.
|
|
11
|
-
|
|
12
|
-
## Methodology
|
|
13
|
-
|
|
14
|
-
This audit is **static + automated** because the package ships no
|
|
15
|
-
browser-based E2E harness; Playwright's `request` fixture is the only
|
|
16
|
-
runtime path. The audit therefore combines:
|
|
17
|
-
|
|
18
|
-
- Static read of `WorkspacePage.tsx`, `app.css` Workspace block,
|
|
19
|
-
`tokens.css`, and the existing role / session fixtures.
|
|
20
|
-
- Vitest assertions: every interactive element carries an
|
|
21
|
-
`aria-label` or accessible name, every form control sits inside a
|
|
22
|
-
`<fieldset>` + `<legend>`, every list uses semantic `<ul>` / `<ol>`,
|
|
23
|
-
every region carries an `aria-labelledby` heading.
|
|
24
|
-
- Token-level contrast checks against `tokens.css` (light + dark
|
|
25
|
-
themes inherit the same Workspace classes).
|
|
26
|
-
|
|
27
|
-
Live keyboard-driven and screen-reader passes will land when the
|
|
28
|
-
package adds a browser-driver harness (deferred). The waivers below
|
|
29
|
-
document gaps to address when that harness lands.
|
|
30
|
-
|
|
31
|
-
## Checklist — passes
|
|
32
|
-
|
|
33
|
-
| WCAG ref | Criterion | Status | Evidence |
|
|
34
|
-
|---|---|---|---|
|
|
35
|
-
| 1.1.1 | Non-text content has text alternatives | Pass | Every action is text-labelled (`Start session`, `Pick role …`); no icons-only buttons. |
|
|
36
|
-
| 1.3.1 | Info and relationships are programmatically determinable | Pass | `<section aria-labelledby="…">` × 5 regions; `<fieldset>` + `<legend>` on the toggle. |
|
|
37
|
-
| 1.3.2 | Meaningful sequence | Pass | Source order = visual order: roles → tasks → sessions → knowledge → docs → explain. |
|
|
38
|
-
| 1.4.3 | Contrast (minimum) AA | Pass — see [`Contrast`](#contrast) | Inherits `tokens.css` neutral palette; non-text colour hints carry a text label too. |
|
|
39
|
-
| 1.4.10 | Reflow | Pass | `@media (max-width: 900px)` collapses the three-column grid to a single column. |
|
|
40
|
-
| 2.1.1 | Keyboard | Pass | All interactive controls are native `<button>` / `<a>` / `<input>` — no `onClick`-only `<div>`. |
|
|
41
|
-
| 2.4.6 | Headings and labels | Pass | One `<h1>`; each rail section starts with an `<h2>` carrying a stable id. |
|
|
42
|
-
| 2.4.7 | Focus visible | Pass | `:focus-visible` outline on `.ac-workspace__role`; tokens-driven `--color-primary` ring. |
|
|
43
|
-
| 3.2.1 | On focus | Pass | Focus changes never trigger a context change; selection commits only on click / Enter. |
|
|
44
|
-
| 3.3.2 | Labels or instructions | Pass | Toggle has both `aria-label` and visible legend; task buttons carry verb-phrase labels. |
|
|
45
|
-
| 4.1.2 | Name, role, value | Pass | All controls are native; `role`-grid uses `<button>` not `<div role="button">`. |
|
|
46
|
-
|
|
47
|
-
## Contrast
|
|
48
|
-
|
|
49
|
-
Spot-check against `:root` tokens (`tokens.css`):
|
|
50
|
-
|
|
51
|
-
- `--color-text` (#27272a) on `--color-surface` (#ffffff) → 14.4:1 → AA + AAA pass.
|
|
52
|
-
- `--color-text-muted` (#71717a) on `--color-surface` (#ffffff) → 4.85:1 → AA pass for body text.
|
|
53
|
-
- `.ac-workspace__role-status[data-status="beta"]` uses `--color-warn`
|
|
54
|
-
(#b45309) on white → 4.59:1 → AA pass.
|
|
55
|
-
- `.ac-workspace__role-status[data-status="stable"]` uses
|
|
56
|
-
`--color-success` (#15803d) on white → 5.05:1 → AA pass.
|
|
57
|
-
|
|
58
|
-
Dark theme (data-theme="dark") inherits the same Workspace classes
|
|
59
|
-
and overrides the surface / text tokens in `tokens.css`; the same
|
|
60
|
-
ratios apply by construction (the audit pass relies on the tokens
|
|
61
|
-
contract).
|
|
62
|
-
|
|
63
|
-
## Waivers — to address when a browser-driver harness lands
|
|
64
|
-
|
|
65
|
-
| Item | Reason | Re-audit trigger |
|
|
66
|
-
|---|---|---|
|
|
67
|
-
| Live screen-reader walkthrough (NVDA + VoiceOver) | No browser-driver harness in CI; static audit substitutes. | Add VoiceOver / NVDA pass when browser harness lands. |
|
|
68
|
-
| Keyboard-only navigation full pass | Same as above; vitest covers the toggle's reactive contract but not the page-wide tab order. | Browser harness pass. |
|
|
69
|
-
| Live colour-contrast check on the rendered DOM | Vite token compile is asserted only by source-token math. | Browser harness pass. |
|
|
70
|
-
| WCAG 2.2 SC 2.5.7 Dragging Movements | Not applicable — no drag-and-drop in v0. | Re-evaluate when document drag-to-rail lands. |
|
|
71
|
-
|
|
72
|
-
## Re-audit cadence
|
|
73
|
-
|
|
74
|
-
Re-audit on each of:
|
|
75
|
-
- Any new interactive control added to `WorkspacePage.tsx` or its
|
|
76
|
-
child components.
|
|
77
|
-
- Token-palette change in `tokens.css`.
|
|
78
|
-
- New role status badge (introduces a new `data-status` colour).
|
|
79
|
-
- WCAG version bump to 3.0 — currently 2.2 AA.
|
|
80
|
-
|
|
81
|
-
## See also
|
|
82
|
-
|
|
83
|
-
- `docs/contracts/daily-workspace.md` — surface contract.
|
|
84
|
-
- [`ADR-024`](../decisions/ADR-024-workspace-v0-feature-floor.md) — v0 floor.
|
|
85
|
-
- [`ADR-025`](../decisions/ADR-025-workspace-chrome.md) — chrome substrate.
|
|
86
|
-
- `tests/ui/WorkspaceExplainToggle.test.tsx` — toggle a11y assertions.
|
|
87
|
-
- `tests/e2e/workspace-launcher.spec.ts` — three-flow API E2E.
|