/** * Harness adapter registry with auto-detection. * * Central source of truth for harness-specific adapter factories, discovery * specs, and any specialized helper lookups that other modules need. */ import type { PromptContext } from "../prompts/types"; import type { HarnessAdapter, HarnessSpec } from "./types"; import type { SessionResolutionDetails } from "./adapters/claude-code"; export declare const CLAUDE_CODE_DISCOVERY_SPEC: HarnessSpec; export declare const PI_DISCOVERY_SPEC: HarnessSpec; export declare const CODEX_DISCOVERY_SPEC: HarnessSpec; export declare const CURSOR_DISCOVERY_SPEC: HarnessSpec; export declare const GEMINI_CLI_DISCOVERY_SPEC: HarnessSpec; export declare const GENTY_DISCOVERY_SPEC: HarnessSpec; export declare const GITHUB_COPILOT_DISCOVERY_SPEC: HarnessSpec; export declare const OH_MY_PI_DISCOVERY_SPEC: HarnessSpec; export declare const OPENCODE_DISCOVERY_SPEC: HarnessSpec; export declare const OPENCLAW_DISCOVERY_SPEC: HarnessSpec; export declare const HERMES_DISCOVERY_SPEC: HarnessSpec; export type { SessionResolutionDetails } from "./adapters/claude-code"; export declare const KNOWN_HARNESSES: readonly HarnessSpec[]; export declare function getHarnessDiscoverySpec(name: string): HarnessSpec | null; export declare function getHarnessCallerEnvVars(name: string): string[]; export declare function getSessionResolutionDetails(name: string, explicit?: string): SessionResolutionDetails | null; export declare function createPromptContextForHarness(name: string, overrides?: Partial): PromptContext | null; /** * Probe each registered adapter and return the first that reports active. * Falls back to the custom adapter (which requires explicit args). */ export declare function detectAdapter(): HarnessAdapter; /** * Look up an adapter by harness name (e.g. "claude-code"). * Returns null if the name is not recognized. */ export declare function getAdapterByName(name: string): HarnessAdapter | null; /** * List the names of all supported harnesses. */ export declare function listSupportedHarnesses(): string[]; /** * Get the active harness adapter (auto-detected on first call). */ export declare function getAdapter(): HarnessAdapter; /** * Override the active adapter (useful for testing). */ export declare function setAdapter(adapter: HarnessAdapter): void; /** * Reset the singleton so the next `getAdapter()` call re-detects. */ export declare function resetAdapter(): void; //# sourceMappingURL=registry.d.ts.map