@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
|
@@ -7,8 +7,8 @@ Lookup material for `prediction-pool-optimizer`. Two parts:
|
|
|
7
7
|
- **B — Bonus / award / special questions**: a type → method table so every
|
|
8
8
|
open question in the pool reaches an answer.
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
fun pool.
|
|
10
|
+
Nothing here is betting advice; it is how to read a public market as a
|
|
11
|
+
probability prior for a fun pool.
|
|
12
12
|
|
|
13
13
|
---
|
|
14
14
|
|
|
@@ -17,51 +17,55 @@ fun pool.
|
|
|
17
17
|
### Why not one book
|
|
18
18
|
|
|
19
19
|
A single bookmaker's line can be stale, regionally shaded, or carry a fat
|
|
20
|
-
margin. A consensus across several books is a far better probability
|
|
21
|
-
and cross-book agreement tells you the market
|
|
22
|
-
portal.**
|
|
20
|
+
margin. A consensus across several books is a far better probability
|
|
21
|
+
estimate, and cross-book agreement tells you how confident the market is.
|
|
22
|
+
**Never mirror one portal.**
|
|
23
23
|
|
|
24
24
|
### Which books (5–10, publicly viewable)
|
|
25
25
|
|
|
26
26
|
Availability varies by region and over time — this list is **illustrative,
|
|
27
|
-
refresh it at run time** and use whatever is publicly viewable from the
|
|
28
|
-
locale.
|
|
27
|
+
refresh it at run time** and use whatever is publicly viewable from the
|
|
28
|
+
current locale. The fastest way to see many at once is an **odds-comparison
|
|
29
|
+
aggregator**:
|
|
29
30
|
|
|
30
31
|
- **Aggregators (many books on one page):** Oddschecker, Oddsportal,
|
|
31
32
|
Betexplorer, OddsAlert.
|
|
32
|
-
- **Sharp / low-margin reference books (weight higher):** Pinnacle,
|
|
33
|
-
Exchange (an exchange = closest thing to a true market price).
|
|
33
|
+
- **Sharp / low-margin reference books (weight higher):** Pinnacle,
|
|
34
|
+
Betfair Exchange (an exchange = the closest thing to a true market price).
|
|
34
35
|
- **Large recreational books (weight lower):** bet365, Bwin, William Hill,
|
|
35
36
|
Unibet, Betano, Tipico, Interwetten, bet-at-home, 888sport, Winamax.
|
|
36
37
|
|
|
37
|
-
Aim for **5–10** spanning both groups. If only recreational books are
|
|
38
|
-
say so in the run note — the consensus is then softer.
|
|
38
|
+
Aim for **5–10** spanning both groups. If only recreational books are
|
|
39
|
+
viewable, say so in the run note — the consensus is then softer.
|
|
39
40
|
|
|
40
41
|
### The recipe
|
|
41
42
|
|
|
42
|
-
1. **Per market, per book**: collect decimal odds (1X2, exact-score,
|
|
43
|
-
outright, each special/award market a bonus question needs).
|
|
44
|
-
2. **De-vig each book independently.** For 1X2 decimal odds
|
|
45
|
-
raw implied probs `1/o
|
|
46
|
-
`p_i = (1/o_i) / Σ(1/o)`.
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
43
|
+
1. **Per market, per book**: collect the decimal odds (1X2, exact-score,
|
|
44
|
+
each outright, each special/award market a bonus question needs).
|
|
45
|
+
2. **De-vig each book independently.** For a 1X2 market with decimal odds
|
|
46
|
+
`o_H, o_D, o_A`, the raw implied probs are `1/o`; they sum to `>1` (the
|
|
47
|
+
overround). Normalise: `p_i = (1/o_i) / Σ(1/o)`. Do this **per book** —
|
|
48
|
+
never aggregate raw odds.
|
|
49
|
+
3. **Sharpness-weight and combine.** Give sharp books more weight than
|
|
50
|
+
recreational ones, then take a **weighted mean** — or a **trimmed median**
|
|
51
|
+
when books disagree a lot (robust to one outlier). A simple, defensible
|
|
52
|
+
weighting:
|
|
50
53
|
|
|
51
54
|
- Pinnacle / Betfair Exchange → weight 3
|
|
52
55
|
- large recreational books → weight 1
|
|
53
|
-
- aggregator "average" column → weight 1 (already blends many)
|
|
54
|
-
|
|
55
|
-
`p_consensus = Σ(wᵢ · pᵢ) / Σw
|
|
56
|
-
set to sum to 1.
|
|
57
|
-
4. **Outlier handling.**
|
|
58
|
-
check for a reason (priced-in injury, stale line) before
|
|
59
|
-
consensus. Cross-book agreement = signal; one disagreeing book
|
|
56
|
+
- aggregator "average" column → weight 1 (it already blends many)
|
|
57
|
+
|
|
58
|
+
`p_consensus = Σ(wᵢ · pᵢ) / Σwᵢ`, computed per outcome, then re-normalise
|
|
59
|
+
the outcome set to sum to 1.
|
|
60
|
+
4. **Outlier handling.** If one book is far off the others, that is a **flag,
|
|
61
|
+
not a truth**: check for a reason (priced-in injury, stale line) before
|
|
62
|
+
moving the consensus. Cross-book agreement = signal; one disagreeing book
|
|
63
|
+
= investigate.
|
|
60
64
|
5. **Healthy weighting overall.** The consensus is a **prior**. Blend it with
|
|
61
|
-
the per-sport model (Poisson / Gaussian) and override
|
|
62
|
-
info the market has not absorbed (confirmed lineup, late injury,
|
|
63
|
-
suspension, manager change). The pool answer is EV under the rules on top
|
|
64
|
-
this blended probability — the market informs, it does not dictate.
|
|
65
|
+
the per-sport model (Poisson / Gaussian) and only override with *current*
|
|
66
|
+
info the market has not yet absorbed (confirmed lineup, late injury,
|
|
67
|
+
suspension, manager change). The pool answer is EV under the rules on top
|
|
68
|
+
of this blended probability — the market informs, it does not dictate.
|
|
65
69
|
|
|
66
70
|
### Worked mini-example (1X2)
|
|
67
71
|
|
|
@@ -81,27 +85,27 @@ the per-match EV grid — not either book's raw number.
|
|
|
81
85
|
## B. Bonus / award / special questions — type → method
|
|
82
86
|
|
|
83
87
|
Every entry on the step-1 checklist gets an answer. Match the question to a
|
|
84
|
-
row; real market where one exists, a **labelled** model estimate where
|
|
85
|
-
does. Optimize each on expected points under its point weight.
|
|
88
|
+
row; use a real market where one exists, a **labelled** model estimate where
|
|
89
|
+
none does. Optimize each on expected points under its point weight.
|
|
86
90
|
|
|
87
91
|
| Question type | Example | Method |
|
|
88
92
|
|---|---|---|
|
|
89
93
|
| **Outright winner** | "Who wins the tournament?" | Outright "to win" market, consensus per A; or `poisson_sim.ts` `title_pct`. EV-max under the question's points. |
|
|
90
94
|
| **Group / stage** | "Who wins group X?", "Who advances?" | "To win group" / "to qualify" markets; or `advance_pct` from the simulator. |
|
|
91
95
|
| **Finalists / matchup** | "Who reaches the final?" | "To reach final" market per team; simulator pairing is approximate — prefer the market. |
|
|
92
|
-
| **Top scorer (player)** | "Tournament top scorer?" | "Top goalscorer" outright market, consensus per A; EV-max player (favourite unless rarity scoring rewards a longer shot). |
|
|
93
|
-
| **Team of the top scorer** | "Which team supplies the top scorer?" | Aggregate per-player top-scorer probabilities **by team** (sum each squad); pick the highest
|
|
94
|
-
| **Most assists / cards / etc.** | "Most yellow cards?" |
|
|
95
|
-
| **Binary special** | "Will there be a red card in match X?" | De-vig the yes/no line to a probability; EV-max side under the points. No market → labelled base-rate estimate. |
|
|
96
|
-
| **Over / under total** | "Over/under total goals / cards?" | De-vig the totals line at the offered threshold; higher
|
|
97
|
-
| **Exact stat** | "How many goals in the final?" | Market totals distribution if available; else per-match Poisson on consensus xG. State the model. |
|
|
96
|
+
| **Top scorer (player)** | "Tournament top scorer?" | "Top goalscorer" outright market, consensus per A; pick the EV-max player (favourite unless rarity scoring rewards a longer shot). |
|
|
97
|
+
| **Team of the top scorer** | "Which team supplies the top scorer?" | Aggregate per-player top-scorer probabilities **by team** (sum each squad's players); pick the team with the highest summed probability. |
|
|
98
|
+
| **Most assists / cards / etc.** | "Most yellow cards?" | The matching special market if offered; else a labelled model estimate (e.g. discipline/aggression proxy). |
|
|
99
|
+
| **Binary special** | "Will there be a red card in match X?" | De-vig the yes/no line to a probability; pick the EV-max side under the points. No market → labelled base-rate estimate. |
|
|
100
|
+
| **Over / under total** | "Over/under total goals / cards?" | De-vig the totals line at the offered threshold; pick the side with higher EV. |
|
|
101
|
+
| **Exact stat** | "How many goals in the final?" | Market totals distribution if available; else the per-match Poisson on consensus xG. State the model. |
|
|
98
102
|
|
|
99
103
|
### Rules for bonus answers
|
|
100
104
|
|
|
101
105
|
- **Answer all of them.** The output's bonus table must have the same number
|
|
102
|
-
of rows as the step-1 checklist. A missing row
|
|
103
|
-
- **Market first, labelled model second.** Prefer a real special market;
|
|
104
|
-
exists
|
|
106
|
+
of rows as the step-1 checklist. A missing row is a dropped question.
|
|
107
|
+
- **Market first, labelled model second.** Prefer a real special market;
|
|
108
|
+
when none exists, derive from a stated model and mark `Source: model`.
|
|
105
109
|
- **Rarity rules apply here too.** Under quote/rarity scoring, a
|
|
106
110
|
plausible-but-rarer answer can out-score the favourite when
|
|
107
111
|
`payout × probability` is higher — same EV logic as the scores.
|
|
@@ -131,11 +131,11 @@ Check:
|
|
|
131
131
|
|
|
132
132
|
## Knowledge capture (`convention_detected` events)
|
|
133
133
|
|
|
134
|
-
An architecture
|
|
135
|
-
module boundary, layering rule) is worth persisting for the team.
|
|
134
|
+
An architecture map or stack finding that recurs (a naming convention,
|
|
135
|
+
a module boundary, a layering rule) is worth persisting for the team.
|
|
136
136
|
Append to the knowledge intake instead of leaving it in the one-off
|
|
137
|
-
analysis output
|
|
138
|
-
|
|
137
|
+
analysis output (applies to every `project-analysis-*` specialist this
|
|
138
|
+
skill hands off to, not just this one):
|
|
139
139
|
|
|
140
140
|
```bash
|
|
141
141
|
npx tsx node_modules/@event4u/agent-config/src/scripts/emit_knowledge_event.ts --type convention_detected \
|
|
@@ -17,7 +17,7 @@ packs:
|
|
|
17
17
|
Use this skill when:
|
|
18
18
|
|
|
19
19
|
* There is a concrete issue to explain
|
|
20
|
-
* Multiple root
|
|
20
|
+
* Multiple root causes are plausible
|
|
21
21
|
* The system spans several layers
|
|
22
22
|
* A shallow single-explanation answer would be risky
|
|
23
23
|
* `universal-project-analysis` or `bug-analyzer` routes here
|
|
@@ -33,7 +33,7 @@ Do NOT use when:
|
|
|
33
33
|
* Never stop at the first plausible explanation
|
|
34
34
|
* Code, docs, and evidence beat intuition
|
|
35
35
|
* Rejected hypotheses matter
|
|
36
|
-
* Multiple interacting
|
|
36
|
+
* Multiple interacting causes are common
|
|
37
37
|
* Uncertainty must be marked explicitly
|
|
38
38
|
|
|
39
39
|
## Procedure
|
|
@@ -95,7 +95,7 @@ Ask:
|
|
|
95
95
|
|
|
96
96
|
* does this fully explain the behavior?
|
|
97
97
|
* what remains unexplained?
|
|
98
|
-
* could multiple
|
|
98
|
+
* could multiple causes interact?
|
|
99
99
|
* does contradictory evidence exist?
|
|
100
100
|
|
|
101
101
|
If anything major remains unexplained: continue analysis, do not present a final conclusion yet.
|
|
@@ -117,7 +117,7 @@ Check:
|
|
|
117
117
|
## Gotcha
|
|
118
118
|
|
|
119
119
|
* React bugs often come from stale state, not broken logic.
|
|
120
|
-
* Missing
|
|
120
|
+
* Missing dependencies in hooks are one of the most common root causes.
|
|
121
121
|
* Overusing memoization can make code harder to reason about without solving real problems.
|
|
122
122
|
|
|
123
123
|
## Do NOT
|
|
@@ -44,7 +44,7 @@ Do NOT use when:
|
|
|
44
44
|
### 1. Confirm Symfony version and app shape
|
|
45
45
|
|
|
46
46
|
Check: `composer.lock`, `composer.json`, Symfony packages/components, PHP version, environment config structure.
|
|
47
|
-
Validate: Symfony version is explicit, major bundles/components are identified,
|
|
47
|
+
Validate: Symfony version is explicit, major bundles/components are identified, environment-specific config layout is known.
|
|
48
48
|
|
|
49
49
|
### 2. Analyze kernel and container boot
|
|
50
50
|
|
|
@@ -54,7 +54,7 @@ Check:
|
|
|
54
54
|
|
|
55
55
|
* merge order surprises
|
|
56
56
|
* missing overrides
|
|
57
|
-
*
|
|
57
|
+
* environment config mismatches
|
|
58
58
|
* heavy bootstrap logic
|
|
59
59
|
|
|
60
60
|
### 3. Analyze ServiceManager behavior
|
|
@@ -106,7 +106,7 @@ Check:
|
|
|
106
106
|
## Gotcha
|
|
107
107
|
|
|
108
108
|
* Many Zend/Laminas issues are caused by config order and service resolution, not controller code.
|
|
109
|
-
* Shared services and legacy migration remnants can create cross-request or
|
|
109
|
+
* Shared services and legacy migration remnants can create cross-request or environment-specific bugs.
|
|
110
110
|
* Old project behavior may depend on historical bootstrap side effects that are easy to miss.
|
|
111
111
|
|
|
112
112
|
## Do NOT
|
|
@@ -144,7 +144,7 @@ Production prompts handle their own failure cases:
|
|
|
144
144
|
|
|
145
145
|
## Provenance
|
|
146
146
|
|
|
147
|
-
- Adopted from: an external reference (
|
|
147
|
+
- Adopted from: an external reference (internal provenance, redacted) — restructured into a decision-framework shape; source-specific vendor Python snippets dropped.
|
|
148
148
|
- Cross-linked: [`prompt-optimizer`](../prompt-optimizer/SKILL.md), [`refine-prompt`](../refine-prompt/SKILL.md), [`mcp-builder`](../mcp-builder/SKILL.md), [`async-python-patterns`](../async-python-patterns/SKILL.md).
|
|
149
149
|
- Provenance registry: `agents/settings/contexts/skills-provenance.yml` (entry: `prompt-engineering-patterns`).
|
|
150
150
|
- Iron-Law floor: `verify-before-complete`, `skill-quality`, `non-destructive-by-default`.
|
|
@@ -20,14 +20,14 @@ install:
|
|
|
20
20
|
# prompt-validator
|
|
21
21
|
|
|
22
22
|
> Deterministic pre-spend gate: collect **every** prompt a video run is
|
|
23
|
-
> about to send (all scenes, all blocks), cross-check against each
|
|
24
|
-
> and against the run's locked facts (character lock, vocal map,
|
|
25
|
-
> capabilities), **block with a specific error** on
|
|
26
|
-
> Skills are deterministic —
|
|
27
|
-
>
|
|
28
|
-
> the same video (AI-council convergence,
|
|
29
|
-
> batch costs a re-edit; one rendered
|
|
30
|
-
> spend.
|
|
23
|
+
> about to send (all scenes, all blocks), cross-check them against each
|
|
24
|
+
> other and against the run's locked facts (character lock, vocal map,
|
|
25
|
+
> model capabilities), and **block with a specific error** on
|
|
26
|
+
> contradiction. Skills are deterministic — the failure mode of a
|
|
27
|
+
> multi-scene batch is not drift, it is *contradiction*: two prompts
|
|
28
|
+
> that cannot both be true of the same video (AI-council convergence,
|
|
29
|
+
> 2026-06-06). One blocked batch costs a re-edit; one rendered
|
|
30
|
+
> contradiction costs the whole spend.
|
|
31
31
|
|
|
32
32
|
## When to use
|
|
33
33
|
|
|
@@ -41,16 +41,16 @@ install:
|
|
|
41
41
|
|
|
42
42
|
Do NOT use when:
|
|
43
43
|
|
|
44
|
-
- Only a single scene exists (nothing to contradict) — per-scene
|
|
45
|
-
in `video-director` cover internal consistency.
|
|
46
|
-
-
|
|
47
|
-
about to be gated, not on every draft keystroke.
|
|
44
|
+
- Only a single scene exists (nothing to contradict) — the per-scene
|
|
45
|
+
checks in `video-director` already cover internal consistency.
|
|
46
|
+
- The run is pure preview with no approval intent — validate when the
|
|
47
|
+
batch is about to be gated, not on every draft keystroke.
|
|
48
48
|
|
|
49
49
|
## Inputs
|
|
50
50
|
|
|
51
51
|
- `<project>/script.md` — every `## Scene N` (duration, mood, action,
|
|
52
52
|
camera, dialogue).
|
|
53
|
-
- Every rendered scene prompt (eight-block image/video prompts from
|
|
53
|
+
- Every rendered scene prompt (the eight-block image/video prompts from
|
|
54
54
|
`video-director` / blueprint JSON), in scene order.
|
|
55
55
|
- `<project>/character.json` — when present, the locked identity
|
|
56
56
|
(subject, palette, wardrobe, prop, seed).
|
|
@@ -64,20 +64,20 @@ Do NOT use when:
|
|
|
64
64
|
|
|
65
65
|
Read every scene's prompt blocks into one table:
|
|
66
66
|
`scene → {style, subject, environment, action, camera, lens, lighting,
|
|
67
|
-
mood, duration, aspect, dialogue/singer}`.
|
|
68
|
-
unparseable → **block**: `scene N: prompt missing/unreadable`
|
|
69
|
-
incomplete batch already
|
|
67
|
+
mood, duration, aspect, dialogue/singer}`. A scene whose prompt is
|
|
68
|
+
missing or unparseable → **block**: `scene N: prompt missing/unreadable`
|
|
69
|
+
— an incomplete batch is already a contradiction with the script.
|
|
70
70
|
|
|
71
71
|
### 2. Style consistency
|
|
72
72
|
|
|
73
|
-
`style` block must agree across all scenes — one look per video
|
|
74
|
-
the script *names* an intentional break (e.g. "dream sequence").
|
|
73
|
+
The `style` block must agree across all scenes — one look per video
|
|
74
|
+
unless the script *names* an intentional break (e.g. "dream sequence").
|
|
75
75
|
|
|
76
76
|
- Conflicting render families (`photorealistic` vs `cel-shaded` /
|
|
77
77
|
`claymation` / `watercolor`) with no scripted break →
|
|
78
78
|
`style mismatch: scene 3 'photorealistic' vs scene 7 'cel-shaded'`.
|
|
79
79
|
- Conflicting era/grade tokens (`1970s film grain` vs `clean digital
|
|
80
|
-
HDR`) → same error shape, name both scenes
|
|
80
|
+
HDR`) → same error shape, name both scenes and both tokens.
|
|
81
81
|
|
|
82
82
|
### 3. Character consistency (character mode)
|
|
83
83
|
|
|
@@ -88,7 +88,7 @@ match the lock:
|
|
|
88
88
|
`blue jacket`) → `character mismatch: scene 5 'blue jacket' vs lock
|
|
89
89
|
'red coat'`.
|
|
90
90
|
- A scene inventing a second recurring subject the script never cast →
|
|
91
|
-
flag — uncast identities break continuity AND the likeness gate.
|
|
91
|
+
flag it — uncast identities break continuity AND the likeness gate.
|
|
92
92
|
- **Lip-sync ownership:** a scene with a `dialogue:` line must name the
|
|
93
93
|
vocal map's singer for that line — wrong mouth on wrong words is the
|
|
94
94
|
render-money-burning failure (`media-sync-ground-truth`). A `"?"`
|
|
@@ -100,21 +100,21 @@ match the lock:
|
|
|
100
100
|
with no scripted transition → `continuity: scene 4 'noon sun' →
|
|
101
101
|
scene 5 'starry night' within the same chorus`.
|
|
102
102
|
- Impossible camera/action pairs (`locked-off tripod` + `whip pan`),
|
|
103
|
-
(`underwater` + `desert dust`) → name scene +
|
|
104
|
-
- Duration / aspect vs. model envelope: any scene outside
|
|
105
|
-
`[min_duration, max_duration]` or with an
|
|
106
|
-
with the violated bound (defense-in-depth after
|
|
107
|
-
Step 1 — hand-edited prompts re-open this hole).
|
|
103
|
+
(`underwater` + `desert dust`) → name scene + the two tokens.
|
|
104
|
+
- Duration / aspect vs. the model envelope: any scene outside
|
|
105
|
+
`[min_duration, max_duration]` or with an aspect the model does not
|
|
106
|
+
list → block with the violated bound (defense-in-depth after
|
|
107
|
+
`song-to-script` Step 1 — hand-edited prompts re-open this hole).
|
|
108
108
|
|
|
109
109
|
### 5. Verdict
|
|
110
110
|
|
|
111
111
|
- **Zero findings** → emit `prompt-validator: N scenes, no
|
|
112
|
-
contradictions
|
|
112
|
+
contradictions` and hand the batch to the preview gate.
|
|
113
113
|
- **Any finding** → **block the gate**. Report every finding (not just
|
|
114
114
|
the first), each as `class: scene(s) + conflicting values + fix
|
|
115
|
-
hint`.
|
|
116
|
-
validator — never "approve anyway" past a contradiction;
|
|
117
|
-
intentional break gets *scripted* (named in `script.md`), which
|
|
115
|
+
hint`. The operator (or the calling command) fixes the prompts and
|
|
116
|
+
re-runs the validator — never "approve anyway" past a contradiction;
|
|
117
|
+
an intentional break gets *scripted* (named in `script.md`), which
|
|
118
118
|
legitimizes it on the next pass.
|
|
119
119
|
|
|
120
120
|
## Output format
|
|
@@ -135,20 +135,20 @@ verdict: BLOCKED (2 contradictions) — fix and re-run
|
|
|
135
135
|
|
|
136
136
|
## Gotchas
|
|
137
137
|
|
|
138
|
-
- **An intentional style break is scripted, not waved through.**
|
|
139
|
-
break `script.md` names
|
|
140
|
-
chat" does not survive to the next run.
|
|
141
|
-
- **Re-validate after every hand-edit.**
|
|
138
|
+
- **An intentional style break is scripted, not waved through.** The
|
|
139
|
+
validator only accepts a break that `script.md` names; "the operator
|
|
140
|
+
said it's fine in chat" does not survive to the next run.
|
|
141
|
+
- **Re-validate after every hand-edit.** A single edited scene can
|
|
142
142
|
contradict five untouched ones; the batch is the unit, not the scene.
|
|
143
143
|
- **`verified: false` capability entries still gate.** Blocking on a
|
|
144
144
|
documented-best-effort bound beats rendering past a real one; the
|
|
145
|
-
report names the unverified flag
|
|
146
|
-
never by skipping the check.
|
|
145
|
+
report names the unverified flag so the operator can override by
|
|
146
|
+
editing the manifest, never by skipping the check.
|
|
147
147
|
|
|
148
148
|
## Do NOT
|
|
149
149
|
|
|
150
|
-
- Do NOT auto-fix prompts — report and block; the fix is the
|
|
151
|
-
(or calling skill's) edit, visible in the diff.
|
|
150
|
+
- Do NOT auto-fix prompts — report and block; the fix is the
|
|
151
|
+
operator's (or calling skill's) edit, visible in the diff.
|
|
152
152
|
- Do NOT validate only changed scenes — always the full batch.
|
|
153
153
|
- Do NOT soften a contradiction into a warning — contradictions block;
|
|
154
154
|
only consistency passes.
|
|
@@ -157,8 +157,8 @@ verdict: BLOCKED (2 contradictions) — fix and re-run
|
|
|
157
157
|
|
|
158
158
|
## See also
|
|
159
159
|
|
|
160
|
-
- [`/video:from-song`](../../commands/video/from-song.md) —
|
|
161
|
-
before the unified storyboard/cost preview gate (Step 8).
|
|
160
|
+
- [`/video:from-song`](../../commands/video/from-song.md) —
|
|
161
|
+
invokes this before the unified storyboard/cost preview gate (Step 8).
|
|
162
162
|
- [`video-director`](../video-director/SKILL.md) — produces the prompts
|
|
163
163
|
this skill cross-checks.
|
|
164
164
|
- [`character-consistency`](../character-consistency/SKILL.md) — the
|
|
@@ -31,20 +31,20 @@ false OR MISSING (THE DEFAULT). DO NOT ASK WHETHER TO RUN THEM.
|
|
|
31
31
|
THE USER RUNS THEM MANUALLY. REMOTE CI IS THE AUTHORITATIVE GATE.
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
Toolchains differ per language and project
|
|
35
|
-
|
|
36
|
-
three triggers justify running a quality tool:
|
|
37
|
-
|
|
38
|
-
1. **Explicit ask this turn** — user says so or invokes `/fix quality`.
|
|
39
|
-
2. **Concrete CI failure** — remote pipeline reports a failing
|
|
40
|
-
run exactly that failing check to reproduce and fix
|
|
41
|
-
the canonical flow).
|
|
42
|
-
3. **New-gate carve-out** — change itself introduces a NEW CI gate,
|
|
43
|
-
smoke test, or test file; must run once locally to be proven.
|
|
44
|
-
|
|
45
|
-
`quality.local_auto_run: true` restores legacy autonomous behaviour
|
|
46
|
-
(run pipeline when work is ready for verification). When runs are
|
|
47
|
-
suppressed, completion message says *"quality gates delegated to
|
|
34
|
+
Toolchains differ per language and project and are often unknown to the
|
|
35
|
+
agent — discovering and running them burns time and tokens. Under the
|
|
36
|
+
default, exactly three triggers justify running a quality tool:
|
|
37
|
+
|
|
38
|
+
1. **Explicit ask this turn** — the user says so or invokes `/fix quality`.
|
|
39
|
+
2. **Concrete CI failure** — the remote pipeline reports a failing
|
|
40
|
+
check; run exactly that failing check to reproduce and fix it
|
|
41
|
+
(`/fix:ci` is the canonical flow).
|
|
42
|
+
3. **New-gate carve-out** — the change itself introduces a NEW CI gate,
|
|
43
|
+
smoke test, or test file; it must run once locally to be proven.
|
|
44
|
+
|
|
45
|
+
`quality.local_auto_run: true` restores the legacy autonomous behaviour
|
|
46
|
+
(run the pipeline when work is ready for verification). When runs are
|
|
47
|
+
suppressed, the completion message says *"quality gates delegated to
|
|
48
48
|
remote CI"* — never that the tools passed.
|
|
49
49
|
|
|
50
50
|
## Language detection
|
|
@@ -61,7 +61,7 @@ If both PHP and JS/TS files changed → run **both** pipelines.
|
|
|
61
61
|
|
|
62
62
|
## Related rules and guidelines
|
|
63
63
|
|
|
64
|
-
- `verify-before-complete` rule — no pass claims without fresh output; suppressed runs surfaced as "delegated to remote CI", never claimed
|
|
64
|
+
- `verify-before-complete` rule — no pass claims without fresh output; suppressed runs are surfaced as "delegated to remote CI", never claimed
|
|
65
65
|
- `php-coding` rule → PHPStan section — inline ignores, PHPDoc rules
|
|
66
66
|
- `contexts/execution/verification-mechanics.md` — Gate zero (`local_auto_run`) + timing when `true` (quality tools ONCE at the end, not after each edit)
|
|
67
67
|
- [`testing-anti-patterns`](../testing-anti-patterns/SKILL.md) and
|
|
@@ -128,17 +128,41 @@ declared version:
|
|
|
128
128
|
|
|
129
129
|
## Registry & MCP awareness (opt-in)
|
|
130
130
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
131
|
+
The default path is the bundled `scripts/shadcn_add.ts` CLI wrapper + reading
|
|
132
|
+
`components.json` — it works on most shadcn projects and stays the default.
|
|
133
|
+
The modern registry model is an **opt-in enhancement**; do not add round-trips
|
|
134
|
+
to every component op. Full JSON-schema + namespace detail is lazy-loaded from
|
|
135
|
+
[`reference/registry.md`](reference/registry.md) — read it only on this path,
|
|
136
|
+
not on the vanilla `add`.
|
|
137
|
+
|
|
138
|
+
**`shadcn info --json` handshake** — run it as the grounding step **when** the
|
|
139
|
+
project declares custom/namespaced `registries` in `components.json`, OR when
|
|
140
|
+
theme-alignment is in scope. It returns framework, aliases, installed
|
|
141
|
+
components, icon lib, and base settings. Do NOT make it a forced first action
|
|
142
|
+
on every `add` (over-gating; low ROI on vanilla projects).
|
|
143
|
+
|
|
144
|
+
- **Precedence vs our own audit:** prefer a live `shadcn info --json` when
|
|
145
|
+
available; fall back to `state.ui_audit.shadcn_inventory` (from
|
|
146
|
+
`existing-ui-audit`) when the CLI/MCP is not reachable. They answer the same
|
|
147
|
+
question (project context) — the live read wins.
|
|
148
|
+
|
|
149
|
+
**Namespaced installs** — `@ns/item` resolves via the `registries` map to a
|
|
150
|
+
`registry-item.json` URL (see the reference). Run `view @ns/item` to inspect
|
|
151
|
+
the JSON before `add`. Honour `registryDependencies` (install the graph,
|
|
152
|
+
including version-pinned GitHub refs like `acme/ui/button#v1.2.0`); keep
|
|
153
|
+
propose-never-silent-run + `--dry-run`.
|
|
154
|
+
|
|
155
|
+
**Token-aware scaffolding** — when a `registry-item.json` carries `cssVars`
|
|
156
|
+
(OKLCH, light/dark/theme), align additions to the project's existing tokens
|
|
157
|
+
(from `info --json` / `components.json` / `state.ui_audit.design_tokens`) —
|
|
158
|
+
**never inject the default shadcn neutral theme** (it is a flagged anti-slop
|
|
159
|
+
tell: default theme + Inter fallback + neutral grays).
|
|
160
|
+
|
|
161
|
+
**MCP path (opt-in)** — the shadcn MCP server exposes browse / search-across-
|
|
162
|
+
registries / install-with-natural-language over MCP; configure per the
|
|
163
|
+
[`mcp`](../mcp/SKILL.md) skill. It is an alternative to the CLI, never a hard
|
|
164
|
+
dependency. Decision note: **CLI path = default + universal; MCP path = opt-in
|
|
165
|
+
when the user has it configured; registry-JSON literacy underpins both.**
|
|
142
166
|
|
|
143
167
|
## Procedure: render a shadcn/ui component for the design brief
|
|
144
168
|
|
|
@@ -251,17 +275,29 @@ current state on the next polish round.
|
|
|
251
275
|
|
|
252
276
|
## Taste Dials
|
|
253
277
|
|
|
254
|
-
`DESIGN.md` `## Taste Dials
|
|
278
|
+
When `DESIGN.md` declares `## Taste Dials`, honour them: Variance → layout-family spread + asymmetry tolerance; Motion → animation budget + reduced-motion posture; Density → spacing scale + information-per-viewport. Absent → follow the design brief's inferred dials.
|
|
255
279
|
|
|
256
280
|
## Component workshop (Storybook) — when the library is large enough
|
|
257
281
|
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
-
|
|
261
|
-
|
|
262
|
-
- **
|
|
263
|
-
|
|
264
|
-
|
|
282
|
+
The generic "isolate + document reusable components" principle lives in
|
|
283
|
+
[`fe-design`](../fe-design/SKILL.md) § Component Architecture; this is the React
|
|
284
|
+
carve-out for the tool-specific part.
|
|
285
|
+
|
|
286
|
+
- **When it pays off** — a real, growing shared-component library (roughly: more
|
|
287
|
+
than a handful of reused primitives, multiple consumers, ongoing UI work).
|
|
288
|
+
Storybook makes each component discoverable, reviewable in isolation, and
|
|
289
|
+
reused instead of re-invented. **Skip it** for a small surface of one-off
|
|
290
|
+
components — the setup + maintenance is not worth it yet.
|
|
291
|
+
- **Story per reusable primitive, not per screen** — a story covers a component
|
|
292
|
+
and its states (default / loading / empty / error / dark), mirroring the
|
|
293
|
+
Step 3 state-coverage matrix. Screens are composed, not story-fied.
|
|
294
|
+
- **Reuse the token layer** — stories render under the same semantic tokens +
|
|
295
|
+
`.dark` class; never hardcode a preview theme (same token discipline as Step 2).
|
|
296
|
+
- **A11y in-workshop** — run the a11y addon so the isolation catches contrast /
|
|
297
|
+
role / focus issues before the component reaches a screen.
|
|
298
|
+
- Do NOT let stories drift from the component API — a story that props-drills
|
|
299
|
+
values the component no longer accepts is stale documentation; keep them beside
|
|
300
|
+
the component and update them in the same change.
|
|
265
301
|
|
|
266
302
|
## Do NOT
|
|
267
303
|
|
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
# shadcn registry & namespace reference
|
|
2
2
|
|
|
3
3
|
> Lazy-loaded by `react-shadcn-ui` ONLY on the registry/MCP path (custom or
|
|
4
|
-
> namespaced registries, or theme-alignment). Not
|
|
5
|
-
> zero token cost on the vanilla `shadcn add` path.
|
|
4
|
+
> namespaced registries, or theme-alignment work). Not part of the always-on
|
|
5
|
+
> skill body — zero token cost on the vanilla `shadcn add` path.
|
|
6
6
|
|
|
7
7
|
## `registry-item.json` — the self-describing component unit
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
paths, deps, or tokens.
|
|
9
|
+
A registry serves each item as a JSON document the agent reads before
|
|
10
|
+
scaffolding, so it never guesses paths, deps, or tokens.
|
|
11
11
|
|
|
12
12
|
- `name` — item id.
|
|
13
13
|
- `type` — one of: `registry:ui`, `registry:component`, `registry:block`,
|
|
14
14
|
`registry:hook`, `registry:lib`, `registry:theme`, `registry:style`,
|
|
15
15
|
`registry:page`, `registry:file`, `registry:base`, `registry:item`.
|
|
16
|
-
- `dependencies` / `devDependencies` — npm packages.
|
|
17
|
-
- `registryDependencies` — other items to pull first (the dependency
|
|
18
|
-
built-in (`"button"`), namespaced (`"@acme/input"`), GitHub
|
|
16
|
+
- `dependencies` / `devDependencies` — npm packages to install.
|
|
17
|
+
- `registryDependencies` — other registry items to pull first (the dependency
|
|
18
|
+
graph). Forms: built-in (`"button"`), namespaced (`"@acme/input"`), GitHub
|
|
19
19
|
(`"acme/ui/button#v1.2.0"`), URL, or local path.
|
|
20
|
-
- `files[]` — each `{ path, type, target }`; `target` uses the project alias
|
|
21
|
-
placeholders (`~`, `@ui/`, `@lib/`, `@hooks/`) from `components.json`.
|
|
22
|
-
- `cssVars` — tokens scoped by mode: `theme` (font/radius), `light`,
|
|
23
|
-
OKLCH. **Align to the project's tokens
|
|
24
|
-
theme** (anti-slop C1/C5/T7).
|
|
25
|
-
- `css` — raw `@layer` / `@utility` / `@keyframes` / `@plugin
|
|
20
|
+
- `files[]` — each `{ path, type, target }`; `target` uses the project's alias
|
|
21
|
+
placeholders (`~`, `@ui/`, `@lib/`, `@hooks/`) resolved from `components.json`.
|
|
22
|
+
- `cssVars` — design tokens scoped by mode: `theme` (font/radius), `light`,
|
|
23
|
+
`dark`. Values are OKLCH. **Align these to the project's existing tokens, do
|
|
24
|
+
not inject the default neutral theme** (anti-slop C1/C5/T7).
|
|
25
|
+
- `css` — raw `@layer` / `@utility` / `@keyframes` / `@plugin` directives.
|
|
26
26
|
|
|
27
|
-
Scaffold order: read item → install npm `dependencies` → resolve
|
|
28
|
-
`registryDependencies` (recurse) → write `files[]` to alias targets →
|
|
29
|
-
`cssVars` into the project token layer (reconcile,
|
|
27
|
+
Scaffold order: read the item → install npm `dependencies` → resolve
|
|
28
|
+
`registryDependencies` (recurse) → write `files[]` to the alias targets →
|
|
29
|
+
merge `cssVars` into the project's token layer (reconcile, do not overwrite).
|
|
30
30
|
|
|
31
31
|
## Namespaced registries
|
|
32
32
|
|
|
33
|
-
`components.json` maps a namespace
|
|
33
|
+
`components.json` maps a namespace to a URL template under `registries`:
|
|
34
34
|
|
|
35
35
|
```json
|
|
36
36
|
{
|
|
@@ -44,16 +44,18 @@ Scaffold order: read item → install npm `dependencies` → resolve
|
|
|
44
44
|
}
|
|
45
45
|
```
|
|
46
46
|
|
|
47
|
-
- Resolution: `@ns/name` → look up `@ns` → substitute `{name}` (
|
|
48
|
-
`{style}`).
|
|
49
|
-
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
47
|
+
- Resolution: `@ns/name` → look up `@ns` → substitute `{name}` (and optional
|
|
48
|
+
`{style}`) into the URL template. The reference resolution regex is
|
|
49
|
+
`^(@[a-zA-Z0-9](?:[a-zA-Z0-9-_]*[a-zA-Z0-9])?)\/(.+)$`.
|
|
50
|
+
- Auth registries: per-registry `headers` with `${ENV_VAR}` interpolation —
|
|
51
|
+
never inline a token; read it from the environment.
|
|
52
|
+
- The namespace space is **decentralized** — no central authority resolves
|
|
53
|
+
collisions; the `components.json` map is the project's source of truth.
|
|
53
54
|
|
|
54
55
|
## CLI surface (the agent drives these)
|
|
55
56
|
|
|
56
|
-
`init` · `add [item|@ns/item]` · `search @ns -q <q>` · `view @ns/item`
|
|
57
|
-
JSON before install) · `docs [item] --json` · `diff` (drift vs
|
|
58
|
-
registry) · `info --json` (project context — see the SKILL handshake)
|
|
59
|
-
(publish). Inspect with `view` before `add` — evidence
|
|
57
|
+
`init` · `add [item|@ns/item]` · `search @ns -q <q>` · `view @ns/item`
|
|
58
|
+
(inspect JSON before install) · `docs [item] --json` · `diff` (drift vs the
|
|
59
|
+
updated registry) · `info --json` (project context — see the SKILL handshake)
|
|
60
|
+
· `build` (publish a registry). Inspect with `view` before `add` — evidence
|
|
61
|
+
before action.
|
|
@@ -262,8 +262,8 @@ npx <package> init --tools=windsurf # Windsurf
|
|
|
262
262
|
Pair the catalog with a separate "Global install" subsection (same flags
|
|
263
263
|
plus `--global`) and an "Other commands" subsection. Reference example:
|
|
264
264
|
[`README.md § Pick specific AIs`](../../../README.md#pick-specific-ais) in
|
|
265
|
-
this repository
|
|
266
|
-
|
|
265
|
+
this repository — or any well-structured external skill README that
|
|
266
|
+
lists per-target install commands in a flat catalog.
|
|
267
267
|
|
|
268
268
|
Use the catalog when the package's primary install action varies by
|
|
269
269
|
platform; use a matrix table (Tool / Rules / Skills / Commands) for
|