Repository navigation
docs: auto-sync cli with merged PRs (through 2026-10-31) #15139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from 15 commits
64354d2
458d312
4a819a1
59d20e8
ea36966
4705d17
6092102
7b3df62
37b7a2d
c980f44
ae198fc
c298228
1173b37
61c99f7
6e62dfe
d9a8c45
90ddc55
df9b24c
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -39,6 +39,8 @@ kilo --help | |||||
|
|
||||||
| After installation, run `kilo` and use the `/connect` command to add your first provider credentials. This is the interactive way to configure API keys for model providers. | ||||||
|
|
||||||
| The dialog lists each provider with a short description — Kilo Gateway is marked **Recommended**. When the Kilo Gateway model list cannot load, its row shows a red `!` with the reason, such as credentials rejected, not signed in, no connection, or a provider error, so you can fix the connection before starting a session. | ||||||
|
|
||||||
| ## Opening Links | ||||||
|
|
||||||
| Links in agent responses use terminal hyperlink metadata when the terminal supports it. Kilo also handles links inside the TUI, so mouse capture does not make supported HTTP(S) links inactive. Move the pointer over a link to see the hover underline, then click it to open the default browser. | ||||||
|
|
@@ -122,9 +124,12 @@ The `kilo console` command and its browser interface are deprecated and will be | |||||
|
|
||||||
| #### Provider Commands | ||||||
|
|
||||||
| | Command | Description | | ||||||
| |---|---| | ||||||
| | `/connect` | Connect/add a provider - entry point for new users to add API credentials | | ||||||
| | Command | Aliases | Description | | ||||||
| |---|---|---| | ||||||
| | `/connect` | - | Connect/add a provider - entry point for new users to add API credentials | | ||||||
| | `/usage` | `/plans`, `/quota` | Show plan and quota usage for your connected providers | | ||||||
|
|
||||||
| `/usage` opens a **Plans & usage** dialog with one card per detected source: Kilo coding plan quotas, ChatGPT (Codex) rate limits, and MiniMax Token Plan quotas. Each card shows the plan, the usage windows with their percentage used, any reset time, and a **Manage** link when the provider offers one. Press `ctrl+r` to refresh. | ||||||
|
|
||||||
| #### System Commands | ||||||
|
|
||||||
|
|
@@ -262,6 +267,26 @@ The `diff_open` and `session_move` TUI keybindings run the same actions and are | |||||
| } | ||||||
| ``` | ||||||
|
|
||||||
| ## Home Screen and Session Sidebar | ||||||
|
|
||||||
| ### Home screen news | ||||||
|
|
||||||
| When you are signed in to Kilo Gateway, the CLI home screen shows the most recent unread Kilo news item, with a `(N new)` count when more than one item is unread. Select the banner to open the **News** dialog, which lists every unread item and its action links. Opening the dialog marks those items as read, and they stay hidden after a restart. Items that are not intended for the CLI are not shown. | ||||||
|
|
||||||
| The command palette has **Hide news** and **Show news** on the home screen, and the choice persists. Kilo fetches news only while you are signed in, and refetches after you sign in, sign out, or switch teams. | ||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [SUGGESTION]: News is not refetched after sign-in, sign-out, or a team switch in the current CLI
Suggested change
|
||||||
|
|
||||||
| ### Session sidebar | ||||||
|
|
||||||
| The session sidebar shows Kilo panels alongside the built-in ones: | ||||||
|
|
||||||
| - **Branch PR** — the pull request for the current branch, when `gh` is installed and the branch has one. | ||||||
| - **Token Usage** — input, output, reasoning, cache read, and cache write tokens, cache hit rate, generation speed, and cost for the whole session, including subagents. | ||||||
| - **Models** — one row per provider and model, with its step count and cost. Expand a row for its token breakdown. | ||||||
| - **Terminal Bench 2.0** — the completion score and cost per attempt for the current Kilo model. | ||||||
| - **Footer** — your Kilo balance, Kilo Pass usage (personal accounts), and the Kilo version. | ||||||
|
|
||||||
| Select a panel heading to collapse or expand it. | ||||||
|
|
||||||
| ## Permissions | ||||||
|
|
||||||
| Kilo Code uses the permission config to decide whether a given action should run automatically, prompt you, or be blocked. | ||||||
|
|
@@ -707,6 +732,21 @@ The CLI supports overriding config values with environment variables. The suppor | |||||
| - For `kilocode` provider: `KILOCODE_<FIELD_NAME>` (e.g., `KILOCODE_MODEL` → `kilocodeModel`) | ||||||
| - For other providers: `KILO_<FIELD_NAME>` (e.g., `KILO_API_KEY` → `apiKey`) | ||||||
|
|
||||||
| ## Self-Hosted Backends | ||||||
|
|
||||||
| By default the CLI sends Kilo API traffic (sign-in, profile, defaults) to `https://api.kilo.ai` and [AI gateway](/docs/gateway) traffic (chat, model listing, embeddings, autocomplete, transcription) to `https://ai-gateway.kilo.ai/api/v1`. Point either at a different server with these environment variables — for example, to route gateway traffic through a self-hosted gateway for compliance, or a local backend during development. | ||||||
|
|
||||||
| | Variable | Default | Controls | | ||||||
| |---|---|---| | ||||||
| | `KILO_API_URL` | `https://api.kilo.ai` | Kilo API traffic. When set on its own (without `KILO_AI_GATEWAY_URL`), gateway traffic also goes here, under `/api/gateway/v1`. | | ||||||
| | `KILO_AI_GATEWAY_URL` | `https://ai-gateway.kilo.ai/api/v1` | AI gateway traffic only. | | ||||||
|
|
||||||
| Set `KILO_AI_GATEWAY_URL` to send only gateway traffic to another server while leaving sign-in and profile requests on the default: | ||||||
|
|
||||||
| ```bash | ||||||
| KILO_AI_GATEWAY_URL=https://gateway.example.com/api/v1 kilo | ||||||
| ``` | ||||||
|
|
||||||
| ## Using the CLI in an Organization | ||||||
|
|
||||||
| If you belong to a Kilo organization (Team or Enterprise), you can route CLI requests through that organization. The process differs slightly between interactive and non-interactive usage. | ||||||
|
|
||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -29,6 +29,7 @@ Use your provider API key to route matching models through your account: | |
| - Azure Foundry (experimental) | ||
| - DeepSeek | ||
| - Fireworks | ||
| - GMI Cloud | ||
| - Google AI Studio | ||
| - Inception | ||
| - Minimax | ||
|
|
@@ -61,6 +62,15 @@ These providers offer coding-focused subscriptions or dedicated endpoints. Bring | |
| - Xiaomi Token Plan (Singapore) | ||
| - Z.ai Coding Plan | ||
|
|
||
| ### Gateway keys | ||
|
|
||
| These keys route through a gateway that already serves the regular Kilo catalog models, so no separate model entries are needed. Save the gateway's own API key: | ||
|
|
||
| - OpenRouter | ||
| - Vercel AI Gateway | ||
|
|
||
| A gateway key serves the catalog models its gateway provides. If you save both keys, the Vercel AI Gateway key is used for the models it serves, and the OpenRouter key covers requests that Vercel cannot serve. | ||
|
|
||
| ## Connect a ChatGPT subscription | ||
|
|
||
| Connect **OpenAI (ChatGPT subscription)** on the [BYOK page](https://app.kilo.ai/byok) to use your subscription allowance for supported OpenAI models through the Kilo Gateway. No OpenAI API key is needed. | ||
|
|
@@ -143,6 +153,22 @@ These rules apply to saved API keys. Eligible requests use a connected ChatGPT s | |
| - If the key is invalid, the request fails. It does not fall back to using Kilo's keys. | ||
| - Subscription-based providers (such as the Z.ai Coding Plan or Kimi Code) only expose the models included in that plan. Select one of those models to route traffic through your subscription. | ||
|
|
||
| ## Serve Kilo catalog model IDs (catalog mode) | ||
|
|
||
| By default, a provider key serves models under that provider's own IDs. You can switch a key to serve Kilo catalog model IDs instead by turning on **Use Kilo catalog model IDs** when you add or edit the key. | ||
|
|
||
| Catalog mode is off by default for new and existing keys. It is offered only for providers that map at least one model to a catalog ID, and it is not available for Vercel BYOK keys or for the OpenRouter and Vercel AI Gateway keys. | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [SUGGESTION]: "Vercel BYOK keys" is not defined on this page The supported-provider lists add "Vercel AI Gateway" under Gateway keys, and no plain "Vercel" provider is listed, so it is unclear what the separate "Vercel BYOK keys" exclusion means next to the "Vercel AI Gateway keys" exclusion in the same sentence. Name the provider exactly as it appears on the BYOK page, or merge the two exclusions if they refer to the same thing. |
||
|
|
||
| With catalog mode on: | ||
|
|
||
| - The key serves catalog model IDs such as `moonshotai/kimi-k2.6`, and its supported models list shows those IDs. The provider-prefixed IDs are no longer served by the key. | ||
| - [Auto Model](/docs/code-with-ai/agents/auto-model) and custom routers can route matching catalog models through the key. For the catalog models it serves, the key is used ahead of a ChatGPT connection and your other BYOK keys. | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [WARNING]: Catalog-mode precedence contradicts the rules above Line 149 says "Eligible requests use a connected ChatGPT subscription first" and line 152 says the BYOK key is used only when the request is not served by a connected subscription like ChatGPT. This bullet says a catalog-mode key is used ahead of a ChatGPT connection for the catalog models it serves. Readers cannot tell which rule wins; qualify the earlier rule (for example, note the catalog-mode exception) or move the precedence statement up next to it. |
||
| - Organization model restrictions apply to requests that use the key. Keys without catalog mode keep their provider-prefixed IDs and stay exempt from those restrictions. | ||
|
|
||
| Saved favorites are not rewritten when you switch a key to catalog mode. A saved model that used the provider-prefixed ID fails with a message naming the catalog ID to use; select the catalog model instead. | ||
|
|
||
| Personal key owners can change catalog mode. For organization keys, only organization owners and admins can. | ||
|
|
||
| ## Using BYOK in the Extensions and CLI | ||
|
|
||
| - BYOK works with the Kilo Gateway provider. Users should ensure that is set as the active [provider](/docs/ai-providers). | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -77,7 +77,7 @@ Kilo automatically applies prompt caching on supported providers. Repeated conte | |
| - Kilo calculates an estimated cost for each request based on configured pricing. This estimate is shown per-request in the chat history. | ||
| - Cache hits are billed at a discounted rate compared to regular input tokens. | ||
| - Requests using **Auto Free** models are billed at $0 on Kilo's side. | ||
| - **BYOK (Bring Your Own Key)** requests are billed at $0 on Kilo's side — you pay the provider directly. | ||
| - **BYOK (Bring Your Own Key)** requests are not charged for inference on Kilo's side — you pay the provider directly. Kilo still charges for the gateway-side costs it incurs on the request, such as server tools, plugins, and PDF parsing. | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [WARNING]: Other docs still state BYOK costs are $0 on Kilo's side This change correctly adds that Kilo charges gateway-side costs, but |
||
|
|
||
| For current pricing, visit [kilo.ai/models](https://kilo.ai/models). | ||
|
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[SUGGESTION]: Dispatch does not always run on the local provider
KiloCustomRouter.resolvereturnsundefinedwhen the router has no servable client entry, and the custom model id is then forwarded to the gateway unchanged; even with local entries, the routing decision can pick a gateway entry. So "runs the chosen model through its local provider" overstates the local path.