> ## 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

```python theme={null}
from openrouter.operations import Client

# Open enum: unrecognized values are captured as UnrecognizedStr
value: Client = "claude_code"
```

## Values

This is an open enum. Unrecognized values will not fail type checks.

* `"claude_code"`
* `"claude_desktop"`
* `"codex"`
