Skip to content

Use it from a chat app

Who this is for
Anyone with a tool that speaks the OpenAI or Anthropic API
You need
Waired signed in, with a model loaded
Time
5 minutes

Waired answers on your own computer at an address that speaks the same language as the OpenAI and Anthropic APIs. Anything that can talk to those — a browser chat UI, an editor extension, a script — can use your AI instead.

Claude Code, OpenCode and OpenClaw are set up for you and need none of this page.

  1. Address (base URL) — depends on which API your tool speaks:

    Your tool speaks Base URL
    OpenAI http://127.0.0.1:9473/v1
    Anthropic http://127.0.0.1:9473/anthropic
  2. Model — use waired/default rather than a specific model, and your settings keep working when you switch models. To pin one instead, use the model’s own name from waired models ls.

No API key. Waired does not check one. If your tool requires an API key, any value works.

Terminal window
curl http://127.0.0.1:9473/v1/models

You should see

A JSON list including waired/default. Those are exactly the names your chat app can use.

That's not right

curl: (7) Failed to connect to 127.0.0.1 port 9473

Waired is not running, or routing is paused. Run waired doctor.

A full request looks like this:

Terminal window
curl http://127.0.0.1:9473/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "waired/default",
"messages": [{"role": "user", "content": "Say hi"}]
}'

The address 127.0.0.1 means “this computer only”. It is deliberately not reachable from the network — that is what keeps your AI from being exposed by accident.

So a chat app in a browser must run on the same computer as Waired. If you want to use your AI from a different machine, install Waired there too and sign in with the same account — the two connect privately, and the chat app then talks to 127.0.0.1 on that machine.

A chat UI served from another computer will not work, even in a browser on this machine — Waired turns away requests that a web page made, because a page you merely visit could otherwise reach your AI. Run the chat app on this computer, or install Waired on the machine that serves it and let the two reach each other privately.

A conversation too long for the model gets an error, not a shorter answer

Section titled “A conversation too long for the model gets an error, not a shorter answer”

Every model holds only so much of a conversation at once. When a request is larger than the model running here can hold, Waired replies with an error instead of passing it on. Left to itself the inference engine would quietly drop the oldest part of the conversation and answer from what was left — which reads as the model forgetting your instructions rather than as a limit being reached.

The reply is the standard error for this case, so a client that knows how to shorten a conversation does so and retries by itself:

{"error":{"message":"prompt is too long: 214000 tokens > 200704 maximum","type":"invalid_request_error","code":"context_length_exceeded"}}

Tool descriptions and tool output count toward that limit alongside the messages — in a coding session they are usually most of it. Claude Code shortens conversations for you; see Claude Code.

API Endpoint
OpenAI chat POST /v1/chat/completions
OpenAI models GET /v1/models
OpenAI responses POST /v1/responses
Anthropic messages POST /anthropic/v1/messages

Other model names, and the specific model each Waired name resolves to, are in the model catalog.