Run OpenHands on Mingles Router
Run the OpenHands coding agent on Mingles Router. It uses LiteLLM under the hood, so an OpenAI-compatible base URL and the openai/ model prefix are all it needs.
Pick your model and paste your key — every command and value on this page updates live.
Endpoint: https://router.mingles.ai/v1 · key stays in your browser ·
no key entered? commands show <your-key>.
Run + configure in the UI
1. Launch OpenHands
Start the app with Docker (or pip install openhands-ai && openhands), then open http://localhost:3000.
docker run -it --rm --pull=always \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:latest \
-v /var/run/docker.sock:/var/run/docker.sock \
-v ~/.openhands:/.openhands \
-p 3000:3000 --add-host host.docker.internal:host-gateway \
--name openhands-app docker.all-hands.dev/all-hands-ai/openhands:latest 2. Open Settings → LLM and enable Advanced
In Settings → LLM, toggle Advanced so the custom-model and base-URL fields appear.
3. Fill the fields
Use the exact values in the table below. The openai/ prefix tells LiteLLM to talk the OpenAI dialect to our endpoint.
4. Save & start a conversation
Hit Save, then open a new conversation — OpenHands will route to Mingles Router.
Exact values
| LLM Provider | OpenAI Compatible |
| Custom Model | openai/moonshotai/Kimi-K2.6 |
| Base URL | https://router.mingles.ai/v1 |
| API Key | <your-key> |
Prefer a config file?
Edit ~/.openhands/config.toml
Set the [llm] section directly:
[llm]
model = "openai/moonshotai/Kimi-K2.6"
base_url = "https://router.mingles.ai/v1"
api_key = "<your-key>" Keep the openai/ prefix on the model — without it LiteLLM will not pick the OpenAI-compatible path.
Switch model
Switching models is just a different Custom Model value (keep the openai/ prefix) — same base URL, same key:
model = "openai/moonshotai/Kimi-K2.6" Before you file a bug: read the limits
Reasoning models spend the output budget on internal thinking, output is capped at 8192 tokens, there is no KV cache, and there are no built-in web tools. Most “it broke on Mingles Router” reports are one of these. See Model limits & behavior →
Frequently asked
Why the openai/ prefix on the model? +
OpenHands routes through LiteLLM. The openai/ prefix selects the OpenAI Chat Completions transport for a custom base_url; the rest of the string is our model id, e.g. openai/moonshotai/Kimi-K2.6.
UI or config.toml? +
Either works. The UI (Settings → LLM → Advanced) is easiest; config.toml [llm] is better for headless/CI. They set the same three values: model, base_url, api_key.
Which provider do I select in the dropdown? +
“OpenAI Compatible”, then enter the custom model and base URL. Do not pick plain “OpenAI”.