# Use Kimi Code with crystl

> Install Moonshot AI's Kimi Code CLI, log in, and run it in a crystl shard. crystl recognises Kimi and manages its shard, but ships no hooks, transcript, or resume for it yet.

Kimi Code is Moonshot AI's terminal coding agent. crystl runs it and recognises it, but its integration is **partial**, and the gaps are large enough to read first rather than discover later.

> **Start here.** Kimi has no crystl hooks, no transcript reader, and no resume. That means no approval panels, no turn-end reporting, no history search, no chat dock, and no resurrect. Everything below says which of those bite and when.

## 1. Install Kimi Code

```bash
curl -fsSL https://code.kimi.com/kimi-code/install.sh | bash
```

The script downloads the latest release, checks it, and puts `kimi` on your `PATH`. It does not need Node.js.

npm works too:

```bash
npm install -g @moonshot-ai/kimi-code
```

## 2. Log in

Run it from your project directory, then use its own login command:

```bash
kimi
```

```
/login
```

Pick either the Kimi Code device-code flow or a Kimi Platform API key.

## 3. Check it runs on its own

```bash
kimi --version
```

## 4. Launch it in crystl

Type it in a shard:

```bash
kimi
```

crystl spots `kimi` in the process tree and shows it as that shard's agent. It is not in the agent pickers, and it has no settings tab, so typing the binary is the way in.

**Do not expect an opening prompt to work.** Kimi's `-p` / `--prompt` flag runs one prompt non-interactively and then exits, which would end the session rather than start it, so crystl deliberately does not use it. Launch bare and type your first message into Kimi's own interface.

## What crystl can do with it

- **It manages the shard.** Gems, shards, splits, scrollback, renaming, [formations](/docs/formations/), and the [workbench](/docs/task-backlog/) all work, because none of them need the agent's cooperation.
- **It shows the agent and a working state.** The shard reports Kimi as its agent, and crystl infers busy or idle by watching the process.

## What it does not do

- **No approval panels.** crystl's [approval modes](/docs/approval-modes/) are driven by an agent reporting its tool calls. Kimi reports none, so nothing is intercepted and nothing is auto-approved. Answer its prompts in its own terminal.
- **No turn-end reporting.** Its shard rows stay a plain `idle`, never `✓ declared done` or `❓ asked a question`. A quiet Kimi shard proves nothing: it may be mid-task, finished, or waiting on you. `crystl wait done` falls back to the process exiting, and [vigil](/docs/vigil/) treats its idle reading as a guess.
- **No history, chat dock, or timeline.** crystl ships no transcript reader for Kimi and will not guess at another agent's format.
- **No resume or resurrect.** Kimi's own resume is scoped to a directory or an interactive picker rather than keyed on an id crystl holds, so closing the shard ends it.

If you are fanning work out and want to walk away, that combination makes Kimi a poor choice of worker today. It is a fine choice for a shard you are sitting in front of.

## Model sizes

Kimi takes a model with `--model` (or `-m`). crystl pins **no** default, deliberately, so Kimi falls through to `default_model` in `~/.kimi-code/config.toml` and your own configuration wins.

Ids that resolve on a stock install: `kimi-k3`, `kimi-k2.6`, `kimi-k2.5`, and `kimi-for-coding`. Your `config.toml` may define shorter aliases of its own.

```bash
crystl agent profile set --agent kimi --small kimi-k2.5 --standard kimi-k2.6 --large kimi-k3
```

See [model sizes](/docs/model-sizes/).

## Troubleshooting

**The shard shows no agent.** crystl matches `kimi` and `kimi-code` in the process tree. A wrapper script or an alias that launches it under another process name hides it.

**A worker never reports done.** It cannot. Use the process exiting as your signal, or run Kimi where you can watch it.

## Other agent setup

- [Use Claude Code with crystl](/docs/agent-claude-code/)
- [Use Codex with crystl](/docs/agent-codex/)
- [Use Antigravity CLI with crystl](/docs/agent-antigravity/)
- [Open models](/docs/open-models/) to run any of them on your own hardware

---
Source: https://crystl.dev/docs/agent-kimi/
