ECC/scripts/lib/install-targets
Mhd Ghaith Al Abtah 7004a66243 feat(install-targets): add claude-project (per-project Claude Code) adapter
Completes the install-target matrix for Claude Code. Until now, ECC's
Claude support was home-scope only (~/.claude/) via the `claude` target.
This adds a project-scope counterpart (./.claude/) via a new
`claude-project` target so teams can install ECC per-repo without
contaminating ~/.claude/ — matching the existing project-scope adapters
for Cursor, Antigravity, Gemini, CodeBuddy, Joycode, and Zed.

Symmetric with `claude`:
- Same namespace under rules/ecc and skills/ecc
- Same docs/<locale> handling for --locale
- Same hooks placeholder substitution for hooks.json
- Reuses claude-home's destination-mapping logic 1:1

Use cases:
- Monorepos with multiple Flow-managed projects
- Teams that want ECC scoped per-project without touching ~/.claude/
- Per-project skill/rule isolation when global install isn't desirable

No breaking change: existing --target claude continues to route to
claude-home (user-scope) unchanged. New target is opt-in.

Tests
-----
- 4 new tests in tests/lib/install-targets.test.js
  (root resolution, lookup-by-id, plan parity with claude, foreign-path filtering)
- All install-target regression guards (schema enum / SUPPORTED_INSTALL_TARGETS)
  still pass
- End-to-end smoke: `--target claude-project --profile minimal --dry-run`
  emits 359 ops with destinations rooted at <projectRoot>/.claude/ (parity
  with --target claude which emits 359 ops rooted at ~/.claude/)
2026-05-19 12:14:27 -04:00
..
antigravity-project.js fix: harden install planning and sync tracked catalogs 2026-03-31 22:57:48 -07:00
claude-home.js feat(installer): add --locale flag for translated docs installation 2026-05-17 20:32:52 -04:00
claude-project.js feat(install-targets): add claude-project (per-project Claude Code) adapter 2026-05-19 12:14:27 -04:00
codebuddy-project.js fix: harden install target filtering and MCP health probes 2026-04-05 13:59:42 -07:00
codex-home.js feat: orchestration harness, selective install, observer improvements 2026-03-14 12:55:25 -07:00
cursor-project.js fix: namespace cursor agent installs 2026-04-30 02:19:57 -04:00
gemini-project.js feat: add gemini install target 2026-03-31 15:13:20 -07:00
helpers.js feat: add zed install target 2026-05-17 07:06:49 -04:00
joycode-project.js feat: add JoyCode install target 2026-05-11 11:10:59 -04:00
opencode-home.js feat: orchestration harness, selective install, observer improvements 2026-03-14 12:55:25 -07:00
qwen-home.js feat: add Qwen install target 2026-05-11 11:27:46 -04:00
registry.js feat(install-targets): add claude-project (per-project Claude Code) adapter 2026-05-19 12:14:27 -04:00
zed-project.js feat: add zed install target 2026-05-17 07:06:49 -04:00