Kimi K3 in Open Interpreter

Terminal coding agent with the Kimi Code harness · custom provider in config.toml · about 3 minutes · checked against Open Interpreter 0.0.44 docs (19 Sep 2026)

Before you start. Create an account (you get $2 to try), then open Token Management → Create token and copy the key. The key starts with sk-. Registration and billing live on microquickjs.com, our API platform. Endpoint: OpenAI-compatible https://microquickjs.com/v1. Model ID: Kimi-K3.

Open Interpreter ships a Rust reimplementation of the Kimi Code harness, so K3 gets the prompt, tools and thinking history it expects. Its provider picker (/model) is generated from models.dev, where ainetcafe was added on 17 September; the bundled catalog in 0.0.44 predates that, so until the next release you add ainetcafe as a custom provider. Same harness, same model, our endpoint.

1. Export the key

export AINETCAFE_API_KEY="sk-..."   # add to your shell profile

2. Add the provider to ~/.openinterpreter/config.toml

Merge this into your config (create the file if it does not exist). wire_api = "chat" selects OpenAI-compatible Chat Completions; harness = "kimi-code" is what Open Interpreter would infer from the model name anyway, set here so it survives a provider rename.

model_provider = "ainetcafe"
model = "Kimi-K3"
harness = "kimi-code"

[model_providers.ainetcafe]
name = "ainetcafe"
base_url = "https://microquickjs.com/v1"
env_key = "AINETCAFE_API_KEY"
wire_api = "chat"

3. Run

cd my-project
interpreter

Start a new session after switching to K3 so it begins with a fresh prompt cache and thinking history (Kimi's own recommendation; Open Interpreter's K3 guide says the same). To keep your default provider and use ainetcafe for one run:

interpreter -c 'model_provider="ainetcafe"' -m Kimi-K3 "Review this repository and fix the highest-impact bug."

When ainetcafe shows up in /model after Open Interpreter regenerates its catalog, you can pick it there instead; the custom table above keeps working either way.

Notes

Verify the key first

Thirty seconds now saves an hour of guessing later. Run this in a terminal; you should see a short reply and a usage block.

curl https://microquickjs.com/v1/chat/completions \
  -H "Authorization: Bearer $AINETCAFE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"Kimi-K3","messages":[{"role":"user","content":"Say OK"}],"max_tokens":5}'

If something goes wrong

SymptomCauseFix
401 Invalid tokenKey copied with a space, or key from another siteRe-copy from Token Management on microquickjs.com
403 quota / insufficient balanceWallet at zero or plan quota used upTop up in Wallet, or wait for the weekly plan reset
404 model not foundModel ID typed differentlyUse exactly Kimi-K3
429Rate limit for your tierReduce concurrency; limits rise with spend, or ask for a committed plan
"unknown model provider"model_provider set but the [model_providers.ainetcafe] table is missing or misspelledTable name and model_provider value must match exactly
Requests go to the Responses API and failwire_api left unset (defaults to responses)Set wire_api = "chat", or pass --chat-completions for one run
Tool calls never happenTool calling disabled in the client, or thinking blocks strippedKeep the client's default tool settings; K3 returns a thinking block before tool_use, do not filter it out

Still stuck? Email [email protected] with the request ID from the error body.