docs(readme): reframe intro + list all 25 supported providers
Kigi started as an unofficial Kimi Code CLI community build; by request it now works with 25 providers. Replace the stale three-platform table with the full supported list (Kimi Code OAuth + 24 API-key providers, each with its platform id and env var). Unsupported/not-yet-built providers are omitted.
This commit is contained in:
@@ -8,13 +8,17 @@
|
|||||||
autonomous, self-verifying agent loops — planned, parallelized,
|
autonomous, self-verifying agent loops — planned, parallelized,
|
||||||
adversarially verified, and merged back, end to end.</p>
|
adversarially verified, and merged back, end to end.</p>
|
||||||
|
|
||||||
**Kigi** is an unofficial Kimi Code CLI community build — a terminal-based
|
**Kigi** started as an unofficial Kimi Code CLI community build, a
|
||||||
AI coding agent re-targeted at the Kimi Code subscription API and the
|
terminal-based AI coding agent re-targeted at the Kimi Code subscription API,
|
||||||
Moonshot open platform, built on the Apache-2.0 sources of
|
built on the Apache-2.0 sources of
|
||||||
[xai-org/grok-build](https://github.com/xai-org/grok-build).
|
[xai-org/grok-build](https://github.com/xai-org/grok-build). It first shipped
|
||||||
|
wired to Kimi Code and the Moonshot open platform. By request, it now works
|
||||||
|
with 25 providers: OpenAI, Anthropic, Google, xAI, Groq, Cerebras, OpenRouter,
|
||||||
|
MiniMax, Z.AI, Qwen, Xiaomi, and more. The full list is under
|
||||||
|
[Providers and API keys](#providers-and-api-keys).
|
||||||
|
|
||||||
It runs as a full-screen TUI that understands your codebase, edits files,
|
It runs as a full-screen TUI that understands your codebase, edits files,
|
||||||
executes shell commands, searches the web, and manages long-running tasks —
|
executes shell commands, searches the web, and manages long-running tasks,
|
||||||
interactively, headlessly for scripting/CI, or embedded in editors via the
|
interactively, headlessly for scripting/CI, or embedded in editors via the
|
||||||
Agent Client Protocol (ACP).
|
Agent Client Protocol (ACP).
|
||||||
|
|
||||||
@@ -107,48 +111,79 @@ echo 'export KIGI_GRAPH=0' >> ~/.zshrc # or ~/.bashrc / ~/.bash_profile
|
|||||||
|
|
||||||
## Providers and API keys
|
## Providers and API keys
|
||||||
|
|
||||||
Kigi talks to a fixed three-platform registry:
|
Kigi ships a fixed registry of 25 platforms: the Kimi Code subscription plus
|
||||||
|
24 API-key providers. There is no dynamic provider registration; each is a
|
||||||
|
compiled-in spec.
|
||||||
|
|
||||||
|
**Kimi Code** (the original target) uses subscription OAuth, not an API key:
|
||||||
|
|
||||||
| Platform id | Base URL | Auth |
|
| Platform id | Base URL | Auth |
|
||||||
| ------------- | -------------------------------- | --------------------------- |
|
| ----------- | -------------------------------- | ------------------------------------------- |
|
||||||
| `kimi-code` | `https://api.kimi.com/coding/v1` | Kimi Code subscription OAuth (`kigi login`) |
|
| `kimi-code` | `https://api.kimi.com/coding/v1` | Kimi Code subscription OAuth (`kigi login`) |
|
||||||
| `moonshot-cn` | `https://api.moonshot.cn/v1` | Moonshot open-platform API key |
|
|
||||||
| `moonshot-ai` | `https://api.moonshot.ai/v1` | Moonshot open-platform API key |
|
|
||||||
|
|
||||||
Moonshot API keys come from the environment or `~/.kigi/config.toml`
|
**API-key providers.** Set the provider's env var, or put the key in
|
||||||
(environment wins; values are never logged):
|
`~/.kigi/config.toml` under `[platforms.<id>]`. The environment wins, a
|
||||||
|
platform-scoped name beats a generic one, and keys are never logged.
|
||||||
|
|
||||||
|
| Provider | Platform id | API key env |
|
||||||
|
| ------------------------- | ---------------------- | ----------------------------------------------- |
|
||||||
|
| Moonshot (moonshot.cn) | `moonshot-cn` | `KIGI_MOONSHOT_CN_API_KEY` (or `KIGI_MOONSHOT_API_KEY`) |
|
||||||
|
| Moonshot (moonshot.ai) | `moonshot-ai` | `KIGI_MOONSHOT_AI_API_KEY` (or `KIGI_MOONSHOT_API_KEY`) |
|
||||||
|
| OpenAI | `openai` | `OPENAI_API_KEY` |
|
||||||
|
| Anthropic | `anthropic` | `ANTHROPIC_API_KEY` |
|
||||||
|
| DeepSeek | `deepseek` | `DEEPSEEK_API_KEY` |
|
||||||
|
| Groq | `groq` | `GROQ_API_KEY` |
|
||||||
|
| Mistral | `mistral` | `MISTRAL_API_KEY` |
|
||||||
|
| Fireworks AI | `fireworks` | `FIREWORKS_API_KEY` |
|
||||||
|
| Google Gemini | `google` | `GEMINI_API_KEY` |
|
||||||
|
| OpenRouter | `openrouter` | `OPENROUTER_API_KEY` |
|
||||||
|
| Together AI | `together` | `TOGETHER_API_KEY` |
|
||||||
|
| Cerebras | `cerebras` | `CEREBRAS_API_KEY` |
|
||||||
|
| NVIDIA NIM | `nvidia` | `NVIDIA_API_KEY` |
|
||||||
|
| Vercel AI Gateway | `vercel-ai-gateway` | `AI_GATEWAY_API_KEY` |
|
||||||
|
| xAI (Grok) | `xai` | `XAI_API_KEY` |
|
||||||
|
| Qwen Token Plan | `qwen-token-plan` | `QWEN_TOKEN_PLAN_API_KEY` |
|
||||||
|
| Qwen Token Plan (China) | `qwen-token-plan-cn` | `QWEN_TOKEN_PLAN_CN_API_KEY` |
|
||||||
|
| Kimi For Coding | `kimi-coding` | `KIMI_API_KEY` |
|
||||||
|
| Z.AI | `zai` | `ZAI_API_KEY` |
|
||||||
|
| Z.AI Coding (China) | `zai-coding-cn` | `ZAI_CODING_CN_API_KEY` |
|
||||||
|
| Xiaomi MiMo | `xiaomi` | `XIAOMI_API_KEY` |
|
||||||
|
| Xiaomi Token Plan (China) | `xiaomi-token-plan-cn` | `XIAOMI_TOKEN_PLAN_CN_API_KEY` |
|
||||||
|
| MiniMax | `minimax` | `MINIMAX_API_KEY` |
|
||||||
|
| MiniMax (China) | `minimax-cn` | `MINIMAX_CN_API_KEY` |
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
export KIGI_MOONSHOT_API_KEY=sk-... # applies to both open platforms
|
export OPENAI_API_KEY=sk-...
|
||||||
export KIGI_MOONSHOT_CN_API_KEY=sk-... # platform-scoped, beats the generic name
|
export XAI_API_KEY=xai-...
|
||||||
export KIGI_MOONSHOT_AI_API_KEY=sk-...
|
|
||||||
```
|
```
|
||||||
|
|
||||||
```toml
|
```toml
|
||||||
# ~/.kigi/config.toml
|
# ~/.kigi/config.toml
|
||||||
[platforms.moonshot-cn]
|
[platforms.openai]
|
||||||
api_key = "sk-..."
|
api_key = "sk-..."
|
||||||
|
|
||||||
[platforms.moonshot-ai]
|
[platforms.xai]
|
||||||
api_key = "sk-..."
|
api_key = "xai-..."
|
||||||
```
|
```
|
||||||
|
|
||||||
On login and on startup Kigi syncs each configured platform's model list
|
On login and on startup Kigi syncs each configured platform's model list
|
||||||
from `GET {base}/models` and shows the merged catalog in the model picker
|
from `GET {base}/models` and shows the merged catalog in the model picker
|
||||||
(catalog keys are `{platform_id}/{model_id}`). Models that advertise
|
(catalog keys are `{platform_id}/{model_id}`). Model metadata (context
|
||||||
selectable thinking levels (e.g. K3's `low`/`high`/`max`) expose them in
|
window, thinking levels) comes from the live listing when the provider
|
||||||
`/model` and `/effort`. If the sync fails, the last cached catalog is used;
|
serves it, otherwise from a bundled models.dev snapshot. Models that
|
||||||
with no cache, a small built-in fallback list applies. Model selection
|
advertise selectable thinking levels (e.g. K3's `low`/`high`/`max`) expose
|
||||||
|
them in `/model` and `/effort`. If the sync fails, the last cached catalog is
|
||||||
|
used; with no cache, a small built-in fallback list applies. Model selection
|
||||||
resolves as `--model` CLI flag > `KIGI_DEFAULT_MODEL` > `[models] default`
|
resolves as `--model` CLI flag > `KIGI_DEFAULT_MODEL` > `[models] default`
|
||||||
in config.toml > server-delivered list > built-in fallback.
|
in config.toml > server-delivered list > built-in fallback.
|
||||||
|
|
||||||
`KIGI_CODE_BASE_URL` re-points the subscription platform (useful for
|
Each platform's base URL can be re-pointed for dev/test with
|
||||||
testing); `KIGI_MOONSHOT_CN_BASE_URL` / `KIGI_MOONSHOT_AI_BASE_URL` are the
|
`KIGI_<PLATFORM>_BASE_URL` (e.g. `KIGI_CODE_BASE_URL`,
|
||||||
equivalent dev/test overrides for the open platforms.
|
`KIGI_MOONSHOT_CN_BASE_URL`, `KIGI_OPENAI_BASE_URL`).
|
||||||
|
|
||||||
The web `search`/`fetch` tools ride the Kimi Code subscription services and
|
The web `search`/`fetch` tools ride the Kimi Code subscription services and
|
||||||
are present only on OAuth sessions — API-key-only sessions run without
|
are present only on OAuth sessions. API-key-only sessions run without them,
|
||||||
them, matching the official client.
|
matching the official client.
|
||||||
|
|
||||||
## Building from source
|
## Building from source
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user