@event4u/agent-config 7.5.0 → 8.1.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 +317 -260
- 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 +18 -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/archive/CHANGELOG-pre-8.0.0.md +301 -0
- 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
|
@@ -21,77 +21,77 @@ install:
|
|
|
21
21
|
|
|
22
22
|
## When to use
|
|
23
23
|
|
|
24
|
-
-
|
|
25
|
-
-
|
|
26
|
-
- Multiple comms surfaces (in-app, email, social, docs) about to be written by different people from same release.
|
|
24
|
+
- A release is shipping that contains user-facing change and the team is about to send a feature-list email.
|
|
25
|
+
- A changelog draft reads like a commit log — engineering-honest, but unparseable for the user.
|
|
26
|
+
- Multiple comms surfaces (in-app, email, social, docs) are about to be written by different people from the same release.
|
|
27
27
|
|
|
28
28
|
Do NOT use for incident comms (see `incident-commander`),
|
|
29
|
-
deprecation announcements
|
|
30
|
-
discovery — this skill assumes change is **shipped**.
|
|
29
|
+
deprecation announcements that need legal sign-off, or pre-release
|
|
30
|
+
discovery — this skill assumes the change is **shipped**.
|
|
31
31
|
|
|
32
32
|
## Cognition cluster
|
|
33
33
|
|
|
34
|
-
- **Mental model 16 — Leading vs. lagging indicators.**
|
|
35
|
-
is lagging artifact; leading version
|
|
36
|
-
before user found change-log. See
|
|
34
|
+
- **Mental model 16 — Leading vs. lagging indicators.** A release
|
|
35
|
+
note is the lagging artifact; the leading version is the in-app
|
|
36
|
+
prompt that fired before the user found the change-log. See
|
|
37
37
|
[`docs/contracts/mental-models.md`](../../../docs/contracts/mental-models.md) § 16.
|
|
38
|
-
- **Value-not-feature heuristic.** Every paragraph passes *"so
|
|
39
|
-
user can ___"* completion. Failing rows go back for re-write.
|
|
38
|
+
- **Value-not-feature heuristic.** Every paragraph passes the *"so
|
|
39
|
+
the user can ___"* completion. Failing rows go back for re-write.
|
|
40
40
|
|
|
41
41
|
## Procedure
|
|
42
42
|
|
|
43
43
|
### Step 0: Ground the release
|
|
44
44
|
|
|
45
|
-
1. Read merged PR list / changelog block / release branch diff.
|
|
46
|
-
2. Read **product** and **team** slots of [context-spine](../../../docs/contracts/context-spine.md) (if consumer filled them) for bounded scope and cadence — surface choice depends on cadence (weekly: in-app + log; quarterly: email + post; major: all four).
|
|
47
|
-
3. Identify **single dominant change** the release ships.
|
|
45
|
+
1. Read the merged PR list / changelog block / release branch diff. The release is the **what**; comms is the **so what**. Conflate the two and you ship marketing.
|
|
46
|
+
2. Read the **product** and **team** slots of the [context-spine](../../../docs/contracts/context-spine.md) (if the consumer project has filled them) for bounded scope and release cadence — surface choice depends on cadence (weekly: in-app + log; quarterly: email + post; major: all four).
|
|
47
|
+
3. Identify the **single dominant change** the release ships. A release with three "headliners" reads as three half-announcements.
|
|
48
48
|
|
|
49
49
|
### Step 1: Audience-segment
|
|
50
50
|
|
|
51
|
-
1. Three audiences max: **active user**, **at-risk / lapsed user**, **prospect**. More
|
|
52
|
-
2. Per audience, write one sentence: *"After this release, you can …"* completing with user-side verb, not product-side feature.
|
|
53
|
-
3. If two audiences end up with same sentence, collapse — segmentation that does not change message
|
|
51
|
+
1. Three audiences max: **active user**, **at-risk / lapsed user**, **prospect**. More segments fragment the message; fewer hides the routing.
|
|
52
|
+
2. Per audience, write one sentence: *"After this release, you can …"* completing with a user-side verb, not a product-side feature.
|
|
53
|
+
3. If two audiences end up with the same sentence, collapse them — segmentation that does not change the message is theatre.
|
|
54
54
|
|
|
55
55
|
### Step 2: Map surfaces to audiences
|
|
56
56
|
|
|
57
57
|
1. **Changelog** (always) — engineers + power users; truthful, dense, link-heavy. Source of truth — every other surface points back here.
|
|
58
58
|
2. **In-app prompt** — active users; ≤ 1 sentence + 1 CTA; fires for users whose past behaviour predicts they'll touch the new path.
|
|
59
59
|
3. **Email** — at-risk / lapsed; one headline value, one CTA, one paragraph of context. No feature lists.
|
|
60
|
-
4. **Social / blog** — prospect; the **why**, not the **what** — frame against user job (cite [`customer-research`](../customer-research/SKILL.md) if switch-event surfaced).
|
|
60
|
+
4. **Social / blog** — prospect; the **why**, not the **what** — frame against the user job (cite [`customer-research`](../customer-research/SKILL.md) if a switch-event surfaced).
|
|
61
61
|
|
|
62
|
-
Cut surfaces aggressively.
|
|
62
|
+
Cut surfaces aggressively. A weekly release does not need a blog post.
|
|
63
63
|
|
|
64
64
|
### Step 3: Draft each surface from the changelog
|
|
65
65
|
|
|
66
|
-
1. Open changelog. Per surface, copy dominant change line, then **rewrite verb subject** from "we" to "you".
|
|
67
|
-
2. Strip qualifiers ("now", "even better", "lightning-fast").
|
|
68
|
-
3. Run *"so the user can ___"* completion on every paragraph. Failing paragraphs cut, not edited.
|
|
66
|
+
1. Open the changelog. Per surface, copy the dominant change line, then **rewrite the verb subject** from "we" to "you".
|
|
67
|
+
2. Strip qualifiers ("now", "even better", "lightning-fast"). They are noise, not signal.
|
|
68
|
+
3. Run the *"so the user can ___"* completion on every paragraph. Failing paragraphs are cut, not edited.
|
|
69
69
|
|
|
70
70
|
### Step 4: Truth-check
|
|
71
71
|
|
|
72
|
-
1. Every claim links back to changelog row or doc URL. Unsourced claim → cut.
|
|
73
|
-
2. No tense games — past for shipped, future for coming-soon (and only if date is committed). "Roadmap" lives outside this skill.
|
|
74
|
-
3. Names match product surface.
|
|
72
|
+
1. Every claim links back to a changelog row or a doc URL. Unsourced claim → cut.
|
|
73
|
+
2. No tense games — past for shipped, future for coming-soon (and only if the date is committed). "Roadmap" lives outside this skill.
|
|
74
|
+
3. Names match the product surface. If the in-app says "Reports" and the email says "Insights", the user fires the lookup tax.
|
|
75
75
|
|
|
76
76
|
### Step 5: Hand off
|
|
77
77
|
|
|
78
|
-
1. Produce four artifacts (see `## Output`).
|
|
79
|
-
2. Hand to whoever owns send. Do not embed scheduling or A/B test plans here — that is RevOps.
|
|
78
|
+
1. Produce the four artifacts (see `## Output`).
|
|
79
|
+
2. Hand to whoever owns the send. Do not embed scheduling or A/B test plans here — that is RevOps.
|
|
80
80
|
|
|
81
81
|
## Related Skills
|
|
82
82
|
|
|
83
83
|
**WHEN to use this**
|
|
84
84
|
|
|
85
|
-
-
|
|
86
|
-
- Multiple comms surfaces written by different people from same source.
|
|
87
|
-
-
|
|
85
|
+
- The change is **shipped** and needs to reach existing users.
|
|
86
|
+
- Multiple comms surfaces will be written by different people from the same source.
|
|
87
|
+
- The team is about to default to a feature-list email.
|
|
88
88
|
|
|
89
89
|
**WHEN NOT to use this**
|
|
90
90
|
|
|
91
|
-
- Production incident comms
|
|
92
|
-
- Pre-release discovery / validation
|
|
93
|
-
- Funnel-stage diagnostics post-release
|
|
94
|
-
- Ranking which release to comms next
|
|
91
|
+
- Production incident comms — route to [`incident-commander`](../incident-commander/SKILL.md).
|
|
92
|
+
- Pre-release discovery / validation — route to [`customer-research`](../customer-research/SKILL.md).
|
|
93
|
+
- Funnel-stage diagnostics post-release — route to [`funnel-analysis`](../funnel-analysis/SKILL.md).
|
|
94
|
+
- Ranking which release to comms next — route to [`rice-prioritization`](../rice-prioritization/SKILL.md).
|
|
95
95
|
|
|
96
96
|
## When the agent should load this
|
|
97
97
|
|
|
@@ -104,29 +104,30 @@ Cut surfaces aggressively. Weekly release does not need blog post.
|
|
|
104
104
|
## Output
|
|
105
105
|
|
|
106
106
|
1. **`release-narrative.md`** — single source of truth: dominant change, audiences (1–3), per-audience *"After this release, you can …"* sentence, links to source changelog rows.
|
|
107
|
-
2. **`changelog-entry.md`** — engineer-honest, dense, link-heavy block ready to paste into project's changelog.
|
|
108
|
-
3. **`comms-pack.md`** — per-surface drafts (in-app prompt, email, optional social/blog), each ≤ surface's hard cap, each pointing back to `changelog-entry.md`.
|
|
109
|
-
4. **`comms-checklist.md`** — pre-send checks: every claim sourced, names consistent across surfaces, audience match, "so the user can …" completion passing on every paragraph. Hand-off artifact for senior PO ([`product-owner`](../../personas/product-owner.md)).
|
|
107
|
+
2. **`changelog-entry.md`** — engineer-honest, dense, link-heavy block ready to paste into the project's changelog.
|
|
108
|
+
3. **`comms-pack.md`** — per-surface drafts (in-app prompt, email, optional social/blog), each ≤ the surface's hard cap, each pointing back to `changelog-entry.md`.
|
|
109
|
+
4. **`comms-checklist.md`** — pre-send checks: every claim sourced, names consistent across surfaces, audience match, "so the user can …" completion passing on every paragraph. Hand-off artifact for the senior PO ([`product-owner`](../../personas/product-owner.md); senior persona shipping in next plate).
|
|
110
110
|
|
|
111
111
|
## Gotcha
|
|
112
112
|
|
|
113
|
-
-
|
|
114
|
-
- Marketing puffery ("revolutionary", "delightful") fails source check; cut on sight.
|
|
115
|
-
- Two surfaces using different names for same thing
|
|
113
|
+
- The default failure mode is feature-list email — written to make engineering feel seen, not to help the user.
|
|
114
|
+
- Marketing puffery ("revolutionary", "delightful") fails the source check; cut on sight.
|
|
115
|
+
- Two surfaces using different names for the same thing is the highest-frequency support-ticket trigger after a release.
|
|
116
116
|
- Hidden coming-soon claims in past-tense paragraphs erode trust faster than missing the comms entirely.
|
|
117
117
|
|
|
118
118
|
## Do NOT
|
|
119
119
|
|
|
120
|
-
- Do NOT promote coming-soon item alongside shipped items — user cannot tell which is which and stops trusting next note.
|
|
121
|
-
- Do NOT let long-tail change steal the headline — dominant change earns headline, long tail goes in changelog.
|
|
122
|
-
- Do NOT ship surfaces without truth-check pass; unsourced claim survives in social longer than release does.
|
|
120
|
+
- Do NOT promote a coming-soon item alongside shipped items — the user cannot tell which is which and stops trusting the next note.
|
|
121
|
+
- Do NOT let a long-tail change steal the headline — the dominant change earns the headline, the long tail goes in the changelog.
|
|
122
|
+
- Do NOT ship surfaces without the truth-check pass; an unsourced claim survives in social longer than the release does.
|
|
123
|
+
- Do NOT paste more than a short excerpt from a linked source (commit message, PR body, issue thread) — `content-quoting-floor` caps verbatim quotes at 15 words, one per source; paraphrase the rest.
|
|
123
124
|
|
|
124
125
|
## Runnable example
|
|
125
126
|
|
|
126
127
|
Sprint 47 ships a one-click monthly export and three small bug fixes:
|
|
127
128
|
|
|
128
129
|
- Dominant change: one-click export. Bug fixes go in changelog only.
|
|
129
|
-
- Audiences: active user (will use it), at-risk (export friction was churn trigger per [`customer-research`](../customer-research/SKILL.md) evidence-log).
|
|
130
|
+
- Audiences: active user (will use it), at-risk (export friction was a churn trigger per [`customer-research`](../customer-research/SKILL.md) evidence-log).
|
|
130
131
|
- "After this release, you can pull a board-ready monthly report in one click." (active, at-risk — same sentence ⇒ collapse to one).
|
|
131
|
-
- Surfaces: changelog (full), in-app prompt to active users on next month-end, email to at-risk cohort with same sentence and one CTA. No social.
|
|
132
|
-
- Truth-check: claim links to export PR; "one click" is literal — verified against shipped UI.
|
|
132
|
+
- Surfaces: changelog (full), in-app prompt to active users on next month-end, email to at-risk cohort with the same sentence and one CTA. No social.
|
|
133
|
+
- Truth-check: claim links to the export PR; "one click" is literal — verified against the shipped UI.
|
|
@@ -212,6 +212,16 @@ unfamiliar codebases.
|
|
|
212
212
|
|
|
213
213
|
### Executing a roadmap
|
|
214
214
|
|
|
215
|
+
0. Read `execution.mode` from the roadmap frontmatter
|
|
216
|
+
(`autonomous` | `phase-checkpoints` | `interactive`; absent =
|
|
217
|
+
`interactive`). Under `/roadmap:process-*` the mode selects the
|
|
218
|
+
interaction pattern via the run-start execution contract — see
|
|
219
|
+
[`roadmap-execution-contract`](../../contexts/execution/roadmap-execution-contract.md).
|
|
220
|
+
The manual flow below describes `interactive`; under `autonomous`
|
|
221
|
+
/ `phase-checkpoints` step 4's per-step ask is replaced by the
|
|
222
|
+
accepted contract. **Mode never changes archival semantics** —
|
|
223
|
+
glyph counting, the closure decision table, and the Iron Law 3
|
|
224
|
+
deferred-resolution gate below apply identically in every mode.
|
|
215
225
|
1. Read the full roadmap.
|
|
216
226
|
2. Find the next unchecked step (`- [ ]`).
|
|
217
227
|
3. Summarize what needs to be done.
|
|
@@ -455,6 +465,17 @@ No global tooling required.
|
|
|
455
465
|
|
|
456
466
|
The dashboard is a **read-only snapshot**. Do not edit it by hand — regenerate it.
|
|
457
467
|
|
|
468
|
+
### Blockers on the dashboard
|
|
469
|
+
|
|
470
|
+
Overview table's `Blocker` column counts each roadmap's open
|
|
471
|
+
`## Blockers` entries (or legacy `> Blocked until` note), links to
|
|
472
|
+
per-roadmap breakdown, which lists every open blocker with owner,
|
|
473
|
+
blocked scope, full instructions. Authoring shape:
|
|
474
|
+
[`templates/roadmaps.md` rule 20](../../agent-src/templates/roadmaps.md);
|
|
475
|
+
authoring guidance: [`roadmap-writing § 5b`](../roadmap-writing/SKILL.md).
|
|
476
|
+
Clearing a blocker flips `Status: resolved`, regenerates dashboard in
|
|
477
|
+
same reply — same cadence as a checkbox flip.
|
|
478
|
+
|
|
458
479
|
## Rubric pass (optional, surfacing-only)
|
|
459
480
|
|
|
460
481
|
After producing roadmap, run [`judge-artifact-completeness`](../judge-artifact-completeness/SKILL.md) with rubric `roadmap-score` to surface missing dimensions (risk, tests, migration, maintainability). Score is a recommendation; never blocks shipping. Invoke only when user wants completeness check — not by default.
|
|
@@ -84,6 +84,25 @@ and council-pass notes capture the *why*; checkboxes capture the
|
|
|
84
84
|
[`roadmap-progress-sync`](../../rules/roadmap-progress-sync.md)
|
|
85
85
|
Iron Law #2.
|
|
86
86
|
|
|
87
|
+
### 4b. Declare the execution mode (frontmatter)
|
|
88
|
+
|
|
89
|
+
Every new roadmap declares how a later `/roadmap:process-*` run should
|
|
90
|
+
interact, via `execution.mode:` in frontmatter — `autonomous` (one
|
|
91
|
+
run-start execution-contract confirmation, then uninterrupted except
|
|
92
|
+
safety floors), `phase-checkpoints` (halt + compact status per phase
|
|
93
|
+
boundary), or `interactive` (absent-field default; omit field).
|
|
94
|
+
Semantics: [`templates/roadmaps.md` rule 19](../../templates/roadmaps.md);
|
|
95
|
+
run mechanics:
|
|
96
|
+
[`roadmap-execution-contract`](../../contexts/execution/roadmap-execution-contract.md).
|
|
97
|
+
Field is intent, never a permission grant — grants happen only at the
|
|
98
|
+
run-start contract. `/roadmap:create` asks this as one question; when
|
|
99
|
+
authoring a roadmap directly, ask it too (follow-ups pre-select the
|
|
100
|
+
parent's mode but always re-ask). **Authoring duty for `autonomous`:**
|
|
101
|
+
steps must be precise enough to clear `ask-when-uncertain` vague-
|
|
102
|
+
trigger patterns — vagueness resolved at authoring time, not mid-run;
|
|
103
|
+
pre-existing `[~]` items in an `autonomous` roadmap draw a lint
|
|
104
|
+
warning (they guarantee the archival gate fires later).
|
|
105
|
+
|
|
87
106
|
### 5. Exit & rollback per phase
|
|
88
107
|
|
|
89
108
|
Each phase declares **exit criteria** (decidable signals that the
|
|
@@ -91,6 +110,17 @@ phase is done) and **rollback** (what to revert if the phase fails).
|
|
|
91
110
|
A phase without exit criteria is open-ended; a phase without
|
|
92
111
|
rollback assumes success.
|
|
93
112
|
|
|
113
|
+
### 5b. Blockers are structured, not free prose
|
|
114
|
+
|
|
115
|
+
Gate only user or maintainer can clear — decision, external
|
|
116
|
+
dependency, evidence threshold, kernel-budget soak window — records
|
|
117
|
+
as `## Blockers` entry (`### blocker: <id>` with `Status` / `Owner` /
|
|
118
|
+
`Blocks` / `What to do` / `Resolved when`), never a stray "blocked on
|
|
119
|
+
X" sentence. Dashboard generator parses these into overview's
|
|
120
|
+
`Blocker` column and per-roadmap breakdown. Full shape:
|
|
121
|
+
[`templates/roadmaps.md` rule 20](../../agent-src/templates/roadmaps.md).
|
|
122
|
+
Omit section entirely when roadmap has no such gate.
|
|
123
|
+
|
|
94
124
|
### 6. Step-marker semantics — pick `[~]` (defer) vs `[-]` (cancel) honestly
|
|
95
125
|
|
|
96
126
|
Difference carries load when authoring (and especially when rewriting
|
|
@@ -166,7 +196,7 @@ capabilities into the suite:
|
|
|
166
196
|
|
|
167
197
|
Ordinary internally-originated roadmap → **skip this section**; §§ 0–7
|
|
168
198
|
are the whole job. Don't bolt a Provenance block or gap-table onto a
|
|
169
|
-
plan needing neither (template rule
|
|
199
|
+
plan needing neither (template rule 19).
|
|
170
200
|
|
|
171
201
|
When it fires, add four moves to §§ 0–7:
|
|
172
202
|
|
|
@@ -282,7 +312,7 @@ to every roadmap you author.
|
|
|
282
312
|
skill dump, not integration.
|
|
283
313
|
* Add a `## Provenance` block (or gap-table) to an **internally
|
|
284
314
|
originated** roadmap — § 8 is conditional; an empty Provenance section
|
|
285
|
-
is noise (template rule
|
|
315
|
+
is noise (template rule 19).
|
|
286
316
|
* Name the raw competitor / tool in a tracked roadmap, or paste a raw
|
|
287
317
|
source link — anonymize + `ENC1:`-encrypt
|
|
288
318
|
([`source-confidentiality`](../../rules/source-confidentiality.md)).
|
|
@@ -1,18 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: root-cause-frameworks
|
|
3
3
|
description: "Use when tracing the root cause of a resolved incident or recurring bug — 5-whys chain, fishbone categorisation, contributing-factors split — even if the user says 'why does this keep breaking?'."
|
|
4
|
-
source: package
|
|
5
4
|
domain: quality
|
|
6
5
|
model_tier: high
|
|
7
6
|
workspaces:
|
|
8
7
|
- engineering
|
|
9
8
|
packs:
|
|
10
9
|
- analysis-workbench
|
|
11
|
-
lifecycle: active
|
|
12
10
|
trust:
|
|
13
11
|
level: professional
|
|
14
12
|
confidence: medium
|
|
15
|
-
human_review_required: false
|
|
16
13
|
install:
|
|
17
14
|
default: false
|
|
18
15
|
removable: true
|
|
@@ -116,6 +116,10 @@ After creation:
|
|
|
116
116
|
2. Copy to `.augment/`
|
|
117
117
|
3. Mark hash: `./scripts-run src/scripts/condense --mark-done "{relative_path}"`
|
|
118
118
|
4. Regenerate tools: `./scripts-run src/scripts/condense --generate-tools`
|
|
119
|
+
5. **If from a knowledge page** (`agents/knowledge/procedures/skill-candidates.md`
|
|
120
|
+
or any `agents/knowledge/` page) — degrade the source to a pointer;
|
|
121
|
+
promotion isn't complete otherwise (double-maintenance risk):
|
|
122
|
+
`./scripts-run src/scripts/degrade_to_pointer --source "<knowledge-path>[#<anchor>]" --artifact "{relative_path}" --date "<YYYY-MM-DD>"`
|
|
119
123
|
|
|
120
124
|
### Step 5: Decide scope
|
|
121
125
|
|
|
@@ -38,9 +38,9 @@ discover the real source → Evidence Report (Verified / Assumed / Gaps) →
|
|
|
38
38
|
Scaffold the report cheaply so it never gets skipped:
|
|
39
39
|
|
|
40
40
|
```bash
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
41
|
+
./scripts-run src/scripts/evidence_report git-state # fail-fast: abort if a rebase/merge/cherry-pick is in progress
|
|
42
|
+
./scripts-run src/scripts/evidence_report init --task "<task>" # writes the gitignored session report
|
|
43
|
+
./scripts-run src/scripts/evidence_report add --bucket verified --claim "users.email is unique" --source "db/schema/users.sql:23"
|
|
44
44
|
```
|
|
45
45
|
|
|
46
46
|
**Provenance on every item** (`observed_at` / `source` / `version`). Within a
|
|
@@ -165,6 +165,25 @@ signal, never silently commit); trust and commit are always human-gated. Full mo
|
|
|
165
165
|
the three classes + memory tiers:
|
|
166
166
|
[`project-intelligence`](../../agent-src/contexts/execution/project-intelligence.md).
|
|
167
167
|
|
|
168
|
+
## Knowledge capture (`api_shape_learned` / `convention_detected` events)
|
|
169
|
+
|
|
170
|
+
A confirmed API/GraphQL shape (§B) or an observed coding convention with
|
|
171
|
+
≥ 2 supporting locations is worth persisting for the team, distinct
|
|
172
|
+
from the per-session Evidence Report above. Append to the knowledge
|
|
173
|
+
intake — never write a tracked page mid-task:
|
|
174
|
+
|
|
175
|
+
```bash
|
|
176
|
+
./scripts-run src/scripts/emit_knowledge_event --type api_shape_learned \
|
|
177
|
+
--endpoint "<path>" --method "<verb>" --request-schema '<json>' --response-schema '<json>'
|
|
178
|
+
|
|
179
|
+
./scripts-run src/scripts/emit_knowledge_event --type convention_detected \
|
|
180
|
+
--pattern "<pattern>" --evidence "file:line" --sample-size <N> --scope project
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
`/team-knowledge consolidate` turns accumulated events into
|
|
184
|
+
`agents/knowledge/concepts/` pages as a reviewed batch — see
|
|
185
|
+
[`knowledge-pages`](../../templates/contexts/knowledge-pages.md).
|
|
186
|
+
|
|
168
187
|
## Gotchas
|
|
169
188
|
|
|
170
189
|
- A card's positive structure is **never** "Verified" on the card alone — it is
|
|
@@ -307,22 +307,41 @@ prefer the cheaper one (`do-and-judge` < `do-and-judge-two-stage` <
|
|
|
307
307
|
|
|
308
308
|
### 4. Dispatch
|
|
309
309
|
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
* `do-
|
|
314
|
-
* `judge`
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
`do-competitively
|
|
318
|
-
|
|
319
|
-
|
|
310
|
+
Use the matching dispatch prompt and orchestrate inline via this skill.
|
|
311
|
+
Describe each dispatch step explicitly in chat so the user can follow it.
|
|
312
|
+
|
|
313
|
+
* `do-and-judge` → [`prompts/do-and-judge.md`](prompts/do-and-judge.md)
|
|
314
|
+
* `do-and-judge-two-stage` → [`prompts/do-and-judge-two-stage.md`](prompts/do-and-judge-two-stage.md)
|
|
315
|
+
* `do-in-steps` → [`prompts/do-in-steps.md`](prompts/do-in-steps.md)
|
|
316
|
+
* `do-in-parallel` → [`prompts/do-in-parallel.md`](prompts/do-in-parallel.md)
|
|
317
|
+
* `do-competitively` → [`prompts/do-competitively.md`](prompts/do-competitively.md)
|
|
318
|
+
* `judge-with-debate` → [`prompts/judge-with-debate.md`](prompts/judge-with-debate.md)
|
|
319
|
+
* `do-in-worktrees` → [`prompts/do-in-worktrees.md`](prompts/do-in-worktrees.md)
|
|
320
|
+
* Standalone judge → judge prompt in [`prompts/do-and-judge.md`](prompts/do-and-judge.md)
|
|
320
321
|
|
|
321
322
|
### 5. Report
|
|
322
323
|
|
|
323
324
|
Follow the output format below. Never merge a diff without reporting
|
|
324
325
|
the judge verdict.
|
|
325
326
|
|
|
327
|
+
### 6. Emit telemetry
|
|
328
|
+
|
|
329
|
+
After every auto-dispatched run, write one telemetry line to
|
|
330
|
+
`agents/runtime/state/audit/YYYY-MM.jsonl` (current UTC month — use
|
|
331
|
+
`new Date().toISOString().slice(0, 7)` for the filename). Standard
|
|
332
|
+
audit-log-v1 object with `input_kind: "orchestration"` and an
|
|
333
|
+
`orchestration` sub-object per
|
|
334
|
+
[`orchestration-telemetry.md`](../../agent-src/contexts/execution/orchestration-telemetry.md).
|
|
335
|
+
|
|
336
|
+
Minimal emit (fill what is observable; `token_delta_provenance: "estimated"` if
|
|
337
|
+
host usage metadata is unavailable):
|
|
338
|
+
|
|
339
|
+
```json
|
|
340
|
+
{"schema_version":1,"id":"<ulid>","ts":"<iso>","work_id":"<work_id>","phase":"implement","outcome":"success","confidence_band":"high","risk_class":"low","input_kind":"orchestration","type":"phase","orchestration":{"task_size_estimate":<int>,"spawn_count":<int>,"tiers":[...],"token_delta":<int>,"token_delta_provenance":"estimated","wall_clock_ms":<int>,"outcome":"DONE","verify_mode":"deterministic"}}
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
Skip emit when `subagents.enabled: false` or `spawn_count == 0` (in-session run).
|
|
344
|
+
|
|
326
345
|
## Gotcha
|
|
327
346
|
|
|
328
347
|
* **Identical model both sides** — same blind spots. The Iron Law
|
|
@@ -358,10 +377,10 @@ the judge verdict.
|
|
|
358
377
|
|
|
359
378
|
| Task | Skill / command |
|
|
360
379
|
|--------------------------------------|--------------------------------------|
|
|
361
|
-
| Configuration reference | [`subagent-configuration`](../../contexts/subagent-configuration.md) |
|
|
362
|
-
| Do-and-judge loop | [
|
|
363
|
-
| Stepwise plan with judge gates | [
|
|
364
|
-
| Standalone judge on an existing diff | [
|
|
380
|
+
| Configuration reference | [`subagent-configuration`](../../agent-src/contexts/execution/subagent-configuration.md) |
|
|
381
|
+
| Do-and-judge loop | Inline — see [`prompts/do-and-judge.md`](prompts/do-and-judge.md) |
|
|
382
|
+
| Stepwise plan with judge gates | Inline — see [`prompts/do-in-steps.md`](prompts/do-in-steps.md) |
|
|
383
|
+
| Standalone judge on an existing diff | Inline — see judge prompt in [`prompts/do-and-judge.md`](prompts/do-and-judge.md) |
|
|
365
384
|
| External / networked second opinion | [`ai-council`](../ai-council/SKILL.md) |
|
|
366
385
|
| Verifying completeness | [`verify-before-complete`](../verify-before-complete/SKILL.md) |
|
|
367
386
|
| What a subagent owns vs never owns | [`subagent-boundary`](../../../docs/contracts/subagent-boundary.md) |
|
|
@@ -22,6 +22,17 @@ Every prompt cites the status taxonomy in
|
|
|
22
22
|
ends with the **return-envelope** instruction so the subagent's reply
|
|
23
23
|
validates against `tests/test_subagent_status_schema.py`.
|
|
24
24
|
|
|
25
|
+
## Prompt-cache discipline
|
|
26
|
+
|
|
27
|
+
When dispatching sibling subagents (e.g. `do-in-parallel` with N independent
|
|
28
|
+
slices), **reuse a stable system-prompt prefix** across all siblings. Keep
|
|
29
|
+
task-invariant text (role declaration, constraints, status enum, return-envelope
|
|
30
|
+
instruction) in the prefix; put only the slice-specific `TASK:` and
|
|
31
|
+
`CONTEXT FILES:` in the variable section. This maximises host-side prompt-cache
|
|
32
|
+
hits (Anthropic `cache_control: ephemeral`) across the cohort — the prefix is
|
|
33
|
+
cached after the first sibling and served from cache for the rest, cutting
|
|
34
|
+
input-token cost proportionally to cohort size.
|
|
35
|
+
|
|
25
36
|
## Loading
|
|
26
37
|
|
|
27
38
|
`tests/test_subagent_prompt_loading.py` asserts that every mode named
|
|
@@ -60,3 +60,11 @@ already mitigated, DONE. Otherwise DONE_WITH_CONCERNS.
|
|
|
60
60
|
A step that returns BLOCKED stops the chain. The orchestrator does not
|
|
61
61
|
"jump ahead" or re-order — it surfaces the BLOCKED envelope to the user
|
|
62
62
|
and waits.
|
|
63
|
+
|
|
64
|
+
## Dependency gate
|
|
65
|
+
|
|
66
|
+
Every step after the first declares its parent (the preceding step). A
|
|
67
|
+
step MUST NOT dispatch before its parent's return passed the judge —
|
|
68
|
+
deterministic reference: `sliceDispatchAllowed()` in
|
|
69
|
+
`src/scripts/_lib/subagent_steering.ts`, contract in
|
|
70
|
+
[`subagent-steering § Ordered-slice dependency gate`](../../../contexts/execution/subagent-steering.md).
|
|
@@ -258,6 +258,35 @@ When reporting debug findings to the user:
|
|
|
258
258
|
5. **Fix** — the minimal change
|
|
259
259
|
6. **Regression test** — the test that catches this bug returning
|
|
260
260
|
|
|
261
|
+
## Knowledge capture (`mistake_made` event)
|
|
262
|
+
|
|
263
|
+
Root cause traces to a `agents/knowledge/` page followed while
|
|
264
|
+
implementing (documented convention wrong, API-shape page stale,
|
|
265
|
+
procedure incomplete) → append a `mistake_made` event to the
|
|
266
|
+
knowledge intake — never rewrite the page mid-task (see
|
|
267
|
+
[`knowledge-pages`](../../templates/contexts/knowledge-pages.md)):
|
|
268
|
+
|
|
269
|
+
```bash
|
|
270
|
+
./scripts-run src/scripts/emit_knowledge_event \
|
|
271
|
+
--type mistake_made \
|
|
272
|
+
--error-category "<one or two words>" \
|
|
273
|
+
--context-source "<agents/knowledge/... path, or 'null' if no page was followed>" \
|
|
274
|
+
--correction "<what the fix actually was>" \
|
|
275
|
+
--recurrence-key "<stable slug for this class of mistake>"
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
Verify the append landed: check the command's exit code (0 =
|
|
279
|
+
appended), then `grep <recurrenceKey> agents/knowledge/intake/events-*.jsonl`
|
|
280
|
+
finds the new line.
|
|
281
|
+
|
|
282
|
+
**Live contradiction exception.** Followed page DEMONSTRABLY wrong
|
|
283
|
+
right now (observed ≠ documented, not a one-off) → hybrid immediate-fix
|
|
284
|
+
case instead — surface the correction, ask before continuing (see
|
|
285
|
+
[`knowledge-pages`](../../templates/contexts/knowledge-pages.md) §
|
|
286
|
+
Contested entries). Approved → isolated fix commit. Declined →
|
|
287
|
+
`./scripts-run src/scripts/append_contested` on that page, then still
|
|
288
|
+
emit the `context_stale` event above for the consolidation pass.
|
|
289
|
+
|
|
261
290
|
## Gotchas
|
|
262
291
|
|
|
263
292
|
* Reading half a stack trace and jumping to a fix — the actual cause is
|
|
@@ -16,8 +16,8 @@ packs:
|
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
> **Grounded corpus (Tier-1 consultation):** ground surface → threats →
|
|
19
|
-
> controls before enumerating from memory —
|
|
20
|
-
> <skills-root>/corpus-grounding/scripts/ground
|
|
19
|
+
> controls before enumerating from memory — `./scripts-run
|
|
20
|
+
> <skills-root>/corpus-grounding/scripts/ground ground --manifest
|
|
21
21
|
> <skills-root>/threat-modeling/data/manifest.json "<surface description>"`
|
|
22
22
|
> returns surface class, ATT&CK/CWE-cited threats, required controls, and
|
|
23
23
|
> negative tests, with confidence + evidence-gap. Propose grounded
|
|
@@ -54,7 +54,7 @@ degrades gracefully: with no brand layer, only stage 1 runs.
|
|
|
54
54
|
`fontSize`, `fontWeight`, `lineHeight`.
|
|
55
55
|
5. **Verify** — confirm both chosen fonts exist on Google Fonts (check the
|
|
56
56
|
`Google Fonts URL` column in the CSV); run
|
|
57
|
-
|
|
57
|
+
`./scripts-run <skills-root>/design-tokens/scripts/tokens validate --dir src/`
|
|
58
58
|
to confirm no hardcoded font-size or font-family values remain outside the
|
|
59
59
|
token file; exit code 0 is the evidence.
|
|
60
60
|
|
|
@@ -72,7 +72,7 @@ style, not the other way around.
|
|
|
72
72
|
evidence gap):
|
|
73
73
|
|
|
74
74
|
```bash
|
|
75
|
-
|
|
75
|
+
./scripts-run <skills-root>/corpus-grounding/scripts/ground search \
|
|
76
76
|
--manifest <skills-root>/brand/data/manifest.json \
|
|
77
77
|
"<archetype + sector>" --domain typography --json
|
|
78
78
|
```
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
model_tier: medium
|
|
3
3
|
name: verify-completion-evidence
|
|
4
4
|
description: "Use when claiming 'done', suggesting a commit, push, or PR — runs the evidence gate so completion claims come from fresh output in this message, not memory or earlier runs."
|
|
5
|
+
personas:
|
|
6
|
+
- production-validator
|
|
5
7
|
domain: quality
|
|
6
8
|
workspaces:
|
|
7
9
|
- engineering
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
---
|
|
2
|
+
model_tier: inherit
|
|
3
|
+
name: wireframe
|
|
4
|
+
description: "Explore a flow or layout with 3+ disposable lo-fi greyscale wireframes on a named axis, before any hi-fi work. Use when the user wants to sketch directions or explore structure."
|
|
5
|
+
domain: product
|
|
6
|
+
personas: []
|
|
7
|
+
workspaces:
|
|
8
|
+
- engineering
|
|
9
|
+
packs:
|
|
10
|
+
- frontend-design
|
|
11
|
+
trust:
|
|
12
|
+
level: professional
|
|
13
|
+
install:
|
|
14
|
+
removable: true
|
|
15
|
+
execution:
|
|
16
|
+
type: manual
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
# Wireframe
|
|
20
|
+
|
|
21
|
+
Produce low-fidelity wireframes or storyboards to explore a flow, layout, or
|
|
22
|
+
information hierarchy before committing to hi-fi design. Wireframes are
|
|
23
|
+
**disposable** — their value is the breadth of options and the decision they
|
|
24
|
+
produce, not the fidelity of any one artifact.
|
|
25
|
+
|
|
26
|
+
## When to use
|
|
27
|
+
|
|
28
|
+
- The user wants to "explore options", "sketch something out", "see a few
|
|
29
|
+
directions" for a screen, flow, navigation pattern, or hierarchy.
|
|
30
|
+
- The design problem is open enough that hi-fi work would be wasted — the
|
|
31
|
+
structure question is not yet settled.
|
|
32
|
+
|
|
33
|
+
**When NOT to use:** styled, production-viable alternatives on a settled
|
|
34
|
+
structure → [`design-variations`](../design-variations/SKILL.md) (hi-fi,
|
|
35
|
+
branded, recommendation-bearing). A single refined implementation →
|
|
36
|
+
[`fe-design`](../fe-design/SKILL.md) + stack executor.
|
|
37
|
+
|
|
38
|
+
## Procedure
|
|
39
|
+
|
|
40
|
+
1. **Confirm the goal.** What is explored (screen / multi-screen flow /
|
|
41
|
+
navigation / hierarchy / interaction model), the imagined user's goal,
|
|
42
|
+
constraints (mobile/desktop, non-negotiable elements), the count
|
|
43
|
+
(3 minimum, 5–6 ceiling), and the **axis of variation**. If the axis is
|
|
44
|
+
open, propose 2–3 (e.g. single-page form vs multi-step wizard vs
|
|
45
|
+
progressive disclosure) and ask which to explore.
|
|
46
|
+
2. **Hold the lo-fi conventions** so the output reads as wireframe, not as
|
|
47
|
+
broken hi-fi:
|
|
48
|
+
- greyscale only — black, white, 2–3 grays; no brand color;
|
|
49
|
+
- system sans-serif — no type personality yet;
|
|
50
|
+
- labeled boxes for content areas ("headline", "image", "feature card");
|
|
51
|
+
- striped placeholders with monospace size labels for imagery (the
|
|
52
|
+
honest-placeholder pattern in
|
|
53
|
+
[`fe-design § Craft details`](../fe-design/SKILL.md));
|
|
54
|
+
- short label-style skeleton copy ("Headline goes here / one sentence on
|
|
55
|
+
the value prop") — never Lorem ipsum (per `output-discipline`), never
|
|
56
|
+
final copy.
|
|
57
|
+
3. **Sketch ≥3 variations** on the named axis — layout (centered / split /
|
|
58
|
+
grid), information density, flow structure (single page / multi-step /
|
|
59
|
+
progressive disclosure), CTA placement, navigation pattern. Write each
|
|
60
|
+
variation's distinguishing structure down BEFORE sketching it — left
|
|
61
|
+
unspecified, variations converge on near-identical layouts. Order
|
|
62
|
+
by-the-book → off-distribution; at least one genuinely novel bet.
|
|
63
|
+
4. **Annotate** — 2–4 numbered callouts per variation naming what is
|
|
64
|
+
interesting and its trade-off ("fastest path, but heavy first
|
|
65
|
+
impression"), placed next to the variation, not in a separate doc.
|
|
66
|
+
5. **Capture the decision** after the user picks: chosen variation (or
|
|
67
|
+
hybrid), what attracted them, what they explicitly rejected, new
|
|
68
|
+
constraints surfaced. This capture is the brief for the hi-fi follow-up.
|
|
69
|
+
6. **Hand off** — [`design-variations`](../design-variations/SKILL.md) for
|
|
70
|
+
styled options on the chosen structure, or
|
|
71
|
+
[`design-intelligence`](../design-intelligence/SKILL.md) +
|
|
72
|
+
[`fe-design`](../fe-design/SKILL.md) for a single hi-fi direction. In an
|
|
73
|
+
existing codebase the hi-fi step still passes `existing-ui-audit` per the
|
|
74
|
+
`ui-audit-gate` rule.
|
|
75
|
+
|
|
76
|
+
## Output format
|
|
77
|
+
|
|
78
|
+
1. **One file** (HTML or annotated markdown/SVG canvas) with ≥3 greyscale
|
|
79
|
+
variations side-by-side — flows as small storyboards (3–5 screens each);
|
|
80
|
+
no brand color, no styled typography, no real imagery.
|
|
81
|
+
2. **Per-variation annotations** — 2–4 callouts naming the structural bet and
|
|
82
|
+
its trade-off, inline next to the variation.
|
|
83
|
+
3. **Decision-capture block** (after user pick) — chosen direction,
|
|
84
|
+
attractions, explicit rejections, new constraints; framed as the hi-fi
|
|
85
|
+
brief.
|
|
86
|
+
4. **No recommendation ranking** — wireframes surface trade-offs; the pick
|
|
87
|
+
belongs to the user (contrast: `design-variations` closes with a
|
|
88
|
+
recommendation).
|
|
89
|
+
|
|
90
|
+
## Do NOT
|
|
91
|
+
|
|
92
|
+
- Do NOT apply brand color, brand type, or real imagery — that pulls focus to
|
|
93
|
+
aesthetics before structure is settled.
|
|
94
|
+
- Do NOT polish — wireframes are disposable thinking artifacts.
|
|
95
|
+
- Do NOT write final copy or Lorem ipsum — label-style skeleton copy only.
|
|
96
|
+
- Do NOT let variations converge — write each variation's structure down
|
|
97
|
+
before sketching.
|
|
98
|
+
- Do NOT skip decision capture — an exploration round without a recorded
|
|
99
|
+
decision has to be re-litigated in the hi-fi round.
|
|
100
|
+
- Do NOT embed system internals (paths, skill/tool names) in the artifact —
|
|
101
|
+
Q13 in [`design-antipatterns.md`](../../../docs/guidelines/design-antipatterns.md).
|
|
102
|
+
|
|
103
|
+
## Gotcha
|
|
104
|
+
|
|
105
|
+
- This is the one context where rough, hand-drawn-feeling shapes (rectangles,
|
|
106
|
+
lines, simple icons) are acceptable — everything sits at the same low
|
|
107
|
+
fidelity, so nothing reads as a failed asset (the V4/imagery antipatterns
|
|
108
|
+
apply to hi-fi, not here).
|
|
109
|
+
- The wireframe file tends to get promoted into hi-fi by incremental edits —
|
|
110
|
+
don't. Start the hi-fi artifact fresh from the decision capture; the
|
|
111
|
+
wireframe's greyscale skeleton hard-codes non-decisions.
|
|
112
|
+
|
|
113
|
+
## See also
|
|
114
|
+
|
|
115
|
+
- [`design-variations`](../design-variations/SKILL.md) — hi-fi options on the chosen structure.
|
|
116
|
+
- [`design-intelligence`](../design-intelligence/SKILL.md) — grounded direction selection for the hi-fi follow-up.
|
|
117
|
+
- [`fe-design`](../fe-design/SKILL.md) — production heuristics + honest-placeholder pattern.
|
|
118
|
+
- [`existing-ui-audit`](../existing-ui-audit/SKILL.md) — mandatory pre-step once hi-fi work lands in a codebase.
|