/** * Resolves the locations sigil cares about, honouring SIGIL_HOME env override. * One source of truth used by the CLI, daemon entrypoint, and tests. * * The control directory holds one `.sock` per running sigil-mcp. Each * Claude Code session spawns its own sigil-mcp, which binds a socket named for * its PID; the `sigil` CLI fans `unlock`/`lock`/`status` out across every * socket in the directory (reaping any that are stale). The directory lives * inside ~/.sigil so it inherits the 0o700 permission; each socket file is * also chmod'd to 0o600 by the server on bind. */ export interface SigilPaths { readonly home: string; readonly keysDir: string; readonly policyDir: string; /** Per-portal spend ledgers backing the rolling-window value caps. */ readonly stateDir: string; readonly controlDir: string; readonly auditLog: string; readonly configFile: string; } export declare function resolvePaths(env?: NodeJS.ProcessEnv): SigilPaths; /** * The control socket path for a single sigil-mcp instance, named for its PID. * Unique per live process, so two sessions never contend for the same path * (a same-PID collision only happens after PID reuse, which the server's * stale-socket recovery handles on bind). */ export declare function sessionSocketPath(controlDir: string, pid: number): string; //# sourceMappingURL=paths.d.ts.map