Supported protocols

OSW accepts three upstream protocols and recognizes them on the same port.

ProtocolEndpointTypical clients
OpenAI Chat Completions/v1/chat/completionsThe vast majority of OpenAI-compatible tools
OpenAI Responses/v1/responsesCodex and others
Anthropic Messages/v1/messagesClaude Code and others

How paths are recognized

One port serves all three protocols, and paths are recognized with or without the /v1 prefix:

http://127.0.0.1:9300/v1/chat/completions
http://127.0.0.1:9300/chat/completions

How to fill in the Base URL

Your clientBase URL
OpenAI-compatiblehttp://127.0.0.1:9300/v1
Anthropichttp://127.0.0.1:9300

Anthropic takes no /v1

Anthropic clients append /v1/messages themselves. Adding /v1 makes it /v1/v1/messages, which the proxy does not recognize, and it returns 404.

GET /v1/models

Served locally, returning your configured model names (that is, the logical models), and it never forwards upstream. So curl http://127.0.0.1:9300/v1/models both verifies the service is running and shows the model names you can currently write.

Transport modes

ModeBehavior
Non-streamingHandled as-is; the full payload is read before responding.
StreamingSSE frames passed through one by one. Once delivery starts, an interruption aborts it — no reassembly.
WebSocketHandled per connection.

Protocol conversion

No conversion by default: a request is forwarded as-is in the protocol it arrived in. Only after a channel explicitly enables conversion can it accept requests in another protocol:

  • Native requests come first: when a request's protocol matches what the channel supports, the native channel is used directly.
  • Converted requests are used only when there is no native candidate.
  • Conversion is a compatibility layer: some parameters may be lost, and you should not expect it to be fully equivalent to native.

Enabling conversion affects one protocol endpoint at a time

The conversion toggle lives on the protocol endpoint row in the provider model edit dialog (see Providers & models).


With protocols settled, go to Client configuration to hook up your tools.