/** * Derive prompt context and adapter config from adapters adapter capabilities. * * Replaces per-harness prompt context factories in hooks/promptContexts.ts * with a single derivation function that reads capabilities from adapters. */ import type { AdapterAdapterMetadata } from "./adapterMetadata"; import type { AdapterConfig } from "./BaseAdapter"; import { HarnessCapability as Cap } from "./types"; /** * Derive the prompt capabilities list from adapters metadata. */ export declare function derivePromptCapabilities(metadata: AdapterAdapterMetadata): string[]; /** * Derive babysitter HarnessCapability[] from adapters capabilities. */ export declare function deriveHarnessCapabilities(metadata: AdapterAdapterMetadata): Cap[]; /** * Derive activation env vars from hostEnvSignals. * Always includes AGENT_SESSION_ID as a universal activation signal. */ export declare function deriveActivationEnvVars(metadata: AdapterAdapterMetadata, extraVars?: string[]): string[]; /** * Options for deriving an AdapterConfig from adapters metadata. * Allows per-adapter overrides for fields that cannot be derived. */ export interface DeriveConfigOptions { /** The babysitter harness name (e.g. 'claude-code'). */ name: string; /** Human-readable display name. */ displayName: string; /** Extra env vars to check for activation (beyond hostEnvSignals). */ extraActivationEnvVars?: string[]; /** Plugin root env vars. */ pluginRootEnvVars?: string[]; /** If true, resolvePluginRoot always returns undefined. */ noPluginRoot?: boolean; /** Session ID env vars (in priority order). */ sessionIdEnvVars?: string[]; /** Plugin root variable expression for shell interpolation. */ pluginRootVar?: string; /** Interactive tool name override. */ interactiveToolName?: string; /** Session env vars description override. */ sessionEnvVars?: string; /** Whether this harness has intent fidelity checks. */ hasIntentFidelityChecks?: boolean; /** Whether this harness has non-negotiables. */ hasNonNegotiables?: boolean; /** Override loop control term. */ loopControlTerm?: string; /** Override hook-driven flag. */ hookDriven?: boolean; /** Override capabilities list. */ capabilities?: Cap[]; /** Override prompt capabilities list. */ promptCapabilities?: string[]; /** Supported hook types (if limited). */ supportedHookTypes?: string[]; /** If true, adapter does not support any hooks. */ noHookSupport?: boolean; /** Whether bindSession should auto-release stale sessions. */ autoReleaseStale?: boolean; /** Custom missing session ID hint. */ missingSessionIdHint?: string; /** Lower-priority fallback env vars (checked after AGENT_SESSION_ID and PID marker). */ fallbackSessionIdEnvVars?: string[]; /** Custom messages for specific unsupported hook types. */ unsupportedHookMessages?: Record; } /** * Derive a full AdapterConfig from adapters metadata + per-adapter overrides. */ export declare function deriveAdapterConfig(metadata: AdapterAdapterMetadata, opts: DeriveConfigOptions): AdapterConfig; //# sourceMappingURL=derivePromptContext.d.ts.map