@event4u/agent-config 7.5.0 → 8.0.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 +8 -1
- package/AGENTS.md +9 -9
- package/CHANGELOG.md +325 -0
- package/README.md +35 -5
- package/dist/agent-src/commands/analytics/prune.md +1 -1
- package/dist/agent-src/commands/analytics/show.md +1 -1
- package/dist/agent-src/commands/analyze/decision.md +2 -2
- package/dist/agent-src/commands/analyze/incident.md +2 -2
- package/dist/agent-src/commands/analyze/near-miss.md +2 -2
- package/dist/agent-src/commands/analyze/postmortem.md +2 -2
- package/dist/agent-src/commands/analyze/premortem.md +2 -2
- package/dist/agent-src/commands/cost-report.md +25 -0
- package/dist/agent-src/commands/evals/analyze.json +30 -0
- package/dist/agent-src/commands/evals/mission-upgrade.json +30 -0
- package/dist/agent-src/commands/implement-ticket.md +1 -1
- package/dist/agent-src/commands/knowledge/forget.md +1 -1
- package/dist/agent-src/commands/knowledge/ingest.md +1 -1
- package/dist/agent-src/commands/knowledge/list.md +1 -1
- package/dist/agent-src/commands/memory/load.md +12 -11
- package/dist/agent-src/commands/memory/promote.md +30 -0
- package/dist/agent-src/commands/memory/propose.md +16 -2
- package/dist/agent-src/commands/mission/upgrade.md +1 -1
- package/dist/agent-src/commands/module/explore.md +11 -7
- package/dist/agent-src/commands/optimize-project.md +243 -0
- package/dist/agent-src/commands/optimize.md +5 -0
- package/dist/agent-src/commands/pr/create.md +37 -8
- package/dist/agent-src/commands/prediction-pool.md +2 -2
- package/dist/agent-src/commands/profile/activate.md +3 -3
- package/dist/agent-src/commands/profile/deactivate.md +2 -2
- package/dist/agent-src/commands/profile/show.md +3 -3
- package/dist/agent-src/commands/research/deep.md +5 -0
- package/dist/agent-src/commands/research/report.md +2 -1
- package/dist/agent-src/commands/roadmap/create.md +88 -10
- package/dist/agent-src/commands/roadmap/materialize.md +1 -1
- package/dist/agent-src/commands/roadmap/process-full.md +15 -2
- package/dist/agent-src/commands/roadmap/process-phase.md +18 -6
- package/dist/agent-src/commands/roadmap/process-step.md +4 -0
- package/dist/agent-src/commands/roadmap.md +1 -1
- package/dist/agent-src/commands/security-audit-config.md +1 -1
- package/dist/agent-src/commands/sync-agent-settings.md +1 -1
- package/dist/agent-src/commands/sync-gitignore/fix.md +42 -6
- package/dist/agent-src/commands/team-knowledge/bootstrap.md +106 -0
- package/dist/agent-src/commands/team-knowledge/consolidate.md +105 -0
- package/dist/agent-src/commands/team-knowledge.md +64 -0
- package/dist/agent-src/contexts/authority/commit-mechanics.md +8 -0
- package/dist/agent-src/contexts/authority/destructive-mechanics.md +11 -0
- package/dist/agent-src/contexts/authority/scope-mechanics.md +25 -0
- package/dist/agent-src/contexts/communication/rules-auto/reply-close-mechanics.md +43 -0
- package/dist/agent-src/contexts/contracts/agents-md-anatomy.md +1 -1
- package/dist/agent-src/contexts/contracts/artifact-engagement-flow.md +2 -2
- package/dist/agent-src/contexts/contracts/frugality-charter.md +1 -0
- package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +14 -4
- package/dist/agent-src/contexts/execution/autonomy-mechanics.md +11 -0
- package/dist/agent-src/contexts/execution/orchestration-telemetry.md +32 -8
- package/dist/agent-src/contexts/execution/roadmap-execution-contract.md +107 -0
- package/dist/agent-src/contexts/execution/roadmap-process-loop.md +71 -15
- package/dist/agent-src/contexts/execution/subagent-steering.md +41 -1
- package/dist/agent-src/contexts/override-system.md +1 -1
- package/dist/agent-src/personas/brand-strategist.md +0 -1
- package/dist/agent-src/personas/data-integrity.md +66 -0
- package/dist/agent-src/personas/design-director.md +0 -1
- package/dist/agent-src/personas/performance-engineer.md +66 -0
- package/dist/agent-src/personas/production-validator.md +73 -0
- package/dist/agent-src/rules/agent-authority.md +3 -4
- package/dist/agent-src/rules/analysis-skill-routing.md +3 -5
- package/dist/agent-src/rules/architecture.md +2 -4
- package/dist/agent-src/rules/artifact-drafting-protocol.md +35 -6
- package/dist/agent-src/rules/artifact-engagement-recording.md +2 -4
- package/dist/agent-src/rules/ask-when-uncertain.md +10 -14
- package/dist/agent-src/rules/augment-edit-discipline.md +3 -5
- package/dist/agent-src/rules/autonomous-execution.md +3 -5
- package/dist/agent-src/rules/brand-consistency.md +3 -5
- package/dist/agent-src/rules/brand-source-of-truth.md +3 -5
- package/dist/agent-src/rules/cli-output-handling.md +4 -6
- package/dist/agent-src/rules/command-suggestion-policy.md +3 -5
- package/dist/agent-src/rules/commit-conventions.md +3 -5
- package/dist/agent-src/rules/commit-policy.md +8 -10
- package/dist/agent-src/rules/content-quoting-floor.md +88 -0
- package/dist/agent-src/rules/context-hygiene.md +3 -5
- package/dist/agent-src/rules/copilot-routing.md +4 -6
- package/dist/agent-src/rules/decision-revisit-gate.md +120 -0
- package/dist/agent-src/rules/delegation-policy.md +10 -6
- package/dist/agent-src/rules/design-fidelity.md +3 -5
- package/dist/agent-src/rules/devcontainer-routing.md +4 -6
- package/dist/agent-src/rules/direct-answers.md +13 -17
- package/dist/agent-src/rules/docker-commands.md +3 -5
- package/dist/agent-src/rules/domain-adoption-policy.md +3 -5
- package/dist/agent-src/rules/domain-safety-disclaimer.md +3 -5
- package/dist/agent-src/rules/domain-safety-pii.md +3 -5
- package/dist/agent-src/rules/domain-safety-retention.md +3 -5
- package/dist/agent-src/rules/downstream-changes.md +3 -4
- package/dist/agent-src/rules/engineering-safety-floor.md +3 -5
- package/dist/agent-src/rules/external-reference-deep-dive.md +3 -5
- package/dist/agent-src/rules/fast-path-marker-visibility.md +3 -5
- package/dist/agent-src/rules/finance-safety-floor.md +3 -6
- package/dist/agent-src/rules/framework-neutrality-in-generic-skills.md +3 -5
- package/dist/agent-src/rules/git-history-discipline.md +3 -5
- package/dist/agent-src/rules/guidelines.md +2 -4
- package/dist/agent-src/rules/icon-consistency.md +3 -5
- package/dist/agent-src/rules/image-likeness-and-rights.md +3 -5
- package/dist/agent-src/rules/improve-before-implement.md +5 -5
- package/dist/agent-src/rules/invite-challenge.md +3 -5
- package/dist/agent-src/rules/language-and-tone.md +13 -15
- package/dist/agent-src/rules/laravel-routing.md +3 -5
- package/dist/agent-src/rules/laravel-translations.md +3 -5
- package/dist/agent-src/rules/legal-safety-floor.md +3 -5
- package/dist/agent-src/rules/lethal-trifecta-guard.md +3 -5
- package/dist/agent-src/rules/linked-projects-onboarding-gate.md +4 -7
- package/dist/agent-src/rules/low-impact-corpus-privacy-floor.md +3 -5
- package/dist/agent-src/rules/markdown-safe-codeblocks.md +2 -4
- package/dist/agent-src/rules/media-governance-routing.md +3 -5
- package/dist/agent-src/rules/media-sync-ground-truth.md +3 -5
- package/dist/agent-src/rules/minimal-safe-diff.md +5 -5
- package/dist/agent-src/rules/missing-tool-handling.md +3 -5
- package/dist/agent-src/rules/model-recommendation.md +4 -6
- package/dist/agent-src/rules/no-attribution-footers.md +3 -5
- package/dist/agent-src/rules/no-cheap-questions.md +5 -8
- package/dist/agent-src/rules/no-decorative-emojis-in-git-surfaces.md +3 -6
- package/dist/agent-src/rules/no-pr-progress-comments.md +3 -6
- package/dist/agent-src/rules/no-roadmap-references.md +3 -5
- package/dist/agent-src/rules/non-destructive-by-default.md +11 -13
- package/dist/agent-src/rules/notes-first-reasoning.md +3 -5
- package/dist/agent-src/rules/onboarding-gate.md +4 -6
- package/dist/agent-src/rules/output-discipline.md +3 -5
- package/dist/agent-src/rules/package-ci-checks.md +3 -5
- package/dist/agent-src/rules/persona-governance.md +2 -4
- package/dist/agent-src/rules/php-coding.md +3 -5
- package/dist/agent-src/rules/preservation-guard.md +2 -4
- package/dist/agent-src/rules/provider-lifecycle-discipline.md +3 -5
- package/dist/agent-src/rules/reviewer-awareness.md +5 -6
- package/dist/agent-src/rules/roadmap-ci-steps-policy.md +3 -5
- package/dist/agent-src/rules/roadmap-progress-sync.md +5 -5
- package/dist/agent-src/rules/role-mode-adherence.md +2 -4
- package/dist/agent-src/rules/rule-type-governance.md +3 -5
- package/dist/agent-src/rules/runtime-safety.md +2 -4
- package/dist/agent-src/rules/scope-control.md +10 -11
- package/dist/agent-src/rules/security-sensitive-stop.md +4 -5
- package/dist/agent-src/rules/size-enforcement.md +2 -4
- package/dist/agent-src/rules/skill-improvement-trigger.md +3 -5
- package/dist/agent-src/rules/skill-quality.md +3 -5
- package/dist/agent-src/rules/slash-command-routing-policy.md +3 -5
- package/dist/agent-src/rules/source-confidentiality.md +3 -5
- package/dist/agent-src/rules/source-discovery-gate.md +3 -5
- package/dist/agent-src/rules/source-of-truth.md +3 -5
- package/dist/agent-src/rules/strategy-safety-floor.md +3 -5
- package/dist/agent-src/rules/symfony-routing.md +4 -6
- package/dist/agent-src/rules/telegraph-speak.md +4 -5
- package/dist/agent-src/rules/think-before-action.md +7 -4
- package/dist/agent-src/rules/token-budget-discipline.md +29 -5
- package/dist/agent-src/rules/token-efficiency.md +3 -5
- package/dist/agent-src/rules/token-optimizer-maintenance.md +3 -5
- package/dist/agent-src/rules/tool-safety.md +2 -4
- package/dist/agent-src/rules/ui-audit-gate.md +3 -6
- package/dist/agent-src/rules/untrusted-input-defense.md +3 -5
- package/dist/agent-src/rules/upstream-proposal.md +4 -6
- package/dist/agent-src/rules/user-interaction.md +7 -5
- package/dist/agent-src/rules/user-interrupt-priority.md +17 -8
- package/dist/agent-src/rules/verify-before-complete.md +12 -22
- package/dist/agent-src/scripts/archive_completed_roadmaps.ts +3 -3
- package/dist/agent-src/scripts/update_roadmap_progress.ts +197 -7
- package/dist/agent-src/skills/adr-create/SKILL.md +48 -42
- package/dist/agent-src/skills/agent-docs-writing/SKILL.md +18 -0
- package/dist/agent-src/skills/agent-security-review/SKILL.md +1 -1
- package/dist/agent-src/skills/ai-council/SKILL.md +14 -1
- package/dist/agent-src/skills/blameless-post-mortem/SKILL.md +0 -3
- package/dist/agent-src/skills/brand/SKILL.md +1 -1
- package/dist/agent-src/skills/brand-identity/SKILL.md +3 -3
- package/dist/agent-src/skills/brand-strategy/SKILL.md +1 -1
- package/dist/agent-src/skills/brand-to-tokens/SKILL.md +3 -3
- package/dist/agent-src/skills/canvas-design/SKILL.md +6 -0
- package/dist/agent-src/skills/check-refs/SKILL.md +7 -4
- package/dist/agent-src/skills/code-review/SKILL.md +1 -0
- package/dist/agent-src/skills/complexity-first-planning/SKILL.md +6 -5
- package/dist/agent-src/skills/condense-memory/SKILL.md +11 -11
- package/dist/agent-src/skills/context-document/SKILL.md +17 -0
- package/dist/agent-src/skills/corpus-grounding/SKILL.md +3 -3
- package/dist/agent-src/skills/decision-record/SKILL.md +6 -0
- package/dist/agent-src/skills/decision-review/SKILL.md +5 -3
- package/dist/agent-src/skills/deep-reading-analyst/SKILL.md +6 -1
- package/dist/agent-src/skills/design-intelligence/SKILL.md +5 -2
- package/dist/agent-src/skills/design-intelligence/references/design-languages.md +1 -1
- package/dist/agent-src/skills/design-tokens/SKILL.md +10 -4
- package/dist/agent-src/skills/design-variations/SKILL.md +127 -0
- package/dist/agent-src/skills/design-variations/evals/triggers.json +17 -0
- package/dist/agent-src/skills/emit-tickets/SKILL.md +4 -4
- package/dist/agent-src/skills/fe-design/SKILL.md +20 -0
- package/dist/agent-src/skills/html-deck/SKILL.md +123 -0
- package/dist/agent-src/skills/html-deck/evals/triggers.json +17 -0
- package/dist/agent-src/skills/html-deck/templates/deck-shell.html +77 -0
- package/dist/agent-src/skills/judge-code-quality/SKILL.md +1 -0
- package/dist/agent-src/skills/laravel/SKILL.md +0 -1
- package/dist/agent-src/skills/learning-to-rule-or-skill/SKILL.md +46 -0
- package/dist/agent-src/skills/lint-skills/SKILL.md +6 -6
- package/dist/agent-src/skills/md-language-check/SKILL.md +3 -3
- package/dist/agent-src/skills/memory-consolidation/SKILL.md +66 -1
- package/dist/agent-src/skills/migration-architect/SKILL.md +1 -0
- package/dist/agent-src/skills/module-detect-on-the-fly/SKILL.md +2 -2
- package/dist/agent-src/skills/performance-analysis/SKILL.md +2 -0
- package/dist/agent-src/skills/prediction-pool-optimizer/SKILL.md +4 -4
- package/dist/agent-src/skills/premortem/SKILL.md +0 -3
- package/dist/agent-src/skills/project-analysis-core/SKILL.md +16 -0
- package/dist/agent-src/skills/reasoning-orchestrator/SKILL.md +3 -1
- package/dist/agent-src/skills/release-comms/SKILL.md +46 -45
- package/dist/agent-src/skills/roadmap-management/SKILL.md +21 -0
- package/dist/agent-src/skills/roadmap-writing/SKILL.md +32 -2
- package/dist/agent-src/skills/root-cause-frameworks/SKILL.md +0 -3
- package/dist/agent-src/skills/security-audit/SKILL.md +1 -0
- package/dist/agent-src/skills/skill-improvement-pipeline/SKILL.md +4 -0
- package/dist/agent-src/skills/source-discovery/SKILL.md +22 -3
- package/dist/agent-src/skills/subagent-orchestration/SKILL.md +33 -14
- package/dist/agent-src/skills/subagent-orchestration/prompts/README.md +11 -0
- package/dist/agent-src/skills/subagent-orchestration/prompts/do-in-steps.md +8 -0
- package/dist/agent-src/skills/systematic-debugging/SKILL.md +29 -0
- package/dist/agent-src/skills/threat-modeling/SKILL.md +2 -2
- package/dist/agent-src/skills/typography-system/SKILL.md +2 -2
- package/dist/agent-src/skills/verify-completion-evidence/SKILL.md +2 -0
- package/dist/agent-src/skills/wireframe/SKILL.md +118 -0
- package/dist/agent-src/skills/wireframe/evals/triggers.json +17 -0
- package/dist/agent-src/templates/agent-settings.md +22 -1
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/dist/agent-src/templates/command.md +2 -2
- package/dist/agent-src/templates/contexts/knowledge-pages.md +116 -0
- package/dist/agent-src/templates/hooks/pre-commit-frontmatter +1 -1
- package/dist/agent-src/templates/roadmaps.md +70 -2
- package/dist/agent-src/templates/rule.md +1 -1
- package/dist/agent-src/templates/scripts/README.md +3 -3
- package/dist/agent-src/templates/scripts/work_engine/_lib/agent_settings.ts +109 -0
- package/dist/agent-src/templates/tickets.md +8 -8
- package/dist/cli/commands/recordTriggerEval.test.js +1 -1
- package/dist/cli/commands/recordTriggerEval.test.js.map +1 -1
- package/dist/cli/initRouting.js +4 -2
- package/dist/cli/initRouting.js.map +1 -1
- package/dist/cli/registry.js +1 -0
- package/dist/cli/registry.js.map +1 -1
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +718 -240
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +8 -8
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +43 -28
- package/dist/discovery/trust-report.md +12 -11
- package/dist/discovery/workspaces.json +29 -18
- package/dist/install/preflight.js +173 -0
- package/dist/install/preflight.js.map +1 -0
- package/dist/mcp/registry-manifest.json +4 -4
- package/dist/router.json +1 -1
- package/dist/server/routes/settings.js +4 -0
- package/dist/server/routes/settings.js.map +1 -1
- package/dist/server/schemas/settings.js +3 -1
- package/dist/server/schemas/settings.js.map +1 -1
- package/docs/CLAIMS.md +108 -0
- package/docs/MIGRATION.md +3 -3
- package/docs/architecture.md +5 -5
- package/docs/benchmark.md +133 -2
- package/docs/benchmark.pinned.yml +31 -0
- package/docs/capability-matrix.md +1 -0
- package/docs/catalog.md +70 -60
- package/docs/command-flows.md +15 -3
- package/docs/comparison.yaml +35 -0
- package/docs/contracts/agents-layout.md +148 -0
- package/docs/contracts/brand-token-consumption.md +5 -0
- package/docs/contracts/capability-boundary.md +5 -0
- package/docs/contracts/command-category-governance.md +5 -0
- package/docs/contracts/command-clusters.md +1 -0
- package/docs/contracts/command-surface-tiers.md +1 -1
- package/docs/contracts/conformance.md +84 -0
- package/docs/contracts/creative-pack-boundary.md +5 -0
- package/docs/contracts/discovery-manifest.schema.json +5 -4
- package/docs/contracts/file-ownership-matrix.json +4605 -985
- package/docs/contracts/governance-enforcement-projection.md +5 -0
- package/docs/contracts/gui-wizard.md +1 -1
- package/docs/contracts/hook-architecture-v1.md +2 -2
- package/docs/contracts/implement-ticket-flow.md +1 -1
- package/docs/contracts/kernel-membership.md +13 -0
- package/docs/contracts/mcp-tool-inventory.md +23 -23
- package/docs/contracts/no-runtime-boundary.md +6 -1
- package/docs/contracts/review-lens-schema.md +5 -0
- package/docs/contracts/rule-router.md +102 -8
- package/docs/contracts/skill-bundled-assets.md +1 -1
- package/docs/contracts/skill-dry-run.md +1 -1
- package/docs/contracts/subagent-boundary.md +5 -0
- package/docs/contracts/ticket-bundle-format.md +9 -4
- package/docs/contracts/tier-3-contrib-plugin.md +2 -2
- package/docs/contracts/write-engine.md +3 -0
- package/docs/customization.md +87 -15
- package/docs/decisions/ADR-107-legal-domain-pack-adoption.md +1 -1
- package/docs/decisions/ADR-109-subagent-v1-contract.md +246 -0
- package/docs/decisions/ADR-110-discipline-profile-resolution-locus.md +105 -0
- package/docs/decisions/INDEX.md +2 -0
- package/docs/distribution/awesome-list-submission.md +46 -0
- package/docs/distribution/launch-story-draft.md +58 -0
- package/docs/end-to-end-walkthroughs.md +2 -2
- package/docs/getting-started.md +2 -2
- package/docs/guidelines/agent-infra/asking-and-brevity-examples.md +24 -0
- package/docs/guidelines/agent-infra/corpus-grounding-authoring.md +1 -1
- package/docs/guidelines/agent-infra/linked-projects-onboarding-gate.md +2 -2
- package/docs/guidelines/agent-infra/missing-tool-handling.md +3 -3
- package/docs/guidelines/agent-infra/verify-before-complete-demos.md +2 -2
- package/docs/guidelines/augment-portability-patterns.md +1 -1
- package/docs/guidelines/code-clarity.md +19 -0
- package/docs/guidelines/design-antipatterns-triggers.json +2 -1
- package/docs/guidelines/design-antipatterns.md +10 -1
- package/docs/guidelines/design-modes.md +6 -0
- package/docs/guidelines/php/general.md +9 -1
- package/docs/guidelines/php/php-coding-patterns.md +7 -0
- package/docs/guides/cross-repo-retrieval.md +1 -1
- package/docs/guides/frontend-design-corpus-refresh.md +2 -2
- package/docs/guides/local-analytics.md +4 -4
- package/docs/guides/skill-discovery.md +1 -1
- package/docs/guides/skill-preview.md +1 -1
- package/docs/hook-payload-capture.md +6 -6
- package/docs/install-friction-report.md +66 -0
- package/docs/installation.md +1 -1
- package/docs/maintainers/optional-media-deps.md +50 -0
- package/docs/mcp-server.md +11 -12
- package/docs/media/proof-demo.cast +14 -0
- package/docs/media/proof-demo.gif +0 -0
- package/docs/migration/consumer-template-consumption-model.md +1 -1
- package/docs/migration/divergences/bench-stats-float-precision.md +1 -1
- package/docs/migration/node-floor.md +1 -1
- package/docs/migration/yaml-roundtrip-spike.md +1 -1
- package/docs/personas.md +16 -5
- package/docs/positioning-evidence.md +86 -0
- package/docs/proof.md +86 -0
- package/docs/skills-catalog.md +1 -1
- package/docs/troubleshooting.md +8 -8
- package/docs/wedge/production-validator/README.md +57 -0
- package/docs/wedge/production-validator/production-validator.md +56 -0
- package/docs/wizard.md +2 -2
- package/package.json +1 -1
- package/src/config/agent-settings.template.yml +59 -4
- package/src/config/agents-paths.yml +254 -0
- package/src/config/budgets.yml +16 -0
- package/src/config/discovery/packs.yml +1 -0
- package/src/config/discovery/unassigned-artefacts.yml +2 -0
- package/src/config/gitignore-block.txt +25 -0
- package/src/config/host-capabilities.yml +31 -0
- package/src/config/profiles/balanced.ini +4 -0
- package/src/config/profiles/full.ini +4 -0
- package/src/config/profiles/minimal.ini +4 -0
- package/src/scripts/_cli/cmd_conformance.ts +716 -0
- package/src/scripts/_cli/cmd_doctor.ts +23 -2
- package/src/scripts/_cli/cmd_fleet.ts +401 -0
- package/src/scripts/_cli/cmd_preflight.ts +159 -0
- package/src/scripts/_dispatch.bash +10 -0
- package/src/scripts/_lib/knowledge_events.ts +193 -0
- package/src/scripts/_lib/subagent_steering.ts +115 -3
- package/src/scripts/_lib/text_similarity.ts +75 -0
- package/src/scripts/ai-video/test-pipeline.sh +1 -1
- package/src/scripts/ai_council/clients.ts +19 -3
- package/src/scripts/append_contested.ts +112 -0
- package/src/scripts/audit_auto_rules.ts +11 -1
- package/src/scripts/audit_mcp_tools.ts +25 -11
- package/src/scripts/bench_ab_v2_run.ts +527 -40
- package/src/scripts/bench_ab_v2_stats.ts +6 -0
- package/src/scripts/bench_matrix.ts +266 -0
- package/src/scripts/bootstrap_knowledge.ts +267 -0
- package/src/scripts/build_discovery_manifest.ts +42 -2
- package/src/scripts/build_proof.ts +214 -0
- package/src/scripts/check_always_budget.ts +3 -0
- package/src/scripts/check_augment_description_cap.ts +2 -2
- package/src/scripts/check_claims.ts +270 -0
- package/src/scripts/check_comparison.ts +79 -0
- package/src/scripts/check_generated_artefact_headers.ts +109 -0
- package/src/scripts/check_generator_output_coverage.ts +142 -0
- package/src/scripts/check_gitignore_freshness.ts +127 -0
- package/src/scripts/check_knowledge_pages.ts +210 -0
- package/src/scripts/check_knowledge_sharing.ts +162 -0
- package/src/scripts/check_media_deps.ts +91 -0
- package/src/scripts/check_memory_contradiction.ts +280 -0
- package/src/scripts/check_memory_similarity.ts +134 -0
- package/src/scripts/check_quality_regression.ts +56 -10
- package/src/scripts/check_references.ts +3 -1
- package/src/scripts/check_release_pr_shape.ts +4 -0
- package/src/scripts/check_site_links.ts +135 -0
- package/src/scripts/check_skill_gaps.ts +99 -0
- package/src/scripts/check_token_quality_golden.ts +197 -11
- package/src/scripts/check_tracked_but_ignored.ts +67 -0
- package/src/scripts/cluster_near_miss_patterns.ts +0 -0
- package/src/scripts/compile_router.ts +30 -3
- package/src/scripts/condense.ts +350 -14
- package/src/scripts/consolidate_knowledge_events.ts +192 -0
- package/src/scripts/degrade_to_pointer.ts +136 -0
- package/src/scripts/design_slop_rules.test.ts +15 -0
- package/src/scripts/design_slop_rules.ts +28 -0
- package/src/scripts/emit_knowledge_event.ts +158 -0
- package/src/scripts/export_replay_corpus.ts +187 -0
- package/src/scripts/external_sources_denylist.json +7 -2
- package/src/scripts/fold_intake.ts +281 -0
- package/src/scripts/generate_capability_matrix.ts +9 -1
- package/src/scripts/generate_knowledge_index.ts +222 -0
- package/src/scripts/hook_manifest.yaml +26 -14
- package/src/scripts/hooks/dispatch_hook.ts +18 -0
- package/src/scripts/hot_context_hook.ts +372 -0
- package/src/scripts/install +47 -0
- package/src/scripts/install-hooks.sh +17 -0
- package/src/scripts/inventory_meta_layers.ts +11 -0
- package/src/scripts/janitor.ts +258 -0
- package/src/scripts/lint_agents_layout.ts +74 -15
- package/src/scripts/lint_bench_ab.ts +4 -1
- package/src/scripts/lint_featured_skills.ts +0 -0
- package/src/scripts/lint_framework_leakage_allowlist.json +26 -3
- package/src/scripts/lint_knowledge_scale.ts +250 -0
- package/src/scripts/lint_legal_pack.ts +67 -0
- package/src/scripts/lint_persona_governance.ts +8 -3
- package/src/scripts/lint_regression.ts +15 -0
- package/src/scripts/lint_roadmap_blockers.ts +202 -0
- package/src/scripts/lint_roadmap_complexity.ts +81 -2
- package/src/scripts/lint_subagent_determinism.ts +125 -0
- package/src/scripts/measure_augment_budget.ts +46 -6
- package/src/scripts/measure_patterns.ts +4 -3
- package/src/scripts/measure_skill_reduction.ts +6 -6
- package/src/scripts/migration_status.ts +6 -2
- package/src/scripts/mine_missing_guardrails.ts +189 -0
- package/src/scripts/parity/phase_gate.ts +1 -1
- package/src/scripts/parity/replay.ts +21 -0
- package/src/scripts/project_thin_rules.ts +120 -16
- package/src/scripts/release.ts +39 -1
- package/src/scripts/render_benchmark_composite.ts +378 -0
- package/src/scripts/roadmap_progress_hook.ts +101 -43
- package/src/scripts/schemas/skill.schema.json +27 -0
- package/src/scripts/schemas/subagent.schema.json +106 -0
- package/src/scripts/skill_linter.ts +1 -0
- package/src/scripts/smoke/kernel.sh +5 -4
- package/src/scripts/surface-tiers.yml +1 -0
- package/src/scripts/sync_gitignore.ts +4 -0
- package/src/scripts/update_skill_candidates.ts +172 -0
- package/src/scripts/validate_frontmatter.ts +1 -0
|
@@ -39,7 +39,7 @@ The objective floors are cited from the linter, never re-eyeballed by an agent.
|
|
|
39
39
|
runtime token cost): a pattern-detectable subset of these entries now has a
|
|
40
40
|
deterministic rule that `design-review` cites instead of re-deriving — `V1`,
|
|
41
41
|
`V3`, `V6`, `C2`, `C5`, `T4`, `T6`, `T7`, `L4`, `L8`, `M2`, `M4`, `CP1`, `CP2`,
|
|
42
|
-
plus the **Consistency Locks & layout caps** `V8`, `C6`, `L9`, `L10`
|
|
42
|
+
`CP5`, plus the **Consistency Locks & layout caps** `V8`, `C6`, `L9`, `L10`
|
|
43
43
|
(rule ids `slop-<id>-*`, registry in `src/scripts/design_slop_rules.ts`). These
|
|
44
44
|
are **flags / rebuttable presumptions**, never hard blocks — a consumer
|
|
45
45
|
`DESIGN.md` that declares the pattern as intentional suppresses the flag. The
|
|
@@ -140,6 +140,7 @@ Within-project invariants + repetition caps. Override = declare the value in
|
|
|
140
140
|
| CP2 | Marketing buzzwords: streamline, empower, supercharge, world-class, enterprise-grade, seamlessly, robust, leverage | These words carry no information; an AI-slop test: replace each with nothing — the sentence still communicates the same thing | No override; if a word can be deleted without loss, delete it |
|
|
141
141
|
| CP3 | Aphoristic manufactured contrast ("We don't do X. We do Y." / "Not just A, but B.") | A generated sentence rhythm that sounds like brand writing but carries no specificity | Aphoristic copy is legitimate when the contrast reveals a genuine product distinction; test by asking whether the Y side says something concrete |
|
|
142
142
|
| CP4 | "Theater" framing — copy that announces what the product does without saying how or why | "The platform for modern teams." communicates nothing; it is content-shaped noise | Every tagline must pass the "so what" test: can a skeptic follow it with "but how?" and get a concrete answer? |
|
|
143
|
+
| CP5 | Emoji-decoration in UI markup — 🚀/✅/🎉 prepending headings, buttons, list items, or CTAs (`🚀 Get Started`) | Performative-enthusiasm coating; the default-startup-template tell. No emoji is better than decorative emoji | Brand/`DESIGN.md` declares a systematic emoji strategy, or the emoji is functional (status indicator, category marker tied to real meaning) |
|
|
143
144
|
|
|
144
145
|
---
|
|
145
146
|
|
|
@@ -163,6 +164,14 @@ these. The rest are agent self-checks.
|
|
|
163
164
|
| Q10 | Body background: avoid OKLCH L 0.84–0.97, C < 0.06 (cream/sand) unless brand-defined | Color space calculation | Agent self-check |
|
|
164
165
|
| Q11 | Padding floors: ≥ 8px (inline elements), ≥ 16px (card/panel bodies) | Computed padding | Agent self-check |
|
|
165
166
|
| Q12 | Justified text only with CSS hyphenation (`hyphens: auto`) | Presence of `text-align: justify` without `hyphens` | Agent self-check |
|
|
167
|
+
| Q13 | Outward-artifact hygiene: no system internals — absolute workspace paths, skill/tool names, generator traces, config keys — in comments, metadata, or EXIF of deliverables that leave the workspace (HTML decks, prototypes, exports), unless the user asks for build provenance | Comment/metadata scan of the emitted artifact | Agent self-check |
|
|
168
|
+
|
|
169
|
+
Q13 is **output hygiene only** — it never restricts chat-side transparency to
|
|
170
|
+
the operator (what skills/tools ran stays fully answerable in conversation).
|
|
171
|
+
Converged via council (claude-sonnet-4-5 + gpt-4o, 2026-07-06): shared floor
|
|
172
|
+
here, referenced by artifact-producing skills, deliberately not a PII-rule
|
|
173
|
+
extension. Deterministic detection in `lint_design_slop` (path/trace grep) is
|
|
174
|
+
possible but deferred until a real incident.
|
|
166
175
|
|
|
167
176
|
---
|
|
168
177
|
|
|
@@ -89,6 +89,12 @@ not minimal white, not brutalist → everyone picks terminal dark").
|
|
|
89
89
|
|
|
90
90
|
**Both modes:** `design-antipatterns` (always pull), `design-review` (with anti-slop check)
|
|
91
91
|
|
|
92
|
+
**Exploration front-ends (either mode, before committing):**
|
|
93
|
+
`wireframe` (lo-fi structure exploration, disposable greyscale) →
|
|
94
|
+
`design-variations` (3+ substantive hi-fi options, basic→bold, single file
|
|
95
|
+
with tweak controls). Decks are their own medium → `html-deck`
|
|
96
|
+
(fixed-canvas slides), not the responsive-UI routing above.
|
|
97
|
+
|
|
92
98
|
## See also
|
|
93
99
|
|
|
94
100
|
- `docs/guidelines/design-antipatterns.md` — the slop-tell catalog; brand mode especially needs this
|
|
@@ -77,7 +77,15 @@ $data = ['id' => 1, 'name' => 'John'];
|
|
|
77
77
|
createUser(...$data);
|
|
78
78
|
```
|
|
79
79
|
|
|
80
|
-
## DocBlocks
|
|
80
|
+
## Comments and DocBlocks
|
|
81
|
+
|
|
82
|
+
A code comment earns its place only by stating a constraint the code
|
|
83
|
+
cannot show — a non-obvious invariant, a workaround for a known bug, a
|
|
84
|
+
hidden dependency. Never write comments that narrate ("added for X",
|
|
85
|
+
"this calls Y"), repeat the next line, or justify the change to the
|
|
86
|
+
reviewer. Full clause: [`code-clarity.md § Comment discipline`](../code-clarity.md#comment-discipline--state-a-constraint-not-a-narration).
|
|
87
|
+
|
|
88
|
+
DocBlocks:
|
|
81
89
|
|
|
82
90
|
- **Only** use DocBlocks to explain complex logic or when type hints are insufficient
|
|
83
91
|
- **Must** add DocBlock for iterable types: `@param array<int, MyObject> $items`
|
|
@@ -55,6 +55,13 @@ Default: `getters_setters`. See the `eloquent` skill for the full reference tabl
|
|
|
55
55
|
- Always write tests in **Pest**, not PHPUnit class syntax — unless the user explicitly asks for PHPUnit.
|
|
56
56
|
- Pest tests in `tests/Unit/` automatically use `UnitTestCase` as the base class (configured in `tests/Pest.php`).
|
|
57
57
|
|
|
58
|
+
## Code comments
|
|
59
|
+
|
|
60
|
+
A code comment earns its place only by stating a constraint the code
|
|
61
|
+
cannot show. Never write comments that narrate, repeat the next line,
|
|
62
|
+
or justify the change to the reviewer. Full clause:
|
|
63
|
+
[`code-clarity.md § Comment discipline`](../code-clarity.md#comment-discipline--state-a-constraint-not-a-narration).
|
|
64
|
+
|
|
58
65
|
## PHPDoc
|
|
59
66
|
|
|
60
67
|
- Only add PHPDoc when type hints are insufficient (e.g. generic arrays: `@param array<int, MyObject> $items`).
|
|
@@ -27,7 +27,7 @@ siblings you have not decided on yet. A sibling only becomes reachable once you
|
|
|
27
27
|
Under the hood:
|
|
28
28
|
|
|
29
29
|
```bash
|
|
30
|
-
|
|
30
|
+
./scripts-run src/scripts/cross_repo_retrieve "OrderApiContract" [--path-scope 'src/*.ts'] [--max-chunks 8]
|
|
31
31
|
```
|
|
32
32
|
|
|
33
33
|
You get a bounded table — `source_repo · path · freshness · why` — drawn only from opted-in
|
|
@@ -28,9 +28,9 @@ recall/precision must be re-measured.
|
|
|
28
28
|
2. **Run the live trigger-eval** (token spend — interactive, gated):
|
|
29
29
|
|
|
30
30
|
```bash
|
|
31
|
-
|
|
31
|
+
|
|
32
32
|
task install-anthropic-key # once: install ~/.event4u/agent-config/anthropic.key
|
|
33
|
-
|
|
33
|
+
./scripts-run src/scripts/skill_trigger_eval \
|
|
34
34
|
--skill <skill> --output /tmp/<skill>-eval.json
|
|
35
35
|
```
|
|
36
36
|
|
|
@@ -47,14 +47,14 @@ response bodies).
|
|
|
47
47
|
|
|
48
48
|
```bash
|
|
49
49
|
# Render the last 30 days as markdown
|
|
50
|
-
|
|
50
|
+
./agent-config analytics show
|
|
51
51
|
|
|
52
52
|
# Last 24 h, JSON
|
|
53
|
-
|
|
53
|
+
./agent-config analytics show \
|
|
54
54
|
--window 24h --format json
|
|
55
55
|
|
|
56
56
|
# Filter to one role
|
|
57
|
-
|
|
57
|
+
./agent-config analytics show \
|
|
58
58
|
--role tradesperson --format csv
|
|
59
59
|
```
|
|
60
60
|
|
|
@@ -108,7 +108,7 @@ rm -rf ~/.event4u/agent-config/workspace/analytics/
|
|
|
108
108
|
Or prune the rolling window manually:
|
|
109
109
|
|
|
110
110
|
```bash
|
|
111
|
-
|
|
111
|
+
./agent-config analytics prune
|
|
112
112
|
# → pruned 47 event(s)
|
|
113
113
|
```
|
|
114
114
|
|
|
@@ -48,7 +48,7 @@ This skill will walk these steps:
|
|
|
48
48
|
- Write the standard template
|
|
49
49
|
- Regenerate the index
|
|
50
50
|
|
|
51
|
-
Declared command:
|
|
51
|
+
Declared command: `./scripts-run src/scripts/adr/regenerate_index`
|
|
52
52
|
```
|
|
53
53
|
|
|
54
54
|
Add `--technical` for the raw frontmatter + numbered step list.
|
|
@@ -26,7 +26,7 @@ cd /path/to/agent-config
|
|
|
26
26
|
# Confirm the dispatcher is wired in this project (idempotent — safe to rerun).
|
|
27
27
|
# Replace <platform> with cursor / cline / windsurf / gemini as appropriate
|
|
28
28
|
# when you reach that platform's section.
|
|
29
|
-
|
|
29
|
+
npx @event4u/agent-config install --<platform>
|
|
30
30
|
|
|
31
31
|
# Confirm the trampoline + project-scope hooks file landed.
|
|
32
32
|
./agent-config hooks:status | grep -E "^[ ✓✅⚠️❌·] (cursor|cline|windsurf|gemini)"
|
|
@@ -71,7 +71,7 @@ archive conversations.
|
|
|
71
71
|
|
|
72
72
|
### Cursor (~5 min)
|
|
73
73
|
|
|
74
|
-
- **Install:** `
|
|
74
|
+
- **Install:** `npx @event4u/agent-config install --cursor` (project) or
|
|
75
75
|
`--cursor-user-hooks` (covers every project you open).
|
|
76
76
|
- **Restart:** quit Cursor (Cmd+Q on macOS), then relaunch from the
|
|
77
77
|
shell where you exported `AGENT_HOOK_CAPTURE_DIR` so the env var
|
|
@@ -89,7 +89,7 @@ archive conversations.
|
|
|
89
89
|
|
|
90
90
|
### Cline (~5 min)
|
|
91
91
|
|
|
92
|
-
- **Install:** `
|
|
92
|
+
- **Install:** `npx @event4u/agent-config install --cline` (project) or
|
|
93
93
|
`--cline-user-hooks` (user-scope, covers every workspace).
|
|
94
94
|
- **Restart:** in VS Code or JetBrains, run "Developer: Reload
|
|
95
95
|
Window" (Cmd+Shift+P) from a terminal where the env is exported.
|
|
@@ -108,7 +108,7 @@ archive conversations.
|
|
|
108
108
|
|
|
109
109
|
### Windsurf (~5 min)
|
|
110
110
|
|
|
111
|
-
- **Install:** `
|
|
111
|
+
- **Install:** `npx @event4u/agent-config install --windsurf` (project) or
|
|
112
112
|
`--windsurf-user-hooks` (user-scope at `~/.codeium/windsurf/hooks.json`).
|
|
113
113
|
- **Restart:** quit Cascade fully, then relaunch from the shell with
|
|
114
114
|
the env exported. The `pre_user_prompt` event fires on every turn —
|
|
@@ -126,7 +126,7 @@ archive conversations.
|
|
|
126
126
|
|
|
127
127
|
### Gemini CLI (~5 min)
|
|
128
128
|
|
|
129
|
-
- **Install:** `
|
|
129
|
+
- **Install:** `npx @event4u/agent-config install --gemini` (project) or
|
|
130
130
|
`--gemini-user-hooks` (user-scope at `~/.gemini/settings.json`).
|
|
131
131
|
- **Restart:** Gemini CLI is invoked per command — no daemon to
|
|
132
132
|
restart. Just open a new shell with `AGENT_HOOK_CAPTURE_DIR`
|
|
@@ -179,7 +179,7 @@ After pasting and flipping the checkbox:
|
|
|
179
179
|
./scripts-run src/scripts/check_portability
|
|
180
180
|
|
|
181
181
|
# Tests still green.
|
|
182
|
-
|
|
182
|
+
node node_modules/.bin/vitest run tests/scripts/hooks/ -q
|
|
183
183
|
|
|
184
184
|
# Optional: regenerate the dashboard if the archived roadmap's
|
|
185
185
|
# checkbox change should bubble up. Iron Law from
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
---
|
|
2
|
+
status: template — awaiting sessions (no real data yet)
|
|
3
|
+
study: install-friction (B9)
|
|
4
|
+
recruits_target: 3
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Install-friction report (B9)
|
|
8
|
+
|
|
9
|
+
> **Template — not yet run.** This file carries the Gate-C read for the wedge
|
|
10
|
+
> install. It holds **no real data** until ≥ 3 external Laravel/TS developers
|
|
11
|
+
> have completed the study per
|
|
12
|
+
> [`agents/recruit-sessions/_install-friction-runbook.md`](../agents/recruit-sessions/_install-friction-runbook.md).
|
|
13
|
+
> Do not cite the placeholder numbers below as findings.
|
|
14
|
+
|
|
15
|
+
## What this measures
|
|
16
|
+
|
|
17
|
+
Can an external developer — not on the maintainer team, no prior exposure —
|
|
18
|
+
install the `production-validator` wedge and reach first value (a real verdict
|
|
19
|
+
on their own code) in **< 60 s**, unaided, without abandoning? That is the
|
|
20
|
+
Gate-C signal. Method: observed, timed, wedge-only (see the runbook).
|
|
21
|
+
|
|
22
|
+
## Per-recruit results
|
|
23
|
+
|
|
24
|
+
> One row per recruit. `TTFV` = time-to-first-value in seconds ("—" if
|
|
25
|
+
> abandoned). `outcome` ∈ completed · completed-with-rescue · abandoned.
|
|
26
|
+
> Real names never appear (R1/R2/R3); raw notes stay private with the recording.
|
|
27
|
+
|
|
28
|
+
| recruit | stack | TTFV (s) | outcome | abandonment point | top friction |
|
|
29
|
+
|---|---|---|---|---|---|
|
|
30
|
+
| R1 | _tbd_ | _tbd_ | _tbd_ | _tbd_ | _tbd_ |
|
|
31
|
+
| R2 | _tbd_ | _tbd_ | _tbd_ | _tbd_ | _tbd_ |
|
|
32
|
+
| R3 | _tbd_ | _tbd_ | _tbd_ | _tbd_ | _tbd_ |
|
|
33
|
+
|
|
34
|
+
## Aggregate
|
|
35
|
+
|
|
36
|
+
| metric | value | Gate-C threshold |
|
|
37
|
+
|---|---|---|
|
|
38
|
+
| Median TTFV | _tbd_ s | ≤ 60 s |
|
|
39
|
+
| Abandonment rate | _tbd_ % | ≤ 20 % |
|
|
40
|
+
| Clean completions (no rescue) | _tbd_ / _n_ | — |
|
|
41
|
+
|
|
42
|
+
## Top-3 friction points
|
|
43
|
+
|
|
44
|
+
> Ranked by how many recruits hit each. Each cites the redacted verbatim moment
|
|
45
|
+
> that named it (timestamp against the private recording).
|
|
46
|
+
|
|
47
|
+
1. _tbd_ — hit by _N_/_n_ recruits. Quote: _tbd_. Fix: _tbd_.
|
|
48
|
+
2. _tbd_
|
|
49
|
+
3. _tbd_
|
|
50
|
+
|
|
51
|
+
## Gate-C verdict
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
PASS ⇔ median TTFV ≤ 60 s AND abandonment rate ≤ 20 %.
|
|
55
|
+
FAIL → iterate on the wedge install before finalizing C2. Do not ship a failed wedge.
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
- **Verdict:** _tbd (PASS / FAIL)_ — filled once the aggregate is real.
|
|
59
|
+
- On **FAIL**, the top-3 friction points above are the exact iteration targets;
|
|
60
|
+
re-run the study after the fix. A failed gate is a finding, not a stopper.
|
|
61
|
+
|
|
62
|
+
## Provenance
|
|
63
|
+
|
|
64
|
+
- Protocol: [`agents/recruit-sessions/_install-friction-runbook.md`](../agents/recruit-sessions/_install-friction-runbook.md).
|
|
65
|
+
- Consent + redaction: [`agents/recruit-sessions/README.md`](../agents/recruit-sessions/README.md) § "Consent + redaction policy".
|
|
66
|
+
- Recordings + raw per-recruit notes: private (not in-repo), per the redaction policy.
|
package/docs/installation.md
CHANGED
|
@@ -681,7 +681,7 @@ Options:
|
|
|
681
681
|
```
|
|
682
682
|
|
|
683
683
|
The underlying stages keep their own CLI surfaces:
|
|
684
|
-
`bash scripts/install.sh --help` and `
|
|
684
|
+
`bash scripts/install.sh --help` and `npx @event4u/agent-config install --help`.
|
|
685
685
|
|
|
686
686
|
---
|
|
687
687
|
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# Optional media tooling (B8 recorded demos)
|
|
2
|
+
|
|
3
|
+
The package ships **no bundled binaries** and never installs system tools
|
|
4
|
+
silently (`missing-tool-handling`). A small set of tools is *optional* — needed
|
|
5
|
+
only for the B8 recorded proof-page demos, not for day-to-day maintenance.
|
|
6
|
+
Install them **on demand**, when the check tells you to.
|
|
7
|
+
|
|
8
|
+
## The tools
|
|
9
|
+
|
|
10
|
+
| Tool | What it does |
|
|
11
|
+
|---|---|
|
|
12
|
+
| `asciinema` | Records a terminal session to a compact `.cast` file (timestamped JSON of what was typed + printed). Replayable / embeddable — no backend, fits the no-runtime floor. |
|
|
13
|
+
| `agg` | Converts a `.cast` → animated GIF (asciinema's gif generator), for embedding a short run on the proof page. |
|
|
14
|
+
|
|
15
|
+
## When you need them
|
|
16
|
+
|
|
17
|
+
- Only for **B8** — recording a real wedge / skill run for the proof page.
|
|
18
|
+
- Once B8 lands, its falsifiability lock regenerates each recording **in CI from
|
|
19
|
+
a real run**, so the CI job (and any maintainer refreshing a demo) needs them.
|
|
20
|
+
- Nothing else in the suite uses terminal recording — this is not a daily tool.
|
|
21
|
+
|
|
22
|
+
## Check before recording (never a silent install)
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
task check-media-deps
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
It detects `asciinema` + `agg`, and if either is missing prints the exact
|
|
29
|
+
platform install command and exits non-zero — the same detect-and-instruct
|
|
30
|
+
shape as the docker check in `taskfiles/mcp.yml`. It never installs anything
|
|
31
|
+
for you.
|
|
32
|
+
|
|
33
|
+
## Install (only when the check asks)
|
|
34
|
+
|
|
35
|
+
| Platform | Command |
|
|
36
|
+
|---|---|
|
|
37
|
+
| macOS | `brew install asciinema agg` |
|
|
38
|
+
| Linux | `pipx install asciinema` · `cargo install --locked agg` (or a release binary) |
|
|
39
|
+
| Other | see each tool's own install docs |
|
|
40
|
+
|
|
41
|
+
## Why not auto-install with the maintainer package
|
|
42
|
+
|
|
43
|
+
Three reasons the base setup does **not** pull these in:
|
|
44
|
+
|
|
45
|
+
1. **The suite's own floor** (`missing-tool-handling`) forbids silent system-binary installs — detect + prompt only.
|
|
46
|
+
2. **Cross-platform fragility + surface** — `asciinema` (brew / pipx) and `agg` (brew / cargo / release binary) install differently per OS; a config package that brings in system binaries on setup is invasive.
|
|
47
|
+
3. **YAGNI** — a single, gated feature does not justify a base-setup dependency.
|
|
48
|
+
|
|
49
|
+
The `check-media-deps` gate gives every maintainer the same on-demand path
|
|
50
|
+
without any of the above — which is exactly what "install on demand" means here.
|
package/docs/mcp-server.md
CHANGED
|
@@ -44,7 +44,7 @@ task mcp:setup # maintainer / dev repo
|
|
|
44
44
|
./agent-config mcp:setup # consumer projects (uses the package CLI wrapper)
|
|
45
45
|
```
|
|
46
46
|
|
|
47
|
-
Either form
|
|
47
|
+
Either form verifies that `tsx` + the server module are present and
|
|
48
48
|
prints the client config snippet. Run once per checkout.
|
|
49
49
|
|
|
50
50
|
If you do not have `task` or the CLI wrapper available:
|
|
@@ -60,8 +60,8 @@ task mcp:run # maintainer / dev repo
|
|
|
60
60
|
./agent-config mcp:run # consumer projects
|
|
61
61
|
```
|
|
62
62
|
|
|
63
|
-
Both forms launch
|
|
64
|
-
|
|
63
|
+
Both forms launch the TypeScript MCP server over stdio via `tsx`. Use these for
|
|
64
|
+
|
|
65
65
|
(Claude Desktop, Cursor, Zed, Continue) launch the server themselves via
|
|
66
66
|
the config snippets below.
|
|
67
67
|
|
|
@@ -76,8 +76,8 @@ or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
|
|
|
76
76
|
{
|
|
77
77
|
"mcpServers": {
|
|
78
78
|
"agent-config": {
|
|
79
|
-
"command": "/absolute/path/to/agent-config/.
|
|
80
|
-
"args": ["-
|
|
79
|
+
"command": "/absolute/path/to/agent-config/node_modules/.bin/tsx",
|
|
80
|
+
"args": ["/absolute/path/to/agent-config/src/scripts/mcp_server/__main__.ts"],
|
|
81
81
|
"cwd": "/absolute/path/to/agent-config"
|
|
82
82
|
}
|
|
83
83
|
}
|
|
@@ -95,8 +95,8 @@ appear under the connector dropdown.
|
|
|
95
95
|
{
|
|
96
96
|
"mcpServers": {
|
|
97
97
|
"agent-config": {
|
|
98
|
-
"command": "/absolute/path/to/agent-config/.
|
|
99
|
-
"args": ["-
|
|
98
|
+
"command": "/absolute/path/to/agent-config/node_modules/.bin/tsx",
|
|
99
|
+
"args": ["/absolute/path/to/agent-config/src/scripts/mcp_server/__main__.ts"],
|
|
100
100
|
"cwd": "/absolute/path/to/agent-config"
|
|
101
101
|
}
|
|
102
102
|
}
|
|
@@ -112,8 +112,8 @@ appear under the connector dropdown.
|
|
|
112
112
|
"context_servers": {
|
|
113
113
|
"agent-config": {
|
|
114
114
|
"command": {
|
|
115
|
-
"path": "/absolute/path/to/agent-config/.
|
|
116
|
-
"args": ["-
|
|
115
|
+
"path": "/absolute/path/to/agent-config/node_modules/.bin/tsx",
|
|
116
|
+
"args": ["/absolute/path/to/agent-config/src/scripts/mcp_server/__main__.ts"]
|
|
117
117
|
},
|
|
118
118
|
"settings": {}
|
|
119
119
|
}
|
|
@@ -128,8 +128,8 @@ appear under the connector dropdown.
|
|
|
128
128
|
```yaml
|
|
129
129
|
mcpServers:
|
|
130
130
|
- name: agent-config
|
|
131
|
-
command: /absolute/path/to/agent-config/.
|
|
132
|
-
args: [
|
|
131
|
+
command: /absolute/path/to/agent-config/node_modules/.bin/tsx
|
|
132
|
+
args: [/absolute/path/to/agent-config/src/scripts/mcp_server/__main__.ts]
|
|
133
133
|
cwd: /absolute/path/to/agent-config
|
|
134
134
|
```
|
|
135
135
|
|
|
@@ -149,7 +149,6 @@ boots cleanly:
|
|
|
149
149
|
| Symptom | Fix |
|
|
150
150
|
|---|---|
|
|
151
151
|
| Client shows no prompts | Confirm the `cwd` points at the repo root (where `dist/agent-src/` lives), not at `scripts/`. |
|
|
152
|
-
| `ModuleNotFoundError: mcp` | Re-run `task mcp:setup`. The MCP runtime is isolated in `.venv-mcp/` — the project's base Python 3.9 deliberately does not see it. |
|
|
153
152
|
| Stale prompts after editing | Hot-reload triggers on mtime; touch the file or reissue `resources/list`. |
|
|
154
153
|
| Client refuses to start the server | Check the client's log for the full command. Most clients require **absolute** paths in `command` and `cwd`. |
|
|
155
154
|
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{"version":3,"term":{"cols":80,"rows":24},"timestamp":1783261474,"command":"bash internal/demo/proof-demo-commands.sh","env":{"SHELL":"/bin/zsh"}}
|
|
2
|
+
[0.007, "o", "\r\n\u001b[1;36m$ task check-claims # every public claim binds to resolvable evidence\u001b[0m\r\n"]
|
|
3
|
+
[0.360, "o", "\u001b[32m ✓ pass\u001b[0m\r\n\r\n"]
|
|
4
|
+
[0.000, "o", "\u001b[1;36m$ task check-refs # no broken internal references\u001b[0m\r\n"]
|
|
5
|
+
[0.445, "o", "\u001b[32m ✓ pass\u001b[0m\r\n"]
|
|
6
|
+
[0.000, "o", "\r\n\u001b[1;36m$ task check-skill-gaps # every known-limit cites a real witness test\u001b[0m\r\n"]
|
|
7
|
+
[0.399, "o", "\u001b[32m ✓ pass\u001b[0m\r\n"]
|
|
8
|
+
[0.000, "o", "\r\n\u001b[1;36m$ task check-comparison # every comparison-table pointer resolves\u001b[0m\r\n"]
|
|
9
|
+
[0.359, "o", "\u001b[32m ✓ pass\u001b[0m\r\n"]
|
|
10
|
+
[0.001, "o", "\r\n\u001b[1;36m$ task build-proof-check # the proof page is in sync with its sources\u001b[0m\r\n"]
|
|
11
|
+
[0.399, "o", "\u001b[32m ✓ pass\u001b[0m\r\n"]
|
|
12
|
+
[0.000, "o", "\r\n"]
|
|
13
|
+
[0.000, "o", "\u001b[1;32m✓ trust surface verified — reproduce any line on a fresh checkout.\u001b[0m\r\n"]
|
|
14
|
+
[0.000, "x", "0"]
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Consumer Template Consumption Model
|
|
2
2
|
|
|
3
|
-
> Phase 1 Step 11 of `agents/roadmaps/road-to-typescript-only-scripts.md`.
|
|
3
|
+
> Phase 1 Step 11 of `agents/roadmaps/archive/road-to-typescript-only-scripts.md`.
|
|
4
4
|
> Question: how does `dist/agent-src/templates/scripts/` content reach a consumer
|
|
5
5
|
> project — copied, referenced in place, or symlinked — and what does that mean
|
|
6
6
|
> for the Phase 9 TS migration of the consumer-shipped scripts?
|
|
@@ -52,7 +52,7 @@ to Python's exact-Fraction path.
|
|
|
52
52
|
A full byte-identical fix requires replicating Python's `statistics._ss`
|
|
53
53
|
exact-`Fraction` summation in TS (BigInt-rational arithmetic) across the
|
|
54
54
|
shared bench-stats helpers. That is tracked as a follow-up
|
|
55
|
-
(`agents/roadmaps/road-to-typescript-only-scripts.md`, bench-stats
|
|
55
|
+
(`agents/roadmaps/archive/road-to-typescript-only-scripts.md`, bench-stats
|
|
56
56
|
exact-fraction parity); it is non-trivial and out of scope for the sync that
|
|
57
57
|
surfaced it.
|
|
58
58
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Node Floor Audit
|
|
2
2
|
|
|
3
|
-
> Phase 1 Step 12 of `agents/roadmaps/road-to-typescript-only-scripts.md`.
|
|
3
|
+
> Phase 1 Step 12 of `agents/roadmaps/archive/road-to-typescript-only-scripts.md`.
|
|
4
4
|
> Decision: which Node.js floor the TS-only script suite supports, where it is
|
|
5
5
|
> enforced, and what CI tests.
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# YAML Round-Trip Spike — Verdict
|
|
2
2
|
|
|
3
|
-
> Phase 1 Step 7 of `agents/roadmaps/road-to-typescript-only-scripts.md`.
|
|
3
|
+
> Phase 1 Step 7 of `agents/roadmaps/archive/road-to-typescript-only-scripts.md`.
|
|
4
4
|
> Originally framed as a "ruamel.yaml → npm `yaml`" risk. The survey below
|
|
5
5
|
> shows that framing was wrong: there is **no ruamel usage anywhere** — the
|
|
6
6
|
> comment-preserving round-trip layer is `src/scripts/sync_yaml_rt.py`, a
|
package/docs/personas.md
CHANGED
|
@@ -5,14 +5,14 @@ skill — not sub-agents, not execution modes. Each persona shapes
|
|
|
5
5
|
*what* the agent looks for in a diff, plan, or artifact; the host
|
|
6
6
|
identity, tools, and workflow stay the same.
|
|
7
7
|
|
|
8
|
-
This page catalogs the **
|
|
9
|
-
`event4u/agent-config` (
|
|
8
|
+
This page catalogs the **29 active personas** shipped with
|
|
9
|
+
`event4u/agent-config` (5 core + 24 specialists), plus the 5
|
|
10
10
|
**advisor** personas in `personas/advisors/`. It also explains how
|
|
11
11
|
`personas:` (lens axis) interacts with `/mode` (role-mode axis).
|
|
12
12
|
Removed personas are deleted in-commit (no soak window) — see
|
|
13
13
|
[`persona-governance § Deprecation path`](../dist/agent-src/rules/persona-governance.md).
|
|
14
14
|
|
|
15
|
-
## Catalog — Core (always-loaded,
|
|
15
|
+
## Catalog — Core (always-loaded, 5)
|
|
16
16
|
|
|
17
17
|
| ID | Role | Wing | Owner | Lens summary |
|
|
18
18
|
|---|---|---|---|---|
|
|
@@ -24,13 +24,16 @@ Removed personas are deleted in-commit (no soak window) — see
|
|
|
24
24
|
|
|
25
25
|
Note: `product-owner` was reclassified to **specialist** at v2.0 — see below.
|
|
26
26
|
|
|
27
|
-
## Catalog — Specialists (opt-in,
|
|
27
|
+
## Catalog — Specialists (opt-in, 24 active)
|
|
28
28
|
|
|
29
29
|
| ID | Role | Wing | Owner | Lens summary |
|
|
30
30
|
|---|---|---|---|---|
|
|
31
31
|
| `qa` | QA | — | package | Test coverage and regression gates. |
|
|
32
32
|
| `backend-architect` | Backend Architect | — | package | Service-layer boundaries, transaction scope, contract changes. |
|
|
33
33
|
| `eloquent-tamer` | Eloquent Tamer | — | package | N+1, query shape, ORM idioms that melt the database. |
|
|
34
|
+
| `performance-engineer` | Performance Engineer (`performance`) | — | package | Latency, allocations, hot-path cost, complexity class at 100× load. |
|
|
35
|
+
| `data-integrity` | Data Integrity Reviewer (`data`) | — | package | Migration reversibility, lock behavior under live traffic, data-loss on backfill. |
|
|
36
|
+
| `production-validator` | Production Validator | — | package | Last gate before done — no mock/stub remains; validated against real systems (ADR-098). |
|
|
34
37
|
| `security-engineer` | Security Engineer | — | package | OWASP-shaped failure modes, secret leakage, trust boundaries. |
|
|
35
38
|
| `frontend-engineer` | Frontend Engineer | — | package | Component lifecycle, reactive state, hydration boundaries. |
|
|
36
39
|
| `product-owner` | Product Owner | — | package | Outcomes named, AC unfalsifiable, scope on record. |
|
|
@@ -59,8 +62,16 @@ Note: `product-owner` was reclassified to **specialist** at v2.0 — see below.
|
|
|
59
62
|
| GTM (Wing 3) | `cmo`, `growth-pm`, `customer-success-lead`, `revops` | ✅ (wing, not domain) |
|
|
60
63
|
| Ops / Money (Wing 4) | `engineering-manager`, `people-strategist`, `finance-partner`, `strategist` | ✅ (wing, not domain) |
|
|
61
64
|
| Backend | `backend-architect`, `eloquent-tamer` | ✅ 2/2 |
|
|
65
|
+
| `performance` | `performance-engineer` | ✅ 1/2 |
|
|
66
|
+
| `data` | `data-integrity` | ✅ 1/2 |
|
|
62
67
|
|
|
63
|
-
|
|
68
|
+
Cross-cutting quality lenses (`qa`, `tech-writer`, `revops-maintainer`,
|
|
69
|
+
`discovery-lead`, `production-validator`) are uncapped — they are not bound to a
|
|
70
|
+
single content domain.
|
|
71
|
+
|
|
72
|
+
Per-domain count is enforced by `src/scripts/lint_persona_governance.ts`
|
|
73
|
+
(wired into `task ci`), which scans `src/agent-src/personas/` (the source of
|
|
74
|
+
truth) and `src/skills/` + `src/rules/` for `personas:` citations.
|
|
64
75
|
|
|
65
76
|
## Advisors (`personas/advisors/`, 5)
|
|
66
77
|
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Positioning evidence & decision (B0)
|
|
2
|
+
|
|
3
|
+
> Market-readiness roadmap B0. The evidenced differentiators the positioning
|
|
4
|
+
> rests on, the H1 options that were weighed, and the decision. Every
|
|
5
|
+
> differentiator below is **shipped and machine-checked**, not aspirational —
|
|
6
|
+
> each names the artifact that backs it.
|
|
7
|
+
|
|
8
|
+
## The problem
|
|
9
|
+
|
|
10
|
+
External adoption is ≈0. The prior README H1 — *"Governed skills, rules & work
|
|
11
|
+
journeys for AI coding agents"* — was abstract and interchangeable: no single
|
|
12
|
+
uncopyable hook. This document fixes the one sentence that carries the
|
|
13
|
+
differentiator.
|
|
14
|
+
|
|
15
|
+
## Evidenced differentiators
|
|
16
|
+
|
|
17
|
+
1. **Machine-checked honest marketing (the Claims-Ledger).** Every public claim
|
|
18
|
+
that carries a `<!-- claim:ID -->` marker must bind to a resolvable evidence
|
|
19
|
+
pointer in [`CLAIMS.md`](CLAIMS.md), or CI fails. Unbacked claims are logged
|
|
20
|
+
as visible debt rather than hidden. Evidence:
|
|
21
|
+
[`src/scripts/check_claims.ts`](../src/scripts/check_claims.ts),
|
|
22
|
+
[`CLAIMS.md`](CLAIMS.md).
|
|
23
|
+
2. **A self-verifying proof page.** [`proof.md`](proof.md) is generated from the
|
|
24
|
+
ledger (claim → evidence table) plus the honest-null benchmark runs
|
|
25
|
+
(*including the nulls*) plus a "verify it yourself" command block a skeptic
|
|
26
|
+
runs on a fresh checkout. Drift-gated in CI. Evidence:
|
|
27
|
+
[`src/scripts/build_proof.ts`](../src/scripts/build_proof.ts),
|
|
28
|
+
[`proof.md`](proof.md).
|
|
29
|
+
3. **Published honest-nulls.** Measured null results ship rather than hide (e.g.
|
|
30
|
+
a recursive-verification wrapper measured for null lift; an orchestration
|
|
31
|
+
auto-flip held at a documented honest-null). Evidence:
|
|
32
|
+
[`benchmark.md`](benchmark.md).
|
|
33
|
+
4. **No-runtime, host-agnostic governance.** Rules compile into each tool's
|
|
34
|
+
native format at projection time; the same governance rides on 7+ hosts with
|
|
35
|
+
no daemon. Surgical uninstall (JSON-pointer + SHA-256, never a neighbour
|
|
36
|
+
tool's keys). Evidence:
|
|
37
|
+
[`contracts/no-runtime-boundary.md`](contracts/no-runtime-boundary.md),
|
|
38
|
+
[`contracts/install-layout.md`](contracts/install-layout.md).
|
|
39
|
+
5. **A 30-second wedge.** `production-validator` — a single self-contained Claude
|
|
40
|
+
Code subagent (one `curl` into `.claude/agents/`) that runs the last gate
|
|
41
|
+
before "done": no mock/stub on the shipped path, validated against real
|
|
42
|
+
systems. Evidence: [`wedge/production-validator/`](wedge/production-validator/).
|
|
43
|
+
|
|
44
|
+
## Competitive frame
|
|
45
|
+
|
|
46
|
+
The dominant competitor wins on reach behind a loud, **unbacked** headline
|
|
47
|
+
performance number (present in several files, no reproducible methodology). The
|
|
48
|
+
only defensible, uncopyable inverse is **reproducible honesty**: they cannot
|
|
49
|
+
adopt a Claims-Ledger + proof page without exposing their own unbacked numbers.
|
|
50
|
+
"Honesty" alone can read as merely defensive, so the wedge and the governed
|
|
51
|
+
depth carry the offensive substance.
|
|
52
|
+
|
|
53
|
+
## H1 options weighed
|
|
54
|
+
|
|
55
|
+
- **Option 1 — verifiability as frame.** *"Agent Config — every claim
|
|
56
|
+
machine-checked, including 'zero runtime'."* Subline: 261 skills, 93 rules,
|
|
57
|
+
7 hosts; run the proof page yourself; no daemon, no lock-in, no unverifiable
|
|
58
|
+
promises.
|
|
59
|
+
- **Option 2 — architecture first.** *"Governed AI agents with zero runtime —
|
|
60
|
+
and a proof page you verify in 30 seconds."*
|
|
61
|
+
- **Option 3 — host-agnostic.** *"Write your agent governance once — run it in
|
|
62
|
+
7 hosts, with a proof page that can't lie."*
|
|
63
|
+
|
|
64
|
+
## Decision
|
|
65
|
+
|
|
66
|
+
**Adopted: Option 1** (verifiability as frame).
|
|
67
|
+
|
|
68
|
+
Council (claude-sonnet-4-5 + gpt-4o, 2026-07-04) split only on headline vs.
|
|
69
|
+
subline placement, and converged on the substance: the stateless / host-agnostic
|
|
70
|
+
/ no-runtime architecture is the technical moat, and the Claims-Ledger + proof
|
|
71
|
+
page is the maximally-uncopyable trust bootstrap. The decisive argument: in a
|
|
72
|
+
low-trust market, "zero runtime" on its own is just another unverifiable
|
|
73
|
+
promise — making **verifiability the frame** and the architectural claims *what
|
|
74
|
+
you verify* is what makes "zero runtime" credible. The maintainer made the final
|
|
75
|
+
call per the B0 "human picks" gate.
|
|
76
|
+
|
|
77
|
+
**Biggest risk (tracked):** "machine-checked" can read as compliance-boring
|
|
78
|
+
rather than a competitive weapon — mitigated by framing it offensively
|
|
79
|
+
("built to be checked, in a market that runs on unbacked headlines"), not
|
|
80
|
+
defensively.
|
|
81
|
+
|
|
82
|
+
## Applied to
|
|
83
|
+
|
|
84
|
+
- README H1 + hero line (this repo).
|
|
85
|
+
- `distribution/launch-story-draft.md` headline placeholder (resolved).
|
|
86
|
+
- `distribution/awesome-list-submission.md` (already Option-1-aligned).
|