@bonesofspring/ai-rules 0.2.28 → 0.2.30
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/CHANGELOG.md +7 -0
- package/README.md +1 -1
- package/docs/MAVIS-COMPATIBILITY.md +10 -6
- package/docs/MAVIS.md +15 -6
- package/docs/OPENCODE-COMPATIBILITY.md +2 -2
- package/docs/OPENCODE.md +1 -1
- package/package.json +5 -1
- package/presets/_shared/core/meta/preset-pr-checklist.md +2 -2
- package/presets/claude/android-kotlin/CLAUDE.md +3 -1
- package/presets/claude/android-kotlin/REPO_AGENTS.md +1 -1
- package/presets/claude/android-kotlin/hooks/README.md +6 -5
- package/presets/claude/android-kotlin/hooks/chain-team-phases.sh +18 -0
- package/presets/claude/android-kotlin/hooks/examples/README.md +2 -0
- package/presets/claude/android-kotlin/hooks/guard-shell-command.sh +32 -9
- package/presets/claude/android-kotlin/rules/README.md +1 -1
- package/presets/claude/android-kotlin/rules/tooling-and-review/ai-local-overlay.md +0 -5
- package/presets/claude/android-kotlin/rules/tooling-and-review/preset-pr-checklist.md +2 -2
- package/presets/claude/android-kotlin/settings.json +23 -0
- package/presets/claude/go/CLAUDE.md +3 -1
- package/presets/claude/go/REPO_AGENTS.md +1 -1
- package/presets/claude/go/hooks/README.md +6 -5
- package/presets/claude/go/hooks/chain-team-phases.sh +18 -0
- package/presets/claude/go/hooks/examples/README.md +2 -0
- package/presets/claude/go/hooks/guard-shell-command.sh +32 -9
- package/presets/claude/go/rules/README.md +1 -1
- package/presets/claude/go/rules/tooling-and-review/ai-local-overlay.md +0 -5
- package/presets/claude/go/rules/tooling-and-review/preset-pr-checklist.md +2 -2
- package/presets/claude/go/settings.json +23 -0
- package/presets/claude/ios-swift/CLAUDE.md +3 -1
- package/presets/claude/ios-swift/REPO_AGENTS.md +1 -1
- package/presets/claude/ios-swift/hooks/README.md +6 -5
- package/presets/claude/ios-swift/hooks/chain-team-phases.sh +18 -0
- package/presets/claude/ios-swift/hooks/examples/README.md +2 -0
- package/presets/claude/ios-swift/hooks/guard-shell-command.sh +32 -9
- package/presets/claude/ios-swift/rules/README.md +1 -1
- package/presets/claude/ios-swift/rules/tooling-and-review/ai-local-overlay.md +0 -5
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-pr-checklist.md +2 -2
- package/presets/claude/ios-swift/settings.json +23 -0
- package/presets/claude/java/CLAUDE.md +3 -1
- package/presets/claude/java/REPO_AGENTS.md +1 -1
- package/presets/claude/java/hooks/README.md +6 -5
- package/presets/claude/java/hooks/chain-team-phases.sh +18 -0
- package/presets/claude/java/hooks/examples/README.md +2 -0
- package/presets/claude/java/hooks/guard-shell-command.sh +32 -9
- package/presets/claude/java/rules/README.md +1 -1
- package/presets/claude/java/rules/tooling-and-review/ai-local-overlay.md +0 -5
- package/presets/claude/java/rules/tooling-and-review/preset-pr-checklist.md +2 -2
- package/presets/claude/java/settings.json +23 -0
- package/presets/claude/mcp-ts/CLAUDE.md +3 -1
- package/presets/claude/mcp-ts/REPO_AGENTS.md +1 -1
- package/presets/claude/mcp-ts/hooks/README.md +8 -3
- package/presets/claude/mcp-ts/hooks/chain-team-phases.sh +18 -0
- package/presets/claude/mcp-ts/hooks/examples/README.md +5 -0
- package/presets/claude/mcp-ts/hooks/guard-shell-command.sh +32 -9
- package/presets/claude/mcp-ts/rules/README.md +1 -1
- package/presets/claude/mcp-ts/rules/tooling-and-review/ai-local-overlay.md +0 -5
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-pr-checklist.md +2 -2
- package/presets/claude/mcp-ts/settings.json +23 -0
- package/presets/claude/next/CLAUDE.md +3 -1
- package/presets/claude/next/REPO_AGENTS.md +1 -1
- package/presets/claude/next/agents/code-reviewer.md +35 -0
- package/presets/claude/next/agents/feature-developer.md +12 -0
- package/presets/claude/next/agents/mockup-reviewer.md +27 -1
- package/presets/claude/next/hooks/README.md +10 -1
- package/presets/claude/next/hooks/chain-team-phases.sh +18 -0
- package/presets/claude/next/hooks/examples/README.md +2 -0
- package/presets/claude/next/hooks/guard-shell-command.sh +32 -9
- package/presets/claude/next/rules/README.md +3 -2
- package/presets/claude/next/rules/architecture/feature-delivery-workflow.md +17 -0
- package/presets/claude/next/rules/tooling-and-review/ai-local-overlay.md +0 -5
- package/presets/claude/next/rules/tooling-and-review/code-review-mr.md +10 -0
- package/presets/claude/next/rules/tooling-and-review/mockup-review.md +9 -0
- package/presets/claude/next/rules/tooling-and-review/preset-pr-checklist.md +2 -2
- package/presets/claude/next/rules/ui-and-accessibility/design-tokens-binding.md +42 -0
- package/presets/claude/next/rules/ui-and-accessibility/react-ui.md +1 -0
- package/presets/claude/next/settings.json +23 -0
- package/presets/claude/next/skills/code-review/SKILL.md +1 -0
- package/presets/claude/nuxt/CLAUDE.md +3 -1
- package/presets/claude/nuxt/REPO_AGENTS.md +1 -1
- package/presets/claude/nuxt/hooks/README.md +7 -4
- package/presets/claude/nuxt/hooks/chain-team-phases.sh +18 -0
- package/presets/claude/nuxt/hooks/examples/README.md +2 -0
- package/presets/claude/nuxt/hooks/guard-shell-command.sh +32 -9
- package/presets/claude/nuxt/rules/README.md +1 -1
- package/presets/claude/nuxt/rules/tooling-and-review/ai-local-overlay.md +0 -5
- package/presets/claude/nuxt/rules/tooling-and-review/preset-pr-checklist.md +2 -2
- package/presets/claude/nuxt/settings.json +23 -0
- package/presets/claude/php-hexagonal/CLAUDE.md +3 -1
- package/presets/claude/php-hexagonal/REPO_AGENTS.md +1 -1
- package/presets/claude/php-hexagonal/hooks/README.md +6 -5
- package/presets/claude/php-hexagonal/hooks/chain-team-phases.sh +18 -0
- package/presets/claude/php-hexagonal/hooks/examples/README.md +3 -1
- package/presets/claude/php-hexagonal/hooks/guard-shell-command.sh +32 -9
- package/presets/claude/php-hexagonal/rules/README.md +1 -1
- package/presets/claude/php-hexagonal/rules/tooling-and-review/ai-local-overlay.md +0 -5
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-pr-checklist.md +2 -2
- package/presets/claude/php-hexagonal/settings.json +23 -0
- package/presets/claude/php-laravel/CLAUDE.md +6 -0
- package/presets/claude/php-laravel/REPO_AGENTS.md +1 -1
- package/presets/claude/php-laravel/hooks/README.md +6 -5
- package/presets/claude/php-laravel/hooks/chain-team-phases.sh +18 -0
- package/presets/claude/php-laravel/hooks/examples/README.md +3 -1
- package/presets/claude/php-laravel/hooks/guard-shell-command.sh +32 -9
- package/presets/claude/php-laravel/rules/README.md +1 -1
- package/presets/claude/php-laravel/rules/tooling-and-review/ai-local-overlay.md +0 -5
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-pr-checklist.md +2 -2
- package/presets/claude/php-laravel/settings.json +23 -0
- package/presets/claude/svelte/CLAUDE.md +3 -1
- package/presets/claude/svelte/REPO_AGENTS.md +1 -1
- package/presets/claude/svelte/hooks/README.md +7 -4
- package/presets/claude/svelte/hooks/chain-team-phases.sh +18 -0
- package/presets/claude/svelte/hooks/examples/README.md +2 -0
- package/presets/claude/svelte/hooks/guard-shell-command.sh +32 -9
- package/presets/claude/svelte/rules/README.md +1 -1
- package/presets/claude/svelte/rules/tooling-and-review/ai-local-overlay.md +0 -5
- package/presets/claude/svelte/rules/tooling-and-review/preset-pr-checklist.md +2 -2
- package/presets/claude/svelte/settings.json +23 -0
- package/presets/cursor/android-kotlin/REPO_AGENTS.md +1 -1
- package/presets/cursor/android-kotlin/rules/preset-pr-checklist.mdc +2 -2
- package/presets/cursor/go/REPO_AGENTS.md +1 -1
- package/presets/cursor/go/rules/preset-pr-checklist.mdc +2 -2
- package/presets/cursor/ios-swift/REPO_AGENTS.md +1 -1
- package/presets/cursor/ios-swift/rules/preset-pr-checklist.mdc +2 -2
- package/presets/cursor/java/REPO_AGENTS.md +1 -1
- package/presets/cursor/java/rules/preset-pr-checklist.mdc +2 -2
- package/presets/cursor/mcp-ts/REPO_AGENTS.md +1 -1
- package/presets/cursor/mcp-ts/rules/preset-pr-checklist.mdc +2 -2
- package/presets/cursor/next/REPO_AGENTS.md +1 -1
- package/presets/cursor/next/agents/code-reviewer.md +35 -0
- package/presets/cursor/next/agents/feature-developer.md +22 -0
- package/presets/cursor/next/agents/mockup-reviewer.md +27 -1
- package/presets/cursor/next/rules/README.md +3 -1
- package/presets/cursor/next/rules/code-review-mr.mdc +10 -0
- package/presets/cursor/next/rules/design-tokens-binding.mdc +41 -0
- package/presets/cursor/next/rules/feature-delivery-workflow.mdc +17 -0
- package/presets/cursor/next/rules/mockup-review.mdc +9 -0
- package/presets/cursor/next/rules/preset-pr-checklist.mdc +2 -2
- package/presets/cursor/next/rules/react-ui.mdc +1 -0
- package/presets/cursor/next/skills/code-review/SKILL.md +1 -0
- package/presets/cursor/nuxt/REPO_AGENTS.md +1 -1
- package/presets/cursor/nuxt/rules/preset-pr-checklist.mdc +2 -2
- package/presets/cursor/php-hexagonal/REPO_AGENTS.md +1 -1
- package/presets/cursor/php-hexagonal/rules/preset-pr-checklist.mdc +2 -2
- package/presets/cursor/php-laravel/REPO_AGENTS.md +1 -1
- package/presets/cursor/php-laravel/rules/preset-pr-checklist.mdc +2 -2
- package/presets/cursor/svelte/REPO_AGENTS.md +1 -1
- package/presets/cursor/svelte/rules/preset-pr-checklist.mdc +2 -2
- package/presets/mavis/README.md +2 -0
- package/presets/mavis/android-kotlin/MAVIS.md +10 -1
- package/presets/mavis/android-kotlin/REPO_AGENTS.md +1 -1
- package/presets/mavis/android-kotlin/adapter-map.json +1 -1
- package/presets/mavis/android-kotlin/rules/preset-pr-checklist.md +2 -2
- package/presets/mavis/go/MAVIS.md +10 -1
- package/presets/mavis/go/REPO_AGENTS.md +1 -1
- package/presets/mavis/go/adapter-map.json +1 -1
- package/presets/mavis/go/rules/preset-pr-checklist.md +2 -2
- package/presets/mavis/ios-swift/MAVIS.md +10 -1
- package/presets/mavis/ios-swift/REPO_AGENTS.md +1 -1
- package/presets/mavis/ios-swift/adapter-map.json +1 -1
- package/presets/mavis/ios-swift/rules/preset-pr-checklist.md +2 -2
- package/presets/mavis/java/MAVIS.md +10 -1
- package/presets/mavis/java/REPO_AGENTS.md +1 -1
- package/presets/mavis/java/adapter-map.json +1 -1
- package/presets/mavis/java/rules/preset-pr-checklist.md +2 -2
- package/presets/mavis/mcp-ts/MAVIS.md +10 -1
- package/presets/mavis/mcp-ts/REPO_AGENTS.md +1 -1
- package/presets/mavis/mcp-ts/adapter-map.json +1 -1
- package/presets/mavis/mcp-ts/rules/preset-pr-checklist.md +2 -2
- package/presets/mavis/next/MAVIS.md +10 -1
- package/presets/mavis/next/REPO_AGENTS.md +1 -1
- package/presets/mavis/next/adapter-map.json +9 -1
- package/presets/mavis/next/agents/code-reviewer.md +35 -0
- package/presets/mavis/next/agents/feature-developer.md +22 -0
- package/presets/mavis/next/agents/mockup-reviewer.md +27 -1
- package/presets/mavis/next/rules/code-review-mr.md +10 -0
- package/presets/mavis/next/rules/design-tokens-binding.md +35 -0
- package/presets/mavis/next/rules/feature-delivery-workflow.md +17 -0
- package/presets/mavis/next/rules/mockup-review.md +9 -0
- package/presets/mavis/next/rules/preset-pr-checklist.md +2 -2
- package/presets/mavis/next/rules/react-ui.md +1 -0
- package/presets/mavis/next/skills/code-review/SKILL.md +1 -0
- package/presets/mavis/nuxt/MAVIS.md +10 -1
- package/presets/mavis/nuxt/REPO_AGENTS.md +1 -1
- package/presets/mavis/nuxt/adapter-map.json +1 -1
- package/presets/mavis/nuxt/rules/preset-pr-checklist.md +2 -2
- package/presets/mavis/php-hexagonal/MAVIS.md +10 -1
- package/presets/mavis/php-hexagonal/REPO_AGENTS.md +1 -1
- package/presets/mavis/php-hexagonal/adapter-map.json +1 -1
- package/presets/mavis/php-hexagonal/rules/preset-pr-checklist.md +2 -2
- package/presets/mavis/php-laravel/MAVIS.md +10 -1
- package/presets/mavis/php-laravel/REPO_AGENTS.md +1 -1
- package/presets/mavis/php-laravel/adapter-map.json +1 -1
- package/presets/mavis/php-laravel/rules/preset-pr-checklist.md +2 -2
- package/presets/mavis/platform-contract.json +4 -4
- package/presets/mavis/svelte/MAVIS.md +10 -1
- package/presets/mavis/svelte/REPO_AGENTS.md +1 -1
- package/presets/mavis/svelte/adapter-map.json +1 -1
- package/presets/mavis/svelte/rules/preset-pr-checklist.md +2 -2
- package/presets/opencode/README.md +1 -1
- package/presets/opencode/android-kotlin/OPENCODE.md +8 -1
- package/presets/opencode/android-kotlin/REPO_AGENTS.md +1 -1
- package/presets/opencode/android-kotlin/adapter-map.json +1 -1
- package/presets/opencode/android-kotlin/rules/preset-pr-checklist.md +2 -2
- package/presets/opencode/go/OPENCODE.md +8 -1
- package/presets/opencode/go/REPO_AGENTS.md +1 -1
- package/presets/opencode/go/adapter-map.json +1 -1
- package/presets/opencode/go/rules/preset-pr-checklist.md +2 -2
- package/presets/opencode/ios-swift/OPENCODE.md +8 -1
- package/presets/opencode/ios-swift/REPO_AGENTS.md +1 -1
- package/presets/opencode/ios-swift/adapter-map.json +1 -1
- package/presets/opencode/ios-swift/rules/preset-pr-checklist.md +2 -2
- package/presets/opencode/java/OPENCODE.md +8 -1
- package/presets/opencode/java/REPO_AGENTS.md +1 -1
- package/presets/opencode/java/adapter-map.json +1 -1
- package/presets/opencode/java/rules/preset-pr-checklist.md +2 -2
- package/presets/opencode/mcp-ts/OPENCODE.md +8 -1
- package/presets/opencode/mcp-ts/REPO_AGENTS.md +1 -1
- package/presets/opencode/mcp-ts/adapter-map.json +1 -1
- package/presets/opencode/mcp-ts/rules/preset-pr-checklist.md +2 -2
- package/presets/opencode/next/OPENCODE.md +8 -1
- package/presets/opencode/next/REPO_AGENTS.md +1 -1
- package/presets/opencode/next/adapter-map.json +9 -1
- package/presets/opencode/next/agents/code-reviewer.md +35 -0
- package/presets/opencode/next/agents/feature-developer.md +22 -0
- package/presets/opencode/next/agents/mockup-reviewer.md +27 -1
- package/presets/opencode/next/rules/code-review-mr.md +10 -0
- package/presets/opencode/next/rules/design-tokens-binding.md +35 -0
- package/presets/opencode/next/rules/feature-delivery-workflow.md +17 -0
- package/presets/opencode/next/rules/mockup-review.md +9 -0
- package/presets/opencode/next/rules/preset-pr-checklist.md +2 -2
- package/presets/opencode/next/rules/react-ui.md +1 -0
- package/presets/opencode/next/skills/code-review/SKILL.md +1 -0
- package/presets/opencode/nuxt/OPENCODE.md +8 -1
- package/presets/opencode/nuxt/REPO_AGENTS.md +1 -1
- package/presets/opencode/nuxt/adapter-map.json +1 -1
- package/presets/opencode/nuxt/rules/preset-pr-checklist.md +2 -2
- package/presets/opencode/php-hexagonal/OPENCODE.md +8 -1
- package/presets/opencode/php-hexagonal/REPO_AGENTS.md +1 -1
- package/presets/opencode/php-hexagonal/adapter-map.json +1 -1
- package/presets/opencode/php-hexagonal/rules/preset-pr-checklist.md +2 -2
- package/presets/opencode/php-laravel/OPENCODE.md +8 -1
- package/presets/opencode/php-laravel/REPO_AGENTS.md +1 -1
- package/presets/opencode/php-laravel/adapter-map.json +1 -1
- package/presets/opencode/php-laravel/rules/preset-pr-checklist.md +2 -2
- package/presets/opencode/platform-contract.json +1 -1
- package/presets/opencode/svelte/OPENCODE.md +8 -1
- package/presets/opencode/svelte/REPO_AGENTS.md +1 -1
- package/presets/opencode/svelte/adapter-map.json +1 -1
- package/presets/opencode/svelte/rules/preset-pr-checklist.md +2 -2
- package/scripts/check-local-overlay.sh +40 -4
- package/scripts/check-mavis-local-overlay.mjs +23 -0
- package/scripts/check-mavis-platform-contract.mjs +5 -2
- package/scripts/check-opencode-local-overlay.mjs +19 -0
- package/scripts/check-opencode-platform-contract.mjs +5 -2
- package/scripts/check-preset-token-budget.sh +7 -0
- package/scripts/fixtures/cli-golden/claude/next.json +19 -18
- package/scripts/fixtures/cli-golden/cursor/next.json +12 -11
- package/scripts/fixtures/cli-golden/mavis/android-kotlin.json +3 -3
- package/scripts/fixtures/cli-golden/mavis/go.json +3 -3
- package/scripts/fixtures/cli-golden/mavis/ios-swift.json +3 -3
- package/scripts/fixtures/cli-golden/mavis/java.json +3 -3
- package/scripts/fixtures/cli-golden/mavis/mcp-ts.json +3 -3
- package/scripts/fixtures/cli-golden/mavis/next.json +12 -11
- package/scripts/fixtures/cli-golden/mavis/nuxt.json +3 -3
- package/scripts/fixtures/cli-golden/mavis/php-hexagonal.json +3 -3
- package/scripts/fixtures/cli-golden/mavis/php-laravel.json +3 -3
- package/scripts/fixtures/cli-golden/mavis/svelte.json +3 -3
- package/scripts/fixtures/cli-golden/opencode/android-kotlin.json +3 -3
- package/scripts/fixtures/cli-golden/opencode/go.json +3 -3
- package/scripts/fixtures/cli-golden/opencode/ios-swift.json +3 -3
- package/scripts/fixtures/cli-golden/opencode/java.json +3 -3
- package/scripts/fixtures/cli-golden/opencode/mcp-ts.json +3 -3
- package/scripts/fixtures/cli-golden/opencode/next.json +12 -11
- package/scripts/fixtures/cli-golden/opencode/nuxt.json +3 -3
- package/scripts/fixtures/cli-golden/opencode/php-hexagonal.json +3 -3
- package/scripts/fixtures/cli-golden/opencode/php-laravel.json +3 -3
- package/scripts/fixtures/cli-golden/opencode/svelte.json +3 -3
- package/scripts/lib/generate-mavis-adapter.mjs +10 -1
- package/scripts/lib/generate-opencode-adapter.mjs +8 -1
- package/scripts/sync-claude-settings.mjs +25 -0
- package/scripts/sync-dogfood-claude.sh +62 -0
- package/scripts/test-mavis-orchestration.mjs +3 -2
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
".ai.local/team/fixtures/feature-full.json": "9913f04b477b10b00873adc0ce5be7e67cd6c9d370ba007e0012b952d1c33335",
|
|
10
10
|
".ai.local/team/fixtures/feature-light.json": "41ae44266a99fc5f7a67914c26b0c2c5a620c08cb94906780b786117ee8fa162",
|
|
11
11
|
".ai.local/team/fixtures/memlog.example.md": "9902c3a9d82334f3fdc44e60a8e6e904bc3575a772dfee42f3dc07f37c198e12",
|
|
12
|
-
".opencode/AGENTS.md": "
|
|
12
|
+
".opencode/AGENTS.md": "5c62dba3eb9527ddb0f287a7655973e6a460c1cc8177b3b75ccf9be6399b54df",
|
|
13
13
|
".opencode/MCP.md": "e1a537f696dfaf793d217e50150cbff7ab0d85cd294a5c2593d580cdfb1a8dd6",
|
|
14
14
|
".opencode/agents/README.md": "d594c96ccd1e865055be810e84ee762d05880a221498387e875cc2836c3a0db8",
|
|
15
15
|
".opencode/agents/api-contract-reviewer.md": "3f66989687652b09a85762fa5f978ba4051bbf72cbc4264d2e431f240a7cebd9",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
".opencode/rules/post-change-test.md": "7c8f76985c37edd3be4a00bab0c8b45ee7b06cc4bfd035d2c64f16e04b022054",
|
|
70
70
|
".opencode/rules/preset-layering.md": "c63d6b6aa921b70c6c9b531e9d9bcb8b3d81b6a6354da9e4109b5149f5cb8a73",
|
|
71
71
|
".opencode/rules/preset-no-cross-stack-leakage.md": "8933a929a78af3585c7b546736dc8d068bf9ff2f925c9fccbbdcf82d624d20a0",
|
|
72
|
-
".opencode/rules/preset-pr-checklist.md": "
|
|
72
|
+
".opencode/rules/preset-pr-checklist.md": "014c6bfb23b3db0ec5f46b5cbff8effe7126a1e680103f8e3cdbfaba280eabd3",
|
|
73
73
|
".opencode/rules/preset-token-budget.md": "d539545f8ab0dc6117f87c76c044fce9a01256d8cdea8a63b69ff48ccb8b7ac0",
|
|
74
74
|
".opencode/rules/preset-twin-sync.md": "b3061cbb09ff75ecb47e98b7f7fa351240866ee8962a1d128b7c15206ef89dee",
|
|
75
75
|
".opencode/rules/product-specs-authoring.md": "6b7b7bb5b04ba12d93c63908304dc5342803728eb79e386ea018a7d51e501079",
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
".opencode/skills/technical-retro/SKILL.md": "7aec35e02ef2d084f200a3d105ffeb31eedec0eae8317d126ffe7ad5a840a5e5",
|
|
92
92
|
".opencode/skills/unit-testing/SKILL.md": "64c438f74bc2e7f17815c8f0331fec7e1b747af291009a4dba1ea8070dd3d5ad",
|
|
93
93
|
".opencode/skills/write-adr/SKILL.md": "3daf61c8d97a7e868e5fe5323f1cfa76dd5b298ea5cb110a9da83884d8d602da",
|
|
94
|
-
"AGENTS.md": "
|
|
94
|
+
"AGENTS.md": "dcf4982dce67e049b952555fdf65f983533b3cc0bc453172228f5e8895ac3eee",
|
|
95
95
|
"docs/specs/INDEX.md": "cab59f2093e6aaa376246a56d53e4268cb59070a6b10e87a94895192c35f422d",
|
|
96
96
|
"docs/specs/_templates/feature.md": "83c47b90334c555fb5144749837e2ddfe1cae5bb89031f885ba98671075d59e7",
|
|
97
97
|
"docs/specs/_templates/page.md": "a668c584e28edd52afaf3f9f8f898a75e43cb82fa12822c7a016033441e12e54",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
".ai.local/team/fixtures/mockup-review-fail-embedded-status.json": "2e1f3ff8e5e3668f20f2b0e329f26b884c79e426dd6b5952c0896bd4f0c7f9a4",
|
|
16
16
|
".ai.local/team/fixtures/mockup-review-standalone.json": "edda49b1298e94f9a33496317e9f6ccbbb047659e044e05ba35669bfe800eda6",
|
|
17
17
|
".ai.local/team/fixtures/ux-design-standalone.json": "528aeb9db4c310d1b5e3eacae0ad39a4fd1dd49c04154b064e7027981488a07a",
|
|
18
|
-
".opencode/AGENTS.md": "
|
|
18
|
+
".opencode/AGENTS.md": "ec97f26148fd53f7e461ecf0adbca274c33333a55369a6265260826cb0a857b0",
|
|
19
19
|
".opencode/MCP.md": "02a141429da12f84d2015c818ee948093adac50d6e0aae483a1cbb0e21f61942",
|
|
20
20
|
".opencode/agents/README.md": "7b09e4af4308c5525b7842dd6dff234b7dd1dded24083efcefbd0a06d83edab1",
|
|
21
21
|
".opencode/agents/accessibility-reviewer.md": "06748eeae0a4190a1c901eb446193ebe739a708532b10c718c4ac3af963a262b",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
".opencode/rules/post-change-build.md": "58938b2d5d6ecc90314474208e347224d58beeda3f8584101ae84b5d45603419",
|
|
70
70
|
".opencode/rules/preset-layering.md": "c63d6b6aa921b70c6c9b531e9d9bcb8b3d81b6a6354da9e4109b5149f5cb8a73",
|
|
71
71
|
".opencode/rules/preset-no-cross-stack-leakage.md": "8933a929a78af3585c7b546736dc8d068bf9ff2f925c9fccbbdcf82d624d20a0",
|
|
72
|
-
".opencode/rules/preset-pr-checklist.md": "
|
|
72
|
+
".opencode/rules/preset-pr-checklist.md": "014c6bfb23b3db0ec5f46b5cbff8effe7126a1e680103f8e3cdbfaba280eabd3",
|
|
73
73
|
".opencode/rules/preset-token-budget.md": "d539545f8ab0dc6117f87c76c044fce9a01256d8cdea8a63b69ff48ccb8b7ac0",
|
|
74
74
|
".opencode/rules/preset-twin-sync.md": "b3061cbb09ff75ecb47e98b7f7fa351240866ee8962a1d128b7c15206ef89dee",
|
|
75
75
|
".opencode/rules/product-specs-authoring.md": "607672961b3c6f892d0364fb13492f33eb1f3c572268a7e7ec316e70068639f1",
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
".opencode/skills/ux-design/SKILL.md": "dcfd7714f6e203eba18b14b334baa872696141ca257c87a72e8a7a45c4f4c91a",
|
|
98
98
|
".opencode/skills/write-adr/SKILL.md": "3daf61c8d97a7e868e5fe5323f1cfa76dd5b298ea5cb110a9da83884d8d602da",
|
|
99
99
|
".opencode/skills/xcuitest-e2e/SKILL.md": "e17b62a64b6ef6901abdb4b1fae81116f3e396148d7e69db0dfc33f12c2a391c",
|
|
100
|
-
"AGENTS.md": "
|
|
100
|
+
"AGENTS.md": "81f3dd588aaa27f99566a4f65413c2e0a711f1cbbc844ace1ebb0a159af1863a",
|
|
101
101
|
"docs/specs/INDEX.md": "cab59f2093e6aaa376246a56d53e4268cb59070a6b10e87a94895192c35f422d",
|
|
102
102
|
"docs/specs/_templates/feature.md": "83c47b90334c555fb5144749837e2ddfe1cae5bb89031f885ba98671075d59e7",
|
|
103
103
|
"docs/specs/_templates/page.md": "a668c584e28edd52afaf3f9f8f898a75e43cb82fa12822c7a016033441e12e54",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
".ai.local/team/fixtures/feature-full.json": "25e01db4d2cc0febd3dfd050b830beaf80c88621e12bb720d0cb6b53690bc883",
|
|
10
10
|
".ai.local/team/fixtures/feature-light.json": "a660512d9494c00dd62decd6beaf7dd2b000e2ab140de3e1c0198c73c46c0abc",
|
|
11
11
|
".ai.local/team/fixtures/memlog.example.md": "9902c3a9d82334f3fdc44e60a8e6e904bc3575a772dfee42f3dc07f37c198e12",
|
|
12
|
-
".opencode/AGENTS.md": "
|
|
12
|
+
".opencode/AGENTS.md": "a53035c5dad05ccbc6c3b7e2745f07657ac729611da7673790ab4d6bef4f4992",
|
|
13
13
|
".opencode/MCP.md": "54a85ac0b1ff18032856e5b327ea8c325625b49514f29a322ca879e1344f59f4",
|
|
14
14
|
".opencode/agents/README.md": "934effa42dc146e60921e29e30aa6aaaf41dd59e4ae5df1f368e3a0b9bec999b",
|
|
15
15
|
".opencode/agents/api-contract-reviewer.md": "80743c46c21f656b12ec92ab39ed1a982b30f794cba6c6573c689618a336c5e4",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
".opencode/rules/post-change-test.md": "d98ff9cb5662e3704611c915b0dd46e37bc9635de46e17ac59c4382b59cd5785",
|
|
70
70
|
".opencode/rules/preset-layering.md": "c63d6b6aa921b70c6c9b531e9d9bcb8b3d81b6a6354da9e4109b5149f5cb8a73",
|
|
71
71
|
".opencode/rules/preset-no-cross-stack-leakage.md": "8933a929a78af3585c7b546736dc8d068bf9ff2f925c9fccbbdcf82d624d20a0",
|
|
72
|
-
".opencode/rules/preset-pr-checklist.md": "
|
|
72
|
+
".opencode/rules/preset-pr-checklist.md": "014c6bfb23b3db0ec5f46b5cbff8effe7126a1e680103f8e3cdbfaba280eabd3",
|
|
73
73
|
".opencode/rules/preset-token-budget.md": "d539545f8ab0dc6117f87c76c044fce9a01256d8cdea8a63b69ff48ccb8b7ac0",
|
|
74
74
|
".opencode/rules/preset-twin-sync.md": "b3061cbb09ff75ecb47e98b7f7fa351240866ee8962a1d128b7c15206ef89dee",
|
|
75
75
|
".opencode/rules/product-specs-authoring.md": "6b7b7bb5b04ba12d93c63908304dc5342803728eb79e386ea018a7d51e501079",
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
".opencode/skills/technical-retro/SKILL.md": "96310e4e568f5551de3d57c86f777268495aa2cde45255a63f58027d796c3a3d",
|
|
92
92
|
".opencode/skills/unit-testing/SKILL.md": "03f3041ba9f398d3d0539f5340b7c415a682d8fb0b027e7e04cbf026eee73925",
|
|
93
93
|
".opencode/skills/write-adr/SKILL.md": "3daf61c8d97a7e868e5fe5323f1cfa76dd5b298ea5cb110a9da83884d8d602da",
|
|
94
|
-
"AGENTS.md": "
|
|
94
|
+
"AGENTS.md": "28ea88729e56b62ead28bab94068b02b1e446a0b02f3ceaec55e9cfca3749420",
|
|
95
95
|
"docs/specs/INDEX.md": "cab59f2093e6aaa376246a56d53e4268cb59070a6b10e87a94895192c35f422d",
|
|
96
96
|
"docs/specs/_templates/feature.md": "83c47b90334c555fb5144749837e2ddfe1cae5bb89031f885ba98671075d59e7",
|
|
97
97
|
"docs/specs/_templates/page.md": "a668c584e28edd52afaf3f9f8f898a75e43cb82fa12822c7a016033441e12e54",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
".ai.local/team/fixtures/feature-full.json": "2775cf26f4f7b2958da027f82ca83c7c2a1a091934115b5c09fb330f6db6f93c",
|
|
10
10
|
".ai.local/team/fixtures/feature-light.json": "e351922f225d2cf3330f002211a27863e042148ecdb309d9f9061fa4c0d52abf",
|
|
11
11
|
".ai.local/team/fixtures/memlog.example.md": "9902c3a9d82334f3fdc44e60a8e6e904bc3575a772dfee42f3dc07f37c198e12",
|
|
12
|
-
".opencode/AGENTS.md": "
|
|
12
|
+
".opencode/AGENTS.md": "7d433489bdd30af9ce349b10b4ad9cd48ba6d9e0d9cbafe95cb985041c0db908",
|
|
13
13
|
".opencode/MCP.md": "e3a5ca86b534318f80437af28f5657a016e8ecbc51256160a7a30fd9de89b6bd",
|
|
14
14
|
".opencode/agents/README.md": "ee7c445962543ce8c5f925b3e39200475412d377443779d88c9f95c709168870",
|
|
15
15
|
".opencode/agents/build-verifier.md": "b54fc6ffbad6b32c2e03a5ccdfbc0728765247c8b1c0ef7d7cb49a4d598fec8e",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
".opencode/rules/post-change-test.md": "553e7634bbaf2f2ce94da4e3942973950fab0281e1db0afea57533214dc99a52",
|
|
47
47
|
".opencode/rules/preset-layering.md": "c63d6b6aa921b70c6c9b531e9d9bcb8b3d81b6a6354da9e4109b5149f5cb8a73",
|
|
48
48
|
".opencode/rules/preset-no-cross-stack-leakage.md": "8933a929a78af3585c7b546736dc8d068bf9ff2f925c9fccbbdcf82d624d20a0",
|
|
49
|
-
".opencode/rules/preset-pr-checklist.md": "
|
|
49
|
+
".opencode/rules/preset-pr-checklist.md": "014c6bfb23b3db0ec5f46b5cbff8effe7126a1e680103f8e3cdbfaba280eabd3",
|
|
50
50
|
".opencode/rules/preset-token-budget.md": "d539545f8ab0dc6117f87c76c044fce9a01256d8cdea8a63b69ff48ccb8b7ac0",
|
|
51
51
|
".opencode/rules/preset-twin-sync.md": "b3061cbb09ff75ecb47e98b7f7fa351240866ee8962a1d128b7c15206ef89dee",
|
|
52
52
|
".opencode/rules/product-specs-authoring.md": "cd9f47eb4c6b0ac8f0220fd73141264fa4167dcfd43a59a7cae4a19f0a2c8e1b",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
".opencode/skills/spec-authoring/SKILL.md": "2a5515d07ea57f34da982d5ebd5ed5814f0bcb5e919f87da9937fc81127fa908",
|
|
63
63
|
".opencode/skills/spec-discovery/SKILL.md": "997886528456bfdfa29c492a5c578b8c2a085742b700047171ce0c876879e2cf",
|
|
64
64
|
".opencode/skills/unit-testing/SKILL.md": "9cf563f8a44f00df39c907546bd2fd49b77f54210bed1c7c151ca5b48f1147e8",
|
|
65
|
-
"AGENTS.md": "
|
|
65
|
+
"AGENTS.md": "950ff8b2bac9a682fa031366998e716eaed92a986a56265acce013850ad3d0d4",
|
|
66
66
|
"docs/specs/INDEX.md": "cab59f2093e6aaa376246a56d53e4268cb59070a6b10e87a94895192c35f422d",
|
|
67
67
|
"docs/specs/_templates/feature.md": "83c47b90334c555fb5144749837e2ddfe1cae5bb89031f885ba98671075d59e7",
|
|
68
68
|
"docs/specs/_templates/page.md": "a668c584e28edd52afaf3f9f8f898a75e43cb82fa12822c7a016033441e12e54",
|
|
@@ -29,19 +29,19 @@
|
|
|
29
29
|
".ai.local/team/fixtures/mockup-review-standalone.json": "edda49b1298e94f9a33496317e9f6ccbbb047659e044e05ba35669bfe800eda6",
|
|
30
30
|
".ai.local/team/fixtures/ux-design-standalone.json": "528aeb9db4c310d1b5e3eacae0ad39a4fd1dd49c04154b064e7027981488a07a",
|
|
31
31
|
".ai.local/team/tasks/.gitkeep": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
|
32
|
-
".opencode/AGENTS.md": "
|
|
32
|
+
".opencode/AGENTS.md": "40b9d97b8cb0305b7904a7925ece25f44a5e247c345f8e92d1dfc3e263226e3d",
|
|
33
33
|
".opencode/MCP.md": "df8af95e044afa5c3da81bed65c32d51ac8ec5a60c166e0db2097c01df59eacb",
|
|
34
34
|
".opencode/agents/README.md": "6d76ea662725854b968fbf6a4c9273a4bc4a7caf47392df5208a63cac495701d",
|
|
35
35
|
".opencode/agents/accessibility-reviewer.md": "a039bb2f3350cffcfda0a174268c6941bcfc1f847115b001ce03055d784d9058",
|
|
36
36
|
".opencode/agents/api-contract-reviewer.md": "8ed8f6eabcac9a12311a6cbe553dec20bb101cb85bef4cfdd85b7fb356fe6db3",
|
|
37
37
|
".opencode/agents/build-verifier.md": "fbca193d71b8f79a34c74a689cb71fde90bbc80261b8467323d627b2355408f1",
|
|
38
38
|
".opencode/agents/ci-investigator.md": "14f79a775270e69078bb1c4f6b93310a1a1922db4b35287980f0eef4d4984e58",
|
|
39
|
-
".opencode/agents/code-reviewer.md": "
|
|
39
|
+
".opencode/agents/code-reviewer.md": "5eb713c9ad44494c3ce1479078fd7a9610e0dfd9f2d8df811d105e17a2e31be3",
|
|
40
40
|
".opencode/agents/codebase-analyzer.md": "47feaf9b796291b2c3d83567581d76b695c49f56a13399cdc3c036976608847f",
|
|
41
41
|
".opencode/agents/debugger.md": "22b70f6ca3e9b086099d4052ac3e684b4c13c60170875c38295fc667e037cdf0",
|
|
42
|
-
".opencode/agents/feature-developer.md": "
|
|
42
|
+
".opencode/agents/feature-developer.md": "7c95eebbb000306a41474dfc87a3ce0f4a2d07e9b53994977070bcdb2d4942dc",
|
|
43
43
|
".opencode/agents/migration-specialist.md": "3845b9ca5f3f8bd1fd30084ac9381468d40da04ca0c3e509c5cd9ffce2e2590f",
|
|
44
|
-
".opencode/agents/mockup-reviewer.md": "
|
|
44
|
+
".opencode/agents/mockup-reviewer.md": "35739bd9242a83c160d8e348b116adb2019eb3cc6f51843fa503f66421f03957",
|
|
45
45
|
".opencode/agents/openspec-author.md": "ca7cb79e53df950fc3d757152a49654bb78f2eafbe1715e9fad1fdfdc7f1d65a",
|
|
46
46
|
".opencode/agents/performance-auditor.md": "9ee4cfda3823a2d918e5b7276296c39b8fbea18c61f837f4e0ced22db1435bdf",
|
|
47
47
|
".opencode/agents/playwright-test-generator.md": "9773c0e8804b77a48b5b267b74ad6709947d4c87049a104097d1dd83ac98ea6b",
|
|
@@ -73,14 +73,15 @@
|
|
|
73
73
|
".opencode/rules/architecture-boundaries.md": "81d7063f9bb96b7bd196c7a00f070364ef447c2c601180cc4fd50f2069043776",
|
|
74
74
|
".opencode/rules/arrow-functions.md": "371dd977ee7810224a4db127c18acdf3f52b5dc9e15f3328b7fb9d627376f6e6",
|
|
75
75
|
".opencode/rules/code-quality-and-refactoring.md": "b407cc650bc7b52415d499c815e1873690cb8d46932f16acc61a576bfdfb0b66",
|
|
76
|
-
".opencode/rules/code-review-mr.md": "
|
|
76
|
+
".opencode/rules/code-review-mr.md": "f57d17d9714c10cd210b98d3028b9248003031fa1c13403a4c5ba1449ed32338",
|
|
77
77
|
".opencode/rules/css-property-order-stylelint.md": "e6c9c1d7fbce85e326137e6f24d28be388742c50360ee6a1b527983428ddae5c",
|
|
78
78
|
".opencode/rules/design-guidance.md": "b2798a1746fcd5d3c6a976ffb66bb5b09c4f1e4c4c4f2496a2361a8ca53c0e43",
|
|
79
|
-
".opencode/rules/
|
|
79
|
+
".opencode/rules/design-tokens-binding.md": "e007681f7ece3f0e97a52c8fa5480b9d5e0ff69213e6959201fb13e901743c50",
|
|
80
|
+
".opencode/rules/feature-delivery-workflow.md": "8ac03f4d0eb566107d543230a64fa093e8d5224e60cd7a9f103094db7ca4eab8",
|
|
80
81
|
".opencode/rules/http-client.md": "1a536b4a3ac0552ff5c43cfb4eb26e93df8335d1e5512add100910ddfc97a974",
|
|
81
82
|
".opencode/rules/layer-barrel-exports.md": "5ac77886e75b7399078a6106682c6b2e5dc347b2ad631762ca38608f353060b8",
|
|
82
83
|
".opencode/rules/mcp-usage.md": "0726fa82721b16e0eeca6f32493f0e4411cf8e9ddc60f687c5d4a0357d8660eb",
|
|
83
|
-
".opencode/rules/mockup-review.md": "
|
|
84
|
+
".opencode/rules/mockup-review.md": "cfe68dbb21ff45c905b6cbf973755bdf8658106d14a5a38888f67ad8d3ffa69d",
|
|
84
85
|
".opencode/rules/navigation-router-stack.md": "4ae8b647e2b082d6c58f4e99f0b6351e406af2090913d1e74a5777a414788f25",
|
|
85
86
|
".opencode/rules/navigation-router-ui.md": "99a12c69ae13526eff19d154972dcf5c0f1355f51b8be70ab226280a77deb386",
|
|
86
87
|
".opencode/rules/next-app-core.md": "6ad62c8966f7b5fb1871cc8d3ba1d453f66c04bee3d177feb9c6ff512fd3ea2e",
|
|
@@ -92,7 +93,7 @@
|
|
|
92
93
|
".opencode/rules/post-change-lint.md": "b7eadecc765f5506f140a0bc5e43569656389d071c581220adaedc9365a9c962",
|
|
93
94
|
".opencode/rules/preset-layering.md": "c63d6b6aa921b70c6c9b531e9d9bcb8b3d81b6a6354da9e4109b5149f5cb8a73",
|
|
94
95
|
".opencode/rules/preset-no-cross-stack-leakage.md": "8933a929a78af3585c7b546736dc8d068bf9ff2f925c9fccbbdcf82d624d20a0",
|
|
95
|
-
".opencode/rules/preset-pr-checklist.md": "
|
|
96
|
+
".opencode/rules/preset-pr-checklist.md": "014c6bfb23b3db0ec5f46b5cbff8effe7126a1e680103f8e3cdbfaba280eabd3",
|
|
96
97
|
".opencode/rules/preset-token-budget.md": "d539545f8ab0dc6117f87c76c044fce9a01256d8cdea8a63b69ff48ccb8b7ac0",
|
|
97
98
|
".opencode/rules/preset-twin-sync.md": "b3061cbb09ff75ecb47e98b7f7fa351240866ee8962a1d128b7c15206ef89dee",
|
|
98
99
|
".opencode/rules/product-specs-authoring.md": "e355387117e689cd957ec02a0c7c306014f7a21cdcaf0e85f57858c12ad0911e",
|
|
@@ -100,7 +101,7 @@
|
|
|
100
101
|
".opencode/rules/public-imports.md": "e74f4b88cb193c8889985c683c5c7c6f676760b5a7790a659a73cbd8f6722e4b",
|
|
101
102
|
".opencode/rules/react-a11y-coding.md": "7b1070bcff701bafc821cdca0e7c6a1d8ce4957ef9d9bb888987ce1097b36f78",
|
|
102
103
|
".opencode/rules/react-next-anti-hallucination.md": "cc33ebfb1cbebbc7b720020ce079ce3ff99540546011bd015fe59bd72bc5b391",
|
|
103
|
-
".opencode/rules/react-ui.md": "
|
|
104
|
+
".opencode/rules/react-ui.md": "225a258c276d5196d4cb959d9bad8ce4e9d0168f3a5467d2ce0bc3ca8d37f840",
|
|
104
105
|
".opencode/rules/reference-features.md": "59db0c3623b16a775ab1defc8dc157c8e19dff475319841db0b6c701b5946dbf",
|
|
105
106
|
".opencode/rules/security-next.md": "812bd7aaeab276c270823d27aad61b51d0d7c2e4293c0ec4611809a724094d4b",
|
|
106
107
|
".opencode/rules/store-rtk.md": "ff6059aada9278e21a965a2ef24e0112ab85aad5178458d99c2a8c6389a3374b",
|
|
@@ -111,7 +112,7 @@
|
|
|
111
112
|
".opencode/rules/ux-design.md": "a62ef0c176f0615c4a27ff3c5859eb858be5a8e28de430a41be4504f5f2fd960",
|
|
112
113
|
".opencode/skills/README.md": "7451034e0f64ca3a525c513f345a1a5c7a5d4f680dc823eb9c4d70de502b1c43",
|
|
113
114
|
".opencode/skills/ci-investigation/SKILL.md": "10cb4de47b4ad280560616b2ae7b48190b61f576bd0e83bef63a723984f42419",
|
|
114
|
-
".opencode/skills/code-review/SKILL.md": "
|
|
115
|
+
".opencode/skills/code-review/SKILL.md": "9ff6e5370cbabae19313fe7f7d221cb35d527090f78df32f7738bdf6fe1b1bed",
|
|
115
116
|
".opencode/skills/debug-investigation/SKILL.md": "3330d9b3bf52c03a99f8a7b1ff728681b1d5b8209081fb990c74058d3a6e7af8",
|
|
116
117
|
".opencode/skills/feature-delivery/SKILL.md": "2e0be60a87d74447d6c6b6566962d2110f702f732976e9e6cdefdc4e8e59b67f",
|
|
117
118
|
".opencode/skills/mockup-review/SKILL.md": "e00b45d5e7118e52b1c884b317f55f02215a4da72783c3755e28a2200c49dbb2",
|
|
@@ -123,7 +124,7 @@
|
|
|
123
124
|
".opencode/skills/unit-testing/SKILL.md": "8db6c5ad659743f1c8a3a059963526a4e9896b52c130ef71e6e4f7174614c901",
|
|
124
125
|
".opencode/skills/ux-design/SKILL.md": "dcfd7714f6e203eba18b14b334baa872696141ca257c87a72e8a7a45c4f4c91a",
|
|
125
126
|
".opencode/skills/write-adr/SKILL.md": "3daf61c8d97a7e868e5fe5323f1cfa76dd5b298ea5cb110a9da83884d8d602da",
|
|
126
|
-
"AGENTS.md": "
|
|
127
|
+
"AGENTS.md": "dbfbbb0fb243c67bed8c02dd2ba45dfc92163ebed8914d7dee6e8d359638ec08",
|
|
127
128
|
"docs/specs/INDEX.md": "cab59f2093e6aaa376246a56d53e4268cb59070a6b10e87a94895192c35f422d",
|
|
128
129
|
"docs/specs/_templates/feature.md": "83c47b90334c555fb5144749837e2ddfe1cae5bb89031f885ba98671075d59e7",
|
|
129
130
|
"docs/specs/_templates/page.md": "a668c584e28edd52afaf3f9f8f898a75e43cb82fa12822c7a016033441e12e54",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
".ai.local/team/fixtures/mockup-review-standalone.json": "edda49b1298e94f9a33496317e9f6ccbbb047659e044e05ba35669bfe800eda6",
|
|
23
23
|
".ai.local/team/fixtures/ux-design-standalone.json": "528aeb9db4c310d1b5e3eacae0ad39a4fd1dd49c04154b064e7027981488a07a",
|
|
24
24
|
".ai.local/team/tasks/.gitkeep": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
|
25
|
-
".opencode/AGENTS.md": "
|
|
25
|
+
".opencode/AGENTS.md": "e3ce15145d3bfb61f49a3d6ec88d5b1c9059f2020e2d7979720f55154c93c7b3",
|
|
26
26
|
".opencode/MCP.md": "a92adbb8a8868260e7787c1ddcc545e9db1c78dfc03342bbb9ddc5d01df666e0",
|
|
27
27
|
".opencode/agents/README.md": "59503137557da286b42ba49803ab6da019a217527b31b9e44d8710f4a01ba527",
|
|
28
28
|
".opencode/agents/accessibility-reviewer.md": "e07bc8a61fac7b300143bd212d31c15b2d8781a102a9b1a76c266303f8cec836",
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
".opencode/rules/post-change-lint.md": "b27a973ecd6fb56b975fdc76990ba3fab08b607f6e82d9d588b39195ee105192",
|
|
85
85
|
".opencode/rules/preset-layering.md": "c63d6b6aa921b70c6c9b531e9d9bcb8b3d81b6a6354da9e4109b5149f5cb8a73",
|
|
86
86
|
".opencode/rules/preset-no-cross-stack-leakage.md": "8933a929a78af3585c7b546736dc8d068bf9ff2f925c9fccbbdcf82d624d20a0",
|
|
87
|
-
".opencode/rules/preset-pr-checklist.md": "
|
|
87
|
+
".opencode/rules/preset-pr-checklist.md": "014c6bfb23b3db0ec5f46b5cbff8effe7126a1e680103f8e3cdbfaba280eabd3",
|
|
88
88
|
".opencode/rules/preset-token-budget.md": "d539545f8ab0dc6117f87c76c044fce9a01256d8cdea8a63b69ff48ccb8b7ac0",
|
|
89
89
|
".opencode/rules/preset-twin-sync.md": "b3061cbb09ff75ecb47e98b7f7fa351240866ee8962a1d128b7c15206ef89dee",
|
|
90
90
|
".opencode/rules/product-specs-authoring.md": "e355387117e689cd957ec02a0c7c306014f7a21cdcaf0e85f57858c12ad0911e",
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
".opencode/skills/ux-design/SKILL.md": "dcfd7714f6e203eba18b14b334baa872696141ca257c87a72e8a7a45c4f4c91a",
|
|
117
117
|
".opencode/skills/vue-performance/SKILL.md": "9ea6a8ed3f189c11c491b42236eaed80d9e6aa361f80a47d3f2414339b0b1710",
|
|
118
118
|
".opencode/skills/write-adr/SKILL.md": "3daf61c8d97a7e868e5fe5323f1cfa76dd5b298ea5cb110a9da83884d8d602da",
|
|
119
|
-
"AGENTS.md": "
|
|
119
|
+
"AGENTS.md": "ef3878bce75af832c1b81fe611d6db62df3e7460aabead207ec37f2f705a1e15",
|
|
120
120
|
"docs/specs/INDEX.md": "cab59f2093e6aaa376246a56d53e4268cb59070a6b10e87a94895192c35f422d",
|
|
121
121
|
"docs/specs/_templates/feature.md": "83c47b90334c555fb5144749837e2ddfe1cae5bb89031f885ba98671075d59e7",
|
|
122
122
|
"docs/specs/_templates/page.md": "a668c584e28edd52afaf3f9f8f898a75e43cb82fa12822c7a016033441e12e54",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
".ai.local/team/fixtures/feature-full.json": "c6f391382221afcd0e1af4e780610361a83dc09c6926fc9e83fa1af213379432",
|
|
10
10
|
".ai.local/team/fixtures/feature-light.json": "aaf5b35d22527edf64b99683dc9d4f4bafefe1808d00db79a5d910ff96863f10",
|
|
11
11
|
".ai.local/team/fixtures/memlog.example.md": "9902c3a9d82334f3fdc44e60a8e6e904bc3575a772dfee42f3dc07f37c198e12",
|
|
12
|
-
".opencode/AGENTS.md": "
|
|
12
|
+
".opencode/AGENTS.md": "a6588c7a4d92518a5bef32c169ce20b2b519b1021038c3e0df96503c6e5ebed9",
|
|
13
13
|
".opencode/MCP.md": "f3fbf0631ca5cb25bbd8bc6a98ac31ff1d49f23f23c09aa29ef8ccefb69b1159",
|
|
14
14
|
".opencode/agents/README.md": "515e1d6731eb792b1ff88703bf0b34a0e651416f32ec8ee7c5ccd2f4e3cd7905",
|
|
15
15
|
".opencode/agents/api-contract-reviewer.md": "da236ffd9c6ad0dd1ce64d605577367f402c8286220fef2dec84fa2b49c67729",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
".opencode/rules/post-change-test.md": "f327605a74be5218fdb46f0075182bcd45e6ed25f2287981c4d4c2c76d600018",
|
|
70
70
|
".opencode/rules/preset-layering.md": "c63d6b6aa921b70c6c9b531e9d9bcb8b3d81b6a6354da9e4109b5149f5cb8a73",
|
|
71
71
|
".opencode/rules/preset-no-cross-stack-leakage.md": "8933a929a78af3585c7b546736dc8d068bf9ff2f925c9fccbbdcf82d624d20a0",
|
|
72
|
-
".opencode/rules/preset-pr-checklist.md": "
|
|
72
|
+
".opencode/rules/preset-pr-checklist.md": "014c6bfb23b3db0ec5f46b5cbff8effe7126a1e680103f8e3cdbfaba280eabd3",
|
|
73
73
|
".opencode/rules/preset-token-budget.md": "d539545f8ab0dc6117f87c76c044fce9a01256d8cdea8a63b69ff48ccb8b7ac0",
|
|
74
74
|
".opencode/rules/preset-twin-sync.md": "b3061cbb09ff75ecb47e98b7f7fa351240866ee8962a1d128b7c15206ef89dee",
|
|
75
75
|
".opencode/rules/product-specs-authoring.md": "6b7b7bb5b04ba12d93c63908304dc5342803728eb79e386ea018a7d51e501079",
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
".opencode/skills/technical-retro/SKILL.md": "562fd8e92da2b00b42f6ed64210c973e8bea9f41cd30a29b3b36df50fe4f26e1",
|
|
92
92
|
".opencode/skills/unit-testing/SKILL.md": "72b023f8126cc488e473eea296b41124336a3adf5816ba0b5aca5af404bce529",
|
|
93
93
|
".opencode/skills/write-adr/SKILL.md": "3daf61c8d97a7e868e5fe5323f1cfa76dd5b298ea5cb110a9da83884d8d602da",
|
|
94
|
-
"AGENTS.md": "
|
|
94
|
+
"AGENTS.md": "4cb3bbfcff5555b9f004a85e4abbc07a6d0daaaa2001ac642ce218db75251d6e",
|
|
95
95
|
"docs/specs/INDEX.md": "cab59f2093e6aaa376246a56d53e4268cb59070a6b10e87a94895192c35f422d",
|
|
96
96
|
"docs/specs/_templates/feature.md": "83c47b90334c555fb5144749837e2ddfe1cae5bb89031f885ba98671075d59e7",
|
|
97
97
|
"docs/specs/_templates/page.md": "a668c584e28edd52afaf3f9f8f898a75e43cb82fa12822c7a016033441e12e54",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
".ai.local/team/fixtures/feature-full.json": "e94266fbbc418324113535115b8f800757ac00c03a0f45ac1b2e67199038af14",
|
|
10
10
|
".ai.local/team/fixtures/feature-light.json": "759f7a4d9ceaf786dcb8fd20bae1e4e6ef20c9f8c43fd07cc528a6a742973bdb",
|
|
11
11
|
".ai.local/team/fixtures/memlog.example.md": "9902c3a9d82334f3fdc44e60a8e6e904bc3575a772dfee42f3dc07f37c198e12",
|
|
12
|
-
".opencode/AGENTS.md": "
|
|
12
|
+
".opencode/AGENTS.md": "45ce08cb8222984762674cd59e72318aab98c19c88f095ae46ad59932d0415f7",
|
|
13
13
|
".opencode/MCP.md": "82420d33d4b50e9f082b2a65c62657592f6eb541034771811c13015f9bd36660",
|
|
14
14
|
".opencode/agents/README.md": "b49bff590381deb0841766c785c4124a590315080b363f373416f445a630153c",
|
|
15
15
|
".opencode/agents/api-contract-reviewer.md": "aae9e9e4a831658ec193ce72d549023c7d8b11cafc2569ce07eb964a353bf1f0",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
".opencode/rules/post-change-test.md": "8a64e8949ac6982f928e021df593c5e9f2cbb726686f2fb9c3030ea4a321caab",
|
|
68
68
|
".opencode/rules/preset-layering.md": "c63d6b6aa921b70c6c9b531e9d9bcb8b3d81b6a6354da9e4109b5149f5cb8a73",
|
|
69
69
|
".opencode/rules/preset-no-cross-stack-leakage.md": "8933a929a78af3585c7b546736dc8d068bf9ff2f925c9fccbbdcf82d624d20a0",
|
|
70
|
-
".opencode/rules/preset-pr-checklist.md": "
|
|
70
|
+
".opencode/rules/preset-pr-checklist.md": "014c6bfb23b3db0ec5f46b5cbff8effe7126a1e680103f8e3cdbfaba280eabd3",
|
|
71
71
|
".opencode/rules/preset-token-budget.md": "d539545f8ab0dc6117f87c76c044fce9a01256d8cdea8a63b69ff48ccb8b7ac0",
|
|
72
72
|
".opencode/rules/preset-twin-sync.md": "b3061cbb09ff75ecb47e98b7f7fa351240866ee8962a1d128b7c15206ef89dee",
|
|
73
73
|
".opencode/rules/product-specs-authoring.md": "4bb81868e2619b8d562237cf8aa59c0e87c04e8302094dd1e0b3e1e36064808c",
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
".opencode/skills/technical-retro/SKILL.md": "562fd8e92da2b00b42f6ed64210c973e8bea9f41cd30a29b3b36df50fe4f26e1",
|
|
92
92
|
".opencode/skills/unit-testing/SKILL.md": "340ea9325aa9a4bf3de6f5d12ae5a398bd322a7966dd1dcf9ef9fb067aa30131",
|
|
93
93
|
".opencode/skills/write-adr/SKILL.md": "3daf61c8d97a7e868e5fe5323f1cfa76dd5b298ea5cb110a9da83884d8d602da",
|
|
94
|
-
"AGENTS.md": "
|
|
94
|
+
"AGENTS.md": "2ee548a8f46999274ca490699524050dfc7602481b0b03dacb90e555ebdec0ec",
|
|
95
95
|
"docs/specs/INDEX.md": "cab59f2093e6aaa376246a56d53e4268cb59070a6b10e87a94895192c35f422d",
|
|
96
96
|
"docs/specs/_templates/feature.md": "83c47b90334c555fb5144749837e2ddfe1cae5bb89031f885ba98671075d59e7",
|
|
97
97
|
"docs/specs/_templates/page.md": "a668c584e28edd52afaf3f9f8f898a75e43cb82fa12822c7a016033441e12e54",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
".ai.local/team/fixtures/mockup-review-standalone.json": "edda49b1298e94f9a33496317e9f6ccbbb047659e044e05ba35669bfe800eda6",
|
|
23
23
|
".ai.local/team/fixtures/ux-design-standalone.json": "528aeb9db4c310d1b5e3eacae0ad39a4fd1dd49c04154b064e7027981488a07a",
|
|
24
24
|
".ai.local/team/tasks/.gitkeep": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
|
25
|
-
".opencode/AGENTS.md": "
|
|
25
|
+
".opencode/AGENTS.md": "e52d6380b1d7c33dc0c819eb88b535ec28c4376016e0751e91877313de6bd0a2",
|
|
26
26
|
".opencode/MCP.md": "3a27ce1483e2c6df44a531556738558898f50a20e16450bea02f620c0ad84b54",
|
|
27
27
|
".opencode/agents/README.md": "8a9a4307b5326db65490cd73ff1e309d9bc8a678477d51b358b86dbc388d9b61",
|
|
28
28
|
".opencode/agents/accessibility-reviewer.md": "d659f901142486a3240262571f63ab1991565ab6d360f61efaf64028b4134a20",
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
".opencode/rules/post-change-lint.md": "3781dff4d33b8e9d6c34e0f027450c3d5f8c25a69a67a2e002552ab452bdbd69",
|
|
83
83
|
".opencode/rules/preset-layering.md": "c63d6b6aa921b70c6c9b531e9d9bcb8b3d81b6a6354da9e4109b5149f5cb8a73",
|
|
84
84
|
".opencode/rules/preset-no-cross-stack-leakage.md": "8933a929a78af3585c7b546736dc8d068bf9ff2f925c9fccbbdcf82d624d20a0",
|
|
85
|
-
".opencode/rules/preset-pr-checklist.md": "
|
|
85
|
+
".opencode/rules/preset-pr-checklist.md": "014c6bfb23b3db0ec5f46b5cbff8effe7126a1e680103f8e3cdbfaba280eabd3",
|
|
86
86
|
".opencode/rules/preset-token-budget.md": "d539545f8ab0dc6117f87c76c044fce9a01256d8cdea8a63b69ff48ccb8b7ac0",
|
|
87
87
|
".opencode/rules/preset-twin-sync.md": "b3061cbb09ff75ecb47e98b7f7fa351240866ee8962a1d128b7c15206ef89dee",
|
|
88
88
|
".opencode/rules/product-specs-authoring.md": "e355387117e689cd957ec02a0c7c306014f7a21cdcaf0e85f57858c12ad0911e",
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
".opencode/skills/unit-testing/SKILL.md": "c70f54921d0d90bd4d0f5305317e80dd3517a60b05f3fbc31dc8527eaf75d19d",
|
|
117
117
|
".opencode/skills/ux-design/SKILL.md": "dcfd7714f6e203eba18b14b334baa872696141ca257c87a72e8a7a45c4f4c91a",
|
|
118
118
|
".opencode/skills/write-adr/SKILL.md": "3daf61c8d97a7e868e5fe5323f1cfa76dd5b298ea5cb110a9da83884d8d602da",
|
|
119
|
-
"AGENTS.md": "
|
|
119
|
+
"AGENTS.md": "0f30e6c4a6c5d3b6cf6460e0e04f2f0c5af780dd98cf04b8e710f98321a87aac",
|
|
120
120
|
"docs/specs/INDEX.md": "cab59f2093e6aaa376246a56d53e4268cb59070a6b10e87a94895192c35f422d",
|
|
121
121
|
"docs/specs/_templates/feature.md": "83c47b90334c555fb5144749837e2ddfe1cae5bb89031f885ba98671075d59e7",
|
|
122
122
|
"docs/specs/_templates/page.md": "a668c584e28edd52afaf3f9f8f898a75e43cb82fa12822c7a016033441e12e54",
|
|
@@ -166,13 +166,20 @@ Do not write \`~/.minimax/**\`.
|
|
|
166
166
|
- Roles: \`mcode exec --file .mavis/agents/<role>.md --output-format json\`.
|
|
167
167
|
- Commands: natural-language procedures in \`.mavis/commands/\`, or
|
|
168
168
|
\`mcode exec --file .mavis/commands/task.md "<task>"\`.
|
|
169
|
-
- After a producer receipt, run \`
|
|
169
|
+
- After a producer receipt, run the chain by hand (\`projectHooks\` is \`manual\`, not auto-registered):
|
|
170
|
+
\`printf '%s\\n' '{"status":"completed"}' | bash .mavis/hooks/chain-team-phases.sh\`.
|
|
171
|
+
Procedures: \`mcode exec --file .mavis/commands/<name>.md\`. Roles: \`mcode exec --file .mavis/agents/<role>.md\`.
|
|
170
172
|
Agents must not write lifecycle fields in \`status.json\` / \`metrics.json\`.
|
|
171
173
|
|
|
172
174
|
## Essential rules (read every turn)
|
|
173
175
|
|
|
174
176
|
${essential}
|
|
175
177
|
|
|
178
|
+
Every turn, probe \`ls -la .ai.local\`, then apply \`.ai.local/rules/*.md\` and
|
|
179
|
+
\`.ai.local/conventions.md\`. Acknowledge \`Using .ai.local: <rule-name>\`.
|
|
180
|
+
Guide: \`docs/LOCAL-OVERLAY.md\`. These essential rules are a prompt contract.
|
|
181
|
+
\`nativeProjectRules\` is \`unknown\` — do not claim engine \`alwaysApply\`.
|
|
182
|
+
|
|
176
183
|
See \`.mavis/rules/README.md\` for the full catalog and loading strategy.
|
|
177
184
|
|
|
178
185
|
## Harness wiring
|
|
@@ -203,6 +210,8 @@ npx @bonesofspring/ai-rules init mavis --preset ${stack}
|
|
|
203
210
|
Copies rules, commands, agents, hooks, skills, \`MAVIS.md\` → \`.mavis/AGENTS.md\`,
|
|
204
211
|
\`MCP.md\`, \`mcp.json\` → \`.mavis/mcp.json\`, plus \`REPO_AGENTS.md\` → root \`AGENTS.md\`.
|
|
205
212
|
Seeds \`.ai.local/team/\`.
|
|
213
|
+
\`freshInit\` is \`unknown\`: \`mcode init\` is TTY-only and a live first \`init mavis\` is not verified.
|
|
214
|
+
MCP mode is \`fallback-manual-import\`: import \`.mavis/mcp.json\` in the MiniMax Code UI. Do not write \`~/.minimax/**\`.
|
|
206
215
|
${skillsLine}
|
|
207
216
|
`;
|
|
208
217
|
}
|
|
@@ -272,13 +272,20 @@ Root \`AGENTS.md\` is native always-on. Read it first, then this file.
|
|
|
272
272
|
- Other rules: lazy \`Read\` \`.opencode/rules/<stem>.md\` when the task matches.
|
|
273
273
|
- Agents: native \`@name\` / Task from \`.opencode/agents/\`.
|
|
274
274
|
- Commands: native \`/task\` from \`.opencode/commands/\`.
|
|
275
|
-
- After a producer receipt, run \`
|
|
275
|
+
- After a producer receipt, run the chain by hand (\`projectHooks\` is \`manual\`; this preset ships no plugin):
|
|
276
|
+
\`printf '%s\\n' '{"status":"completed"}' | bash .opencode/hooks/chain-team-phases.sh\`.
|
|
277
|
+
Slash commands are native (\`/task\` from \`.opencode/commands/\`). Do not assume \`SubagentStop\` auto-chain.
|
|
276
278
|
Agents must not write lifecycle fields in \`status.json\` / \`metrics.json\`.
|
|
277
279
|
|
|
278
280
|
## Essential rules (read every turn)
|
|
279
281
|
|
|
280
282
|
${essential}
|
|
281
283
|
|
|
284
|
+
Every turn, probe \`ls -la .ai.local\`, then apply \`.ai.local/rules/*.md\` and
|
|
285
|
+
\`.ai.local/conventions.md\`. Acknowledge \`Using .ai.local: <rule-name>\`.
|
|
286
|
+
Guide: \`docs/LOCAL-OVERLAY.md\`. These essential rules are a prompt contract.
|
|
287
|
+
\`nativeProjectRules\` is \`no-equivalent\` — do not claim engine \`alwaysApply\`.
|
|
288
|
+
|
|
282
289
|
See \`.opencode/rules/README.md\` for the full catalog and loading strategy.
|
|
283
290
|
|
|
284
291
|
## Harness wiring
|
|
@@ -37,9 +37,34 @@ function buildClaudePermissions(bashPermission) {
|
|
|
37
37
|
function sync(stack) {
|
|
38
38
|
const profile = getStackProfile(stack);
|
|
39
39
|
const permissions = buildClaudePermissions(profile.bashPermission);
|
|
40
|
+
const hookCommand = (script) =>
|
|
41
|
+
`\${CLAUDE_PROJECT_DIR}/.claude/hooks/${script}`;
|
|
40
42
|
const settings = {
|
|
41
43
|
$schema: 'https://json.schemastore.org/claude-code-settings.json',
|
|
42
44
|
permissions,
|
|
45
|
+
hooks: {
|
|
46
|
+
PreToolUse: [
|
|
47
|
+
{
|
|
48
|
+
matcher: 'Bash',
|
|
49
|
+
hooks: [
|
|
50
|
+
{
|
|
51
|
+
type: 'command',
|
|
52
|
+
command: hookCommand('guard-shell-command.sh'),
|
|
53
|
+
},
|
|
54
|
+
],
|
|
55
|
+
},
|
|
56
|
+
],
|
|
57
|
+
SubagentStop: [
|
|
58
|
+
{
|
|
59
|
+
hooks: [
|
|
60
|
+
{
|
|
61
|
+
type: 'command',
|
|
62
|
+
command: hookCommand('chain-team-phases.sh'),
|
|
63
|
+
},
|
|
64
|
+
],
|
|
65
|
+
},
|
|
66
|
+
],
|
|
67
|
+
},
|
|
43
68
|
};
|
|
44
69
|
const dest = path.join(presetsRoot, 'claude', stack, 'settings.json');
|
|
45
70
|
fs.mkdirSync(path.dirname(dest), { recursive: true });
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# Sync monorepo dogfood root `.claude/` from Claude next preset (packages SoT).
|
|
3
|
+
# Also syncs repo-root AGENTS.md from REPO_AGENTS.md and project `.mcp.json`.
|
|
4
|
+
# Usage (from repo root or any cwd):
|
|
5
|
+
# ./packages/ai-rules/scripts/sync-dogfood-claude.sh
|
|
6
|
+
# AI_RULES_DOGFOOD_PRESET=ios-swift ./packages/ai-rules/scripts/sync-dogfood-claude.sh
|
|
7
|
+
#
|
|
8
|
+
# Note: this monorepo dogfood stays `next` (do not sync other released stacks here).
|
|
9
|
+
set -euo pipefail
|
|
10
|
+
|
|
11
|
+
ROOT="$(cd "$(dirname "$0")/../../.." && pwd)"
|
|
12
|
+
PRESET_NAME="${AI_RULES_DOGFOOD_PRESET:-next}"
|
|
13
|
+
SRC="$ROOT/packages/ai-rules/presets/claude/$PRESET_NAME"
|
|
14
|
+
DST="$ROOT/.claude"
|
|
15
|
+
|
|
16
|
+
if [[ ! -d "$SRC" ]]; then
|
|
17
|
+
echo "error: preset not found: $SRC" >&2
|
|
18
|
+
exit 1
|
|
19
|
+
fi
|
|
20
|
+
|
|
21
|
+
echo "Dogfood sync: $SRC → $DST (preset=$PRESET_NAME)"
|
|
22
|
+
|
|
23
|
+
mkdir -p "$DST"
|
|
24
|
+
|
|
25
|
+
for f in CLAUDE.md MCP.md settings.json README.md; do
|
|
26
|
+
if [[ -f "$SRC/$f" ]]; then
|
|
27
|
+
cp "$SRC/$f" "$DST/$f"
|
|
28
|
+
fi
|
|
29
|
+
done
|
|
30
|
+
|
|
31
|
+
if [[ -f "$SRC/REPO_AGENTS.md" ]]; then
|
|
32
|
+
cp "$SRC/REPO_AGENTS.md" "$ROOT/AGENTS.md"
|
|
33
|
+
echo "Copied REPO_AGENTS.md → $ROOT/AGENTS.md"
|
|
34
|
+
fi
|
|
35
|
+
|
|
36
|
+
# Claude init copies mcp.json to the project-root `.mcp.json` (not under .claude/).
|
|
37
|
+
if [[ -f "$SRC/mcp.json" ]]; then
|
|
38
|
+
cp "$SRC/mcp.json" "$ROOT/.mcp.json"
|
|
39
|
+
echo "Copied mcp.json → $ROOT/.mcp.json"
|
|
40
|
+
fi
|
|
41
|
+
|
|
42
|
+
for dir in agents commands hooks rules skills; do
|
|
43
|
+
if [[ -d "$SRC/$dir" ]]; then
|
|
44
|
+
mkdir -p "$DST/$dir"
|
|
45
|
+
rsync -a --delete "$SRC/$dir/" "$DST/$dir/"
|
|
46
|
+
fi
|
|
47
|
+
done
|
|
48
|
+
|
|
49
|
+
if [[ -f "$DST/hooks/chain-team-phases.sh" ]]; then
|
|
50
|
+
chmod +x "$DST/hooks/chain-team-phases.sh"
|
|
51
|
+
fi
|
|
52
|
+
if [[ -f "$DST/hooks/guard-shell-command.sh" ]]; then
|
|
53
|
+
chmod +x "$DST/hooks/guard-shell-command.sh"
|
|
54
|
+
fi
|
|
55
|
+
|
|
56
|
+
node -e "
|
|
57
|
+
const { seedAiLocalTeam } = require(process.argv[1]);
|
|
58
|
+
seedAiLocalTeam({ cwd: process.argv[2], presetTeamSrc: process.argv[3] });
|
|
59
|
+
" "$ROOT/packages/ai-rules/bin/lib/seed-ai-local-team.js" "$ROOT" "$SRC/team"
|
|
60
|
+
|
|
61
|
+
echo "Done. Review: git status -- .claude/ AGENTS.md .mcp.json .ai.local/team"
|
|
62
|
+
echo "Tip: run packages/ai-rules/scripts/check-shared-core-drift.sh after core edits."
|
|
@@ -33,9 +33,10 @@ assert.equal(
|
|
|
33
33
|
false,
|
|
34
34
|
'Mavis must not ship hooks.json',
|
|
35
35
|
);
|
|
36
|
-
assert.equal(contract.nativeCapabilities.projectHooks.status, '
|
|
36
|
+
assert.equal(contract.nativeCapabilities.projectHooks.status, 'manual');
|
|
37
|
+
assert.equal(contract.nativeCapabilities.freshInit.status, 'unknown');
|
|
37
38
|
assert.equal(contract.mcp.mode, 'fallback-manual-import');
|
|
38
|
-
console.log('ok P3 semi-auto: projectHooks unknown, no hooks.json');
|
|
39
|
+
console.log('ok P3 semi-auto: projectHooks manual, freshInit unknown, no hooks.json');
|
|
39
40
|
|
|
40
41
|
function readJson(filePath) {
|
|
41
42
|
return JSON.parse(fs.readFileSync(filePath, 'utf8'));
|