@event4u/agent-config 2.25.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agent-src/commands/agent-handoff.md +15 -3
- package/.agent-src/commands/agent-status.md +12 -0
- package/.agent-src/commands/agents/audit.md +12 -0
- package/.agent-src/commands/agents/init.md +12 -0
- package/.agent-src/commands/agents/optimize.md +12 -0
- package/.agent-src/commands/agents/user/accept.md +12 -0
- package/.agent-src/commands/agents/user/init.md +12 -0
- package/.agent-src/commands/agents/user/review.md +12 -0
- package/.agent-src/commands/agents/user/show.md +12 -0
- package/.agent-src/commands/agents/user/update.md +12 -0
- package/.agent-src/commands/agents/user.md +12 -0
- package/.agent-src/commands/agents.md +12 -0
- package/.agent-src/commands/analyze-reference-repo.md +15 -3
- package/.agent-src/commands/bug-fix.md +13 -0
- package/.agent-src/commands/bug-investigate.md +13 -1
- package/.agent-src/commands/challenge-me/vision.md +12 -0
- package/.agent-src/commands/challenge-me/with-docs.md +12 -0
- package/.agent-src/commands/challenge-me.md +12 -0
- package/.agent-src/commands/chat-history/import.md +16 -4
- package/.agent-src/commands/chat-history/learn.md +15 -3
- package/.agent-src/commands/chat-history/show.md +17 -5
- package/.agent-src/commands/chat-history.md +14 -2
- package/.agent-src/commands/check-current-md.md +12 -0
- package/.agent-src/commands/commit/in-chunks.md +12 -0
- package/.agent-src/commands/commit.md +12 -0
- package/.agent-src/commands/compress.md +12 -0
- package/.agent-src/commands/context/create.md +17 -5
- package/.agent-src/commands/context/refactor.md +15 -3
- package/.agent-src/commands/context.md +12 -0
- package/.agent-src/commands/cost-report.md +12 -0
- package/.agent-src/commands/council/analysis.md +15 -3
- package/.agent-src/commands/council/debate.md +17 -5
- package/.agent-src/commands/council/default.md +17 -5
- package/.agent-src/commands/council/design.md +12 -0
- package/.agent-src/commands/council/optimize.md +12 -0
- package/.agent-src/commands/council/pr.md +12 -0
- package/.agent-src/commands/council.md +13 -1
- package/.agent-src/commands/create-pr/description-only.md +12 -0
- package/.agent-src/commands/create-pr.md +39 -0
- package/.agent-src/commands/e2e-heal.md +12 -0
- package/.agent-src/commands/e2e-plan.md +12 -0
- package/.agent-src/commands/estimate-ticket.md +12 -0
- package/.agent-src/commands/feature/dev.md +13 -1
- package/.agent-src/commands/feature/explore.md +12 -0
- package/.agent-src/commands/feature/plan.md +14 -2
- package/.agent-src/commands/feature/refactor.md +12 -0
- package/.agent-src/commands/feature/roadmap.md +14 -2
- package/.agent-src/commands/feature.md +12 -0
- package/.agent-src/commands/fix/ci.md +12 -0
- package/.agent-src/commands/fix/portability.md +12 -0
- package/.agent-src/commands/fix/pr-bot-comments.md +12 -0
- package/.agent-src/commands/fix/pr-comments.md +12 -0
- package/.agent-src/commands/fix/pr-developer-comments.md +12 -0
- package/.agent-src/commands/fix/refs.md +12 -0
- package/.agent-src/commands/fix/seeder.md +15 -2
- package/.agent-src/commands/fix.md +12 -0
- package/.agent-src/commands/ghostwriter/delete.md +20 -8
- package/.agent-src/commands/ghostwriter/fetch.md +19 -7
- package/.agent-src/commands/ghostwriter/list.md +19 -7
- package/.agent-src/commands/ghostwriter/show.md +14 -2
- package/.agent-src/commands/ghostwriter/write.md +15 -3
- package/.agent-src/commands/ghostwriter.md +14 -2
- package/.agent-src/commands/grill-me.md +12 -0
- package/.agent-src/commands/implement-ticket.md +12 -0
- package/.agent-src/commands/jira-ticket.md +12 -0
- package/.agent-src/commands/judge/on-diff.md +12 -0
- package/.agent-src/commands/judge/solo.md +12 -0
- package/.agent-src/commands/judge/steps.md +12 -0
- package/.agent-src/commands/judge.md +12 -0
- package/.agent-src/commands/memory/add.md +15 -3
- package/.agent-src/commands/memory/learn-low-impact.md +18 -6
- package/.agent-src/commands/memory/load.md +12 -0
- package/.agent-src/commands/memory/mine-session.md +12 -0
- package/.agent-src/commands/memory/promote.md +12 -0
- package/.agent-src/commands/memory/propose.md +12 -0
- package/.agent-src/commands/memory.md +12 -0
- package/.agent-src/commands/mode.md +12 -0
- package/.agent-src/commands/module/create.md +13 -0
- package/.agent-src/commands/module/explore.md +23 -7
- package/.agent-src/commands/module.md +12 -0
- package/.agent-src/commands/optimize/agents-dir.md +14 -2
- package/.agent-src/commands/optimize/augmentignore.md +64 -20
- package/.agent-src/commands/optimize/rtk.md +68 -30
- package/.agent-src/commands/optimize/skills.md +12 -0
- package/.agent-src/commands/optimize-prompt.md +12 -0
- package/.agent-src/commands/optimize.md +12 -0
- package/.agent-src/commands/orchestrate.md +13 -1
- package/.agent-src/commands/override/create.md +12 -0
- package/.agent-src/commands/override/manage.md +12 -0
- package/.agent-src/commands/override.md +12 -0
- package/.agent-src/commands/package-reset.md +12 -0
- package/.agent-src/commands/package-test.md +98 -10
- package/.agent-src/commands/post-as/ghostwriter.md +12 -0
- package/.agent-src/commands/post-as/me.md +13 -1
- package/.agent-src/commands/post-as.md +12 -0
- package/.agent-src/commands/prepare-for-review.md +12 -0
- package/.agent-src/commands/project-analyze.md +27 -15
- package/.agent-src/commands/project-health.md +13 -1
- package/.agent-src/commands/quality-fix.md +61 -27
- package/.agent-src/commands/refine-ticket.md +12 -0
- package/.agent-src/commands/research/deep.md +12 -0
- package/.agent-src/commands/research/report.md +12 -0
- package/.agent-src/commands/research.md +12 -0
- package/.agent-src/commands/review-changes.md +12 -0
- package/.agent-src/commands/review-routing.md +12 -0
- package/.agent-src/commands/roadmap/ai-council.md +15 -3
- package/.agent-src/commands/roadmap/create.md +13 -1
- package/.agent-src/commands/roadmap/process-full.md +12 -0
- package/.agent-src/commands/roadmap/process-phase.md +12 -0
- package/.agent-src/commands/roadmap/process-step.md +12 -0
- package/.agent-src/commands/roadmap.md +12 -0
- package/.agent-src/commands/rule-compliance-audit.md +12 -0
- package/.agent-src/commands/set-cost-profile.md +12 -0
- package/.agent-src/commands/sync-agent-settings.md +12 -0
- package/.agent-src/commands/sync-gitignore/fix.md +32 -13
- package/.agent-src/commands/sync-gitignore.md +13 -1
- package/.agent-src/commands/tests/create.md +12 -0
- package/.agent-src/commands/tests/execute.md +12 -0
- package/.agent-src/commands/tests.md +12 -0
- package/.agent-src/commands/threat-model.md +12 -0
- package/.agent-src/commands/update-form-request-messages.md +14 -1
- package/.agent-src/commands/upstream-contribute.md +12 -0
- package/.agent-src/commands/video/from-script.md +12 -0
- package/.agent-src/commands/video/scene.md +12 -0
- package/.agent-src/commands/video/stitch.md +13 -1
- package/.agent-src/commands/video/storyboard.md +12 -0
- package/.agent-src/commands/video.md +12 -0
- package/.agent-src/commands/work.md +12 -0
- package/.agent-src/contexts/augment-infrastructure.md +6 -9
- package/.agent-src/contexts/authority/scope-mechanics.md +11 -0
- package/.agent-src/contexts/communication/rules-auto/guidelines-mechanics.md +1 -1
- package/.agent-src/contexts/contracts/agents-md-anatomy.md +1 -1
- package/.agent-src/contexts/contracts/research-schema.md +1 -1
- package/.agent-src/contexts/documentation-hierarchy.md +2 -2
- package/.agent-src/contexts/execution/interrupt-examples.md +34 -0
- package/.agent-src/contexts/execution/roadmap-process-loop.md +19 -0
- package/.agent-src/contexts/skills-and-commands.md +2 -2
- package/.agent-src/ghostwriter/README.md +2 -2
- package/.agent-src/ghostwriter/fictional-fixture-v1.md +1 -1
- package/.agent-src/personas/README.md +1 -1
- package/.agent-src/personas/advisors/contrarian.md +1 -1
- package/.agent-src/personas/advisors/executor.md +1 -1
- package/.agent-src/personas/advisors/expansionist.md +1 -1
- package/.agent-src/personas/advisors/first-principles.md +1 -1
- package/.agent-src/personas/advisors/outsider.md +1 -1
- package/.agent-src/rules/agent-authority.md +12 -0
- package/.agent-src/rules/analysis-skill-routing.md +12 -0
- package/.agent-src/rules/architecture.md +37 -11
- package/.agent-src/rules/artifact-drafting-protocol.md +19 -1
- package/.agent-src/rules/artifact-engagement-recording.md +13 -1
- package/.agent-src/rules/ask-when-uncertain.md +12 -0
- package/.agent-src/rules/augment-edit-discipline.md +40 -0
- package/.agent-src/rules/augment-source-of-truth.md +15 -3
- package/.agent-src/rules/autonomous-execution.md +44 -1
- package/.agent-src/rules/caveman-speak.md +13 -1
- package/.agent-src/rules/cli-output-handling.md +13 -1
- package/.agent-src/rules/command-suggestion-policy.md +13 -1
- package/.agent-src/rules/commit-conventions.md +13 -1
- package/.agent-src/rules/commit-policy.md +12 -0
- package/.agent-src/rules/context-hygiene.md +16 -4
- package/.agent-src/rules/copilot-routing.md +13 -1
- package/.agent-src/rules/devcontainer-routing.md +13 -1
- package/.agent-src/rules/direct-answers.md +12 -0
- package/.agent-src/rules/docker-commands.md +13 -1
- package/.agent-src/rules/domain-adoption-policy.md +21 -10
- package/.agent-src/rules/domain-safety-disclaimer.md +126 -0
- package/.agent-src/rules/domain-safety-pii.md +154 -0
- package/.agent-src/rules/domain-safety-retention.md +98 -0
- package/.agent-src/rules/downstream-changes.md +17 -5
- package/.agent-src/rules/external-reference-deep-dive.md +13 -1
- package/.agent-src/rules/fast-path-marker-visibility.md +21 -1
- package/.agent-src/rules/framework-neutrality-in-generic-skills.md +142 -0
- package/.agent-src/rules/git-history-discipline.md +111 -0
- package/.agent-src/rules/guidelines.md +12 -0
- package/.agent-src/rules/improve-before-implement.md +13 -1
- package/.agent-src/rules/invite-challenge.md +13 -1
- package/.agent-src/rules/language-and-tone.md +12 -0
- package/.agent-src/rules/laravel-routing.md +13 -1
- package/.agent-src/rules/laravel-translations.md +13 -1
- package/.agent-src/rules/low-impact-corpus-privacy-floor.md +17 -5
- package/.agent-src/rules/markdown-safe-codeblocks.md +13 -1
- package/.agent-src/rules/media-governance-routing.md +27 -15
- package/.agent-src/rules/minimal-safe-diff.md +19 -1
- package/.agent-src/rules/missing-tool-handling.md +13 -1
- package/.agent-src/rules/model-recommendation.md +13 -1
- package/.agent-src/rules/no-attribution-footers.md +13 -1
- package/.agent-src/rules/no-cheap-questions.md +12 -0
- package/.agent-src/rules/no-roadmap-references.md +32 -18
- package/.agent-src/rules/non-destructive-by-default.md +12 -0
- package/.agent-src/rules/onboarding-gate.md +19 -6
- package/.agent-src/rules/package-ci-checks.md +12 -0
- package/.agent-src/rules/persona-governance.md +13 -1
- package/.agent-src/rules/php-coding.md +13 -1
- package/.agent-src/rules/preservation-guard.md +13 -1
- package/.agent-src/rules/provider-lifecycle-discipline.md +14 -2
- package/.agent-src/rules/reviewer-awareness.md +13 -1
- package/.agent-src/rules/roadmap-ci-steps-policy.md +13 -1
- package/.agent-src/rules/roadmap-progress-sync.md +18 -1
- package/.agent-src/rules/role-mode-adherence.md +13 -1
- package/.agent-src/rules/rule-type-governance.md +13 -1
- package/.agent-src/rules/runtime-safety.md +13 -1
- package/.agent-src/rules/scope-control.md +12 -0
- package/.agent-src/rules/security-sensitive-stop.md +13 -1
- package/.agent-src/rules/size-enforcement.md +12 -0
- package/.agent-src/rules/skill-improvement-trigger.md +13 -1
- package/.agent-src/rules/skill-quality.md +13 -1
- package/.agent-src/rules/slash-command-routing-policy.md +13 -1
- package/.agent-src/rules/symfony-routing.md +13 -1
- package/.agent-src/rules/think-before-action.md +13 -1
- package/.agent-src/rules/token-efficiency.md +13 -1
- package/.agent-src/rules/token-optimizer-maintenance.md +12 -0
- package/.agent-src/rules/tool-safety.md +13 -1
- package/.agent-src/rules/ui-audit-gate.md +13 -1
- package/.agent-src/rules/upstream-proposal.md +13 -1
- package/.agent-src/rules/user-interaction.md +13 -1
- package/.agent-src/rules/user-interrupt-priority.md +58 -0
- package/.agent-src/rules/verify-before-complete.md +23 -2
- package/.agent-src/skills/accessibility-auditor/SKILL.md +12 -0
- package/.agent-src/skills/activation-design/SKILL.md +12 -0
- package/.agent-src/skills/adr-create/SKILL.md +12 -0
- package/.agent-src/skills/adversarial-review/SKILL.md +13 -1
- package/.agent-src/skills/agent-docs-writing/SKILL.md +16 -4
- package/.agent-src/skills/agents-md-thin-root/SKILL.md +14 -2
- package/.agent-src/skills/ai-council/SKILL.md +29 -15
- package/.agent-src/skills/analysis-autonomous-mode/SKILL.md +12 -0
- package/.agent-src/skills/analysis-skill-router/SKILL.md +12 -0
- package/.agent-src/skills/api-design/SKILL.md +13 -3
- package/.agent-src/skills/api-endpoint/SKILL.md +70 -154
- package/.agent-src/skills/api-testing/SKILL.md +23 -0
- package/.agent-src/skills/architecture-review-lens/SKILL.md +12 -0
- package/.agent-src/skills/artisan-commands/SKILL.md +12 -0
- package/.agent-src/skills/async-python-patterns/SKILL.md +13 -1
- package/.agent-src/skills/authz-review/SKILL.md +12 -2
- package/.agent-src/skills/aws-infrastructure/SKILL.md +12 -0
- package/.agent-src/skills/blade-ui/SKILL.md +12 -0
- package/.agent-src/skills/blast-radius-analyzer/SKILL.md +12 -0
- package/.agent-src/skills/bug-analyzer/SKILL.md +14 -2
- package/.agent-src/skills/build-buy-partner/SKILL.md +12 -0
- package/.agent-src/skills/canvas-design/SKILL.md +12 -0
- package/.agent-src/skills/character-consistency/SKILL.md +23 -11
- package/.agent-src/skills/check-refs/SKILL.md +12 -0
- package/.agent-src/skills/churn-prevention/SKILL.md +12 -0
- package/.agent-src/skills/code-refactoring/SKILL.md +52 -34
- package/.agent-src/skills/code-review/SKILL.md +53 -36
- package/.agent-src/skills/command-routing/SKILL.md +12 -0
- package/.agent-src/skills/command-writing/SKILL.md +14 -2
- package/.agent-src/skills/comp-banding/SKILL.md +12 -0
- package/.agent-src/skills/competitive-moat-analysis/SKILL.md +12 -2
- package/.agent-src/skills/competitive-positioning/SKILL.md +12 -2
- package/.agent-src/skills/composer-packages/SKILL.md +12 -0
- package/.agent-src/skills/compress-memory/SKILL.md +12 -0
- package/.agent-src/skills/content-funnel-design/SKILL.md +12 -2
- package/.agent-src/skills/context-authoring/SKILL.md +19 -7
- package/.agent-src/skills/context-document/SKILL.md +17 -5
- package/.agent-src/skills/contracts-cognition/SKILL.md +12 -2
- package/.agent-src/skills/conventional-commits-writing/SKILL.md +12 -0
- package/.agent-src/skills/copilot-agents-optimization/SKILL.md +13 -1
- package/.agent-src/skills/copilot-config/SKILL.md +12 -0
- package/.agent-src/skills/customer-research/SKILL.md +12 -0
- package/.agent-src/skills/dashboard-design/SKILL.md +13 -2
- package/.agent-src/skills/data-flow-mapper/SKILL.md +12 -0
- package/.agent-src/skills/data-handling-judgment/SKILL.md +12 -2
- package/.agent-src/skills/database/SKILL.md +22 -5
- package/.agent-src/skills/dcf-modeling/SKILL.md +12 -2
- package/.agent-src/skills/deal-qualification-meddic/SKILL.md +12 -2
- package/.agent-src/skills/decision-record/SKILL.md +12 -0
- package/.agent-src/skills/deep-reading-analyst/SKILL.md +12 -0
- package/.agent-src/skills/defense-in-depth/SKILL.md +13 -1
- package/.agent-src/skills/dependency-upgrade/SKILL.md +77 -19
- package/.agent-src/skills/description-assist/SKILL.md +12 -0
- package/.agent-src/skills/design-review/SKILL.md +12 -0
- package/.agent-src/skills/devcontainer/SKILL.md +12 -0
- package/.agent-src/skills/developer-like-execution/SKILL.md +37 -14
- package/.agent-src/skills/discovery-interview/SKILL.md +12 -2
- package/.agent-src/skills/doc-coauthoring/SKILL.md +12 -0
- package/.agent-src/skills/docker/SKILL.md +12 -0
- package/.agent-src/skills/editorial-calendar/SKILL.md +12 -2
- package/.agent-src/skills/eloquent/SKILL.md +13 -1
- package/.agent-src/skills/eloquent/evals/triggers.json +1 -1
- package/.agent-src/skills/error-handling-patterns/SKILL.md +13 -1
- package/.agent-src/skills/estimate-ticket/SKILL.md +12 -0
- package/.agent-src/skills/existing-ui-audit/SKILL.md +12 -0
- package/.agent-src/skills/expansion-playbook/SKILL.md +12 -0
- package/.agent-src/skills/fe-design/SKILL.md +12 -0
- package/.agent-src/skills/feature-planning/SKILL.md +13 -1
- package/.agent-src/skills/file-editor/SKILL.md +57 -19
- package/.agent-src/skills/finishing-a-development-branch/SKILL.md +14 -2
- package/.agent-src/skills/flux/SKILL.md +12 -0
- package/.agent-src/skills/forecast-accuracy/SKILL.md +12 -2
- package/.agent-src/skills/forecasting/SKILL.md +12 -2
- package/.agent-src/skills/form-handler/SKILL.md +12 -0
- package/.agent-src/skills/fundraising-narrative/SKILL.md +12 -2
- package/.agent-src/skills/funnel-analysis/SKILL.md +12 -0
- package/.agent-src/skills/git-workflow/SKILL.md +16 -4
- package/.agent-src/skills/github-ci/SKILL.md +12 -0
- package/.agent-src/skills/grafana/SKILL.md +12 -0
- package/.agent-src/skills/gtm-launch/SKILL.md +12 -2
- package/.agent-src/skills/guideline-writing/SKILL.md +12 -0
- package/.agent-src/skills/hiring-loop-design/SKILL.md +12 -0
- package/.agent-src/skills/incident-commander/SKILL.md +12 -2
- package/.agent-src/skills/jira-integration/SKILL.md +12 -0
- package/.agent-src/skills/jobs-events/SKILL.md +12 -0
- package/.agent-src/skills/judge-bug-hunter/SKILL.md +12 -0
- package/.agent-src/skills/judge-code-quality/SKILL.md +12 -0
- package/.agent-src/skills/judge-security-auditor/SKILL.md +12 -0
- package/.agent-src/skills/judge-test-coverage/SKILL.md +12 -0
- package/.agent-src/skills/laravel/SKILL.md +12 -0
- package/.agent-src/skills/laravel-api-endpoint/SKILL.md +199 -0
- package/.agent-src/skills/{dto-creator → laravel-dto}/SKILL.md +19 -6
- package/.agent-src/skills/laravel-horizon/SKILL.md +12 -0
- package/.agent-src/skills/laravel-mail/SKILL.md +12 -0
- package/.agent-src/skills/laravel-middleware/SKILL.md +12 -0
- package/.agent-src/skills/{migration-creator → laravel-migration}/SKILL.md +23 -10
- package/.agent-src/skills/laravel-notifications/SKILL.md +12 -0
- package/.agent-src/skills/laravel-pennant/SKILL.md +12 -0
- package/.agent-src/skills/laravel-pulse/SKILL.md +12 -0
- package/.agent-src/skills/laravel-reverb/SKILL.md +15 -3
- package/.agent-src/skills/laravel-scheduling/SKILL.md +12 -0
- package/.agent-src/skills/laravel-validation/SKILL.md +12 -0
- package/.agent-src/skills/{websocket → laravel-websocket}/SKILL.md +16 -3
- package/.agent-src/skills/launch-readiness/SKILL.md +12 -2
- package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +16 -4
- package/.agent-src/skills/lint-skills/SKILL.md +12 -0
- package/.agent-src/skills/livewire/SKILL.md +12 -0
- package/.agent-src/skills/livewire-architect/SKILL.md +12 -0
- package/.agent-src/skills/logging-monitoring/SKILL.md +12 -0
- package/.agent-src/skills/market-entry-analysis/SKILL.md +12 -0
- package/.agent-src/skills/markitdown/SKILL.md +14 -2
- package/.agent-src/skills/mcp/SKILL.md +12 -0
- package/.agent-src/skills/mcp-builder/SKILL.md +14 -2
- package/.agent-src/skills/md-language-check/SKILL.md +13 -1
- package/.agent-src/skills/memory-consolidation/SKILL.md +12 -0
- package/.agent-src/skills/merge-conflicts/SKILL.md +61 -17
- package/.agent-src/skills/messaging-architecture/SKILL.md +12 -2
- package/.agent-src/skills/migration-architect/SKILL.md +18 -6
- package/.agent-src/skills/mobile-e2e-strategy/SKILL.md +12 -0
- package/.agent-src/skills/module-management/SKILL.md +13 -0
- package/.agent-src/skills/motion-choreographer/SKILL.md +16 -4
- package/.agent-src/skills/multi-tenancy/SKILL.md +29 -10
- package/.agent-src/skills/nextjs-patterns/SKILL.md +12 -0
- package/.agent-src/skills/okr-tree-modeling/SKILL.md +12 -2
- package/.agent-src/skills/onboarding-design/SKILL.md +12 -0
- package/.agent-src/skills/onboarding-program/SKILL.md +12 -0
- package/.agent-src/skills/one-on-one-cadence/SKILL.md +12 -0
- package/.agent-src/skills/openapi/SKILL.md +13 -1
- package/.agent-src/skills/org-design/SKILL.md +12 -0
- package/.agent-src/skills/override-management/SKILL.md +12 -0
- package/.agent-src/skills/perf-feedback-craft/SKILL.md +12 -0
- package/.agent-src/skills/performance/SKILL.md +12 -0
- package/.agent-src/skills/performance-analysis/SKILL.md +12 -0
- package/.agent-src/skills/persona-writing/SKILL.md +12 -0
- package/.agent-src/skills/pest-testing/SKILL.md +30 -0
- package/.agent-src/skills/php-coder/SKILL.md +12 -0
- package/.agent-src/skills/php-debugging/SKILL.md +40 -0
- package/.agent-src/skills/php-service/SKILL.md +15 -3
- package/.agent-src/skills/pipeline-strategy/SKILL.md +12 -2
- package/.agent-src/skills/pixar-storyteller/SKILL.md +17 -5
- package/.agent-src/skills/playwright-architect/SKILL.md +12 -2
- package/.agent-src/skills/playwright-testing/SKILL.md +28 -1
- package/.agent-src/skills/po-discovery/SKILL.md +12 -0
- package/.agent-src/skills/positioning-strategy/SKILL.md +12 -0
- package/.agent-src/skills/privacy-review/SKILL.md +12 -2
- package/.agent-src/skills/project-analysis-core/SKILL.md +12 -0
- package/.agent-src/skills/project-analysis-hypothesis-driven/SKILL.md +12 -0
- package/.agent-src/skills/project-analysis-laravel/SKILL.md +12 -0
- package/.agent-src/skills/project-analysis-nextjs/SKILL.md +12 -0
- package/.agent-src/skills/project-analysis-node-express/SKILL.md +12 -0
- package/.agent-src/skills/project-analysis-react/SKILL.md +12 -0
- package/.agent-src/skills/project-analysis-symfony/SKILL.md +12 -0
- package/.agent-src/skills/project-analysis-zend-laminas/SKILL.md +12 -0
- package/.agent-src/skills/project-analyzer/SKILL.md +98 -60
- package/.agent-src/skills/project-docs/SKILL.md +25 -13
- package/.agent-src/skills/prompt-engineering-patterns/SKILL.md +13 -1
- package/.agent-src/skills/prompt-optimizer/SKILL.md +13 -1
- package/.agent-src/skills/quality-tools/SKILL.md +12 -2
- package/.agent-src/skills/react-native-setup/SKILL.md +12 -0
- package/.agent-src/skills/react-shadcn-ui/SKILL.md +12 -0
- package/.agent-src/skills/readme-reviewer/SKILL.md +12 -0
- package/.agent-src/skills/readme-writing/SKILL.md +12 -0
- package/.agent-src/skills/readme-writing-package/SKILL.md +106 -23
- package/.agent-src/skills/receiving-code-review/SKILL.md +12 -0
- package/.agent-src/skills/refine-prompt/SKILL.md +13 -1
- package/.agent-src/skills/refine-ticket/SKILL.md +14 -2
- package/.agent-src/skills/refine-ticket/detection-map.yml +2 -2
- package/.agent-src/skills/release-comms/SKILL.md +12 -2
- package/.agent-src/skills/repomix-packer/SKILL.md +13 -1
- package/.agent-src/skills/requesting-code-review/SKILL.md +12 -0
- package/.agent-src/skills/retention-loops/SKILL.md +12 -0
- package/.agent-src/skills/review-routing/SKILL.md +12 -0
- package/.agent-src/skills/rice-prioritization/SKILL.md +12 -0
- package/.agent-src/skills/risk-officer/SKILL.md +12 -0
- package/.agent-src/skills/roadmap-management/SKILL.md +13 -1
- package/.agent-src/skills/roadmap-writing/SKILL.md +12 -0
- package/.agent-src/skills/rtk-output-filtering/SKILL.md +35 -8
- package/.agent-src/skills/rule-refactor/SKILL.md +157 -0
- package/.agent-src/skills/rule-writing/SKILL.md +46 -8
- package/.agent-src/skills/runway-cognition/SKILL.md +12 -2
- package/.agent-src/skills/scenario-modeling/SKILL.md +12 -2
- package/.agent-src/skills/scene-expander/SKILL.md +18 -6
- package/.agent-src/skills/script-writing/SKILL.md +13 -1
- package/.agent-src/skills/secrets-management/SKILL.md +13 -3
- package/.agent-src/skills/security/SKILL.md +50 -29
- package/.agent-src/skills/security-audit/SKILL.md +12 -0
- package/.agent-src/skills/sentry-integration/SKILL.md +12 -0
- package/.agent-src/skills/sequential-thinking/SKILL.md +12 -0
- package/.agent-src/skills/skill-improvement-pipeline/SKILL.md +12 -0
- package/.agent-src/skills/skill-management/SKILL.md +12 -0
- package/.agent-src/skills/skill-reviewer/SKILL.md +13 -1
- package/.agent-src/skills/skill-writing/SKILL.md +12 -0
- package/.agent-src/skills/sql-writing/SKILL.md +12 -0
- package/.agent-src/skills/stakeholder-tradeoff/SKILL.md +12 -0
- package/.agent-src/skills/subagent-orchestration/SKILL.md +13 -1
- package/.agent-src/skills/symfony-workflow/SKILL.md +12 -0
- package/.agent-src/skills/systematic-debugging/SKILL.md +12 -0
- package/.agent-src/skills/tailwind-engineer/SKILL.md +12 -0
- package/.agent-src/skills/tech-debt-tracker/SKILL.md +12 -2
- package/.agent-src/skills/technical-specification/SKILL.md +12 -0
- package/.agent-src/skills/terraform/SKILL.md +12 -0
- package/.agent-src/skills/terragrunt/SKILL.md +12 -0
- package/.agent-src/skills/test-driven-development/SKILL.md +16 -4
- package/.agent-src/skills/test-performance/SKILL.md +19 -6
- package/.agent-src/skills/testing-anti-patterns/SKILL.md +13 -1
- package/.agent-src/skills/threat-modeling/SKILL.md +12 -0
- package/.agent-src/skills/throughput-vs-morale-tradeoff/SKILL.md +12 -0
- package/.agent-src/skills/token-optimizer/SKILL.md +12 -0
- package/.agent-src/skills/traefik/SKILL.md +12 -0
- package/.agent-src/skills/ui-component-architect/SKILL.md +12 -0
- package/.agent-src/skills/unit-economics-modeling/SKILL.md +12 -2
- package/.agent-src/skills/universal-project-analysis/SKILL.md +12 -0
- package/.agent-src/skills/upstream-contribute/SKILL.md +12 -0
- package/.agent-src/skills/using-git-worktrees/SKILL.md +12 -0
- package/.agent-src/skills/validate-feature-fit/SKILL.md +12 -0
- package/.agent-src/skills/verify-completion-evidence/SKILL.md +36 -27
- package/.agent-src/skills/video-director/SKILL.md +18 -6
- package/.agent-src/skills/vision-articulation/SKILL.md +12 -0
- package/.agent-src/skills/voc-extract/SKILL.md +12 -2
- package/.agent-src/skills/voice-and-tone-design/SKILL.md +12 -2
- package/.agent-src/templates/agent-settings.md +5 -5
- package/.agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/.agent-src/templates/agents/memory/ownership.example.yml +1 -1
- package/.agent-src/templates/agents/proposal.example.md +12 -0
- package/.agent-src/templates/command.md +1 -1
- package/.agent-src/templates/contexts/auth-model.md +2 -2
- package/.agent-src/templates/contexts/data-sensitivity.md +3 -3
- package/.agent-src/templates/contexts/deployment-order.md +2 -2
- package/.agent-src/templates/contexts/observability.md +3 -3
- package/.agent-src/templates/contexts/tenant-boundaries.md +3 -3
- package/.agent-src/templates/contexts.md +1 -1
- package/.agent-src/templates/copilot-instructions.md +2 -2
- package/.agent-src/templates/rule.md +3 -3
- package/.agent-src/templates/scripts/work_engine/_lib/agent_settings.py +3 -3
- package/.agent-src/templates/scripts/work_engine/cli.py +6 -6
- package/.agent-src/templates/scripts/work_engine/emitters.py +29 -4
- package/.agent-src/templates/scripts/work_engine/hooks/builtin/decision_trace.py +3 -3
- package/.agent-src/templates/scripts/work_engine/state.py +53 -0
- package/.agent-src/templates/skill-archive-note.md +4 -4
- package/.claude-plugin/marketplace.json +6 -5
- package/AGENTS.md +5 -4
- package/CHANGELOG.md +178 -194
- package/CONTRIBUTING.md +61 -0
- package/README.md +23 -20
- package/config/agent-settings.template.yml +11 -1
- package/config/discovery/packs.yml +142 -0
- package/config/discovery/unassigned-artefacts.yml +66 -0
- package/config/discovery/workspaces.yml +59 -0
- package/config/gitignore-block.txt +17 -20
- package/dist/cli/agent-config.js +199 -0
- package/dist/cli/agent-config.js.map +1 -0
- package/dist/cli/bash/runBash.js +40 -0
- package/dist/cli/bash/runBash.js.map +1 -0
- package/dist/cli/commands/doctorShell.js +91 -0
- package/dist/cli/commands/doctorShell.js.map +1 -0
- package/dist/cli/commands/packs.js +59 -0
- package/dist/cli/commands/packs.js.map +1 -0
- package/dist/cli/commands/settings.js +35 -0
- package/dist/cli/commands/settings.js.map +1 -0
- package/dist/cli/commands/uiServe.js +110 -0
- package/dist/cli/commands/uiServe.js.map +1 -0
- package/dist/cli/commands/versions.js +64 -0
- package/dist/cli/commands/versions.js.map +1 -0
- package/dist/cli/commands/workspaces.js +58 -0
- package/dist/cli/commands/workspaces.js.map +1 -0
- package/dist/cli/discovery/loadManifest.js +62 -0
- package/dist/cli/discovery/loadManifest.js.map +1 -0
- package/dist/cli/log/logger.js +41 -0
- package/dist/cli/log/logger.js.map +1 -0
- package/dist/cli/paths.js +60 -0
- package/dist/cli/paths.js.map +1 -0
- package/dist/cli/python/resolvePython.js +38 -0
- package/dist/cli/python/resolvePython.js.map +1 -0
- package/dist/cli/registry.js +75 -0
- package/dist/cli/registry.js.map +1 -0
- package/dist/discovery/discovery-manifest.json +9195 -0
- package/dist/discovery/discovery-manifest.json.sha256 +1 -0
- package/dist/discovery/discovery-manifest.summary.md +93 -0
- package/dist/mcp/awesome-mcp-servers.row.md +1 -0
- package/dist/mcp/mcp-cloudflare-catalogue.json +27 -0
- package/dist/mcp/registry-manifest.json +63 -0
- package/dist/server/app.js +117 -0
- package/dist/server/app.js.map +1 -0
- package/dist/server/io/atomicMultiWrite.js +202 -0
- package/dist/server/io/atomicMultiWrite.js.map +1 -0
- package/dist/server/io/atomicWrite.js +79 -0
- package/dist/server/io/atomicWrite.js.map +1 -0
- package/dist/server/io/substituteTemplate.js +87 -0
- package/dist/server/io/substituteTemplate.js.map +1 -0
- package/dist/server/io/yamlIO.js +140 -0
- package/dist/server/io/yamlIO.js.map +1 -0
- package/dist/server/port.js +97 -0
- package/dist/server/port.js.map +1 -0
- package/dist/server/routes/discovery.js +72 -0
- package/dist/server/routes/discovery.js.map +1 -0
- package/dist/server/routes/ping.js +49 -0
- package/dist/server/routes/ping.js.map +1 -0
- package/dist/server/routes/schema.js +41 -0
- package/dist/server/routes/schema.js.map +1 -0
- package/dist/server/routes/settings.js +155 -0
- package/dist/server/routes/settings.js.map +1 -0
- package/dist/server/routes/userMd.js +117 -0
- package/dist/server/routes/userMd.js.map +1 -0
- package/dist/server/routes/wizard.js +138 -0
- package/dist/server/routes/wizard.js.map +1 -0
- package/dist/server/schemas/settings.js +138 -0
- package/dist/server/schemas/settings.js.map +1 -0
- package/dist/server/token.js +68 -0
- package/dist/server/token.js.map +1 -0
- package/dist/server/writeRoot.js +67 -0
- package/dist/server/writeRoot.js.map +1 -0
- package/dist/server/writeRoot.test.js +73 -0
- package/dist/server/writeRoot.test.js.map +1 -0
- package/dist/shared/userMd/formAdapter.js +105 -0
- package/dist/shared/userMd/formAdapter.js.map +1 -0
- package/dist/shared/userMd/schema.js +118 -0
- package/dist/shared/userMd/schema.js.map +1 -0
- package/dist/shared/userMd/utils.js +74 -0
- package/dist/shared/userMd/utils.js.map +1 -0
- package/dist/ui/assets/index-BTRcKDlB.js +39 -0
- package/dist/ui/assets/index-BTRcKDlB.js.map +1 -0
- package/dist/ui/assets/index-Dqfhmg-d.css +1 -0
- package/dist/ui/index.html +14 -0
- package/docs/adrs/caveman/0001-default-off-until-bench.md +2 -2
- package/docs/adrs/cost/0001-hard-stop-hook.md +1 -1
- package/docs/adrs/schema/0001-json-schema-frontmatter.md +4 -4
- package/docs/adrs/schema/README.md +1 -1
- package/docs/adrs/smoke/0001-per-tier-smoke-scripts.md +2 -2
- package/docs/architecture/setup-vs-settings-shared-surface.md +114 -0
- package/docs/architecture.md +4 -3
- package/docs/archive/CHANGELOG-pre-2.2.0.md +7 -7
- package/docs/archive/CHANGELOG-pre-2.25.0.md +191 -0
- package/docs/archive/CHANGELOG-pre-3.0.0.md +130 -0
- package/docs/catalog.md +77 -84
- package/docs/contracts/STABILITY.md +1 -1
- package/docs/contracts/adr-architectural-consensus-mechanism.md +5 -5
- package/docs/contracts/adr-chat-history-split.md +1 -1
- package/docs/contracts/adr-implement-ticket-runtime.md +1 -1
- package/docs/contracts/adr-install-user-type-axis.md +1 -1
- package/docs/contracts/adr-mcp-runtime.md +2 -2
- package/docs/contracts/agent-user-schema.md +11 -2
- package/docs/contracts/ai-council-config.md +13 -13
- package/docs/contracts/audit-log-v1.md +2 -2
- package/docs/contracts/command-clusters.md +2 -2
- package/docs/contracts/compression-default-kill-criterion.md +3 -3
- package/docs/contracts/decision-trace-v1.md +5 -5
- package/docs/contracts/discovery-manifest.schema.json +146 -0
- package/docs/contracts/explain-trace.schema.json +144 -0
- package/docs/contracts/file-ownership-matrix.json +515 -309
- package/docs/contracts/file-ownership-matrix.md +1 -1
- package/docs/contracts/ghostwriter-schema.md +3 -3
- package/docs/contracts/hook-architecture-v1.md +10 -10
- package/docs/contracts/kernel-membership.md +21 -4
- package/docs/contracts/linter-structural-model.md +3 -3
- package/docs/contracts/load-context-schema.md +5 -5
- package/docs/contracts/local-server-api.md +134 -0
- package/docs/contracts/low-impact-corpus-format.md +1 -1
- package/docs/contracts/mcp-cloud-scope.md +2 -2
- package/docs/contracts/mcp-discovery-phase-notice.md +1 -1
- package/docs/contracts/mcp-phase-1-scope.md +5 -4
- package/docs/contracts/mcp-registry-manifest.schema.json +129 -0
- package/docs/contracts/mcp-tool-stub-envelope.md +1 -1
- package/docs/contracts/memory-visibility-v1.md +2 -2
- package/docs/contracts/multi-tool-projection-fidelity.md +3 -3
- package/docs/contracts/namespace.md +1 -1
- package/docs/contracts/one-off-script-lifecycle.md +1 -1
- package/docs/contracts/package-self-orientation.md +1 -1
- package/docs/contracts/provider-lifecycle.md +2 -2
- package/docs/contracts/router-blending.md +1 -1
- package/docs/contracts/rule-classification.md +2 -2
- package/docs/contracts/settings-api.md +160 -0
- package/docs/contracts/settings-gui-agent-mode.schema.json +128 -0
- package/docs/contracts/smoke-contracts.md +8 -8
- package/docs/contracts/tier-3-contrib-plugin.md +1 -1
- package/docs/contracts/universal-skills.md +1 -1
- package/docs/contracts/write-engine.md +1 -1
- package/docs/customization.md +137 -11
- package/docs/decisions/ADR-001-kernel-swap-deferred.md +1 -1
- package/docs/decisions/ADR-002-kernel-bucket-overrides.md +1 -1
- package/docs/decisions/ADR-004-rule-governance-pruning.md +8 -8
- package/docs/decisions/ADR-006-skill-tools-python-pilot.md +5 -5
- package/docs/decisions/ADR-007-agent-discovery-scopes.md +4 -4
- package/docs/decisions/ADR-008-installed-tools-manifest.md +2 -2
- package/docs/decisions/ADR-010-profile-pack-preset-boundary.md +2 -2
- package/docs/decisions/ADR-011-domain-pack-readiness.md +4 -4
- package/docs/decisions/ADR-012-typescript-cli-shell.md +162 -0
- package/docs/decisions/ADR-013-discovery-frontmatter-contract.md +210 -0
- package/docs/decisions/ADR-014-gui-framework-choice.md +136 -0
- package/docs/decisions/ADR-rule-kernel-and-router.md +2 -2
- package/docs/decisions/INDEX.md +3 -0
- package/docs/distribution/mcp-submission-checklist.md +95 -0
- package/docs/distribution/topics-equivalents-decay-policy.md +51 -0
- package/docs/examples/agent-user.example.md +3 -1
- package/docs/getting-started.md +6 -5
- package/docs/guidelines/agent-infra/ask-when-uncertain-demos.md +1 -1
- package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +10 -1
- package/docs/guidelines/agent-infra/rule-type-governance.md +2 -2
- package/docs/guidelines/agent-infra/tool-integration.md +1 -1
- package/docs/guidelines/php/api-design.md +2 -2
- package/docs/guidelines/php/controllers.md +1 -1
- package/docs/guidelines/php/resources.md +1 -1
- package/docs/guidelines/php/validations.md +1 -1
- package/docs/guidelines/prompt-templates.md +2 -2
- package/docs/hook-payload-capture.md +3 -3
- package/docs/installation.md +12 -4
- package/docs/migrations/commands-1.15.0.md +3 -3
- package/docs/parity/bench-ruflo.json +1 -1
- package/docs/parity/ruflo.md +3 -3
- package/docs/profiles.md +1 -1
- package/docs/quality.md +2 -2
- package/docs/recruits/_template.md +3 -3
- package/docs/setup/enterprise-and-offline.md +3 -3
- package/docs/setup/mcp-server-docker.md +5 -3
- package/docs/skills-catalog.md +62 -18
- package/docs/wizard.md +121 -0
- package/llms.txt +61 -17
- package/package.json +46 -3
- package/scripts/__pycache__/validate_frontmatter.cpython-312.pyc +0 -0
- package/scripts/_archive/README.md +2 -2
- package/scripts/_archive/_p4_migrate.py +1 -1
- package/scripts/_cli/cmd_doctor.py +5 -5
- package/scripts/_cli/cmd_explain.py +106 -2
- package/scripts/_cli/cmd_migrate.py +2 -2
- package/scripts/_cli/explain_last/__init__.py +122 -0
- package/scripts/_cli/explain_last/assumptions.py +59 -0
- package/scripts/_cli/explain_last/council.py +105 -0
- package/scripts/_cli/explain_last/halt.py +44 -0
- package/scripts/_cli/explain_last/inputs.py +125 -0
- package/scripts/_cli/explain_last/memory.py +94 -0
- package/scripts/_cli/explain_last/provider.py +52 -0
- package/scripts/_cli/explain_last/render.py +52 -0
- package/scripts/_cli/explain_last/route.py +58 -0
- package/scripts/_cli/explain_last/scrubber.py +105 -0
- package/scripts/_cli/explain_last/sections/__init__.py +35 -0
- package/scripts/_cli/explain_last/sections/assumptions.py +21 -0
- package/scripts/_cli/explain_last/sections/council.py +27 -0
- package/scripts/_cli/explain_last/sections/halt.py +31 -0
- package/scripts/_cli/explain_last/sections/header.py +24 -0
- package/scripts/_cli/explain_last/sections/inputs.py +27 -0
- package/scripts/_cli/explain_last/sections/memory.py +21 -0
- package/scripts/_cli/explain_last/sections/pack.py +16 -0
- package/scripts/_cli/explain_last/sections/provider.py +26 -0
- package/scripts/_cli/explain_last/sections/route.py +22 -0
- package/scripts/_cli/explain_last/state_loader.py +76 -0
- package/scripts/_dispatch.bash +954 -0
- package/scripts/_lib/agent_settings.py +3 -3
- package/scripts/_lib/agents_overlay.py +3 -3
- package/scripts/_phase4_bucket.py +210 -0
- package/scripts/agent-config +35 -943
- package/scripts/ai-video/adapters/higgsfield.sh +1 -1
- package/scripts/ai-video/adapters/sora.sh +1 -1
- package/scripts/ai-video/test-pipeline.sh +2 -2
- package/scripts/ai_council/_default_prices.py +5 -5
- package/scripts/ai_council/advisors.py +1 -1
- package/scripts/ai_council/clients.py +2 -2
- package/scripts/ai_council/compile_corpus.py +9 -8
- package/scripts/ai_council/config.py +3 -3
- package/scripts/ai_council/events_log.py +8 -4
- package/scripts/ai_council/low_impact_corpus.py +1 -1
- package/scripts/ai_council/low_impact_intake.py +1 -1
- package/scripts/ai_council/one_off_archive/2026-05/_one_off_budget_v2_audit.py +2 -2
- package/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_optimization.py +1 -1
- package/scripts/ai_council/one_off_archive/2026-05/_one_off_tier_retrofit.py +3 -3
- package/scripts/ai_council/pricing.py +8 -7
- package/scripts/ai_council/probation_gate.py +1 -1
- package/scripts/ai_council/redact_low_impact_entry.py +1 -1
- package/scripts/ai_council/session.py +13 -13
- package/scripts/ai_council/shadow_dispatch.py +2 -2
- package/scripts/annotate_discovery.py +149 -0
- package/scripts/audit_adr_coverage.py +1 -1
- package/scripts/audit_auto_rules.py +2 -2
- package/scripts/audit_cloud_compatibility.py +1 -1
- package/scripts/audit_command_surface.py +2 -2
- package/scripts/audit_likelihood.py +4 -4
- package/scripts/audit_overlap.py +3 -3
- package/scripts/audit_user_type_axis.py +1 -1
- package/scripts/build_discovery_manifest.py +302 -0
- package/scripts/build_linear_digest.py +0 -1
- package/scripts/build_mcp_registry_manifest.py +181 -0
- package/scripts/build_rule_trigger_matrix.py +2 -2
- package/scripts/capture_showcase_session.py +1 -1
- package/scripts/chat_history.py +5 -5
- package/scripts/check_always_budget.py +7 -2
- package/scripts/check_council_layout.py +26 -20
- package/scripts/check_council_references.py +10 -10
- package/scripts/check_discovery_determinism.py +70 -0
- package/scripts/check_kernel_rule_bundle.py +2 -2
- package/scripts/check_no_roadmap_refs.py +2 -2
- package/scripts/check_one_off_location.py +1 -1
- package/scripts/check_public_links.py +2 -2
- package/scripts/check_references.py +14 -21
- package/scripts/check_release_includes_discovery.py +61 -0
- package/scripts/ci_summary.py +2 -2
- package/scripts/ci_time_ratio.py +1 -1
- package/scripts/command_suggester/__init__.py +1 -1
- package/scripts/context_hygiene_hook.py +2 -2
- package/scripts/council_cli.py +22 -22
- package/scripts/council_prune.py +3 -3
- package/scripts/extract_audit_patterns.py +2 -2
- package/scripts/gen_discovery_baseline.py +127 -0
- package/scripts/generate_ownership_matrix.py +1 -1
- package/scripts/hook_manifest.yaml +5 -5
- package/scripts/hooks/cline-dispatcher.sh +1 -1
- package/scripts/hooks/cowork-dispatcher.sh +1 -1
- package/scripts/hooks/dispatch_hook.py +3 -3
- package/scripts/hooks/gemini-dispatcher.sh +1 -1
- package/scripts/hooks/replay_hook.py +1 -1
- package/scripts/hooks/state_io.py +5 -5
- package/scripts/hooks_doctor.py +4 -4
- package/scripts/install-hooks.sh +2 -2
- package/scripts/install.py +3 -3
- package/scripts/install.sh +120 -18
- package/scripts/inventory_frontmatter.py +1 -1
- package/scripts/lint_agents_layout.py +103 -0
- package/scripts/lint_archived_skills.py +3 -3
- package/scripts/lint_artefact_frontmatter.py +180 -0
- package/scripts/lint_discovery_manifest.py +136 -0
- package/scripts/lint_discovery_vocabulary.py +148 -0
- package/scripts/lint_explain_trace.py +80 -0
- package/scripts/lint_framework_leakage.py +348 -0
- package/scripts/lint_framework_leakage_allowlist.json +477 -0
- package/scripts/lint_ghostwriter_source.py +1 -1
- package/scripts/lint_load_context.py +3 -3
- package/scripts/lint_mcp_registry_manifest.py +69 -0
- package/scripts/lint_media_policy_linkage.py +6 -6
- package/scripts/lint_positioning.py +143 -0
- package/scripts/lint_rule_tiers.py +2 -2
- package/scripts/lint_skill_tools.py +1 -1
- package/scripts/lint_topics_yaml.py +89 -0
- package/scripts/mcp_server/consumer_tool_catalog.json +3 -3
- package/scripts/mcp_server/telemetry.py +2 -2
- package/scripts/mcp_server/tools.py +27 -11
- package/scripts/mcp_telemetry_health.py +2 -2
- package/scripts/mcp_telemetry_store.py +1 -1
- package/scripts/measure_augment_budget.py +9 -3
- package/scripts/measure_density.py +2 -2
- package/scripts/measure_frugality_savings.py +3 -3
- package/scripts/measure_roadmap_trajectory.py +1 -1
- package/scripts/measure_rule_budget.py +3 -3
- package/scripts/memory_report.py +1 -1
- package/scripts/migrate_command_suggestions.py +3 -3
- package/scripts/minimal_safe_diff_hook.py +1 -1
- package/scripts/onboarding_gate_hook.py +4 -4
- package/scripts/prepack-check.mjs +62 -0
- package/scripts/probe_projection_fidelity.py +2 -2
- package/scripts/refine_ticket_detect.py +1 -1
- package/scripts/schemas/command.schema.json +46 -1
- package/scripts/schemas/persona.schema.json +1 -1
- package/scripts/schemas/rule.schema.json +44 -4
- package/scripts/schemas/skill.schema.json +46 -1
- package/scripts/score_skill_selection.py +1 -1
- package/scripts/skill_collision_clusters.py +1 -1
- package/scripts/skill_linter.py +62 -9
- package/scripts/skill_overlap.py +1 -1
- package/scripts/skill_tools/run_block_d_eval.py +1 -1
- package/scripts/skill_usage_collect.py +3 -3
- package/scripts/skill_usage_report.py +3 -3
- package/scripts/smoke/kernel.sh +4 -4
- package/scripts/smoke/router.sh +2 -2
- package/scripts/smoke_quickstart.py +1 -1
- package/scripts/spotcheck_thin_root.py +1 -1
- package/scripts/sync_github_metadata.py +147 -0
- package/scripts/sync_gitignore.py +15 -5
- package/scripts/update_prices.py +4 -3
- package/scripts/verify_before_complete_hook.py +1 -1
- package/scripts/verify_roadmap_closure.py +1 -1
- package/templates/agent-user.md +35 -0
- package/.agent-src/commands/onboard.md +0 -459
- package/.agent-src/rules/agent-docs.md +0 -20
- package/.agent-src/rules/augment-portability.md +0 -23
- package/.agent-src/rules/capture-learnings.md +0 -19
- package/.agent-src/rules/docs-sync.md +0 -20
- package/.agent-src/rules/domain-safety-disclaimer-consulting.md +0 -52
- package/.agent-src/rules/domain-safety-disclaimer-financial.md +0 -54
- package/.agent-src/rules/domain-safety-disclaimer-legal.md +0 -49
- package/.agent-src/rules/domain-safety-disclaimer-medical.md +0 -56
- package/.agent-src/rules/domain-safety-export-redact.md +0 -65
- package/.agent-src/rules/domain-safety-logging-pii-floor.md +0 -55
- package/.agent-src/rules/domain-safety-pii-finance.md +0 -57
- package/.agent-src/rules/domain-safety-pii-marketing.md +0 -60
- package/.agent-src/rules/domain-safety-pii-recruiting.md +0 -56
- package/.agent-src/rules/domain-safety-pii-support.md +0 -57
- package/.agent-src/rules/domain-safety-retention-finance.md +0 -48
- package/.agent-src/rules/domain-safety-retention-support.md +0 -55
- package/.agent-src/rules/e2e-testing.md +0 -19
- package/.agent-src/rules/no-unsolicited-rebase.md +0 -107
- package/.agent-src/rules/post-push-rewrite-discipline.md +0 -70
|
@@ -35,7 +35,7 @@ analytic passes ran:
|
|
|
35
35
|
|
|
36
36
|
**5.4** AI Council R3 (claude-sonnet-4-5 + gpt-4o, 2 rounds, prompt
|
|
37
37
|
mode) walked the candidate list. Council convergence and host
|
|
38
|
-
verdicts are recorded in `agents/reports/auto-rules-audit.md`
|
|
38
|
+
verdicts are recorded in `agents/runtime/reports/auto-rules-audit.md`
|
|
39
39
|
§ Phase 5.4. The dominant council insight:
|
|
40
40
|
|
|
41
41
|
> *"Rarity ≠ redundancy. Low corpus hits often indicate a
|
|
@@ -192,11 +192,11 @@ documentation rewrite for marginal additional savings.
|
|
|
192
192
|
governance pass; the stub-cost / body-cost ratio changes
|
|
193
193
|
drastically.
|
|
194
194
|
- Auto-rule count grows by ≥ 5 (history check via
|
|
195
|
-
`agents/.augment-budget-history.jsonl`) → repeat the audit
|
|
195
|
+
`agents/runtime/.augment-budget-history.jsonl`) → repeat the audit
|
|
196
196
|
with the same three-pass methodology.
|
|
197
197
|
- A retained rule (`upstream-proposal`, `slash-command-routing-policy`,
|
|
198
198
|
`analysis-skill-routing`'s sibling skill) shows a 30-day window
|
|
199
|
-
with zero documented activation in `agents/council
|
|
199
|
+
with zero documented activation in `agents/runtime/council/sessions/` →
|
|
200
200
|
open a follow-up ADR demoting it.
|
|
201
201
|
|
|
202
202
|
## Alternatives considered
|
|
@@ -224,13 +224,13 @@ documentation rewrite for marginal additional savings.
|
|
|
224
224
|
## References
|
|
225
225
|
|
|
226
226
|
- `agents/roadmaps/archive/road-to-augment-limit-fit.md` § Phase 5
|
|
227
|
-
- `agents/reports/auto-rules-audit.md` (full audit findings,
|
|
227
|
+
- `agents/runtime/reports/auto-rules-audit.md` (full audit findings,
|
|
228
228
|
council walk, host verdicts)
|
|
229
|
-
- `agents/reports/auto-rules-overlap.json` (Phase 5.2 data)
|
|
230
|
-
- `agents/reports/auto-rules-likelihood.json` (Phase 5.3 data)
|
|
231
|
-
- `agents/council
|
|
229
|
+
- `agents/runtime/reports/auto-rules-overlap.json` (Phase 5.2 data)
|
|
230
|
+
- `agents/runtime/reports/auto-rules-likelihood.json` (Phase 5.3 data)
|
|
231
|
+
- `agents/runtime/council/questions/augment-limit-fit-rule-governance.md` <!-- council-ref-allowed: ADR decision trace -->
|
|
232
232
|
(Phase 5.4 prompt)
|
|
233
|
-
- `agents/council
|
|
233
|
+
- `agents/runtime/council/responses/augment-limit-fit-rule-governance.json` <!-- council-ref-allowed: ADR decision trace -->
|
|
234
234
|
(Phase 5.4 R3 raw debate)
|
|
235
235
|
- `docs/decisions/ADR-rule-kernel-and-router.md` (kernel-membership
|
|
236
236
|
contract — Phase 5 changes leave kernel untouched per Lever C lock)
|
|
@@ -29,7 +29,7 @@ Python tools for skill / persona corpus maintenance:
|
|
|
29
29
|
|
|
30
30
|
The pilot was gated by **iter-1 AI-Council verdict** (members:
|
|
31
31
|
claude-sonnet-4-5 + gpt-4o · 2 rounds · 2026-05-01) <!-- council-ref-allowed: ADR decision trace -->
|
|
32
|
-
([`block-d-python-tools-pilot-verdict`](../../agents/council
|
|
32
|
+
([`block-d-python-tools-pilot-verdict`](../../agents/runtime/council/responses/block-d-python-tools-pilot-verdict.md)) <!-- council-ref-allowed: ADR decision trace -->
|
|
33
33
|
under strict invariants: stdlib-only (internal package imports
|
|
34
34
|
allowed), ≤ 200 LOC per tool, machine-readable output (`--json`),
|
|
35
35
|
embedded `_SAMPLE`, blind-labelled eval corpora, and a kill-switch if
|
|
@@ -37,9 +37,9 @@ embedded `_SAMPLE`, blind-labelled eval corpora, and a kill-switch if
|
|
|
37
37
|
|
|
38
38
|
## Eval Outcome (D5)
|
|
39
39
|
|
|
40
|
-
Corpora at `agents/eval-corpora/block-d/`. Runner:
|
|
40
|
+
Corpora at `agents/evidence/eval-corpora/block-d/`. Runner:
|
|
41
41
|
`scripts/skill_tools/run_block_d_eval.py`. Report:
|
|
42
|
-
[`agents/eval-corpora/block-d/report.json`](../../agents/eval-corpora/block-d/report.json).
|
|
42
|
+
[`agents/evidence/eval-corpora/block-d/report.json`](../../agents/evidence/eval-corpora/block-d/report.json).
|
|
43
43
|
|
|
44
44
|
| Tool | Target | Result | Verdict |
|
|
45
45
|
|---|---|---|---|
|
|
@@ -106,9 +106,9 @@ dir, and the `lint-skill-tools` task entry. Mark this ADR
|
|
|
106
106
|
## References
|
|
107
107
|
|
|
108
108
|
- Roadmap: [`road-to-better-skills-and-profiles`](../../agents/roadmaps/archive/road-to-better-skills-and-profiles.md) Block D.
|
|
109
|
-
- Council: [`block-d-python-tools-pilot-verdict`](../../agents/council
|
|
109
|
+
- Council: [`block-d-python-tools-pilot-verdict`](../../agents/runtime/council/responses/block-d-python-tools-pilot-verdict.md). <!-- council-ref-allowed: ADR decision trace -->
|
|
110
110
|
|
|
111
111
|
- Tools: [`scripts/skill_tools/`](../../scripts/skill_tools/).
|
|
112
112
|
- Linter: [`scripts/lint_skill_tools.py`](../../scripts/lint_skill_tools.py).
|
|
113
|
-
- Corpora + report: [`agents/eval-corpora/block-d/`](../../agents/eval-corpora/block-d/).
|
|
113
|
+
- Corpora + report: [`agents/evidence/eval-corpora/block-d/`](../../agents/evidence/eval-corpora/block-d/).
|
|
114
114
|
- Tests: `tests/test_lint_skill_tools.py`, `tests/test_score_skill_relevance.py`, `tests/test_audit_persona_coverage.py`, `tests/test_suggest_skill_for_task.py`.
|
|
@@ -31,7 +31,7 @@ phase: post-v2.1.0 · simplicity-and-everywhere
|
|
|
31
31
|
Originates from user ask: "Es macht keinen Sinn, das paket nicht
|
|
32
32
|
global zu installieren." Validated through AI Council (2 + 1 rounds,
|
|
33
33
|
2026-05-12 · members claude-sonnet-4-5 + gpt-4o). Council session:
|
|
34
|
-
[`agents/council
|
|
34
|
+
[`agents/runtime/council/sessions/2026-05-12-global-first-strategy/`](../../agents/runtime/council/sessions/2026-05-12-global-first-strategy/). <!-- council-ref-allowed: ADR decision trace -->
|
|
35
35
|
|
|
36
36
|
## Context
|
|
37
37
|
|
|
@@ -110,8 +110,8 @@ differ.
|
|
|
110
110
|
| 3 (targeted resolution) | same | $0.0252 | **3/4 convergence** |
|
|
111
111
|
|
|
112
112
|
Full responses:
|
|
113
|
-
[`responses.json`](../../agents/council
|
|
114
|
-
[`responses-round3.json`](../../agents/council
|
|
113
|
+
[`responses.json`](../../agents/runtime/council/sessions/2026-05-12-global-first-strategy/responses.json), <!-- council-ref-allowed: ADR decision trace -->
|
|
114
|
+
[`responses-round3.json`](../../agents/runtime/council/sessions/2026-05-12-global-first-strategy/responses-round3.json). <!-- council-ref-allowed: ADR decision trace -->
|
|
115
115
|
|
|
116
116
|
## Decision
|
|
117
117
|
|
|
@@ -350,7 +350,7 @@ Out of scope for this ADR. Sequencing target for a separate roadmap:
|
|
|
350
350
|
## References
|
|
351
351
|
|
|
352
352
|
- Council session:
|
|
353
|
-
[`agents/council
|
|
353
|
+
[`agents/runtime/council/sessions/2026-05-12-global-first-strategy/`](../../agents/runtime/council/sessions/2026-05-12-global-first-strategy/) <!-- council-ref-allowed: ADR decision trace -->
|
|
354
354
|
- User-scope discovery matrix sources: agent vendor official docs
|
|
355
355
|
(Claude, Cursor, Windsurf, Cline, Augment, Copilot, Gemini, Aider,
|
|
356
356
|
Codex) accessed 2026-05-12.
|
|
@@ -20,7 +20,7 @@ Projektebene festhalten, welche Agents wir initialisiert haben, damit
|
|
|
20
20
|
bei jedem Sync das Verzeichnis aktualisiert werden kann?" Validated
|
|
21
21
|
through AI Council Round 1 (claude-sonnet-4-5 + gpt-4o, $0.0298 actual,
|
|
22
22
|
both converged on "yes, separate file"). Council session:
|
|
23
|
-
[`agents/council
|
|
23
|
+
[`agents/runtime/council/sessions/2026-05-12-project-settings-and-v1-v2/`](../../agents/runtime/council/sessions/2026-05-12-project-settings-and-v1-v2/). <!-- council-ref-allowed: ADR decision trace -->
|
|
24
24
|
|
|
25
25
|
## Context
|
|
26
26
|
|
|
@@ -156,5 +156,5 @@ for this ADR.
|
|
|
156
156
|
|
|
157
157
|
- [`ADR-007`](ADR-007-agent-discovery-scopes.md) — global-first install (this ADR depends on it).
|
|
158
158
|
- [`agents/roadmaps/road-to-global-first-install.md`](../../agents/roadmaps/road-to-global-first-install.md) Phase 3.
|
|
159
|
-
- [`agents/council
|
|
159
|
+
- [`agents/runtime/council/sessions/2026-05-12-project-settings-and-v1-v2/`](../../agents/runtime/council/sessions/2026-05-12-project-settings-and-v1-v2/) — full council transcripts. <!-- council-ref-allowed: ADR decision trace -->
|
|
160
160
|
- [`docs/guidelines/agent-infra/layered-settings.md`](../guidelines/agent-infra/layered-settings.md) — the existing 4-layer settings precedence; this ADR adds a parallel file outside that hierarchy.
|
|
@@ -14,7 +14,7 @@ phase: v2.x · step-15 Phase 1 prerequisite
|
|
|
14
14
|
|
|
15
15
|
**Proposed** · 2026-05-16 · pending Phase 1 of
|
|
16
16
|
[`agents/roadmaps/step-15-product-refinement.md`](../../agents/roadmaps/step-15-product-refinement.md).
|
|
17
|
-
Council v3 action #2 (`agents/council
|
|
17
|
+
Council v3 action #2 (`agents/runtime/council/responses/2026-05-16-step-15-product-refinement-v3.json`): <!-- council-ref-allowed: ADR decision-trace to originating council response -->
|
|
18
18
|
**"Profile / Pack / Preset boundary is undefined; Phase 2 will duplicate
|
|
19
19
|
Phase 1 abstractions"**. Promoted from Phase 2 to Phase 1 prerequisite —
|
|
20
20
|
the profile loader (Phase 1 item 1) cannot ship without the boundary.
|
|
@@ -129,4 +129,4 @@ DUPLICATION ACROSS AXES IS A CONTRACT VIOLATION.
|
|
|
129
129
|
|
|
130
130
|
- [`docs/contracts/cost-profile-defaults.md`](../contracts/cost-profile-defaults.md) — the existing `cost_profile` contract this ADR explicitly does **not** touch.
|
|
131
131
|
- [`agents/roadmaps/step-15-product-refinement.md`](../../agents/roadmaps/step-15-product-refinement.md) — Phase 1 items 1, 4 and Phase 2 item 7.
|
|
132
|
-
- [`agents/council
|
|
132
|
+
- [`agents/runtime/council/responses/2026-05-16-step-15-product-refinement-v3.json`](../../agents/runtime/council/responses/2026-05-16-step-15-product-refinement-v3.json) — Council v3 action #2 (origin). <!-- council-ref-allowed: ADR decision-trace to originating council response -->
|
|
@@ -14,7 +14,7 @@ type: prospective
|
|
|
14
14
|
## Status
|
|
15
15
|
|
|
16
16
|
**Accepted** · 2026-05-17 · one-round council pass complete
|
|
17
|
-
(`agents/council
|
|
17
|
+
(`agents/runtime/council/responses/adr-011-domain-pack-readiness.json/debate-round-1.json`, actual spend $0.0300). <!-- council-ref-allowed: ADR decision trace; convergence summary inline in §Council-debate-trace -->
|
|
18
18
|
Split verdict — Anthropic accepted *with* tightened trigger; OpenAI
|
|
19
19
|
accepted as written. The host folded Anthropic's structural critique
|
|
20
20
|
into the trigger and added the escape clause both members' reasoning
|
|
@@ -88,7 +88,7 @@ no path changes, no symlink relocation, no namespace prefix:
|
|
|
88
88
|
recorded in `persona-governance`)
|
|
89
89
|
- `.agent-src.uncompressed/commands/video/{from-script,scene,storyboard,stitch}.md`
|
|
90
90
|
- `scripts/ai-video/` (the 5 adapter scripts + `lib/`)
|
|
91
|
-
- `agents/policies/media/` (Phase 2 output — already structured as
|
|
91
|
+
- `agents/settings/policies/media/` (Phase 2 output — already structured as
|
|
92
92
|
a project-local policy directory, *not* a pack)
|
|
93
93
|
|
|
94
94
|
### (ii) The trigger that flips this decision
|
|
@@ -148,7 +148,7 @@ for ambiguity:
|
|
|
148
148
|
`higgsfield`, `sora`) — stay in `scripts/ai-video/`.
|
|
149
149
|
- The two remaining video personas — stay in `.agent-src.uncompressed/personas/`.
|
|
150
150
|
- The `/video:*` command cluster — stays in `.agent-src.uncompressed/commands/video/`.
|
|
151
|
-
- The `media-governance-routing` rule + `agents/policies/media/`
|
|
151
|
+
- The `media-governance-routing` rule + `agents/settings/policies/media/`
|
|
152
152
|
policy files — stay where Phase 2 placed them.
|
|
153
153
|
- The provider-lifecycle contract + the `provider-lifecycle-discipline`
|
|
154
154
|
rule — stay where Phase 3 placed them.
|
|
@@ -185,7 +185,7 @@ treats as a smell.
|
|
|
185
185
|
## Council-debate trace
|
|
186
186
|
|
|
187
187
|
One round · 2 members · actual spend $0.0300 · raw responses at
|
|
188
|
-
[`agents/council
|
|
188
|
+
[`agents/runtime/council/responses/adr-011-domain-pack-readiness.json/debate-round-1.json`](../../agents/runtime/council/responses/adr-011-domain-pack-readiness.json/debate-round-1.json). <!-- council-ref-allowed: ADR decision-trace to originating council response -->
|
|
189
189
|
|
|
190
190
|
| Member | Pick | Core argument | Folded back? |
|
|
191
191
|
|---|---|---|---|
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
---
|
|
2
|
+
adr: 012
|
|
3
|
+
status: accepted
|
|
4
|
+
date: 2026-05-19
|
|
5
|
+
decision: typescript-cli-shell
|
|
6
|
+
supersedes: —
|
|
7
|
+
superseded_by: —
|
|
8
|
+
phase: v2.x · typescript-cli-and-local-gui-foundation
|
|
9
|
+
type: prospective
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# ADR-012 — TypeScript CLI Shell & Local Fastify Server
|
|
13
|
+
|
|
14
|
+
## Status
|
|
15
|
+
|
|
16
|
+
**Accepted** · 2026-05-19 · in-session council (8 items) +
|
|
17
|
+
external `claude-sonnet-4-5` + `gpt-4o` pass (5 items, cost $0.16) on
|
|
18
|
+
`agents/roadmaps/typescript-cli-and-local-gui-foundation.md`. All 13
|
|
19
|
+
items folded into Phase 0–5a or carved with rationale below.
|
|
20
|
+
|
|
21
|
+
## Context
|
|
22
|
+
|
|
23
|
+
`@event4u/agent-config` is distributed as an npm package and consumed
|
|
24
|
+
via `npx`. The current public entry point is `scripts/agent-config` —
|
|
25
|
+
a 955-LOC Bash dispatcher that delegates to `scripts/_cli/cmd_*.py`.
|
|
26
|
+
Two downstream roadmaps (`unified-setup-and-settings-gui`,
|
|
27
|
+
`explainability-v2-explain-last`) need an embedded local HTTP server
|
|
28
|
+
and a static UI bundle. Bash is the wrong substrate for that surface;
|
|
29
|
+
Node is on every consumer's machine already because `npx` itself
|
|
30
|
+
runs on Node.
|
|
31
|
+
|
|
32
|
+
This ADR locks the dependency surface, the source layout, and the
|
|
33
|
+
npm-package shape **before** any TypeScript is written. The Python
|
|
34
|
+
engine, lint scripts, hooks, and `scripts/work_engine/` stay where
|
|
35
|
+
they are — the TS layer is a thin distribution + UX shell that
|
|
36
|
+
subprocess-invokes Python for heavy work.
|
|
37
|
+
|
|
38
|
+
Related ADRs:
|
|
39
|
+
|
|
40
|
+
- [ADR-007 — Agent Discovery Scopes](ADR-007-agent-discovery-scopes.md)
|
|
41
|
+
- [ADR-010 — Profile/Pack/Preset Boundary](ADR-010-profile-pack-preset-boundary.md)
|
|
42
|
+
- [ADR-011 — Domain-Pack Readiness](ADR-011-domain-pack-readiness.md)
|
|
43
|
+
|
|
44
|
+
## Decision
|
|
45
|
+
|
|
46
|
+
### Runtime dependencies (frozen)
|
|
47
|
+
|
|
48
|
+
| Package | Why chosen |
|
|
49
|
+
|---|---|
|
|
50
|
+
| `commander@^12` | Argv parsing; small footprint, zero transitive deps. |
|
|
51
|
+
| `fastify@^5` | HTTP server; fast cold start, schema-first request validation. Bumped from v4 during Phase 1 install: v4 transitive `fast-uri` carries 5 high-sev advisories that block the `npm audit --audit-level=high` security gate. |
|
|
52
|
+
| `@fastify/static@^9` | Static-file plugin for the built UI bundle. v9 fixes the `@fastify/static` path-traversal + route-guard-bypass advisories present in v7/v8. |
|
|
53
|
+
| `open@^10` | Cross-platform "open URL in browser"; single function, near-zero deps. |
|
|
54
|
+
| `zod@^3` | Runtime schema for IPC; reused by R2 GUI for settings validation. |
|
|
55
|
+
| `execa@^9` | Subprocess wrapper around Python; stream pass-through, Windows-safe escaping, predictable exit-code propagation. |
|
|
56
|
+
| `js-yaml@^4` | Read `.agent-settings.yml` from TS before delegating to Python. |
|
|
57
|
+
|
|
58
|
+
### Dev dependencies (frozen)
|
|
59
|
+
|
|
60
|
+
`typescript@^5.5`, `tsx@^4`, `vite@^5`, `vitest@^2`, `eslint@^9`,
|
|
61
|
+
`@typescript-eslint/eslint-plugin@^8`, `@typescript-eslint/parser@^8`,
|
|
62
|
+
`@types/node@^20`, `@types/js-yaml@^4`. No `ts-node`, no `nodemon`,
|
|
63
|
+
no `webpack`, no direct `rollup`.
|
|
64
|
+
|
|
65
|
+
### Forbidden in this roadmap
|
|
66
|
+
|
|
67
|
+
`inquirer`, `prompts`, `chalk`, `ora`, `boxen`, anything that emits
|
|
68
|
+
colour codes outside a TTY, anything pulling > 5 transitive deps.
|
|
69
|
+
Rationale: keep the binary light enough for `npx` first-run feel.
|
|
70
|
+
|
|
71
|
+
### Decision matrix
|
|
72
|
+
|
|
73
|
+
| Concern | Candidates | Chosen | Why rejected (others) |
|
|
74
|
+
|---|---|---|---|
|
|
75
|
+
| Argv parser | commander · yargs · meow · native | **commander** | yargs: 13 transitive deps; meow: ESM-only quirks; native: too verbose. |
|
|
76
|
+
| HTTP server | fastify · express · koa · native | **fastify** | express: legacy middleware shape, slower cold start; koa: smaller community for plugins we need; native: schema validation would be hand-rolled. |
|
|
77
|
+
| Open in browser | open · opn (deprecated) | **open** | opn unmaintained. |
|
|
78
|
+
| Subprocess | execa · node:child_process | **execa** | child_process: Windows escape tax + manual stream wiring; execa cost (~70 KB) is acceptable per roadmap Open Question 3, revisit on measurement. |
|
|
79
|
+
| Schema | zod · joi · ajv-direct | **zod** | joi: heavier; ajv: lower-level; zod is shared with R2 GUI. |
|
|
80
|
+
| Settings parse | js-yaml · yaml | **js-yaml** | yaml: stricter spec but slower for our shape; js-yaml is the de-facto standard. |
|
|
81
|
+
| UI build | vite · esbuild · rollup | **vite** | esbuild lacks HTML entry; rollup needs hand-wired HTML plugin; vite handles `index.html` + `<script type="module">` natively. |
|
|
82
|
+
|
|
83
|
+
### Source layout
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
src/
|
|
87
|
+
cli/
|
|
88
|
+
agent-config.ts # bin entry (#!/usr/bin/env node)
|
|
89
|
+
paths.ts # package-root walk-up, src/dist resolver
|
|
90
|
+
commands/ # one .ts per Tier-0/1/2 subcommand
|
|
91
|
+
python/
|
|
92
|
+
runPython.ts # execa wrapper, stdio inherit
|
|
93
|
+
resolvePython.ts # python3 / py / python detection
|
|
94
|
+
settings/readSettings.ts # .agent-settings.yml (read-only)
|
|
95
|
+
log/logger.ts # leveled logger, NO chalk
|
|
96
|
+
server/
|
|
97
|
+
app.ts # Fastify instance + route registration
|
|
98
|
+
port.ts # free-port picker (41000–41999)
|
|
99
|
+
auth/token.ts # per-process token in ~/.event4u/agent-config/
|
|
100
|
+
routes/
|
|
101
|
+
ping.ts # GET /api/v1/ping
|
|
102
|
+
ui/
|
|
103
|
+
index.html # mount point only
|
|
104
|
+
main.ts # bundle entry (Vite)
|
|
105
|
+
dist/
|
|
106
|
+
cli/ # tsc output of src/cli + src/server
|
|
107
|
+
ui/ # vite build output of src/ui
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
No `src/index.ts` god-file. No `src/utils.ts`. Path aliases via
|
|
111
|
+
`baseUrl: "./src"` and `paths: { "@cli/*": ["cli/*"], "@server/*": ["server/*"] }`.
|
|
112
|
+
|
|
113
|
+
### npm-package shape
|
|
114
|
+
|
|
115
|
+
- `"bin"` points at `dist/cli/agent-config.js` — but **only** after
|
|
116
|
+
Phase 5b ships. This ADR lands with `"bin"` still pointing at the
|
|
117
|
+
Bash file; the TS binary is shipped alongside for shadow mode.
|
|
118
|
+
- `"files"` adds `dist/`; keeps `scripts/agent-config`.
|
|
119
|
+
- `"engines": { "node": ">=20.11.0" }` — Node 20 LTS minimum.
|
|
120
|
+
- npm scripts: `build:cli`, `build:ui`, `build`, `typecheck`,
|
|
121
|
+
`lint:ts`, `test:ts`, `prepack` (runs `build` + asserts
|
|
122
|
+
`dist/cli/agent-config.js` exists and is executable). No
|
|
123
|
+
`postinstall`.
|
|
124
|
+
|
|
125
|
+
### Local server security floor
|
|
126
|
+
|
|
127
|
+
Per council `security-engineer` lens, `127.0.0.1` bind is necessary
|
|
128
|
+
but not sufficient. Mandated controls:
|
|
129
|
+
|
|
130
|
+
1. Bind only to `127.0.0.1` — any non-loopback attempt fails contract test.
|
|
131
|
+
2. Reject `Host` headers other than `127.0.0.1:<port>` or `localhost:<port>` (status `421`).
|
|
132
|
+
3. `Origin` allow-list: same-origin only (`null`, `127.0.0.1:<port>`, `localhost:<port>`).
|
|
133
|
+
4. Per-process token written to `~/.event4u/agent-config/local-server.token` (mode `0600`), required as `Authorization: Bearer <token>` on every `/api/*` route. `/ping` is exempt for liveness probes.
|
|
134
|
+
5. `npm audit --omit=dev --audit-level=high` runs in `task lint-ts` and blocks on regressions.
|
|
135
|
+
|
|
136
|
+
## Consequences
|
|
137
|
+
|
|
138
|
+
**Positive**
|
|
139
|
+
|
|
140
|
+
- TS entry surface gives R2 (GUI) and R4 (explain) a real substrate.
|
|
141
|
+
- Python becomes optional for Tier-0 commands (`versions`, `doctor`-fast-checks). Narrows the "Python required" surface to advanced subcommands.
|
|
142
|
+
- Frozen dep list resists casual scope creep.
|
|
143
|
+
- Token + Origin guard means the local server is safe even on a multi-user host.
|
|
144
|
+
|
|
145
|
+
**Negative**
|
|
146
|
+
|
|
147
|
+
- Node 20 LTS becomes a hard requirement for the published binary (Bash shim survives one minor cycle for users on Node < 20).
|
|
148
|
+
- +400 KB tarball budget (compiled JS + Vite output).
|
|
149
|
+
- Shadow-mode rollout (Phase 5a → 5b) costs one release cycle of dual-shipping.
|
|
150
|
+
|
|
151
|
+
**Accepted as risk**
|
|
152
|
+
|
|
153
|
+
- Embedding Fastify inside the CLI binary vs. splitting to a separate `@event4u/agent-config-ui` package (external reviewer's pushback). Rationale: ADR-012 + roadmap goal lock the embedded design as infrastructure reuse for R2/R4; revisit if R2 surfaces real integration friction.
|
|
154
|
+
- `execa` install weight (~70 KB) over `node:child_process`. Decide via measurement in Phase 1, not now.
|
|
155
|
+
|
|
156
|
+
## Council debate trace
|
|
157
|
+
|
|
158
|
+
In-session (2026-05-18): `backend-architect`, `security-engineer`,
|
|
159
|
+
`frontend-engineer`, `critical-challenger` — 8 items, all folded.
|
|
160
|
+
External pass: `agents/runtime/council/responses/2026-05-18T*-r1-ts-cli-foundation/`
|
|
161
|
+
— 5 items, all folded. Roadmap §"Council TODOs" lists every item
|
|
162
|
+
with its target phase.
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
---
|
|
2
|
+
adr: 013
|
|
3
|
+
status: accepted
|
|
4
|
+
date: 2026-05-19
|
|
5
|
+
decision: discovery-frontmatter-contract
|
|
6
|
+
supersedes: —
|
|
7
|
+
superseded_by: —
|
|
8
|
+
phase: v2.x · automated-pack-workspace-and-skill-discovery Phase 0
|
|
9
|
+
type: prospective
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# ADR-013 — Discovery Frontmatter Contract
|
|
13
|
+
|
|
14
|
+
## Status
|
|
15
|
+
|
|
16
|
+
**Accepted** · 2026-05-19 · in-session + external AI Council pass complete
|
|
17
|
+
(`agents/runtime/council/responses/2026-05-18T*-r3-automated-discovery/`). Cost: $0.19.
|
|
18
|
+
The 5 external CRITICAL/HIGH items have been folded into Phases 1, 2, 3, 5
|
|
19
|
+
of `agents/roadmaps/archive/automated-pack-workspace-and-skill-discovery.md`
|
|
20
|
+
(archived 2026-05-19, status: completed).
|
|
21
|
+
|
|
22
|
+
## Context
|
|
23
|
+
|
|
24
|
+
`event4u/agent-config` ships 218 skills, 72 rules, 129 commands, and 141
|
|
25
|
+
templates as of `2.26.0`. Three downstream surfaces — the setup wizard
|
|
26
|
+
(`unified-setup-and-settings-gui`), the agent-mode installer (`--agent`),
|
|
27
|
+
and the strategic-visibility positioning lint
|
|
28
|
+
(`strategic-visibility-mcp-topics-positioning`) — need to know **which
|
|
29
|
+
workspaces and packs each artefact belongs to** without anyone manually
|
|
30
|
+
maintaining the list.
|
|
31
|
+
|
|
32
|
+
A release-time scan over artefact frontmatter is the cheapest source of
|
|
33
|
+
truth. The scan emits a single `dist/discovery/discovery-manifest.json`
|
|
34
|
+
shipped inside the npm tarball; every downstream surface reads from that
|
|
35
|
+
file and from nothing else. This ADR locks the **frontmatter shape**, the
|
|
36
|
+
**closed vocabularies**, and the **non-overlap rule** that keeps the new
|
|
37
|
+
keys from colliding with the existing `cost_profile` / `profile.id` axes
|
|
38
|
+
(ADR-010).
|
|
39
|
+
|
|
40
|
+
### Why a closed vocabulary
|
|
41
|
+
|
|
42
|
+
Free-form `domain:` (existing today) has 6 distinct values across 218
|
|
43
|
+
skills — usable, but unenforced. Free-form `workspaces:` / `packs:`
|
|
44
|
+
would degenerate into 30+ near-duplicate strings within one release
|
|
45
|
+
cycle. The vocabulary is closed; amendments require an ADR-013
|
|
46
|
+
amendment and a `lint_discovery_vocabulary.py` update in the same PR.
|
|
47
|
+
|
|
48
|
+
### Why additive, not renaming
|
|
49
|
+
|
|
50
|
+
`domain:` and `recommended_for_user_types:` exist on every annotated
|
|
51
|
+
skill today. Renaming would force every consumer (router, skill linter,
|
|
52
|
+
analysis pipeline) to retag at the same time. The new keys are
|
|
53
|
+
**additive**: `workspaces:` and `packs:` live alongside `domain:`,
|
|
54
|
+
the migration is mechanical (Phase 4 of the implementing roadmap), and
|
|
55
|
+
no existing reader breaks.
|
|
56
|
+
|
|
57
|
+
## Decision
|
|
58
|
+
|
|
59
|
+
### Frontmatter shape — additive block
|
|
60
|
+
|
|
61
|
+
```yaml
|
|
62
|
+
# ── existing keys stay ──
|
|
63
|
+
name: <slug>
|
|
64
|
+
description: <one-liner>
|
|
65
|
+
source: package
|
|
66
|
+
domain: <existing free-form> # untouched
|
|
67
|
+
|
|
68
|
+
# ── new keys (additive; optional Phases 1–3, required Phase 4+) ──
|
|
69
|
+
workspaces:
|
|
70
|
+
- engineering
|
|
71
|
+
- product
|
|
72
|
+
packs:
|
|
73
|
+
- engineering-base
|
|
74
|
+
lifecycle: active # active | deprecated | experimental | archived
|
|
75
|
+
trust:
|
|
76
|
+
level: core # core | professional | experimental | advisory | restricted
|
|
77
|
+
confidence: high # high | medium | low
|
|
78
|
+
human_review_required: false
|
|
79
|
+
install:
|
|
80
|
+
default: true
|
|
81
|
+
removable: true
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Closed vocabulary — `workspaces:`
|
|
85
|
+
|
|
86
|
+
| id | label | one-line definition |
|
|
87
|
+
|---|---|---|
|
|
88
|
+
| `engineering` | Engineering | Code, tests, CI, reviews, architecture. |
|
|
89
|
+
| `product` | Product | Discovery, roadmaps, prioritisation, AC tightening. |
|
|
90
|
+
| `finance` | Finance / CFO | Cashflow, forecasting, DCF, board reporting. |
|
|
91
|
+
| `founder` | Founder | Strategy, fundraising, vision, board narrative. |
|
|
92
|
+
| `gtm` | Go-to-Market | Sales pipeline, marketing, positioning, launch. |
|
|
93
|
+
| `ops` | Operations | Hiring, comp, perf, org design, runbooks. |
|
|
94
|
+
| `small-business` | Small Business | Self-employed / SMB-shaped owner workflows. |
|
|
95
|
+
| `construction` | Construction | Trade-business workflows (planning, quotes). |
|
|
96
|
+
| `agent-config-maintainer` | Maintainer | Skills/rules/commands that maintain *this* package. |
|
|
97
|
+
|
|
98
|
+
Amendments to the workspace list require an ADR-013 amendment.
|
|
99
|
+
|
|
100
|
+
### Closed vocabulary — `packs:`
|
|
101
|
+
|
|
102
|
+
| id | description |
|
|
103
|
+
|---|---|
|
|
104
|
+
| `engineering-base` | Framework-neutral engineering hygiene (git, tests, reviews). |
|
|
105
|
+
| `php` | PHP-language patterns (framework-free). |
|
|
106
|
+
| `laravel` | Laravel framework; advisory hint depends on `php`, `engineering-base`. |
|
|
107
|
+
| `symfony` | Symfony framework; advisory hint depends on `php`, `engineering-base`. |
|
|
108
|
+
| `javascript` | JavaScript-language patterns. |
|
|
109
|
+
| `typescript` | TypeScript-language patterns. |
|
|
110
|
+
| `react` | React framework patterns. |
|
|
111
|
+
| `nextjs` | Next.js framework patterns. |
|
|
112
|
+
| `python` | Python-language patterns. |
|
|
113
|
+
| `product-basic` | Core PO/PM artefacts (ticket refinement, AC, estimation). |
|
|
114
|
+
| `product-discovery` | JTBD, interviews, VoC, hypothesis testing. |
|
|
115
|
+
| `finance-basic` | Cashflow, runway, basic forecasting. |
|
|
116
|
+
| `finance-advanced` | DCF, scenario modelling, comp banding. |
|
|
117
|
+
| `gtm-sales` | Pipeline, MEDDIC, forecast accuracy. |
|
|
118
|
+
| `gtm-marketing` | Positioning, messaging, editorial, content funnel. |
|
|
119
|
+
| `ops-people` | Hiring loops, onboarding programs, comp banding. (Renamed from `ops` to honour the non-overlap rule against `profile.id: ops`.) |
|
|
120
|
+
| `founder-strategy` | Vision, fundraising narrative, competitive moat. (Renamed from `founder` to honour the non-overlap rule against `profile.id: founder`.) |
|
|
121
|
+
| `small-business` | SMB-shaped owner workflows. |
|
|
122
|
+
| `construction` | Trade-business workflows. |
|
|
123
|
+
| `ai-video` | AI video pipeline (per ADR-011, the only heavyweight domain). |
|
|
124
|
+
| `meta` | Artefacts that maintain *this* package (`agent-config` itself). |
|
|
125
|
+
|
|
126
|
+
Amendments to the pack list require an ADR-013 amendment and the
|
|
127
|
+
matching `config/discovery/packs.yml` row in the same PR.
|
|
128
|
+
|
|
129
|
+
### Non-overlap rule (ADR-010 alignment)
|
|
130
|
+
|
|
131
|
+
- `cost_profile` values (`minimal`, `balanced`, `full`, `custom`) are
|
|
132
|
+
**not** pack ids. The scanner hard-fails on overlap.
|
|
133
|
+
- `profile.id` values (`founder`, `developer`, `content_creator`,
|
|
134
|
+
`agency`, `finance`, `ops`) are **not** pack ids. The scanner
|
|
135
|
+
hard-fails on overlap. (Note: `founder`, `finance`, `ops` are
|
|
136
|
+
**workspace ids**; the collision check is against pack ids.)
|
|
137
|
+
- `lint_discovery_vocabulary.py` enforces both checks at PR time.
|
|
138
|
+
|
|
139
|
+
### Migration rule
|
|
140
|
+
|
|
141
|
+
- **Phases 1–3** (implementing roadmap): artefacts without the new keys
|
|
142
|
+
are accepted; the scanner emits `unassigned[]` warnings; CI logs but
|
|
143
|
+
does not fail.
|
|
144
|
+
- **Phase 4**: every artefact under
|
|
145
|
+
`.agent-src.uncompressed/{skills,rules,commands,templates}` either
|
|
146
|
+
declares the new keys, or sits in `config/discovery/unassigned-artefacts.yml`
|
|
147
|
+
with a one-line reason.
|
|
148
|
+
- **Phase 4+**: CI flips strict; missing annotation is a fail.
|
|
149
|
+
|
|
150
|
+
### Trust-root allow-list (security-engineer council fold-in)
|
|
151
|
+
|
|
152
|
+
The scanner honours frontmatter only on files under the trusted roots:
|
|
153
|
+
`.augment/`, `.claude/`, `.agent-src.uncompressed/`, `.agent-src/`.
|
|
154
|
+
Files under `agents/`, `tmp/`, or any consumer-writable path **cannot**
|
|
155
|
+
claim ownership of a workspace or pack. Phase 2 enforces.
|
|
156
|
+
|
|
157
|
+
### Release-only manifest (external council CRITICAL fold-in)
|
|
158
|
+
|
|
159
|
+
The manifest is built on `main` post-merge, never in PR CI. PR CI
|
|
160
|
+
asserts the manifest is **absent** from the working tree, preventing a
|
|
161
|
+
contributor from smuggling a pre-built manifest claiming
|
|
162
|
+
`trust.level: core`. Phase 5 enforces.
|
|
163
|
+
|
|
164
|
+
### Signing (security-engineer council fold-in)
|
|
165
|
+
|
|
166
|
+
Phase 6 emits `discovery-manifest.json.sha256` alongside the manifest.
|
|
167
|
+
The CLI verifies on first read; verification failure aborts before any
|
|
168
|
+
discovery-driven action.
|
|
169
|
+
|
|
170
|
+
## Consequences
|
|
171
|
+
|
|
172
|
+
### Positive
|
|
173
|
+
|
|
174
|
+
- One source of truth for workspaces/packs across wizard, agent-mode,
|
|
175
|
+
CLI, server route, and positioning lint.
|
|
176
|
+
- Manifest extraction is mechanical when ADR-011's trigger flips; no
|
|
177
|
+
refactor of artefact bodies needed at that time.
|
|
178
|
+
- Vocabulary drift is caught by lint, not by review-by-eye.
|
|
179
|
+
|
|
180
|
+
### Negative
|
|
181
|
+
|
|
182
|
+
- Every artefact author must learn 4 new keys (`workspaces`, `packs`,
|
|
183
|
+
`lifecycle`, `trust`, `install`). Mitigation: defaults documented in
|
|
184
|
+
Phase 4 mapping rules; one ADR amendment per new vocabulary entry.
|
|
185
|
+
- A future "extract video into its own npm package" decision (ADR-011
|
|
186
|
+
trigger flip) inherits the manifest as scaffolding. Mitigation: the
|
|
187
|
+
manifest declares *labels*, not directory boundaries; extraction is
|
|
188
|
+
still a separate roadmap.
|
|
189
|
+
|
|
190
|
+
### Risks accepted
|
|
191
|
+
|
|
192
|
+
- **Free-form `domain:` stays alongside `workspaces:`.** Duplication
|
|
193
|
+
is intentional during the additive migration; a follow-up roadmap
|
|
194
|
+
may collapse them.
|
|
195
|
+
- **`requires_hint:` on packs is advisory only.** The runtime does
|
|
196
|
+
not act on it. Acceptable for v1 per the council's "MEDIUM" note.
|
|
197
|
+
|
|
198
|
+
## Cross-references
|
|
199
|
+
|
|
200
|
+
- [ADR-007 — Agent Discovery Scopes](ADR-007-agent-discovery-scopes.md):
|
|
201
|
+
the manifest path resolves against the **active scope** (project vs.
|
|
202
|
+
global), not against `cwd` alone.
|
|
203
|
+
- [ADR-010 — Profile / Pack / Preset Boundary](ADR-010-profile-pack-preset-boundary.md):
|
|
204
|
+
this ADR touches the **pack axis only**; the non-overlap rule keeps
|
|
205
|
+
the other three axes intact.
|
|
206
|
+
- [ADR-011 — Domain-Pack Readiness](ADR-011-domain-pack-readiness.md):
|
|
207
|
+
packs are **labels on in-repo artefacts**, not separately-installable
|
|
208
|
+
npm packages. Extraction stays blocked until ADR-011's trigger flips.
|
|
209
|
+
- [Implementing roadmap (archived, status: completed)](../../agents/roadmaps/archive/automated-pack-workspace-and-skill-discovery.md).
|
|
210
|
+
- Schema artefact: [`docs/contracts/discovery-manifest.schema.json`](../contracts/discovery-manifest.schema.json).
|