# Kimi provider 404 investigation — t_9b61fb08

## Owner correction
Do not switch `t_9b61fb08` to GPT. Investigate Kimi provider routing/config.

## Findings

Direct Kimi For Coding API smoke test using `KIMI_CODING_API_KEY`:

- `POST https://api.kimi.com/coding/v1/messages`, model `kimi-k2.7` → HTTP 200, replied `OK`.
- `POST https://api.kimi.com/coding/v1/messages`, model `k2.7` → HTTP 200, replied `OK`.
- `POST https://api.kimi.com/coding/v1/chat/completions` → HTTP 403, message says Kimi For Coding is only available for coding agents.
- `POST https://api.kimi.com/coding/messages` → HTTP 404.

Hermes profile smoke test:

```bash
hermes --profile moying chat -q '只回复 OK' --provider custom:kimi-code -m kimi-k2.7 --toolsets skills --quiet
```

Result: stdout contained `OK` and a session id. CLI exited with known `Aborted (core dumped)` after stdout, but model call succeeded.

## Likely root cause

The Kimi provider/key is not dead. The 404 was likely caused by wrong routing/model string in the OpenDesign task path:

- Bad/fragile: `custom:kimi-code:kimi-k2.7`
- Verified working Hermes CLI invocation: provider `custom:kimi-code`, model `kimi-k2.7`
- API path must be Anthropic Messages style: `/coding/v1/messages`
- Chat completions mode is not accepted for Kimi For Coding.

## Required continuation for t_9b61fb08

Use Kimi, not GPT:

- Provider: `custom:kimi-code`
- Model: `kimi-k2.7` or `k2.7`
- API mode: `anthropic_messages`
- Base URL config: `https://api.kimi.com/coding`
- Verify with a one-line smoke before running OpenDesign.

If OpenDesign cannot pass provider/model separately and only accepts a combined model string, fix the OpenDesign/Hermes wrapper mapping instead of falling back to GPT.
