> ## Documentation Index
> Fetch the complete documentation index at: https://openrouter.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Client

Filter models and presets by the named harness's eligibility policy: tool calling is required, and when one of your guardrails sets `enforce_first_party_harness_models`, only the harness vendor's own models remain (OpenAI for codex, Anthropic for claude\_code and claude\_desktop). This filter doesn't apply the harness's ranking, caps or Claude Desktop model ID aliases, so returned IDs stay routable. One of: claude\_code, claude\_desktop, codex. Omit it to get every model you can use.

## Example Usage

```typescript theme={null}
import { Client } from "@openrouter/sdk/models/operations";

let value: Client = "codex";

// Open enum: unrecognized values are captured as Unrecognized<string>
```

## Values

```typescript theme={null}
"claude_code" | "claude_desktop" | "codex" | Unrecognized<string>
```
