/** * Claude InstallPlan — feat/codex-support Phase 1 (P1-2) * * `npm install` postinstall.js 의 *Claude 측* 5 작업을 module 로 분리. * `forgen install claude` CLI 가 호출 + (P1-6 에서) postinstall.js 도 위임. * * 5 작업: * 1. Plugin cache: ~/.claude/plugins/cache/forgen-local/forgen// 작성 + installed_plugins.json 등록 * 2. Slash commands: ~/.claude/commands/forgen/*.md 생성 (forgen-managed marker) * 3. Settings hooks injection: ~/.claude/settings.json 의 hooks 머지 (forgen entry idempotent) * 4. MCP register: ~/.claude.json 에 mcpServers.forgen-compound 추가 * 5. Dev-guide skills: ~/.claude/skills/forgen--/ 설치 (forgen-managed only) * * 사용자 비-forgen 자산 보존 + 재실행 idempotent. */ export interface ClaudeInstallOptions { pkgRoot: string; /** Override home dir (default: os.homedir()). 격리 테스트용. */ homeDir?: string; /** Dry-run: 파일 미작성, 결과만 반환. */ dryRun?: boolean; /** MCP forgen-compound 등록 여부 (default true). */ registerMcp?: boolean; } export interface ClaudeInstallResult { homeDir: string; pluginCachePath: string; pluginCacheWritten: boolean; slashCommandsPath: string; slashCommandsCount: number; settingsPath: string; hooksInjected: number; mcpRegistered: boolean; mcpAlreadyPresent: boolean; skillsPath: string; skillsInstalled: number; skillsRemoved: number; } export declare function planClaudeInstall(opts: ClaudeInstallOptions): ClaudeInstallResult;