/** One home-directory lookup, overridable so a test never reads or writes the real one. */ export declare function homeDir(): string; export declare function readOptional(file: string): Promise; /** Update only an untouched generated skill. A custom skill remains byte-for-byte intact. */ export declare function installSkill(file: string, content: string): Promise; /** The text inside the managed block, so a caller can tell a current block from an older one. */ export declare function managedBlock(existing: string): string | null; /** `legacy` is every block this CLI has written without markers. Each shipped version wrote its * own text, so upgrading a file that predates the markers means recognising all of them; the first * one present is replaced. Anything else in the file is left exactly as the person wrote it. */ export declare function managedInstructions(existing: string, content: string, legacy?: string | string[]): string; /** Keep all non-Staves TOML verbatim. Only replace this server's table and subtables, and keep * `[mcp_servers.staves.env]` as written: those are the credentials the server is launched with. */ export declare function codexConfig(existing: string, args: string[]): string; /** The args of `[mcp_servers.staves]` in a Codex config, when it has a readable one. */ export declare function codexServerArgs(existing: string): string[] | undefined; /** The `[mcp_servers.staves.env]` table of a Codex config: the environment the server is launched * with, which is where credentials such as the Langfuse keys actually live. Values are read as TOML * basic or literal strings, which is all anything writes there. */ export declare function codexServerEnv(existing: string): Record | undefined; export declare function registerCodex(root: string, args: string[]): Promise;