/** * Claude Code plugin: prefer GitHub marketplace install per * https://code.claude.com/docs/en/plugin-marketplaces — then write plugin-root `.mcp.json` * using the path from ~/.claude/plugins/installed_plugins.json. * Falls back to copying bundled assets to ~/.claude/plugins/local/reconstruct if the * Claude CLI is missing or marketplace install fails. */ /** Marketplace id from `reconstruct-claude-plugin/.claude-plugin/marketplace.json` (`name` field). */ export declare const CLAUDE_MARKETPLACE_NAME = "reconstruct-plugins"; /** Plugin id inside the marketplace catalog. */ export declare const CLAUDE_PLUGIN_NAME = "reconstruct"; /** `claude plugin install` argument. */ export declare const CLAUDE_PLUGIN_INSTALL_SPEC = "reconstruct@reconstruct-plugins"; export declare const CLAUDE_LOCAL_PLUGIN_ID = "reconstruct"; /** `owner/repo` for `claude plugin marketplace add` (GitHub). Override for forks. */ export declare function resolveClaudeMarketplaceGithubRef(): string; /** Bundled plugin root (sibling to dist/ when running compiled CLI). */ export declare function resolveBundledClaudePluginRoot(): string; export declare function getClaudeLocalPluginDir(): string; export declare function readInstalledClaudePluginPath(): Promise; export declare function writePluginMcpJson(pluginRoot: string, mcpUrl: string, apiKey: string): Promise; /** * Add GitHub marketplace + install plugin (user scope), then write `.mcp.json` at cache path. */ export declare function installClaudePluginViaMarketplace(apiKey: string, mcpUrl?: string): Promise; /** * Copy bundled plugin to ~/.claude/plugins/local/reconstruct and write `.mcp.json`. */ export declare function installClaudeLocalPluginFallback(apiKey: string, mcpUrl?: string): Promise; /** * Prefer marketplace install; on failure use local copy fallback. * After a successful marketplace install, removes `~/.claude/plugins/local/reconstruct` if present * so the same skills/MCP are not loaded from both the cache and a stale fallback copy. */ export declare function installClaudePluginForCli(apiKey: string, mcpUrl?: string): Promise<{ mode: "marketplace" | "local-fallback"; error?: string; /** True if a leftover fallback folder was deleted to avoid duplicate plugin loads. */ removedStaleLocalCopy?: boolean; }>; export type ClaudePluginDoctorStatus = "ok" | "missing" | "invalid_manifest" | "invalid_mcp"; /** * Prefer marketplace cache (`reconstruct@reconstruct-plugins`); else legacy local copy path. */ export declare function validateClaudePluginInstallation(): Promise<{ status: ClaudePluginDoctorStatus; /** Where we validated (marketplace cache or legacy local). */ kind: "marketplace" | "local" | "none"; installPath?: string; }>; //# sourceMappingURL=claude-plugin-install.d.ts.map