@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
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* detect_target_license — deterministic SPDX license detection + derived
|
|
4
|
+
* borrow-compatibility policy (road-to-provenance-and-license-governance
|
|
5
|
+
* S1.2). CLI wrapper — the actual detection/matrix/invalidation/override
|
|
6
|
+
* logic lives in `./_lib/detect_target_license.ts` (that module does the
|
|
7
|
+
* filesystem I/O too; detection is inherently a file-read job). This file
|
|
8
|
+
* owns only argv parsing, stdout/stderr shaping, schema validation, and the
|
|
9
|
+
* `--write` side effect.
|
|
10
|
+
*
|
|
11
|
+
* Usage:
|
|
12
|
+
* npx tsx src/scripts/detect_target_license.ts [repo-path] [--write] [--json]
|
|
13
|
+
* npx tsx src/scripts/detect_target_license.ts --help
|
|
14
|
+
*
|
|
15
|
+
* Default (no --write): report only, nothing written to disk.
|
|
16
|
+
* --write create/update license-policy.yaml in the target repo, unless
|
|
17
|
+
* escalation is required or the existing file is derived_from: manual.
|
|
18
|
+
*
|
|
19
|
+
* Exit codes: 0 success (including the warn-only "nothing detectable"
|
|
20
|
+
* path); 1 usage/IO/schema error; 2 escalation required — a human decision,
|
|
21
|
+
* never an auto-pick (source disagreement, or a divergent workspace license).
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
import * as fs from 'node:fs';
|
|
25
|
+
import * as path from 'node:path';
|
|
26
|
+
import { pathToFileURL } from 'node:url';
|
|
27
|
+
|
|
28
|
+
import { parse as parseYaml, stringify as stringifyYaml } from 'yaml';
|
|
29
|
+
|
|
30
|
+
import {
|
|
31
|
+
buildLicensePolicyDocument,
|
|
32
|
+
checkInvalidation,
|
|
33
|
+
detectTargetLicense,
|
|
34
|
+
mergeOverride,
|
|
35
|
+
type LicensePolicyDoc,
|
|
36
|
+
} from './_lib/detect_target_license.js';
|
|
37
|
+
import { load_schema, validate, type YamlValue } from './validate_frontmatter.js';
|
|
38
|
+
|
|
39
|
+
export const POLICY_FILENAME = 'license-policy.yaml';
|
|
40
|
+
|
|
41
|
+
const USAGE = `usage: detect_target_license [repo-path] [--write] [--json] [-h|--help]
|
|
42
|
+
|
|
43
|
+
Deterministic SPDX license detection + derived borrow-compatibility policy.
|
|
44
|
+
|
|
45
|
+
repo-path target repo root (default: .)
|
|
46
|
+
--write write/update ${POLICY_FILENAME} in the target repo (skipped on
|
|
47
|
+
escalation, or when the existing file is derived_from: manual)
|
|
48
|
+
--json machine-readable report on stdout
|
|
49
|
+
|
|
50
|
+
Exit codes: 0 success, 1 usage/IO/schema error, 2 escalation required.
|
|
51
|
+
`;
|
|
52
|
+
|
|
53
|
+
export interface CliArgs {
|
|
54
|
+
repoPath: string;
|
|
55
|
+
write: boolean;
|
|
56
|
+
json: boolean;
|
|
57
|
+
help: boolean;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export function parseArgs(argv: string[]): CliArgs {
|
|
61
|
+
let repoPath = '.';
|
|
62
|
+
let write = false;
|
|
63
|
+
let json = false;
|
|
64
|
+
let help = false;
|
|
65
|
+
for (const a of argv) {
|
|
66
|
+
if (a === '-h' || a === '--help') help = true;
|
|
67
|
+
else if (a === '--write') write = true;
|
|
68
|
+
else if (a === '--json') json = true;
|
|
69
|
+
else if (!a.startsWith('--')) repoPath = a;
|
|
70
|
+
}
|
|
71
|
+
return { repoPath, write, json, help };
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export function serializeLicensePolicy(doc: LicensePolicyDoc): string {
|
|
75
|
+
return stringifyYaml(doc, { indent: 2 });
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export function parseLicensePolicyFile(text: string): LicensePolicyDoc {
|
|
79
|
+
return parseYaml(text) as LicensePolicyDoc; // caller schema-validates before trusting this
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export function main(argv: string[] = process.argv.slice(2)): number {
|
|
83
|
+
const args = parseArgs(argv);
|
|
84
|
+
if (args.help) {
|
|
85
|
+
process.stdout.write(USAGE);
|
|
86
|
+
return 0;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
const repoRoot = path.resolve(args.repoPath);
|
|
90
|
+
if (!fs.existsSync(repoRoot) || !fs.statSync(repoRoot).isDirectory()) {
|
|
91
|
+
process.stderr.write(`detect_target_license: error: not a directory: ${repoRoot}\n`);
|
|
92
|
+
return 1;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
const detection = detectTargetLicense(repoRoot);
|
|
96
|
+
|
|
97
|
+
if (detection.escalate) {
|
|
98
|
+
if (args.json) {
|
|
99
|
+
process.stdout.write(JSON.stringify({
|
|
100
|
+
escalate: true,
|
|
101
|
+
reason: detection.escalateReason,
|
|
102
|
+
spdx_id: detection.spdxId,
|
|
103
|
+
warnings: detection.warnings,
|
|
104
|
+
}) + '\n');
|
|
105
|
+
} else {
|
|
106
|
+
process.stdout.write(`detect_target_license: ESCALATE — ${detection.escalateReason ?? 'unspecified'}\n`);
|
|
107
|
+
for (const w of detection.warnings) process.stdout.write(` warning: ${w}\n`);
|
|
108
|
+
process.stdout.write(`No ${POLICY_FILENAME} written. This needs a human decision, never an auto-pick.\n`);
|
|
109
|
+
}
|
|
110
|
+
return 2;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
const nowIso = new Date().toISOString();
|
|
114
|
+
const freshDoc = buildLicensePolicyDocument(detection, nowIso);
|
|
115
|
+
const policyPath = path.join(repoRoot, POLICY_FILENAME);
|
|
116
|
+
|
|
117
|
+
let finalDoc: LicensePolicyDoc = freshDoc;
|
|
118
|
+
let rejectedOverrides: string[] = [];
|
|
119
|
+
let action: 'derived' | 'kept-manual' | 're-derived' | 'merged' | 'unchanged' = 'derived';
|
|
120
|
+
|
|
121
|
+
if (fs.existsSync(policyPath)) {
|
|
122
|
+
let existing: LicensePolicyDoc | null = null;
|
|
123
|
+
try {
|
|
124
|
+
existing = parseLicensePolicyFile(fs.readFileSync(policyPath, 'utf8'));
|
|
125
|
+
} catch (err) {
|
|
126
|
+
process.stderr.write(
|
|
127
|
+
`detect_target_license: warning: failed to parse existing ${POLICY_FILENAME}, ` +
|
|
128
|
+
`treating as absent: ${err instanceof Error ? err.message : String(err)}\n`,
|
|
129
|
+
);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
if (existing) {
|
|
133
|
+
const invalidation = checkInvalidation(existing, detection);
|
|
134
|
+
if (invalidation.action === 'escalate') {
|
|
135
|
+
if (args.json) {
|
|
136
|
+
process.stdout.write(JSON.stringify({ escalate: true, reason: invalidation.reason }) + '\n');
|
|
137
|
+
} else {
|
|
138
|
+
process.stdout.write(`detect_target_license: ESCALATE — ${invalidation.reason}\n`);
|
|
139
|
+
process.stdout.write(`${POLICY_FILENAME} left unchanged. This needs a human decision, never an auto-pick.\n`);
|
|
140
|
+
}
|
|
141
|
+
return 2;
|
|
142
|
+
}
|
|
143
|
+
if (existing.derived_from === 'manual') {
|
|
144
|
+
finalDoc = existing;
|
|
145
|
+
action = 'kept-manual';
|
|
146
|
+
} else if (invalidation.action === 're-derive') {
|
|
147
|
+
finalDoc = freshDoc;
|
|
148
|
+
action = 're-derived';
|
|
149
|
+
} else {
|
|
150
|
+
const merge = mergeOverride(existing, freshDoc);
|
|
151
|
+
finalDoc = merge.doc;
|
|
152
|
+
rejectedOverrides = merge.rejectedOverrides;
|
|
153
|
+
action = rejectedOverrides.length > 0 || JSON.stringify(merge.doc.policy) !== JSON.stringify(existing.policy)
|
|
154
|
+
? 'merged'
|
|
155
|
+
: 'unchanged';
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
if (action !== 'kept-manual') {
|
|
161
|
+
const schema = load_schema('license-policy');
|
|
162
|
+
const errors = validate(finalDoc as unknown as YamlValue, schema);
|
|
163
|
+
if (errors.length > 0) {
|
|
164
|
+
process.stderr.write('detect_target_license: refused — derived policy fails schema validation:\n');
|
|
165
|
+
for (const e of errors) process.stderr.write(` - ${e.format()}\n`);
|
|
166
|
+
return 1;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
const willWrite = args.write && action !== 'kept-manual';
|
|
171
|
+
if (willWrite) {
|
|
172
|
+
fs.writeFileSync(policyPath, serializeLicensePolicy(finalDoc), 'utf8');
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
if (args.json) {
|
|
176
|
+
process.stdout.write(JSON.stringify({
|
|
177
|
+
escalate: false,
|
|
178
|
+
action,
|
|
179
|
+
wrote: willWrite,
|
|
180
|
+
policy_path: policyPath,
|
|
181
|
+
doc: finalDoc,
|
|
182
|
+
rejected_overrides: rejectedOverrides,
|
|
183
|
+
}) + '\n');
|
|
184
|
+
} else {
|
|
185
|
+
process.stdout.write(
|
|
186
|
+
`detect_target_license: detected ${detection.spdxId ?? '(none)'} -> ` +
|
|
187
|
+
`target_class=${detection.targetClass} workspace_scope=${detection.workspaceScope}\n`,
|
|
188
|
+
);
|
|
189
|
+
for (const w of detection.warnings) process.stdout.write(` warning: ${w}\n`);
|
|
190
|
+
for (const r of rejectedOverrides) process.stdout.write(` rejected override: ${r}\n`);
|
|
191
|
+
process.stdout.write(
|
|
192
|
+
willWrite
|
|
193
|
+
? `wrote ${policyPath} (${action})\n`
|
|
194
|
+
: `(dry run — pass --write to update ${policyPath}; action would be: ${action})\n`,
|
|
195
|
+
);
|
|
196
|
+
}
|
|
197
|
+
return 0;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
if (process.argv[1] !== undefined) {
|
|
201
|
+
const invokedUrl = pathToFileURL(path.resolve(process.argv[1])).href;
|
|
202
|
+
if (import.meta.url === invokedUrl) process.exit(main());
|
|
203
|
+
}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# evaluator_umbrella.sh — the external evaluator's "first five minutes" as
|
|
3
|
+
# ONE suite over the PACKED artifact (road-to-credible-install Phase 6).
|
|
4
|
+
#
|
|
5
|
+
# Runs in a clean container (see .github/workflows/evaluator-umbrella.yml)
|
|
6
|
+
# on every release PR and nightly — never against the checkout's working
|
|
7
|
+
# tree: every check below exercises the tarball `npm pack` produces or the
|
|
8
|
+
# clean consumer install made from it.
|
|
9
|
+
#
|
|
10
|
+
# Checks (each individually red-testable via its own gate/tests):
|
|
11
|
+
# 1. audit gate npm audit --omit=dev --audit-level=high
|
|
12
|
+
# 2. tarball integrity publint + prepack script-target assertion
|
|
13
|
+
# (lifecycle gate: tests/scripts/prepack_lifecycle_check.test.ts)
|
|
14
|
+
# 3. headless install npm install --omit=dev <tarball> in a scratch project
|
|
15
|
+
# 4. staleness lints lint_pre_migration_refs (+ consumer-internal refs
|
|
16
|
+
# lint when present)
|
|
17
|
+
# 5. hook-latency bench bench_hook_latency --gate (budget + regression)
|
|
18
|
+
# 6. cold-start budgets CLI --version, mcp-server boot-to-initialize
|
|
19
|
+
# 7. size budgets unpacked, node_modules, dep count (>10% regression
|
|
20
|
+
# fails even under budget)
|
|
21
|
+
# 8. surface budgets CLI registry command count, MCP tools/list count
|
|
22
|
+
# (frozen post-Phase-3 values, ADR-132: 19)
|
|
23
|
+
# 9. npx smoke first-touch paths (--version, --help, mcp initialize)
|
|
24
|
+
# 6-8 feed src/scripts/check_evaluator_budgets.ts against
|
|
25
|
+
# src/config/evaluator-budgets.json (owner + review date lint-enforced).
|
|
26
|
+
#
|
|
27
|
+
# Usage: bash src/scripts/evaluator_umbrella.sh [--skip-pack <tarball>]
|
|
28
|
+
set -euo pipefail
|
|
29
|
+
|
|
30
|
+
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
|
31
|
+
cd "$ROOT"
|
|
32
|
+
|
|
33
|
+
TARBALL=""
|
|
34
|
+
if [[ "${1:-}" == "--skip-pack" && -n "${2:-}" ]]; then
|
|
35
|
+
TARBALL="$2"
|
|
36
|
+
fi
|
|
37
|
+
|
|
38
|
+
step() { printf '\n=== umbrella: %s ===\n' "$1"; }
|
|
39
|
+
|
|
40
|
+
# ---------------------------------------------------------------- 1. audit
|
|
41
|
+
step "npm audit (runtime deps, high+)"
|
|
42
|
+
npm audit --omit=dev --audit-level=high
|
|
43
|
+
|
|
44
|
+
# ------------------------------------------------------------- 2. pack + shape
|
|
45
|
+
if [[ -z "$TARBALL" ]]; then
|
|
46
|
+
step "npm pack (prepack chain: build + discovery + manifest + prepack-check)"
|
|
47
|
+
TARBALL="$(npm pack --silent | tail -1)"
|
|
48
|
+
else
|
|
49
|
+
step "using pre-packed tarball: $TARBALL"
|
|
50
|
+
fi
|
|
51
|
+
[[ -f "$TARBALL" ]] || { echo "❌ tarball missing: $TARBALL" >&2; exit 1; }
|
|
52
|
+
|
|
53
|
+
step "publint (published-package shape)"
|
|
54
|
+
npm run lint:publint --silent
|
|
55
|
+
|
|
56
|
+
# `--ignore-scripts` is NOT honoured for `prepare` by every npm version: on the
|
|
57
|
+
# node-20 container npm still runs it, and this repo's prepare installs the git
|
|
58
|
+
# hooks and prints a banner — straight into the `--json` stdout we parse. Slice
|
|
59
|
+
# from the first `[` so any lifecycle banner ahead of the payload is tolerated
|
|
60
|
+
# instead of turning into `SyntaxError: Unexpected token '✅'`.
|
|
61
|
+
UNPACKED_BYTES="$(npm pack --dry-run --json --ignore-scripts --silent 2>/dev/null \
|
|
62
|
+
| node -e 'let b="";process.stdin.on("data",c=>b+=c).on("end",()=>{const i=b.indexOf("[");const j=JSON.parse(i>=0?b.slice(i):b);console.log(j[0].unpackedSize)})')"
|
|
63
|
+
|
|
64
|
+
# ------------------------------------------------------- 3. headless install
|
|
65
|
+
step "headless consumer install from the tarball"
|
|
66
|
+
WORK="$(mktemp -d)"
|
|
67
|
+
trap 'rm -rf "$WORK"' EXIT
|
|
68
|
+
( cd "$WORK" && npm init -y >/dev/null 2>&1 \
|
|
69
|
+
&& npm install --omit=dev --no-audit --no-fund --silent "$ROOT/$TARBALL" )
|
|
70
|
+
PKG_DIR="$WORK/node_modules/@event4u/agent-config"
|
|
71
|
+
[[ -d "$PKG_DIR" ]] || { echo "❌ install did not produce the package dir" >&2; exit 1; }
|
|
72
|
+
|
|
73
|
+
# --------------------------------------------------------- 4. staleness lints
|
|
74
|
+
step "staleness lints (pre-migration refs)"
|
|
75
|
+
./scripts-run src/scripts/lint_pre_migration_refs
|
|
76
|
+
if [[ -f src/scripts/lint_consumer_internal_refs.ts ]]; then
|
|
77
|
+
./scripts-run src/scripts/lint_consumer_internal_refs
|
|
78
|
+
fi
|
|
79
|
+
|
|
80
|
+
# ------------------------------------------------------ 5. hook-latency bench
|
|
81
|
+
step "hook-latency bench (pre-registered budget gate)"
|
|
82
|
+
./scripts-run src/scripts/bench_hook_latency --gate
|
|
83
|
+
|
|
84
|
+
# ----------------------------------------------- 6-8. measured budget metrics
|
|
85
|
+
step "cold-start + size + surface measurements"
|
|
86
|
+
MEASURE_TMP="$WORK/measurements.json"
|
|
87
|
+
CLI_BIN="$WORK/node_modules/.bin/agent-config"
|
|
88
|
+
|
|
89
|
+
CLI_MS="$(node -e '
|
|
90
|
+
const {execFileSync}=require("node:child_process");
|
|
91
|
+
const t=Date.now();
|
|
92
|
+
execFileSync(process.argv[1],["--version"],{stdio:"ignore"});
|
|
93
|
+
console.log(Date.now()-t);' "$CLI_BIN")"
|
|
94
|
+
|
|
95
|
+
MCP_MS="$(node -e '
|
|
96
|
+
const {spawnSync}=require("node:child_process");
|
|
97
|
+
const t=Date.now();
|
|
98
|
+
const p=spawnSync("node",[process.argv[1]+"/dist/mcp/server.mjs"],{input:JSON.stringify({jsonrpc:"2.0",id:1,method:"initialize",params:{protocolVersion:"2024-11-05",capabilities:{},clientInfo:{name:"p",version:"0"}}})+"\n",encoding:"utf-8",timeout:30000});
|
|
99
|
+
if(!(p.stdout||"").includes("serverInfo")){console.error(p.stderr);process.exit(1)}
|
|
100
|
+
console.log(Date.now()-t);' "$PKG_DIR")"
|
|
101
|
+
|
|
102
|
+
NM_MB="$(du -sm "$WORK/node_modules" | awk '{print $1}')"
|
|
103
|
+
DEP_COUNT="$(node -e '
|
|
104
|
+
const j=require(process.argv[1]);
|
|
105
|
+
console.log(Object.keys(j.packages||{}).length-1);' "$WORK/package-lock.json")"
|
|
106
|
+
|
|
107
|
+
CLI_COUNT="$(node -e '
|
|
108
|
+
const fs=require("node:fs");
|
|
109
|
+
const t=fs.readFileSync(process.argv[1],"utf-8");
|
|
110
|
+
console.log((t.match(/\{ name: /g)||[]).length);' "$ROOT/src/cli/registry.ts")"
|
|
111
|
+
|
|
112
|
+
MCP_TOOLS="$(node -e '
|
|
113
|
+
const {spawnSync}=require("node:child_process");
|
|
114
|
+
const reqs=[{jsonrpc:"2.0",id:1,method:"initialize",params:{protocolVersion:"2024-11-05",capabilities:{},clientInfo:{name:"p",version:"0"}}},{jsonrpc:"2.0",method:"notifications/initialized"},{jsonrpc:"2.0",id:2,method:"tools/list"}];
|
|
115
|
+
const p=spawnSync("node",[process.argv[1]+"/dist/mcp/server.mjs"],{input:reqs.map(r=>JSON.stringify(r)).join("\n")+"\n",encoding:"utf-8",timeout:30000});
|
|
116
|
+
const lines=(p.stdout||"").trim().split("\n").map(l=>{try{return JSON.parse(l)}catch{return null}}).filter(Boolean);
|
|
117
|
+
const resp=lines.find(l=>l.id===2);
|
|
118
|
+
if(!resp||!resp.result||!Array.isArray(resp.result.tools)){console.error("no tools/list result");process.exit(1)}
|
|
119
|
+
console.log(resp.result.tools.length);' "$PKG_DIR")"
|
|
120
|
+
|
|
121
|
+
node -e '
|
|
122
|
+
const fs=require("node:fs");
|
|
123
|
+
const m={
|
|
124
|
+
unpacked_size_mb: Number(process.argv[2])/1e6,
|
|
125
|
+
node_modules_mb: Number(process.argv[3]),
|
|
126
|
+
runtime_dep_count: Number(process.argv[4]),
|
|
127
|
+
cli_version_cold_ms: Number(process.argv[5]),
|
|
128
|
+
mcp_boot_to_initialize_ms: Number(process.argv[6]),
|
|
129
|
+
cli_help_command_count: Number(process.argv[7]),
|
|
130
|
+
mcp_public_tool_count: Number(process.argv[8]),
|
|
131
|
+
};
|
|
132
|
+
fs.writeFileSync(process.argv[1], JSON.stringify(m, null, 2));
|
|
133
|
+
console.log(JSON.stringify(m, null, 1));' \
|
|
134
|
+
"$MEASURE_TMP" "$UNPACKED_BYTES" "$NM_MB" "$DEP_COUNT" "$CLI_MS" "$MCP_MS" "$CLI_COUNT" "$MCP_TOOLS"
|
|
135
|
+
|
|
136
|
+
step "budget gate (absolute + >regression_pct creep)"
|
|
137
|
+
./scripts-run src/scripts/check_evaluator_budgets --measurements "$MEASURE_TMP"
|
|
138
|
+
|
|
139
|
+
# ------------------------------------------------------------- 9. npx smoke
|
|
140
|
+
step "first-touch smoke (installed bin)"
|
|
141
|
+
"$CLI_BIN" --version >/dev/null
|
|
142
|
+
"$CLI_BIN" --help >/dev/null
|
|
143
|
+
|
|
144
|
+
echo
|
|
145
|
+
echo "✅ evaluator umbrella green — the first five minutes hold on the packed artifact."
|
|
@@ -91,15 +91,17 @@
|
|
|
91
91
|
"agents/roadmaps/archive/road-to-final-state-and-market-readiness.md",
|
|
92
92
|
"agents/roadmaps/archive/road-to-image-brand-typography.md",
|
|
93
93
|
"agents/roadmaps/archive/road-to-subagent-value-realization.md",
|
|
94
|
-
"agents/roadmap-assets/road-to-image-brand-typography.assets.md"
|
|
94
|
+
"agents/roadmap-assets/road-to-image-brand-typography.assets.md",
|
|
95
|
+
"CREDITS.md",
|
|
96
|
+
"agents/roadmaps/archive/road-to-ecosystem-harvest-index.md"
|
|
95
97
|
],
|
|
96
98
|
"skip_reason": {
|
|
97
|
-
"vendored_cluster": "design-intelligence/corpus-grounding/design-tokens/react-shadcn-ui/tailwind-engineer + cost/*.mjs ship vendored Apache/MIT code; their upstream attribution is license-required and must NOT be stripped (ADR-061).",
|
|
99
|
+
"vendored_cluster": "design-intelligence/corpus-grounding/design-tokens/react-shadcn-ui/tailwind-engineer + cost/*.mjs ship vendored Apache/MIT code; their upstream attribution is license-required and must NOT be stripped (ADR-061). CREDITS.md is the repo-level attribution file FOR that same cluster — it names the upstreams because the licenses require it, which is the one case source-confidentiality explicitly exempts. It was missing here, so the gate flagged the very attribution the rule mandates.",
|
|
98
100
|
"recommendation_docs": "mcp.md, mcp-registries.md, DISTRIBUTION_CHECKLIST.md, ADR-086, marketing-copy.yml reference registries (Smithery/Glama) as recommendations/distribution targets — allowed.",
|
|
99
101
|
"generated_bundles": "content.json* bundle the vendored-cluster skill bodies above.",
|
|
100
102
|
"self": "the linter + its denylist + the source-confidentiality rule necessarily contain the deny tokens as data.",
|
|
101
103
|
"validate_safe_paths": "telegraph-derived (MIT) ported code; upstream attribution is license-required.",
|
|
102
|
-
"archived_roadmaps_newly_tracked": "Archived roadmaps (and their assets) that predate the source-confidentiality sweep became tracked via the 2026-07 agents-dir gitignore hygiene change. They are frozen historical records; the claudekit mentions are ADR-061 license-attribution work and the remaining names are historical planning references. New roadmaps stay subject to the gate."
|
|
104
|
+
"archived_roadmaps_newly_tracked": "Archived roadmaps (and their assets) that predate the source-confidentiality sweep became tracked via the 2026-07 agents-dir gitignore hygiene change. They are frozen historical records; the claudekit mentions are ADR-061 license-attribution work and the remaining names are historical planning references. New roadmaps stay subject to the gate. road-to-ecosystem-harvest-index.md is the sharpest case: the flagged line is its own acceptance criterion, 'No harvest-family artifact names a real external source' — it quotes the names in order to assert their absence, so the gate fires on the sentence that records the cleanup. road-to-opt-retrieval-and-memory.md was REMOVED from this list on 2026-07-28 (road-to-native-code-intelligence Phase 6): its two clear-text mentions named a gitignored borrow-catalogue inbox file, which carries no historical value that a neutral descriptor loses — so the mentions were rewritten and the exception retired rather than kept. Retiring an exception is preferred over holding one whenever the named token is not license-required attribution and not load-bearing for the record."
|
|
103
105
|
},
|
|
104
106
|
"_excluded_tokens": {
|
|
105
107
|
"agent-os": "collides with our own coined 'Agent-OS primitive' term (universal-skills) — too FP-prone to auto-deny; scrub external 'agent-os' mentions by review.",
|
|
@@ -38,6 +38,8 @@ import fs from "node:fs";
|
|
|
38
38
|
import path from "node:path";
|
|
39
39
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
40
40
|
|
|
41
|
+
import { readHookStdin } from "./hooks/hook_stdin.js";
|
|
42
|
+
|
|
41
43
|
const PLUGIN_ID = "agent-config@event4u-agent-config";
|
|
42
44
|
const ACTION_NEEDED_FILE = ".augment/.first-run-action-needed.md";
|
|
43
45
|
|
|
@@ -222,11 +224,7 @@ export function parse_args(argv: string[]): ParsedArgs {
|
|
|
222
224
|
}
|
|
223
225
|
|
|
224
226
|
function _readStdin(): void {
|
|
225
|
-
|
|
226
|
-
fs.readFileSync(0, "utf-8");
|
|
227
|
-
} catch {
|
|
228
|
-
/* ignore */
|
|
229
|
-
}
|
|
227
|
+
readHookStdin();
|
|
230
228
|
}
|
|
231
229
|
|
|
232
230
|
export function main(argv?: string[]): number {
|
|
@@ -238,7 +236,13 @@ export function main(argv?: string[]): number {
|
|
|
238
236
|
return run(consumer_root);
|
|
239
237
|
}
|
|
240
238
|
|
|
239
|
+
// Bundle-safety: never auto-run when inlined into an esbuild bundle, where
|
|
240
|
+
// every module shares the bundle's `import.meta.url` (see cmd_migrate.ts).
|
|
241
|
+
declare const __AGENT_CONFIG_BUNDLE__: boolean | undefined;
|
|
241
242
|
function _isCliEntry(): boolean {
|
|
243
|
+
if (typeof __AGENT_CONFIG_BUNDLE__ !== 'undefined' && __AGENT_CONFIG_BUNDLE__) {
|
|
244
|
+
return false;
|
|
245
|
+
}
|
|
242
246
|
if (process.argv[1] === undefined) {
|
|
243
247
|
return false;
|
|
244
248
|
}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
# (a) stages a tarball from `npm pack` or operator-supplied .tgz
|
|
16
16
|
# (b) verifies sha256sum against a separate-channel manifest +
|
|
17
17
|
# operator GPG key
|
|
18
|
-
# (c) invokes `scripts/install.
|
|
18
|
+
# (c) invokes `scripts/install.ts --offline --package-dir=<staging>`
|
|
19
19
|
# (d) writes additive lockfile fields under schema_version: 1
|
|
20
20
|
# (installation_mode, package_checksum, signature_verified)
|
|
21
21
|
#
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
# 1 — argument error
|
|
25
25
|
# 2 — checksum mismatch
|
|
26
26
|
# 3 — GPG verification failed
|
|
27
|
-
# 4 — install.
|
|
27
|
+
# 4 — install.ts invocation failed
|
|
28
28
|
# 5 — required dependency missing
|
|
29
29
|
|
|
30
30
|
set -euo pipefail
|
|
@@ -53,7 +53,7 @@ Optional:
|
|
|
53
53
|
(default: $(mktemp -d)).
|
|
54
54
|
--package-version Override the semver written to installed.lock
|
|
55
55
|
(default: parse package.json after extraction).
|
|
56
|
-
--dry-run Verify everything but skip install.
|
|
56
|
+
--dry-run Verify everything but skip install.ts invocation.
|
|
57
57
|
|
|
58
58
|
Exit codes: 0 ok · 1 args · 2 checksum · 3 gpg · 4 install · 5 dep
|
|
59
59
|
USAGE
|
|
@@ -76,6 +76,21 @@ concerns:
|
|
|
76
76
|
script: src/scripts/hooks/block_no_verify.ts
|
|
77
77
|
args: []
|
|
78
78
|
fail_closed: true
|
|
79
|
+
# road-to-ai-employee-borrowings Phase 1 — kernel immutability Layer 1.
|
|
80
|
+
# PreToolUse guard: DENIES Write/Edit/NotebookEdit (and cross-platform
|
|
81
|
+
# equivalents) whose target path is a kernel rule file — the source tree
|
|
82
|
+
# (src/rules/<kernel>.md) or any projection (dist/agent-src/rules/,
|
|
83
|
+
# .claude/**/rules/, .augment/rules/, …). ADR-127 permits more than one
|
|
84
|
+
# blocking hook; this is the second (after block-no-verify). fail_closed:
|
|
85
|
+
# a parse/detection failure never crashes into a false block — the
|
|
86
|
+
# guarantee applies to a DETECTED kernel-rule write, which this hook
|
|
87
|
+
# always catches deterministically (no I/O beyond stdin). No
|
|
88
|
+
# agent-accessible override — the only legitimate bypass is the
|
|
89
|
+
# human-owned exception registry named in the deny message.
|
|
90
|
+
block-kernel-rule-writes:
|
|
91
|
+
script: src/scripts/hooks/block_kernel_rule_writes.ts
|
|
92
|
+
args: []
|
|
93
|
+
fail_closed: true
|
|
79
94
|
# token-saving Phase 3 — PreToolUse RTK-wrap nudge. DETERMINISTIC: keys off a
|
|
80
95
|
# live `which rtk` probe (not the self-reported flag). When rtk is installed
|
|
81
96
|
# and the agent is about to run a single verbose CLI command that is NOT
|
|
@@ -109,6 +124,19 @@ concerns:
|
|
|
109
124
|
script: src/scripts/hooks/code_graph_nudge_hook.ts
|
|
110
125
|
args: []
|
|
111
126
|
fail_closed: false
|
|
127
|
+
# road-to-reachable-code-memory Phase 4 — session_end learning-sidecar
|
|
128
|
+
# aggregation. Joins the EXISTING session_end concern set (no new platform
|
|
129
|
+
# wiring). Aggregates agents/memory/intake/*.jsonl through the learning
|
|
130
|
+
# sidecar into the gitignored .agent-learning.json + LESSONS.md; emits the
|
|
131
|
+
# one-line memory-visibility marker when lessons exist. Default-OFF
|
|
132
|
+
# (memory.learn_on_session_end — council 2026-07-27: ships off; flip is
|
|
133
|
+
# proposed only after the 30-day dogfood shows non-trivial signal AND
|
|
134
|
+
# session-end p95 < 2 s). Budget-capped (2 s), fail-open. Promotion stays
|
|
135
|
+
# human via /memory:propose. fail_closed: false.
|
|
136
|
+
memory-learn:
|
|
137
|
+
script: src/scripts/memory_learn_hook.ts
|
|
138
|
+
args: []
|
|
139
|
+
fail_closed: false
|
|
112
140
|
# Phase 2 of road-to-hooks-actually-fire-in-consumers — session_start
|
|
113
141
|
# gate that surfaces the marketplace-install-but-unscaffolded shape.
|
|
114
142
|
# Writes .augment/.first-run-action-needed.md + one stderr line so
|
|
@@ -166,21 +194,32 @@ concerns:
|
|
|
166
194
|
script: src/scripts/pr_url_reminder_hook.ts
|
|
167
195
|
args: []
|
|
168
196
|
fail_closed: false
|
|
197
|
+
# session_start canary injection — deterministic carrier for the
|
|
198
|
+
# session-canary rule (greet-by-name at task start + reply-close markers
|
|
199
|
+
# as a user-observable context-degradation signal). Gated on
|
|
200
|
+
# `personal.canary_name` in .agent-settings.yml (empty = clean no-op),
|
|
201
|
+
# so unconfigured consumers pay nothing. Emits a `context` block the
|
|
202
|
+
# dispatcher forwards on session_start (hot-context mechanism).
|
|
203
|
+
# Never blocks. fail_closed: false.
|
|
204
|
+
session-canary:
|
|
205
|
+
script: src/scripts/session_canary_hook.ts
|
|
206
|
+
args: []
|
|
207
|
+
fail_closed: false
|
|
169
208
|
|
|
170
209
|
platforms:
|
|
171
210
|
augment:
|
|
172
|
-
session_start: [chat-history, hot-context, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
173
|
-
session_end: [chat-history]
|
|
211
|
+
session_start: [chat-history, hot-context, session-canary, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
212
|
+
session_end: [chat-history, memory-learn]
|
|
174
213
|
stop: [chat-history, hot-context, verify-before-complete]
|
|
175
|
-
pre_tool_use: [block-no-verify, rtk-wrap, design-slop, code-graph-nudge]
|
|
214
|
+
pre_tool_use: [block-no-verify, block-kernel-rule-writes, rtk-wrap, design-slop, code-graph-nudge]
|
|
176
215
|
post_tool_use: [chat-history, roadmap-progress, context-hygiene, verify-before-complete, minimal-safe-diff, injection-scan, pr-url-reminder]
|
|
177
216
|
|
|
178
217
|
claude:
|
|
179
|
-
session_start: [chat-history, hot-context, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
180
|
-
session_end: [chat-history]
|
|
218
|
+
session_start: [chat-history, hot-context, session-canary, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
219
|
+
session_end: [chat-history, memory-learn]
|
|
181
220
|
stop: [chat-history, hot-context, verify-before-complete, team-review-gate]
|
|
182
221
|
user_prompt_submit: [chat-history, verify-before-complete, minimal-safe-diff]
|
|
183
|
-
pre_tool_use: [block-no-verify, rtk-wrap, design-slop, code-graph-nudge]
|
|
222
|
+
pre_tool_use: [block-no-verify, block-kernel-rule-writes, rtk-wrap, design-slop, code-graph-nudge]
|
|
184
223
|
post_tool_use: [chat-history, roadmap-progress, context-hygiene, verify-before-complete, minimal-safe-diff, injection-scan, pr-url-reminder]
|
|
185
224
|
|
|
186
225
|
# Cowork — the Claude desktop app's local-agent-mode runtime, built
|
|
@@ -198,11 +237,11 @@ platforms:
|
|
|
198
237
|
# Decision matrix + upstream blockers tracked in
|
|
199
238
|
# agents/settings/contexts/chat-history-platform-hooks.md § Cowork.
|
|
200
239
|
cowork:
|
|
201
|
-
session_start: [chat-history, hot-context, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
202
|
-
session_end: [chat-history]
|
|
240
|
+
session_start: [chat-history, hot-context, session-canary, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
241
|
+
session_end: [chat-history, memory-learn]
|
|
203
242
|
stop: [chat-history, hot-context, verify-before-complete]
|
|
204
243
|
user_prompt_submit: [chat-history, verify-before-complete, minimal-safe-diff]
|
|
205
|
-
pre_tool_use: [block-no-verify, rtk-wrap, design-slop, code-graph-nudge]
|
|
244
|
+
pre_tool_use: [block-no-verify, block-kernel-rule-writes, rtk-wrap, design-slop, code-graph-nudge]
|
|
206
245
|
post_tool_use: [chat-history, roadmap-progress, context-hygiene, verify-before-complete, minimal-safe-diff, injection-scan, pr-url-reminder]
|
|
207
246
|
|
|
208
247
|
# Phase 7.5 — Cursor. `.cursor/hooks.json` (project) is read by the
|
|
@@ -213,8 +252,8 @@ platforms:
|
|
|
213
252
|
# IDE-only — CLI-only users fall back to /checkpoint per
|
|
214
253
|
# agents/settings/contexts/chat-history-platform-hooks.md.
|
|
215
254
|
cursor:
|
|
216
|
-
session_start: [chat-history, hot-context, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
217
|
-
session_end: [chat-history]
|
|
255
|
+
session_start: [chat-history, hot-context, session-canary, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
256
|
+
session_end: [chat-history, memory-learn]
|
|
218
257
|
stop: [chat-history, hot-context, verify-before-complete]
|
|
219
258
|
user_prompt_submit: [chat-history, verify-before-complete, minimal-safe-diff]
|
|
220
259
|
post_tool_use: [chat-history, roadmap-progress, context-hygiene, verify-before-complete, minimal-safe-diff, injection-scan, pr-url-reminder]
|
|
@@ -228,8 +267,8 @@ platforms:
|
|
|
228
267
|
# both map to session_start. TaskCancel maps to stop because the
|
|
229
268
|
# session is interrupted with partial state (mirrors Augment Stop).
|
|
230
269
|
cline:
|
|
231
|
-
session_start: [chat-history, hot-context, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
232
|
-
session_end: [chat-history]
|
|
270
|
+
session_start: [chat-history, hot-context, session-canary, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
271
|
+
session_end: [chat-history, memory-learn]
|
|
233
272
|
stop: [chat-history, hot-context, verify-before-complete]
|
|
234
273
|
user_prompt_submit: [chat-history, verify-before-complete, minimal-safe-diff]
|
|
235
274
|
post_tool_use: [chat-history, roadmap-progress, context-hygiene, verify-before-complete, minimal-safe-diff, injection-scan, pr-url-reminder]
|
|
@@ -247,7 +286,7 @@ platforms:
|
|
|
247
286
|
# surface to record verification commands; documented limitation).
|
|
248
287
|
# minimal-safe-diff is omitted entirely on Windsurf for the same reason.
|
|
249
288
|
windsurf:
|
|
250
|
-
session_start: [chat-history, hot-context, first-run-gate, onboarding-gate, verify-before-complete, profile-staleness, wrapper-freshness, surface-probe]
|
|
289
|
+
session_start: [chat-history, hot-context, session-canary, first-run-gate, onboarding-gate, verify-before-complete, profile-staleness, wrapper-freshness, surface-probe]
|
|
251
290
|
stop: [chat-history, hot-context, verify-before-complete]
|
|
252
291
|
user_prompt_submit: [chat-history, verify-before-complete]
|
|
253
292
|
|
|
@@ -262,8 +301,8 @@ platforms:
|
|
|
262
301
|
# turn-check semantics. AfterAgent fires when the agent loop ends
|
|
263
302
|
# — this is our `stop` slot.
|
|
264
303
|
gemini:
|
|
265
|
-
session_start: [chat-history, hot-context, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
266
|
-
session_end: [chat-history]
|
|
304
|
+
session_start: [chat-history, hot-context, session-canary, first-run-gate, onboarding-gate, verify-before-complete, minimal-safe-diff, profile-staleness, wrapper-freshness, surface-probe]
|
|
305
|
+
session_end: [chat-history, memory-learn]
|
|
267
306
|
stop: [chat-history, hot-context, verify-before-complete]
|
|
268
307
|
user_prompt_submit: [chat-history, verify-before-complete, minimal-safe-diff]
|
|
269
308
|
post_tool_use: [chat-history, roadmap-progress, context-hygiene, verify-before-complete, minimal-safe-diff, injection-scan, pr-url-reminder]
|