@event4u/agent-config 9.9.0 → 9.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +212 -194
- package/README.md +13 -16
- package/agents/templates/.ai-council.yml.example +481 -0
- package/agents/templates/.ai-video.xml.example +247 -0
- package/dist/agent-src/commands/agent-status.md +12 -11
- package/dist/agent-src/commands/agents/user/accept.md +115 -30
- package/dist/agent-src/commands/agents/user/delete.md +147 -0
- package/dist/agent-src/commands/agents/user/review.md +65 -28
- package/dist/agent-src/commands/agents/user/show.md +82 -29
- package/dist/agent-src/commands/agents/user/update.md +2 -2
- package/dist/agent-src/commands/agents/user.md +16 -3
- package/dist/agent-src/commands/check-current-md.md +0 -10
- package/dist/agent-src/commands/condense.md +28 -97
- package/dist/agent-src/commands/cost/report.md +7 -0
- package/dist/agent-src/commands/fix/portability.md +0 -8
- package/dist/agent-src/commands/fix/refs.md +0 -8
- package/dist/agent-src/commands/humanize.md +2 -2
- package/dist/agent-src/commands/jira-ticket.md +1 -1
- package/dist/agent-src/commands/memory/load.md +11 -0
- package/dist/agent-src/commands/optimize/skills.md +1 -1
- package/dist/agent-src/commands/pr/create.md +4 -4
- package/dist/agent-src/commands/profile/show.md +3 -3
- package/dist/agent-src/commands/rule-compliance-audit.md +5 -4
- package/dist/agent-src/commands/security-audit-config.md +1 -1
- package/dist/agent-src/commands/sync/gitignore/fix.md +1 -1
- package/dist/agent-src/commands/tdd.md +21 -0
- package/dist/agent-src/commands/team/delegate.md +2 -2
- package/dist/agent-src/commands/team-knowledge/bootstrap.md +9 -8
- package/dist/agent-src/commands/team-knowledge/consolidate.md +8 -7
- package/dist/agent-src/commands/team.md +4 -1
- package/dist/agent-src/commands/upstream-contribute.md +0 -1
- package/dist/agent-src/contexts/authority/commit-mechanics.md +7 -0
- package/dist/agent-src/contexts/authority/destructive-mechanics.md +16 -0
- package/dist/agent-src/contexts/authority/scope-mechanics.md +61 -0
- package/dist/agent-src/contexts/communication/rules-auto/reply-close-mechanics.md +20 -18
- package/dist/agent-src/contexts/communication/rules-auto/skill-quality-mechanics.md +1 -1
- package/dist/agent-src/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md +1 -1
- package/dist/agent-src/contexts/communication/rules-auto/source-of-truth-mechanics.md +9 -10
- package/dist/agent-src/contexts/communication/rules-auto/think-before-action-mechanics.md +1 -1
- package/dist/agent-src/contexts/communication/rules-auto/user-interaction-mechanics.md +11 -0
- package/dist/agent-src/contexts/contracts/artifact-engagement-flow.md +26 -15
- package/dist/agent-src/contexts/contracts/command-suggestion-flow.md +3 -0
- package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +67 -37
- package/dist/agent-src/contexts/execution/auto-orchestration-activation.md +1 -1
- package/dist/agent-src/contexts/execution/autonomy-examples.md +1 -1
- package/dist/agent-src/contexts/execution/autonomy-mechanics.md +7 -6
- package/dist/agent-src/contexts/execution/evidence-discipline.md +92 -77
- package/dist/agent-src/contexts/execution/orchestration-benchmark-gate.md +22 -21
- package/dist/agent-src/contexts/execution/orchestration-telemetry.md +24 -0
- package/dist/agent-src/contexts/execution/project-intelligence.md +122 -103
- package/dist/agent-src/contexts/execution/roadmap-execution-contract.md +23 -21
- package/dist/agent-src/contexts/execution/subagent-response-contract.md +5 -5
- package/dist/agent-src/contexts/execution/subagent-routing.md +11 -0
- package/dist/agent-src/contexts/execution/subagent-spawn-contract.md +13 -13
- package/dist/agent-src/contexts/execution/subagent-steering.md +36 -34
- package/dist/agent-src/contexts/execution/toolchain-resolver.md +1 -1
- package/dist/agent-src/contexts/execution/user-memory-channels.md +189 -0
- package/dist/agent-src/contexts/execution/verification-mechanics.md +9 -0
- package/dist/agent-src/contexts/model-recommendations.md +3 -2
- package/dist/agent-src/contexts/subagent-configuration.md +3 -3
- package/dist/agent-src/ghostwriter/README.md +2 -2
- package/dist/agent-src/packs/README.md +1 -1
- package/dist/agent-src/personas/README.md +5 -5
- package/dist/agent-src/personas/_template-specialist/persona.md +3 -3
- package/dist/agent-src/personas/backend-architect.md +24 -23
- package/dist/agent-src/personas/eloquent-tamer.md +30 -30
- package/dist/agent-src/personas/frontend-engineer.md +30 -30
- package/dist/agent-src/personas/product-owner.md +41 -38
- package/dist/agent-src/personas/qa.md +13 -13
- package/dist/agent-src/personas/security-engineer.md +22 -22
- package/dist/agent-src/presets/README.md +3 -3
- package/dist/agent-src/profiles/README.md +3 -3
- package/dist/agent-src/rules/active-remediation.md +2 -2
- package/dist/agent-src/rules/artifact-engagement-recording.md +4 -4
- package/dist/agent-src/rules/ask-when-uncertain.md +0 -4
- package/dist/agent-src/rules/augment-edit-discipline.md +1 -1
- package/dist/agent-src/rules/broken-access-control.md +4 -4
- package/dist/agent-src/rules/code-comment-discipline.md +1 -1
- package/dist/agent-src/rules/code-provenance.md +2 -2
- package/dist/agent-src/rules/commit-policy.md +4 -9
- package/dist/agent-src/rules/communication-through-line.md +5 -5
- package/dist/agent-src/rules/decision-revisit-gate.md +1 -1
- package/dist/agent-src/rules/design-fidelity.md +1 -1
- package/dist/agent-src/rules/doc-screenshot-hygiene.md +1 -1
- package/dist/agent-src/rules/domain-adoption-policy.md +1 -1
- package/dist/agent-src/rules/domain-safety-pii.md +1 -1
- package/dist/agent-src/rules/external-code-graph-interop.md +1 -1
- package/dist/agent-src/rules/fast-path-marker-visibility.md +43 -7
- package/dist/agent-src/rules/finance-safety-floor.md +1 -1
- package/dist/agent-src/rules/framework-neutrality-in-generic-skills.md +3 -3
- package/dist/agent-src/rules/history-discipline.md +1 -1
- package/dist/agent-src/rules/legal-safety-floor.md +1 -1
- package/dist/agent-src/rules/lethal-trifecta-guard.md +5 -5
- package/dist/agent-src/rules/low-impact-corpus-privacy-floor.md +10 -8
- package/dist/agent-src/rules/media-governance-routing.md +13 -13
- package/dist/agent-src/rules/media-sync-ground-truth.md +29 -11
- package/dist/agent-src/rules/no-cheap-questions.md +7 -7
- package/dist/agent-src/rules/no-decorative-emojis-in-git-surfaces.md +29 -18
- package/dist/agent-src/rules/non-destructive-by-default.md +5 -23
- package/dist/agent-src/rules/onboarding-gate.md +14 -4
- package/dist/agent-src/rules/persona-governance.md +2 -2
- package/dist/agent-src/rules/prefer-enums-over-literals.md +9 -9
- package/dist/agent-src/rules/preservation-guard.md +10 -2
- package/dist/agent-src/rules/question-not-instruction.md +1 -1
- package/dist/agent-src/rules/roadmap-progress-sync.md +6 -6
- package/dist/agent-src/rules/rule-type-governance.md +1 -1
- package/dist/agent-src/rules/scale-discipline.md +1 -1
- package/dist/agent-src/rules/scope-control.md +1 -1
- package/dist/agent-src/rules/secret-vcs-guard.md +1 -1
- package/dist/agent-src/rules/security-sensitive-stop.md +17 -11
- package/dist/agent-src/rules/senior-engineering-discipline.md +17 -17
- package/dist/agent-src/rules/session-canary.md +1 -1
- package/dist/agent-src/rules/skill-quality.md +1 -1
- package/dist/agent-src/rules/source-confidentiality.md +21 -19
- package/dist/agent-src/rules/source-of-truth.md +6 -5
- package/dist/agent-src/rules/spreadsheet-source-quality.md +2 -2
- package/dist/agent-src/rules/strategy-safety-floor.md +1 -1
- package/dist/agent-src/rules/think-before-action.md +5 -5
- package/dist/agent-src/rules/token-budget-discipline.md +5 -3
- package/dist/agent-src/rules/token-efficiency.md +2 -2
- package/dist/agent-src/rules/untrusted-input-defense.md +4 -4
- package/dist/agent-src/rules/user-interaction.md +12 -0
- package/dist/agent-src/rules/verify-before-complete.md +4 -24
- package/dist/agent-src/skills/adversarial-review/SKILL.md +2 -2
- package/dist/agent-src/skills/agent-security-review/SKILL.md +52 -45
- package/dist/agent-src/skills/agents-md-thin-root/SKILL.md +2 -2
- package/dist/agent-src/skills/ai-code-blindspots/SKILL.md +20 -20
- package/dist/agent-src/skills/ai-council/SKILL.md +185 -128
- package/dist/agent-src/skills/analysis-skill-router/SKILL.md +3 -3
- package/dist/agent-src/skills/api-endpoint/SKILL.md +2 -2
- package/dist/agent-src/skills/artisan-commands/SKILL.md +2 -2
- package/dist/agent-src/skills/async-python-patterns/SKILL.md +8 -7
- package/dist/agent-src/skills/authz-review/SKILL.md +16 -15
- package/dist/agent-src/skills/aws-infrastructure/SKILL.md +5 -5
- package/dist/agent-src/skills/blade-ui/SKILL.md +1 -1
- package/dist/agent-src/skills/bug-analyzer/SKILL.md +30 -12
- package/dist/agent-src/skills/code-intelligence/SKILL.md +0 -1
- package/dist/agent-src/skills/code-intelligence/evals/triggers.json +52 -0
- package/dist/agent-src/skills/code-review/SKILL.md +6 -6
- package/dist/agent-src/skills/command-routing/SKILL.md +5 -4
- package/dist/agent-src/skills/composer-packages/SKILL.md +2 -2
- package/dist/agent-src/skills/condense-memory/SKILL.md +43 -41
- package/dist/agent-src/skills/context-document/SKILL.md +23 -21
- package/dist/agent-src/skills/copilot-config/SKILL.md +6 -1
- package/dist/agent-src/skills/decision-record/SKILL.md +20 -18
- package/dist/agent-src/skills/design-intelligence/SKILL.md +4 -4
- package/dist/agent-src/skills/design-review/SKILL.md +15 -14
- package/dist/agent-src/skills/design-system-capture/reference/design-system-json.md +28 -25
- package/dist/agent-src/skills/devcontainer/SKILL.md +2 -2
- package/dist/agent-src/skills/docker/SKILL.md +1 -1
- package/dist/agent-src/skills/docx-authoring/evals/triggers.json +52 -0
- package/dist/agent-src/skills/emit-tickets/SKILL.md +2 -2
- package/dist/agent-src/skills/error-handling-patterns/SKILL.md +1 -1
- package/dist/agent-src/skills/estimate-ticket/SKILL.md +2 -2
- package/dist/agent-src/skills/evaluate-llm-feature/SKILL.md +0 -1
- package/dist/agent-src/skills/evaluate-llm-feature/evals/triggers.json +52 -0
- package/dist/agent-src/skills/existing-ui-audit/SKILL.md +21 -7
- package/dist/agent-src/skills/fe-design/SKILL.md +10 -0
- package/dist/agent-src/skills/feature-planning/SKILL.md +2 -2
- package/dist/agent-src/skills/finishing-a-development-branch/SKILL.md +3 -3
- package/dist/agent-src/skills/flux/SKILL.md +1 -1
- package/dist/agent-src/skills/frontend-render-security/SKILL.md +13 -13
- package/dist/agent-src/skills/git-workflow/SKILL.md +33 -33
- package/dist/agent-src/skills/grafana/SKILL.md +5 -0
- package/dist/agent-src/skills/humanizer/SKILL.md +83 -66
- package/dist/agent-src/skills/humanizer/data/patterns.md +14 -14
- package/dist/agent-src/skills/humanizer/references/anti-aiisms.md +4 -4
- package/dist/agent-src/skills/judge-artifact-completeness/SKILL.md +82 -37
- package/dist/agent-src/skills/judge-bug-hunter/SKILL.md +17 -5
- package/dist/agent-src/skills/judge-injection-defense/SKILL.md +63 -25
- package/dist/agent-src/skills/judge-security-auditor/SKILL.md +2 -0
- package/dist/agent-src/skills/judge-synthesis/SKILL.md +72 -28
- package/dist/agent-src/skills/laravel-horizon/SKILL.md +5 -0
- package/dist/agent-src/skills/laravel-mail/SKILL.md +5 -4
- package/dist/agent-src/skills/laravel-middleware/SKILL.md +5 -4
- package/dist/agent-src/skills/laravel-notifications/SKILL.md +10 -9
- package/dist/agent-src/skills/laravel-pennant/SKILL.md +1 -1
- package/dist/agent-src/skills/laravel-pulse/SKILL.md +9 -8
- package/dist/agent-src/skills/laravel-reverb/SKILL.md +6 -5
- package/dist/agent-src/skills/laravel-scheduling/SKILL.md +6 -1
- package/dist/agent-src/skills/laravel-validation/SKILL.md +12 -0
- package/dist/agent-src/skills/launch-readiness/SKILL.md +1 -1
- package/dist/agent-src/skills/learning-to-rule-or-skill/SKILL.md +7 -7
- package/dist/agent-src/skills/learning-tutor/SKILL.md +44 -43
- package/dist/agent-src/skills/learning-tutor/evals/triggers.json +52 -0
- package/dist/agent-src/skills/license-compliance-audit/SKILL.md +7 -7
- package/dist/agent-src/skills/license-compliance-borrow-check/SKILL.md +3 -3
- package/dist/agent-src/skills/license-compliance-credits/SKILL.md +4 -4
- package/dist/agent-src/skills/llm-provider-knowledge/SKILL.md +0 -1
- package/dist/agent-src/skills/memory-consolidation/SKILL.md +69 -64
- package/dist/agent-src/skills/motion-choreographer/SKILL.md +6 -6
- package/dist/agent-src/skills/pdf-tools/evals/triggers.json +52 -0
- package/dist/agent-src/skills/performance-analysis/SKILL.md +7 -3
- package/dist/agent-src/skills/persona-improvement/SKILL.md +0 -2
- package/dist/agent-src/skills/persona-improvement/evals/triggers.json +52 -0
- package/dist/agent-src/skills/php-coder/SKILL.md +10 -0
- package/dist/agent-src/skills/prediction-pool-optimizer/SKILL.md +129 -120
- package/dist/agent-src/skills/prediction-pool-optimizer/reference/ev-fixtures.md +36 -35
- package/dist/agent-src/skills/prediction-pool-optimizer/reference/odds-and-bonus.md +45 -41
- package/dist/agent-src/skills/project-analysis-core/SKILL.md +4 -4
- package/dist/agent-src/skills/project-analysis-hypothesis-driven/SKILL.md +3 -3
- package/dist/agent-src/skills/project-analysis-react/SKILL.md +1 -1
- package/dist/agent-src/skills/project-analysis-symfony/SKILL.md +1 -1
- package/dist/agent-src/skills/project-analysis-zend-laminas/SKILL.md +2 -2
- package/dist/agent-src/skills/prompt-engineering-patterns/SKILL.md +1 -1
- package/dist/agent-src/skills/prompt-validator/SKILL.md +39 -39
- package/dist/agent-src/skills/quality-tools/SKILL.md +15 -15
- package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +55 -19
- package/dist/agent-src/skills/react-shadcn-ui/reference/registry.md +29 -27
- package/dist/agent-src/skills/readme-writing-package/SKILL.md +2 -2
- package/dist/agent-src/skills/reasoning-orchestrator/SKILL.md +25 -25
- package/dist/agent-src/skills/recursive-verification/SKILL.md +6 -5
- package/dist/agent-src/skills/refine-prompt/SKILL.md +1 -1
- package/dist/agent-src/skills/refine-ticket/SKILL.md +20 -2
- package/dist/agent-src/skills/repomix-packer/SKILL.md +1 -1
- package/dist/agent-src/skills/requesting-code-review/SKILL.md +2 -2
- package/dist/agent-src/skills/roadmap-management/SKILL.md +80 -66
- package/dist/agent-src/skills/roadmap-writing/SKILL.md +84 -77
- package/dist/agent-src/skills/rule-refactor/SKILL.md +1 -1
- package/dist/agent-src/skills/screenshot-hygiene/evals/triggers.json +52 -0
- package/dist/agent-src/skills/security-audit/SKILL.md +26 -9
- package/dist/agent-src/skills/security-maturity-assessment/SKILL.md +38 -16
- package/dist/agent-src/skills/skill-improvement-pipeline/SKILL.md +14 -11
- package/dist/agent-src/skills/skill-writing/SKILL.md +9 -8
- package/dist/agent-src/skills/song-to-script/SKILL.md +93 -85
- package/dist/agent-src/skills/sql-writing/SKILL.md +2 -2
- package/dist/agent-src/skills/stakeholder-tradeoff/SKILL.md +4 -3
- package/dist/agent-src/skills/standards-from-config/SKILL.md +61 -43
- package/dist/agent-src/skills/subagent-orchestration/SKILL.md +22 -8
- package/dist/agent-src/skills/subagent-orchestration/prompts/README.md +28 -2
- package/dist/agent-src/skills/supply-chain-intake/SKILL.md +13 -13
- package/dist/agent-src/skills/systematic-debugging/SKILL.md +22 -21
- package/dist/agent-src/skills/tailwind-engineer/SKILL.md +1 -1
- package/dist/agent-src/skills/technical-specification/SKILL.md +5 -0
- package/dist/agent-src/skills/terraform/SKILL.md +2 -2
- package/dist/agent-src/skills/terragrunt/SKILL.md +8 -8
- package/dist/agent-src/skills/testing-anti-patterns/process-anti-patterns.md +1 -1
- package/dist/agent-src/skills/threat-modeling/SKILL.md +19 -13
- package/dist/agent-src/skills/universal-project-analysis/SKILL.md +1 -1
- package/dist/agent-src/skills/upstream-contribute/SKILL.md +0 -1
- package/dist/agent-src/skills/using-git-worktrees/SKILL.md +9 -9
- package/dist/agent-src/skills/validate-feature-fit/SKILL.md +3 -1
- package/dist/agent-src/skills/verify-completion-evidence/SKILL.md +4 -6
- package/dist/agent-src/skills/verify-repair-loop/SKILL.md +67 -61
- package/dist/agent-src/skills/video-director/SKILL.md +7 -7
- package/dist/agent-src/skills/worktree-lifecycle/SKILL.md +3 -3
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/dist/agent-src/templates/contexts/knowledge-pages.md +47 -45
- package/dist/agent-src/templates/contexts/lesson-card.md +2 -2
- package/dist/agent-src/templates/contexts/tenant-boundaries.md +2 -2
- package/dist/agent-src/templates/contexts.md +1 -1
- package/dist/agent-src/templates/features.md +1 -1
- package/dist/agent-src/templates/roadmaps.md +125 -116
- package/dist/agent-src/templates/rule.md +2 -1
- package/dist/agent-src/templates/scripts/pr_risk_review.ts +0 -0
- package/dist/agent-src/templates/scripts/telemetry/aggregator.ts +0 -0
- package/dist/agent-src/templates/scripts/tier_usage_report.ts +2 -2
- package/dist/agent-src/templates/scripts/work_engine/directives/ui/apply.ts +30 -30
- package/dist/agent-src/templates/scripts/work_engine/directives/ui/design.ts +88 -33
- package/dist/agent-src/templates/scripts/work_engine/directives/ui/polish.ts +22 -2
- package/dist/agent-src/templates/scripts/work_engine/directives/ui/review.ts +21 -2
- package/dist/agent-src/templates/scripts/work_engine/directives/ui/stack_bundles.ts +179 -0
- package/dist/agent-src/templates/scripts/work_engine/stack/detect.ts +155 -4
- package/dist/agent-src/templates/scripts/work_engine/state.ts +21 -4
- package/dist/agent-src/user-types/README.md +8 -8
- package/dist/agent-src/user-types/galabau-field-crew.md +34 -33
- package/dist/agent-src/user-types/metalworking-shop.md +35 -34
- package/dist/agent-src/user-types/truck-driver.md +22 -20
- package/dist/cli/initRouting.js +74 -11
- package/dist/cli/initRouting.js.map +1 -1
- package/dist/cli/main.js +14 -3
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/python/workspace_roles.js +2 -2
- package/dist/cli/python/workspace_roles.js.map +1 -1
- package/dist/cli-delegate/chunk-4SV3XGFA.js +6910 -0
- package/dist/cli-delegate/chunk-736JCWLM.js +1104 -0
- package/dist/cli-delegate/chunk-7DSAMZFU.js +356 -0
- package/dist/cli-delegate/chunk-7HQ52DHU.js +74 -0
- package/dist/cli-delegate/chunk-BJGXZNPM.js +266 -0
- package/dist/cli-delegate/chunk-FTAISGDQ.js +117 -0
- package/dist/cli-delegate/chunk-GME3Q44L.js +82 -0
- package/dist/cli-delegate/chunk-GRRPEPRN.js +336 -0
- package/dist/cli-delegate/chunk-HJ6DAJHR.js +502 -0
- package/dist/cli-delegate/chunk-IR7P7JWA.js +872 -0
- package/dist/cli-delegate/chunk-J55WI3RR.js +47 -0
- package/dist/cli-delegate/chunk-MCJYCQPF.js +35 -0
- package/dist/cli-delegate/chunk-NDJLNC6Q.js +169 -0
- package/dist/cli-delegate/chunk-OMIVVCG2.js +26 -0
- package/dist/cli-delegate/chunk-OY53J6II.js +7336 -0
- package/dist/cli-delegate/chunk-RDGRHAAB.js +259 -0
- package/dist/cli-delegate/chunk-TFG57JJM.js +1969 -0
- package/dist/cli-delegate/chunk-XX6TOPD7.js +715 -0
- package/dist/cli-delegate/chunk-YMFO6FDN.js +10603 -0
- package/dist/cli-delegate/cmd_analyze_session.js +294 -0
- package/dist/cli-delegate/cmd_conformance.js +646 -0
- package/dist/cli-delegate/cmd_converge.js +326 -0
- package/dist/cli-delegate/cmd_doctor.js +144 -0
- package/dist/cli-delegate/cmd_explain.js +2508 -0
- package/dist/cli-delegate/cmd_export.js +296 -0
- package/dist/cli-delegate/cmd_fleet.js +332 -0
- package/dist/cli-delegate/cmd_memory_get.js +3878 -0
- package/dist/cli-delegate/cmd_migrate.js +11 -0
- package/dist/cli-delegate/cmd_preflight.js +270 -0
- package/dist/cli-delegate/cmd_prune.js +444 -0
- package/dist/cli-delegate/cmd_refresh.js +28 -0
- package/dist/cli-delegate/cmd_settings_check.js +574 -0
- package/dist/cli-delegate/cmd_settings_migrate.js +223 -0
- package/dist/cli-delegate/cmd_sync.js +264 -0
- package/dist/cli-delegate/cmd_uninstall.js +656 -0
- package/dist/cli-delegate/cmd_update.js +425 -0
- package/dist/cli-delegate/cmd_upgrade.js +444 -0
- package/dist/cli-delegate/cmd_validate.js +305 -0
- package/dist/cli-delegate/cmd_versions.js +370 -0
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +100 -67
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +4 -4
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +16 -10
- package/dist/discovery/trust-report.md +2 -2
- package/dist/discovery/workspaces.json +7 -5
- package/dist/hooks/dispatch.js +186 -12
- package/dist/install/emit_host_rules_cli.js +2 -1
- package/dist/install/emit_host_rules_cli.js.map +1 -1
- package/dist/install/install.mjs +418 -378
- package/dist/install/rule_scope.js +5 -1
- package/dist/install/rule_scope.js.map +1 -1
- package/dist/install/toolDetection.js +40 -12
- package/dist/install/toolDetection.js.map +1 -1
- package/dist/install/wizard-plan.js +2 -2
- package/dist/install/wizard-plan.js.map +1 -1
- package/dist/mcp/registry-manifest.json +3 -3
- package/dist/mcp/server.json +2 -2
- package/dist/mcp/server.mjs +2194 -1003
- package/dist/router.json +1 -1
- package/dist/scripts/_lib/compile_time_toggles.js +48 -0
- package/dist/scripts/_lib/compile_time_toggles.js.map +1 -0
- package/dist/scripts/condense.js +234 -217
- package/dist/scripts/condense.js.map +1 -1
- package/dist/server/schemas/settings.js +4 -0
- package/dist/server/schemas/settings.js.map +1 -1
- package/dist/shared/userMd/utils.js +30 -0
- package/dist/shared/userMd/utils.js.map +1 -1
- package/dist/ui/assets/index-BpSQt5vm.js.map +1 -1
- package/docs/guidelines/agent-infra/api-cost-levers.md +56 -5
- package/docs/guidelines/agent-infra/simplicity-and-goal-demos.md +93 -33
- package/package.json +4 -2
- package/src/agent-src/templates/scripts/pr_risk_review.ts +0 -0
- package/src/agent-src/templates/scripts/telemetry/aggregator.ts +0 -0
- package/src/agent-src/templates/scripts/tier_usage_report.ts +2 -2
- package/src/agent-src/templates/scripts/work_engine/directives/ui/apply.ts +30 -30
- package/src/agent-src/templates/scripts/work_engine/directives/ui/design.ts +88 -33
- package/src/agent-src/templates/scripts/work_engine/directives/ui/polish.ts +22 -2
- package/src/agent-src/templates/scripts/work_engine/directives/ui/review.ts +21 -2
- package/src/agent-src/templates/scripts/work_engine/directives/ui/stack_bundles.ts +179 -0
- package/src/agent-src/templates/scripts/work_engine/stack/detect.ts +155 -4
- package/src/agent-src/templates/scripts/work_engine/state.ts +21 -4
- package/src/config/agent-settings.template.yml +32 -2
- package/src/config/ci-local-parity.yml +142 -0
- package/src/config/discovery/packs.yml +7 -0
- package/src/config/evaluator-budgets.json +1 -1
- package/src/config/gate-coverage.yml +127 -0
- package/src/config/pack-size-budget.json +27 -0
- package/src/config/preamble-payload-budget.json +44 -0
- package/src/install/emit_host_rules_cli.ts +2 -1
- package/src/install/rule_scope.ts +5 -1
- package/src/install/toolDetection.ts +39 -8
- package/src/install/wizard-plan.ts +2 -2
- package/src/scripts/_cli/cmd_conformance.ts +2 -1
- package/src/scripts/_cli/cmd_converge.ts +2 -1
- package/src/scripts/_cli/cmd_doctor.ts +292 -15
- package/src/scripts/_cli/cmd_export.ts +2 -1
- package/src/scripts/_cli/cmd_fleet.ts +2 -1
- package/src/scripts/_cli/cmd_migrate.ts +2 -1
- package/src/scripts/_cli/cmd_preflight.ts +2 -1
- package/src/scripts/_cli/cmd_refresh.ts +2 -1
- package/src/scripts/_cli/cmd_update.ts +2 -1
- package/src/scripts/_cli/cmd_upgrade.ts +2 -1
- package/src/scripts/_cli/cmd_versions.ts +2 -1
- package/src/scripts/_cli/detection_report.ts +480 -0
- package/src/scripts/_dispatch.bash +52 -14
- package/src/scripts/_lib/agent_user_profile.ts +381 -0
- package/src/scripts/_lib/agents_overlay.ts +9 -0
- package/src/scripts/_lib/anchor_eval.ts +311 -0
- package/src/scripts/_lib/cc_transcript.ts +316 -0
- package/src/scripts/_lib/changelog_eras.ts +103 -9
- package/src/scripts/_lib/compile_time_toggles.ts +79 -0
- package/src/scripts/_lib/confusables.ts +101 -0
- package/src/scripts/_lib/duplicate_scope_census.ts +77 -0
- package/src/scripts/_lib/environment_detector.ts +441 -0
- package/src/scripts/_lib/managed_agents_folder.ts +181 -0
- package/src/scripts/_lib/package_root.ts +72 -0
- package/src/scripts/_lib/payload_hash_drift.ts +126 -0
- package/src/scripts/_lib/preservation_migration.ts +291 -0
- package/src/scripts/_lib/retrieval_sanitize.ts +166 -2
- package/src/scripts/_lib/scan_scope.ts +115 -0
- package/src/scripts/_lib/user_global_memory_audit.ts +187 -0
- package/src/scripts/_lib/user_global_observations.ts +830 -0
- package/src/scripts/_lib/user_global_revocations.ts +110 -0
- package/src/scripts/_lib/user_memory_gate_counters.ts +291 -0
- package/src/scripts/ai_council/blind_review.ts +0 -0
- package/src/scripts/ai_council/budget_guard.ts +90 -11
- package/src/scripts/ai_council/bundler.ts +2 -2
- package/src/scripts/ai_council/clients.ts +59 -3
- package/src/scripts/ai_council/config.ts +53 -7
- package/src/scripts/ai_council/modes.ts +68 -2
- package/src/scripts/ai_council/orchestrator.ts +54 -9
- package/src/scripts/ai_council/transport_resolver.ts +331 -0
- package/src/scripts/ai_team/team_dispatch.ts +17 -6
- package/src/scripts/anchor_eval_falsify.ts +198 -0
- package/src/scripts/anchor_scoring_run.ts +239 -0
- package/src/scripts/annotate_discovery.ts +1 -65
- package/src/scripts/bench_quality_run.ts +168 -4
- package/src/scripts/cache_realization_report.ts +782 -0
- package/src/scripts/check_artefact_count_messaging.ts +5 -1
- package/src/scripts/check_augment_description_cap.ts +15 -4
- package/src/scripts/check_bundle_path_leakage.ts +10 -4
- package/src/scripts/check_ci_local_parity.ts +317 -0
- package/src/scripts/check_condensation.ts +96 -191
- package/src/scripts/check_context_paths.ts +38 -9
- package/src/scripts/check_dependency_floors.ts +153 -0
- package/src/scripts/check_gate_coverage.ts +299 -0
- package/src/scripts/check_iron_law_prominence.ts +22 -1
- package/src/scripts/check_kernel_prefix_stability.ts +0 -0
- package/src/scripts/check_no_new_legacy_path.ts +16 -6
- package/src/scripts/check_no_roadmap_refs.ts +22 -9
- package/src/scripts/check_originality_freshness.ts +167 -0
- package/src/scripts/check_pack_size.ts +188 -0
- package/src/scripts/check_preamble_payload_budget.ts +130 -0
- package/src/scripts/check_proposal.ts +0 -0
- package/src/scripts/check_references.ts +0 -1
- package/src/scripts/check_safety_floor_untouched.ts +171 -24
- package/src/scripts/check_site_links.ts +62 -3
- package/src/scripts/ci_status.ts +0 -0
- package/src/scripts/cluster_near_miss_patterns.ts +0 -0
- package/src/scripts/code_graph/build.ts +0 -0
- package/src/scripts/command_suggester/types.ts +0 -0
- package/src/scripts/compile_router.ts +10 -14
- package/src/scripts/condense.sh +3 -4
- package/src/scripts/condense.ts +247 -228
- package/src/scripts/cost/track.mjs +168 -33
- package/src/scripts/cost_summary.ts +33 -1
- package/src/scripts/council_cli.ts +51 -5
- package/src/scripts/discovery_graph.ts +0 -0
- package/src/scripts/encoding_corpus.ts +500 -0
- package/src/scripts/encoding_corpus_report.ts +216 -0
- package/src/scripts/evaluator_umbrella.sh +34 -1
- package/src/scripts/generate_index.ts +19 -2
- package/src/scripts/install-hooks.sh +2 -2
- package/src/scripts/learning_sidecar.ts +0 -0
- package/src/scripts/lint_confusables.ts +10 -72
- package/src/scripts/lint_eval_fixture_citations.ts +113 -0
- package/src/scripts/lint_featured_skills.ts +0 -0
- package/src/scripts/lint_hidden_unicode.ts +208 -0
- package/src/scripts/lint_load_context.ts +17 -5
- package/src/scripts/lint_new_skill_gate.ts +9 -3
- package/src/scripts/lint_no_python_twin_rationale.ts +17 -2
- package/src/scripts/lint_originality.ts +1 -1
- package/src/scripts/lint_skill_originality.ts +1 -1
- package/src/scripts/lint_ticket_buildable.ts +1 -1
- package/src/scripts/lint_ui_stack_bundles.ts +170 -0
- package/src/scripts/mcp_server/tools.ts +4 -4
- package/src/scripts/measure_scope_dedup.ts +224 -0
- package/src/scripts/memory_lookup.ts +0 -0
- package/src/scripts/mine_session.ts +98 -0
- package/src/scripts/orchestration_payload_hash_drift.ts +145 -0
- package/src/scripts/preamble_byte_census.ts +574 -0
- package/src/scripts/probe_skill_registration.ts +2 -2
- package/src/scripts/redact_hook_capture.ts +13 -0
- package/src/scripts/release.ts +65 -10
- package/src/scripts/router_telemetry.ts +1 -1
- package/src/scripts/second_brain_retrieval.ts +14 -4
- package/src/scripts/skill_linter.ts +5 -0
- package/src/scripts/surface-tiers.yml +2 -0
- package/src/scripts/validate_pack_yaml.ts +0 -0
- package/src/server/schemas/settings.ts +8 -0
- package/src/shared/userMd/utils.ts +31 -0
- package/dist/agent-src/rules/telegraph-speak.md +0 -87
|
@@ -106,14 +106,14 @@ and council-pass notes capture the *why*; checkboxes capture the
|
|
|
106
106
|
Iron Law #2.
|
|
107
107
|
|
|
108
108
|
**Bind a `verify:` on behavior-changing steps.** A step that changes
|
|
109
|
-
behavior (a new guard, migration, wired endpoint, mechanism edit)
|
|
110
|
-
carry a narrow `verify:` command in an inline annotation —
|
|
111
|
-
`- [ ] Wire the guard <!-- verify: task test -- --filter=GuardTest -->`
|
|
112
|
-
so its `[x]` flip is machine-checkable, not just agent-asserted (template
|
|
109
|
+
behavior (a new guard, a migration, a wired endpoint, a mechanism edit)
|
|
110
|
+
SHOULD carry a narrow `verify:` command in an inline annotation —
|
|
111
|
+
`- [ ] Wire the guard <!-- verify: task test -- --filter=GuardTest -->`
|
|
112
|
+
— so its `[x]` flip is machine-checkable, not just agent-asserted (template
|
|
113
113
|
rule 23; enforced by the flip-guard). Bind it only where a single narrow
|
|
114
114
|
command (targeted test / grep / build of the touched surface) proves the
|
|
115
|
-
step; leave it off doc-only / prose steps
|
|
116
|
-
(`roadmap-ci-steps-policy`).
|
|
115
|
+
step; leave it off doc-only / prose steps and never make it the full CI
|
|
116
|
+
suite (`roadmap-ci-steps-policy`).
|
|
117
117
|
|
|
118
118
|
### 4b. Declare the execution mode (frontmatter)
|
|
119
119
|
|
|
@@ -121,22 +121,23 @@ Every new roadmap declares how a later `/roadmap:process-*` run should
|
|
|
121
121
|
interact, via `execution.mode:` in frontmatter — `autonomous` (one
|
|
122
122
|
run-start execution-contract confirmation, then uninterrupted except
|
|
123
123
|
safety floors), `phase-checkpoints` (halt + compact status per phase
|
|
124
|
-
boundary), or `interactive` (absent-field default; omit field).
|
|
125
|
-
Semantics: [`templates/roadmaps.md` rule
|
|
124
|
+
boundary), or `interactive` (absent-field default; omit the field).
|
|
125
|
+
Semantics: [`templates/roadmaps.md` rule 18](../../templates/roadmaps.md);
|
|
126
126
|
run mechanics:
|
|
127
127
|
[`roadmap-execution-contract`](../../contexts/execution/roadmap-execution-contract.md).
|
|
128
|
-
|
|
129
|
-
run-start contract. `/roadmap:create` asks this as one question;
|
|
130
|
-
authoring a roadmap directly, ask it too (follow-ups pre-select
|
|
131
|
-
parent's mode but always re-ask). **Author every roadmap to be
|
|
128
|
+
The field is intent, never a permission grant — grants happen only at
|
|
129
|
+
the run-start contract. `/roadmap:create` asks this as one question;
|
|
130
|
+
when authoring a roadmap directly, ask it too (follow-ups pre-select
|
|
131
|
+
the parent's mode but always re-ask). **Author every roadmap to be
|
|
132
132
|
autonomy-capable (§ 4c); recommend `autonomous`** when evidence,
|
|
133
133
|
rollback coverage, and risk profile support unattended execution —
|
|
134
|
-
mode remains the user's risk preference, not a property of the
|
|
135
|
-
document. **Authoring duty for `autonomous`:**
|
|
136
|
-
|
|
137
|
-
trigger patterns — vagueness resolved at
|
|
138
|
-
pre-existing `[~]` items in an
|
|
139
|
-
warning (they guarantee the archival
|
|
134
|
+
the mode remains the user's risk preference, not a property of the
|
|
135
|
+
document. **Authoring duty for `autonomous`:** steps must be precise
|
|
136
|
+
enough to clear the
|
|
137
|
+
`ask-when-uncertain` vague-trigger patterns — vagueness is resolved at
|
|
138
|
+
authoring time, not mid-run; pre-existing `[~]` items in an
|
|
139
|
+
`autonomous` roadmap draw a lint warning (they guarantee the archival
|
|
140
|
+
gate fires later).
|
|
140
141
|
|
|
141
142
|
### 4c. Autonomy-first — zero human gates by default
|
|
142
143
|
|
|
@@ -145,8 +146,8 @@ Canonical rule:
|
|
|
145
146
|
Default human-checkpoint count: **zero**. Every step is
|
|
146
147
|
agent-executable — `- [ ] User verifies X` steps and "Review /
|
|
147
148
|
Sign-off" phases are authoring bugs; replace each with an
|
|
148
|
-
agent-verifiable check (command, targeted test, grep). Never
|
|
149
|
-
run-time safety floors as steps.
|
|
149
|
+
agent-verifiable check (a command, a targeted test, a grep). Never
|
|
150
|
+
restate run-time safety floors as steps.
|
|
150
151
|
|
|
151
152
|
Gate-test before any checkpoint: *"Could the agent clear this with a
|
|
152
153
|
tool or command during the run?"* Yes → step, not gate. No →
|
|
@@ -155,8 +156,8 @@ structured `## Blockers` entry (§ 5b), distinguishing per rule 22:
|
|
|
155
156
|
authorization, billable spend, contested decision) vs **external
|
|
156
157
|
blocker** (agent cannot resolve but CAN probe status — CI run, package
|
|
157
158
|
release, upstream PR; `Resolved when:` carries the probe, owner is
|
|
158
|
-
not a human). Merge is never a completion requirement — may appear
|
|
159
|
-
a blocker only when later roadmap work depends on the merged state.
|
|
159
|
+
not a human). Merge is never a completion requirement — it may appear
|
|
160
|
+
as a blocker only when later roadmap work depends on the merged state.
|
|
160
161
|
`lint_roadmap_complexity` warns on human-gate patterns in every mode.
|
|
161
162
|
|
|
162
163
|
### 5. Exit & rollback per phase
|
|
@@ -169,48 +170,51 @@ file exists, test passes — never "user reviews" / "looks good" (§ 4c).
|
|
|
169
170
|
|
|
170
171
|
### 5b. Blockers are structured, not free prose
|
|
171
172
|
|
|
172
|
-
|
|
173
|
-
dependency, evidence threshold, kernel-budget soak
|
|
174
|
-
as `## Blockers` entry (`### blocker: <id>`
|
|
175
|
-
`Blocks` / `What to do` / `Resolved when`),
|
|
176
|
-
X" sentence.
|
|
177
|
-
`Blocker` column and per-roadmap
|
|
178
|
-
[`templates/roadmaps.md` rule 20](../../agent-src/templates/roadmaps.md).
|
|
179
|
-
Omit section entirely when roadmap has no such gate; run the
|
|
180
|
-
gate-test before adding one.
|
|
173
|
+
A gate only the user or a maintainer can clear — a decision, an
|
|
174
|
+
external dependency, an evidence threshold, a kernel-budget soak
|
|
175
|
+
window — is recorded as a `## Blockers` entry (`### blocker: <id>`
|
|
176
|
+
with `Status` / `Owner` / `Blocks` / `What to do` / `Resolved when`),
|
|
177
|
+
never a stray "blocked on X" sentence. The dashboard generator parses
|
|
178
|
+
these into the overview's `Blocker` column and the per-roadmap
|
|
179
|
+
breakdown. Full shape: [`templates/roadmaps.md` rule 20](../../agent-src/templates/roadmaps.md).
|
|
180
|
+
Omit the section entirely when the roadmap has no such gate; run the
|
|
181
|
+
§ 4c gate-test before adding one.
|
|
181
182
|
|
|
182
183
|
### 6. Step-marker semantics — pick `[~]` (defer) vs `[-]` (cancel) honestly
|
|
183
184
|
|
|
184
|
-
|
|
185
|
-
|
|
185
|
+
When authoring (and especially when rewriting a roadmap mid-flight),
|
|
186
|
+
the difference between the two non-`[x]`-non-`[ ]` markers carries
|
|
187
|
+
load:
|
|
186
188
|
|
|
187
189
|
| Glyph | Semantic | When to use |
|
|
188
190
|
|---|---|---|
|
|
189
|
-
| `[~]` | **deferred** — planned, will be done, just not in this roadmap | Scope-cut + clear intent to revisit. Triggers Iron Law 3 follow-up flow before archive — info preservation enforced. |
|
|
190
|
-
| `[-]` | **cancelled** — won't be done at all | Scope rejected, design changed, replaced by another roadmap.
|
|
191
|
+
| `[~]` | **deferred** — planned, will be done, just not in this roadmap | Scope-cut + clear intent to revisit. Triggers the Iron Law 3 follow-up flow before archive — info preservation is enforced. |
|
|
192
|
+
| `[-]` | **cancelled** — won't be done at all | Scope rejected, design changed, replaced by another roadmap. The decision is final; no follow-up implied. |
|
|
191
193
|
|
|
192
|
-
Optional inline annotations on same line:
|
|
194
|
+
Optional inline annotations live on the same line:
|
|
193
195
|
|
|
194
196
|
```markdown
|
|
195
|
-
- [~] Migrate bulk-import job to chunked dispatch. <!-- deferred: ops capacity in Q3 -->
|
|
197
|
+
- [~] Migrate the bulk-import job to chunked dispatch. <!-- deferred: ops capacity in Q3 -->
|
|
196
198
|
- [-] Wire SQS retry topic. <!-- cancelled: superseded by Lambda DLQ in road-to-event-bridge -->
|
|
197
199
|
```
|
|
198
200
|
|
|
199
|
-
|
|
200
|
-
[`roadmap-management`](../roadmap-management/SKILL.md)
|
|
201
|
-
Bare `[~]` / `[-]` allowed; annotated
|
|
201
|
+
The annotation is for the next human reader (and for the migration
|
|
202
|
+
procedure when [`roadmap-management`](../roadmap-management/SKILL.md)
|
|
203
|
+
spawns a follow-up). Bare `[~]` / `[-]` is allowed; annotated is
|
|
204
|
+
preferred.
|
|
202
205
|
|
|
203
206
|
### 7. Follow-up roadmaps spawn from deferred items — frontmatter shape
|
|
204
207
|
|
|
205
|
-
When parent roadmap closes with `[~]` items,
|
|
208
|
+
When a parent roadmap closes with `[~]` items, the
|
|
206
209
|
[`roadmap-management`](../roadmap-management/SKILL.md) skill spawns a
|
|
207
|
-
follow-up. Authors and reviewers must
|
|
210
|
+
follow-up. Authors and reviewers must know the shape so they can
|
|
211
|
+
recognise it:
|
|
208
212
|
|
|
209
213
|
```markdown
|
|
210
214
|
---
|
|
211
215
|
complexity: lightweight
|
|
212
216
|
status: draft # optional — draft hides from dashboard
|
|
213
|
-
parent_roadmap: <parent-slug> # back-link to archived source
|
|
217
|
+
parent_roadmap: <parent-slug> # back-link to the archived source
|
|
214
218
|
---
|
|
215
219
|
|
|
216
220
|
# Roadmap: Follow-up to <parent-title>
|
|
@@ -223,24 +227,25 @@ This roadmap collects items deferred from
|
|
|
223
227
|
[`agents/roadmaps/archive/<parent-slug>.md`](../archive/<parent-slug>.md).
|
|
224
228
|
{ … original phases preserved verbatim … }
|
|
225
229
|
|
|
226
|
-
<!-- For option 2 (ready + blocked), add as body note, NOT in frontmatter: -->
|
|
227
|
-
> Blocked until <condition>. Execution starts when condition clears.
|
|
230
|
+
<!-- For option 2 (ready + blocked), add this as a body note, NOT in frontmatter: -->
|
|
231
|
+
> Blocked until <condition>. Execution starts when the condition clears.
|
|
228
232
|
```
|
|
229
233
|
|
|
230
|
-
Two states author picks between (mirrors Iron Law 3
|
|
231
|
-
block in [`roadmap-progress-sync`](../../rules/roadmap-progress-sync.md)):
|
|
234
|
+
Two states the author picks between (mirrors the Iron Law 3
|
|
235
|
+
numbered-options block in [`roadmap-progress-sync`](../../rules/roadmap-progress-sync.md)):
|
|
232
236
|
|
|
233
|
-
- **`status: draft`** → hidden from `agents/roadmaps-progress.md`
|
|
234
|
-
flipped. Use for items user wants captured but not
|
|
235
|
-
active backlog yet.
|
|
236
|
-
- **`status: ready` (default; omit key)** plus body
|
|
237
|
-
note → visible in dashboard, execution
|
|
238
|
-
|
|
239
|
-
|
|
237
|
+
- **`status: draft`** → hidden from `agents/roadmaps-progress.md`
|
|
238
|
+
until flipped. Use for items the user wants captured but not
|
|
239
|
+
surfaced to the active backlog yet.
|
|
240
|
+
- **`status: ready` (default; omit the key)** plus body
|
|
241
|
+
`> Blocked until …` note → visible in the dashboard, execution
|
|
242
|
+
gated by the documented condition. The blocking is a body
|
|
243
|
+
convention, not enforced by the dashboard generator — readers
|
|
244
|
+
honor the note.
|
|
240
245
|
|
|
241
|
-
|
|
242
|
-
verbatim (with phase context).
|
|
243
|
-
originally wrote it.
|
|
246
|
+
The follow-up roadmap is **not** authored from scratch — the
|
|
247
|
+
deferred steps are copied verbatim (with their phase context). This
|
|
248
|
+
preserves the plan exactly as the author originally wrote it.
|
|
244
249
|
|
|
245
250
|
### 8. Source-derived & capability-adoption roadmaps (conditional)
|
|
246
251
|
|
|
@@ -297,14 +302,16 @@ to every roadmap you author.
|
|
|
297
302
|
5. Is content duplicated from another roadmap (supersession instead)?
|
|
298
303
|
6. Any human-gate steps or sign-off phases (§ 4c violation) —
|
|
299
304
|
agent-verifiable check or structured blocker instead?
|
|
300
|
-
7. *Source-derived/adoption only (§ 8):*
|
|
301
|
-
behind the scope
|
|
302
|
-
council convergence
|
|
303
|
-
originated → these must be **absent**,
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
305
|
+
7. *Source-derived/adoption only (§ 8):* is there a `KEEP`/`FOLD`/`CUT`
|
|
306
|
+
gap-table behind the scope, a `## Provenance` block with an `ENC1:`
|
|
307
|
+
link, inlined council convergence, and an anti-dump acceptance
|
|
308
|
+
criterion? (Internally-originated roadmap → these must be **absent**,
|
|
309
|
+
not empty.)
|
|
310
|
+
8. *Inbox-sourced only:* if the roadmap consumed an `agents/tmp/` file as
|
|
311
|
+
its input, is that file moved to `agents/tmp.old/<name>` in the SAME
|
|
312
|
+
reply, with the Source line pointing at the `tmp.old/` path? (Per
|
|
313
|
+
`agents-layout § User Inbox Workflow`. Move only the explicitly named
|
|
314
|
+
input file(s); never sweep the rest of the inbox.)
|
|
308
315
|
|
|
309
316
|
## Do NOT
|
|
310
317
|
|
|
@@ -328,7 +335,7 @@ to every roadmap you author.
|
|
|
328
335
|
`quality.local_auto_run: false` — blocked by
|
|
329
336
|
`task lint-roadmap-ci-steps` per
|
|
330
337
|
[`roadmap-ci-steps-policy`](../../rules/roadmap-ci-steps-policy.md).
|
|
331
|
-
Reword as narrow verifications, or mark with
|
|
338
|
+
Reword as narrow verifications, or mark the step with
|
|
332
339
|
`<!-- carve-out: new-gate-verification -->` when it verifies a NEW
|
|
333
340
|
gate this roadmap introduces.
|
|
334
341
|
* Use ALL-CAPS Iron-Law fenced blocks — those belong in
|
|
@@ -336,7 +343,7 @@ to every roadmap you author.
|
|
|
336
343
|
rules, not roadmaps.
|
|
337
344
|
* Adopt items from an external source / harvest **without a
|
|
338
345
|
`KEEP`/`FOLD`/`CUT` gap-table** against the existing surface (§ 8) —
|
|
339
|
-
skill dump, not integration.
|
|
346
|
+
that is a skill dump, not integration.
|
|
340
347
|
* Add a `## Provenance` block (or gap-table) to an **internally
|
|
341
348
|
originated** roadmap — § 8 is conditional; an empty Provenance section
|
|
342
349
|
is noise (template rule 19).
|
|
@@ -352,8 +359,8 @@ to every roadmap you author.
|
|
|
352
359
|
- **Vague goal sentence** — "Improve roadmap quality" forces every
|
|
353
360
|
reader to re-derive intent and blocks decidable acceptance.
|
|
354
361
|
- **Human-gate steps sprinkled through phases** — each one interrupts
|
|
355
|
-
an autonomous run
|
|
356
|
-
close. § 4c: agent-verifiable check or structured blocker.
|
|
362
|
+
an autonomous run, and the dashboard counts open work the agent can
|
|
363
|
+
never close. § 4c: agent-verifiable check or structured blocker.
|
|
357
364
|
- **Restating template rules** — pasting structural rules into the
|
|
358
365
|
roadmap body creates two sources of truth that drift over months.
|
|
359
366
|
- **Version numbers in phase names** — `Phase 1 — v1.8.0` violates
|
|
@@ -366,14 +373,14 @@ to every roadmap you author.
|
|
|
366
373
|
operations the user has not authorized. Roadmap completion is
|
|
367
374
|
decoupled from delivery; ship-the-PR is its own decision.
|
|
368
375
|
- **Adopting an external suggestion verbatim** — a harvest/suggestion
|
|
369
|
-
roadmap
|
|
370
|
-
`KEEP`/`FOLD`/`CUT` audit becomes a skill dump:
|
|
371
|
-
rebuilt,
|
|
372
|
-
integration discipline.
|
|
373
|
-
- **Council-as-afterthought** — running council only *after* a
|
|
374
|
-
roadmap is written wastes the convergence: the plan still
|
|
375
|
-
open questions.
|
|
376
|
-
then author the verdicts.
|
|
376
|
+
roadmap that copies the source's proposed item list without the § 8
|
|
377
|
+
`KEEP`/`FOLD`/`CUT` audit becomes a skill dump: items that already
|
|
378
|
+
exist get rebuilt, items that should fold into an existing artefact
|
|
379
|
+
spawn a duplicate. The gap-table is the integration discipline.
|
|
380
|
+
- **Council-as-afterthought** — running the council only *after* a
|
|
381
|
+
contested roadmap is written wastes the convergence: the plan still
|
|
382
|
+
reads as open questions. For source-derived/contested plans, council
|
|
383
|
+
*first* (§ 8.B), then author the verdicts.
|
|
377
384
|
|
|
378
385
|
## Examples
|
|
379
386
|
|
|
@@ -104,7 +104,7 @@ canonical sequence) before pushing.
|
|
|
104
104
|
|
|
105
105
|
### 7. Record the delta
|
|
106
106
|
|
|
107
|
-
Append a snapshot to `agents/.augment-budget-history.jsonl`:
|
|
107
|
+
Append a snapshot to `agents/runtime/.augment-budget-history.jsonl`:
|
|
108
108
|
|
|
109
109
|
```bash
|
|
110
110
|
./scripts-run src/scripts/measure_augment_budget --trend-append
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"skill": "screenshot-hygiene",
|
|
3
|
+
"last_eval": "2026-07-30",
|
|
4
|
+
"description": "5 should-trigger + 5 should-not-trigger queries. Should-trigger covers DE + EN phrasings for capturing and anonymising a screenshot that is about to ship into documentation — risk tier, OCR detection, deterministic redaction, the pre-embed human gate. Should-not-trigger covers the near-miss neighbours (image analysis, image editing/inpaint, image generation, the provided-design spec path, PII scrubbing on text surfaces) whose vocabulary overlaps.",
|
|
5
|
+
"queries": [
|
|
6
|
+
{
|
|
7
|
+
"q": "capture a screenshot of the admin dashboard for the feature docs",
|
|
8
|
+
"trigger": true
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"q": "I want to embed a screenshot of this settings page in the README — is it safe to ship?",
|
|
12
|
+
"trigger": true
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"q": "redact the customer names and the local path in this screenshot before it lands in docs/media/",
|
|
16
|
+
"trigger": true
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"q": "mach einen Screenshot für das Doku-Kapitel und anonymisiere vorher alles Sensible",
|
|
20
|
+
"trigger": true
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"q": "can this dashboard screenshot go on the docs site, or does it leak PII?",
|
|
24
|
+
"trigger": true
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"q": "analyse this character image feature by feature and diff it against the canon",
|
|
28
|
+
"trigger": false,
|
|
29
|
+
"note": "per-feature image analysis / canon drift, not doc-shipping anonymisation → image-analyser (this skill only borrows its OCR read)"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"q": "inpaint the background out of this photo and give me a couple of variations",
|
|
33
|
+
"trigger": false,
|
|
34
|
+
"note": "image editing / lossy inpaint — explicitly forbidden as a redaction method here → image-editing"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"q": "generate a banner image for the launch post",
|
|
38
|
+
"trigger": false,
|
|
39
|
+
"note": "image generation from a brief, not a captured screenshot → image-generation (brand assets → brand-asset-generation)"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"q": "here's a screenshot of the mockup — build the UI to match it 1:1",
|
|
43
|
+
"trigger": false,
|
|
44
|
+
"note": "a user-supplied screenshot used as a design spec to build against → design-fidelity (rule) / cross-source-consistency"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"q": "scrub the email addresses and tokens out of these log lines before we ship them",
|
|
48
|
+
"trigger": false,
|
|
49
|
+
"note": "PII redaction on a text surface (drafts / logs / exports), not inside an image → domain-safety-pii (rule)"
|
|
50
|
+
}
|
|
51
|
+
]
|
|
52
|
+
}
|
|
@@ -42,13 +42,18 @@ Do NOT use when:
|
|
|
42
42
|
|
|
43
43
|
### 0. False-positive gate — restate the claim before reporting
|
|
44
44
|
|
|
45
|
-
Before any finding enters report, restate as one falsifiable sentence
|
|
45
|
+
Before any finding enters the report, restate it as one falsifiable sentence
|
|
46
|
+
naming all three of:
|
|
46
47
|
|
|
47
|
-
1. **Privilege level** — access attacker already has (anonymous,
|
|
48
|
-
|
|
49
|
-
|
|
48
|
+
1. **Privilege level** — what access the attacker already has (anonymous,
|
|
49
|
+
authenticated user, tenant admin, CI runner).
|
|
50
|
+
2. **Execution context** — where the vulnerable code runs (request handler,
|
|
51
|
+
queue worker, sandboxed template, build step).
|
|
52
|
+
3. **Attacker precondition** — the concrete state or input the attacker must
|
|
53
|
+
control to trigger it.
|
|
50
54
|
|
|
51
|
-
|
|
55
|
+
If any of the three cannot be named concretely, the item is **not a finding
|
|
56
|
+
yet** — trace further or drop it with a one-line reason.
|
|
52
57
|
|
|
53
58
|
**Rationalizations to Reject:**
|
|
54
59
|
|
|
@@ -61,8 +66,14 @@ Any of the three not concretely nameable → **not a finding yet** — trace fur
|
|
|
61
66
|
|
|
62
67
|
**Standard vs. Deep verification routing:**
|
|
63
68
|
|
|
64
|
-
- **Standard** — traced data flow + all three claim elements named → report
|
|
65
|
-
|
|
69
|
+
- **Standard** — traced data flow + all three claim elements named → report
|
|
70
|
+
with the normal field list.
|
|
71
|
+
- **Deep** — severity would be High/Critical, OR the precondition chain
|
|
72
|
+
crosses a trust boundary you did not personally trace → run a
|
|
73
|
+
devil's-advocate pass first: actively try to refute the finding (existing
|
|
74
|
+
middleware? framework default? type system? config?). Report only what
|
|
75
|
+
survives; findings the pass killed are listed one-line under
|
|
76
|
+
*Rejected candidates* so the triage is auditable.
|
|
66
77
|
|
|
67
78
|
### 1. Map attack surface
|
|
68
79
|
|
|
@@ -104,7 +115,10 @@ User Input → Controller → Validation → Service → DB/File/External
|
|
|
104
115
|
| **Header injection** | User input in response headers, email headers |
|
|
105
116
|
| **Insecure defaults / fail-open** | Guards that allow on error (`catch { return true }` in an authz check), default-allow matchers, debug mode defaulting on, permissive CORS/`verify=false` fallbacks, feature flags whose missing value grants access |
|
|
106
117
|
|
|
107
|
-
Worked example (fail-open): `if (!$gate->check($user)) { … }` wrapped in
|
|
118
|
+
Worked example (fail-open): `if (!$gate->check($user)) { … }` wrapped in a
|
|
119
|
+
`try/catch` that logs and **continues** fails open — an exception in the gate
|
|
120
|
+
grants access. Finding shape: Category *Insecure defaults*, Evidence the
|
|
121
|
+
catch block `file:line`, Fix *fail closed — rethrow or deny on gate error*.
|
|
108
122
|
|
|
109
123
|
### 4. Framework-specific checks
|
|
110
124
|
|
|
@@ -135,7 +149,10 @@ For each vulnerability:
|
|
|
135
149
|
- **Fix:** concrete mitigation
|
|
136
150
|
- **Confidence:** Low / Medium / High
|
|
137
151
|
|
|
138
|
-
After findings, add **Rejected candidates** section: one line per
|
|
152
|
+
After the findings, add a **Rejected candidates** section: one line per
|
|
153
|
+
look-dangerous-but-benign pattern the Step-0 gate killed, with the traced
|
|
154
|
+
reason ("raw SQL string is a static migration constant — no user input
|
|
155
|
+
reaches it"). An audit that rejects nothing has usually skipped the gate.
|
|
139
156
|
|
|
140
157
|
## Integration with other skills
|
|
141
158
|
|
|
@@ -11,7 +11,10 @@ packs:
|
|
|
11
11
|
|
|
12
12
|
# security-maturity-assessment
|
|
13
13
|
|
|
14
|
-
Rate how mature a module's security **posture** is — category by category,
|
|
14
|
+
Rate how mature a module's security **posture** is — category by category,
|
|
15
|
+
every rating backed by `file:line` evidence — instead of hunting individual
|
|
16
|
+
vulnerabilities. The output is a scorecard a maintainer can re-run and diff,
|
|
17
|
+
not a finding list.
|
|
15
18
|
|
|
16
19
|
## When to use
|
|
17
20
|
|
|
@@ -53,34 +56,53 @@ Do NOT use when:
|
|
|
53
56
|
|
|
54
57
|
## Procedure
|
|
55
58
|
|
|
56
|
-
1. **Scope** — name the module/paths under assessment; list entry points
|
|
57
|
-
|
|
59
|
+
1. **Scope** — name the module/paths under assessment; list entry points
|
|
60
|
+
(routes, jobs, commands, webhooks). A scorecard without a stated scope is
|
|
61
|
+
not reproducible.
|
|
62
|
+
2. **Assess each category** — inspect the code the category names. Every
|
|
63
|
+
rating cites evidence:
|
|
58
64
|
- Positive evidence: `file:line` of the control (`app/Http/Requests/…:12`, `src/guards/auth.guard.ts:12`).
|
|
59
|
-
- Absence evidence: the searches run that came back empty (name the grep
|
|
60
|
-
|
|
61
|
-
|
|
65
|
+
- Absence evidence: the searches run that came back empty (name the grep
|
|
66
|
+
patterns) — "not found" beats "probably missing".
|
|
67
|
+
- Multi-tenant N/A: single-tenant systems rate category 8 `N/A`; it drops
|
|
68
|
+
out of the roll-up.
|
|
69
|
+
3. **Roll up deterministically** — the overall rating is computed, not vibed:
|
|
62
70
|
- `overall = min( median(all rated categories), one step above the lowest critical-category rating )`
|
|
63
|
-
- Consequences: any critical category **Missing** caps overall at **Weak**;
|
|
64
|
-
|
|
71
|
+
- Consequences: any critical category **Missing** caps overall at **Weak**;
|
|
72
|
+
any critical **Weak** caps overall at **Moderate**. Non-critical
|
|
73
|
+
categories move the median but can never lift the cap.
|
|
74
|
+
4. **Recommend** — max 3 next steps, ordered by which would raise the overall
|
|
75
|
+
rating (i.e. fix the lowest critical category first).
|
|
65
76
|
|
|
66
77
|
## Output format
|
|
67
78
|
|
|
68
|
-
1. **Scope block** — module/paths + entry-point list, so the scorecard is
|
|
69
|
-
|
|
70
|
-
|
|
79
|
+
1. **Scope block** — module/paths + entry-point list, so the scorecard is
|
|
80
|
+
re-runnable.
|
|
81
|
+
2. **Scorecard table** — one row per category:
|
|
82
|
+
`Category | Rating | Evidence (file:line or named empty searches) | Gap`.
|
|
83
|
+
Every row MUST carry evidence; a rating without a citation is invalid.
|
|
84
|
+
3. **Overall rating** — with the roll-up shown (`median=…, lowest critical=…,
|
|
85
|
+
cap=… → overall=…`), never a bare verdict.
|
|
71
86
|
4. **Top-3 next steps** — ordered by roll-up impact.
|
|
72
87
|
|
|
73
88
|
## Gotcha
|
|
74
89
|
|
|
75
|
-
- The model tends to rate from vibes ("looks well-structured") — a rating
|
|
76
|
-
|
|
77
|
-
-
|
|
90
|
+
- The model tends to rate from vibes ("looks well-structured") — a rating
|
|
91
|
+
row without `file:line` or named empty searches is invalid; redo it.
|
|
92
|
+
- Don't let a Strong non-critical category mask a Weak critical one — the
|
|
93
|
+
cap rule exists precisely because a polished logging setup does not offset
|
|
94
|
+
missing authorization.
|
|
95
|
+
- A vulnerability found mid-assessment is **out of scope** for the scorecard
|
|
96
|
+
— note it and route to [`security-audit`](../security-audit/SKILL.md)
|
|
97
|
+
(with its false-positive gate) instead of inlining findings here.
|
|
78
98
|
|
|
79
99
|
## Do NOT
|
|
80
100
|
|
|
81
|
-
- Do NOT emit a rating without evidence — every row cites `file:line` or the
|
|
101
|
+
- Do NOT emit a rating without evidence — every row cites `file:line` or the
|
|
102
|
+
empty searches that prove absence.
|
|
82
103
|
- Do NOT average away critical categories — the deterministic cap always wins.
|
|
83
|
-
- Do NOT turn the scorecard into a finding list — posture assessment and
|
|
104
|
+
- Do NOT turn the scorecard into a finding list — posture assessment and
|
|
105
|
+
vulnerability hunting are different deliverables.
|
|
84
106
|
- Do NOT assess unscoped ("the whole app") when the user named a module.
|
|
85
107
|
|
|
86
108
|
## See also
|
|
@@ -11,6 +11,8 @@ workspaces:
|
|
|
11
11
|
- agent-config-maintainer
|
|
12
12
|
packs:
|
|
13
13
|
- meta
|
|
14
|
+
requires_skills:
|
|
15
|
+
- learning-to-rule-or-skill
|
|
14
16
|
---
|
|
15
17
|
|
|
16
18
|
# skill-improvement-pipeline
|
|
@@ -66,19 +68,21 @@ Show the user:
|
|
|
66
68
|
|
|
67
69
|
#### Cross-project promotion signal (surfacing only — never an auto-writer)
|
|
68
70
|
|
|
69
|
-
|
|
70
|
-
*shared* surface (global rule/skill or a
|
|
71
|
-
project-local note. **Surface**
|
|
71
|
+
If the **same learning** has now been observed in **≥ 2 distinct projects**, it
|
|
72
|
+
is a strong promotion candidate for a *shared* surface (a global rule/skill or a
|
|
73
|
+
`src/patterns/` recipe) rather than a project-local note. **Surface** that signal
|
|
74
|
+
to the user — do **not** auto-write it:
|
|
72
75
|
|
|
73
76
|
```
|
|
74
|
-
> Cross-project: also seen in {other-project}.
|
|
77
|
+
> Cross-project: this learning was also seen in {other-project}.
|
|
75
78
|
> ≥2 projects ⇒ candidate for a shared surface (global rule / skill / pattern).
|
|
76
79
|
> → surface for promotion (human decides; no auto-write)
|
|
77
80
|
```
|
|
78
81
|
|
|
79
|
-
|
|
80
|
-
per-project learning store stays rejected —
|
|
81
|
-
The human decides whether the cross-project
|
|
82
|
+
This is a *signal*, not a store: there is no auto-write, no decay, no runtime
|
|
83
|
+
(the writable per-project learning store stays rejected —
|
|
84
|
+
[[council-agent-memory-sunset]]). The human decides whether the cross-project
|
|
85
|
+
recurrence justifies promotion.
|
|
82
86
|
|
|
83
87
|
### Step 3: Classify
|
|
84
88
|
|
|
@@ -122,11 +126,10 @@ Decide what to create:
|
|
|
122
126
|
After creation:
|
|
123
127
|
1. Run `./scripts-run src/scripts/skill_linter {path}` — must pass (0 fail)
|
|
124
128
|
2. Copy to `.augment/`
|
|
125
|
-
3.
|
|
126
|
-
4.
|
|
127
|
-
5. **If from a knowledge page** (`agents/knowledge/procedures/skill-candidates.md`
|
|
129
|
+
3. Regenerate tools: `./scripts-run src/scripts/condense --generate-tools`
|
|
130
|
+
4. **If the learning came from a knowledge page** (`agents/knowledge/procedures/skill-candidates.md`
|
|
128
131
|
or any `agents/knowledge/` page) — degrade the source to a pointer;
|
|
129
|
-
promotion
|
|
132
|
+
promotion is not complete otherwise (double-maintenance risk):
|
|
130
133
|
`./scripts-run src/scripts/degrade_to_pointer --source "<knowledge-path>[#<anchor>]" --artifact "{relative_path}" --date "<YYYY-MM-DD>"`
|
|
131
134
|
|
|
132
135
|
### Step 5: Decide scope
|
|
@@ -454,14 +454,15 @@ to every skill you author.
|
|
|
454
454
|
## Read-only-by-default scripts
|
|
455
455
|
|
|
456
456
|
A script shipped inside a skill (`scripts/**`) is **side-effect-free by
|
|
457
|
-
default** — inspects, computes, prints; does not mutate
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
457
|
+
default** — it inspects, computes, and prints; it does not mutate the
|
|
458
|
+
filesystem. Any mutation (writing a file, deleting, rename/copy) must be gated
|
|
459
|
+
behind an explicit flag named in this SKILL.md — `--writable` / `--apply` /
|
|
460
|
+
`--write` / `--output` / `--fix` — so the default invocation is safe to run
|
|
461
|
+
blind. A generator whose *declared purpose* is to write (it emits an artifact
|
|
462
|
+
to a caller-supplied path) is allowlisted with a rationale in
|
|
463
|
+
`src/scripts/lint_skill_scripts_readonly_allowlist.json` rather than carrying a
|
|
464
|
+
redundant flag. `lint_skill_scripts_readonly` enforces this: an ungated,
|
|
465
|
+
non-allowlisted write fails the build.
|
|
465
466
|
|
|
466
467
|
## Description-optimizer loop (U1 — held-out, not vibes)
|
|
467
468
|
|