/** * #655: in coder mode the selected model and effort are authoritative. * * Coder mode loads the user's own settings files, whose `env` block (and the * ambient process env) can carry CLAUDE_CODE_EFFORT_LEVEL=max, which Claude * Code ranks above the `--effort` flag. Inline `settings` are a higher scope * than the user/project/local files, so the pin goes there as well as into the * spawned env. Subagents inherit the parent model only by default: a per-call * `Agent.model` or agent frontmatter wins over CLAUDE_CODE_SUBAGENT_MODEL unless * `_FORCE` is honoured (older runtimes ignore it), so a PreToolUse hook also * refuses an Agent launch that names a different model. */ /** Defaults for the delegation cap (#655: 76-85 launches, a third to half of them * reviews, in one session). 0 turns a cap off. Override with the env keys below. */ export declare const MAX_AGENT_LAUNCHES = 40; export declare const MAX_REVIEW_LAUNCHES = 12; export interface CoderPin { /** Agent/Task launches seen so far, and how many described a review. */ launches: () => { total: number; review: number; }; /** Env to merge over the spawned CLI's environment. */ env: Record; /** Inline `settings` option; outranks the user, project and local files. */ settings: { env: Record; }; /** PreToolUse hook: denies an Agent/Task launch naming another model. */ preToolUse: (input: { hook_event_name?: string; tool_name?: unknown; tool_input?: unknown; }) => Promise>; } /** Coder mode always gets one: the delegation caps apply even with no model or effort selected. */ export declare function coderPin(sel: { model?: string; effort?: string; }, processEnv?: NodeJS.ProcessEnv): CoderPin; //# sourceMappingURL=coder-pin.d.ts.map