---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/llm/claude_code_cli/adapter/classes/ClaudeCodeCliAdapter.md
description: >-
  Opinionated CLI-harness LLM adapter that drives the Claude Code CLI as a
  `DispatchExecutorFn` destination.
---

# Class: ClaudeCodeCliAdapter

Defined in: [src/batteries/llm/claude\_code\_cli/adapter.ts:339](https://github.com/NHTIO/ADK/blob/v1.20260827.0/src/src/batteries/llm/claude_code_cli/adapter.ts#L339)

Opinionated CLI-harness LLM adapter that drives the Claude Code CLI as a `DispatchExecutorFn`
destination.

## Remarks

Construction validates options eagerly via [validateOptions](../../validation/functions/validateOptions.md) and throws
[@nhtio/adk/batteries/llm/claude\_code\_cli!E\_INVALID\_CLAUDE\_CODE\_CLI\_OPTIONS](../../exceptions/variables/E_INVALID_CLAUDE_CODE_CLI_OPTIONS.md) on failure
(including the POSIX-only platform guard and the `apiKey`/`authToken` XOR check). The returned
instance is reusable: call [ClaudeCodeCliAdapter.executor](#executor) once per `DispatchRunner`
configuration.

## Constructors

### Constructor

```ts
new ClaudeCodeCliAdapter(options: unknown): ClaudeCodeCliAdapter;
```

Defined in: [src/batteries/llm/claude\_code\_cli/adapter.ts:351](https://github.com/NHTIO/ADK/blob/v1.20260827.0/src/src/batteries/llm/claude_code_cli/adapter.ts#L351)

#### Parameters

| Parameter | Type      | Description                                                                                                                  |
| --------- | --------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `options` | `unknown` | Constructor-baseline options. Re-validated on every iteration after per-dispatch and per-iteration overrides are layered in. |

#### Returns

`ClaudeCodeCliAdapter`

#### Throws

[@nhtio/adk/batteries/llm/claude\_code\_cli!E\_INVALID\_CLAUDE\_CODE\_CLI\_OPTIONS](../../exceptions/variables/E_INVALID_CLAUDE_CODE_CLI_OPTIONS.md) when
`options` does not satisfy `claudeCodeCliOptionsSchema`.

## Properties

| Property                                    | Modifier   | Type              | Description                                               | Defined in                                                                                                                                                |
| ------------------------------------------- | ---------- | ----------------- | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
|  `STASH_KEY` | `readonly` | `"claudeCodeCli"` | Customary key for per-iteration overrides on `ctx.stash`. | [src/batteries/llm/claude\_code\_cli/adapter.ts:341](https://github.com/NHTIO/ADK/blob/v1.20260827.0/src/src/batteries/llm/claude_code_cli/adapter.ts#L341) |

## Methods

### executor()

```ts
executor(overrides?: Partial<ClaudeCodeCliAdapterOptions>): DispatchExecutorFn;
```

Defined in: [src/batteries/llm/claude\_code\_cli/adapter.ts:359](https://github.com/NHTIO/ADK/blob/v1.20260827.0/src/src/batteries/llm/claude_code_cli/adapter.ts#L359)

Returns a [@nhtio/adk!DispatchExecutorFn](../../../../../dispatch_runner/type-aliases/DispatchExecutorFn.md) bound to this adapter's baseline plus optional
executor-scope overrides.

#### Parameters

| Parameter    | Type                                                                                                                                                                               |
| ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `overrides?` | [`Partial`](https://www.typescriptlang.org/docs/handbook/utility-types.html#partialtype)<[`ClaudeCodeCliAdapterOptions`](../../types/interfaces/ClaudeCodeCliAdapterOptions.md)> |

#### Returns

[`DispatchExecutorFn`](../../../../../dispatch_runner/type-aliases/DispatchExecutorFn.md)

***

### isClaudeCodeCliAdapter()

```ts
static isClaudeCodeCliAdapter(value: unknown): value is ClaudeCodeCliAdapter;
```

Defined in: [src/batteries/llm/claude\_code\_cli/adapter.ts:929](https://github.com/NHTIO/ADK/blob/v1.20260827.0/src/src/batteries/llm/claude_code_cli/adapter.ts#L929)

Returns `true` when `value` is a ClaudeCodeCliAdapter instance.

#### Parameters

| Parameter | Type      |
| --------- | --------- |
| `value`   | `unknown` |

#### Returns

`value is ClaudeCodeCliAdapter`
