/**
 * Slugs come from .mcpi/agent.json, AGENT_SLUG, or an interactive prompt.
 * The file-based sources are attacker-influenceable in a cloned repo, and the
 * slug becomes a filename under the keys directory, so every source must pass
 * the same shape check the interactive prompt enforces.
 */
export declare const SLUG_PATTERN: RegExp;
export declare function isValidSlug(slug: string): boolean;
/** Directory holding converted SSH signing keys, always absolute. */
export declare function keysDir(): string;
/**
 * Path for a slug's private key. Throws on slugs that fail validation so a
 * crafted slug can never traverse outside the keys directory.
 */
export declare function signingKeyPath(slug: string): string;
//# sourceMappingURL=paths.d.ts.map