File size: 4,519 Bytes
f0634fb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# 会话与上下文

Kimi Code CLI 把每次对话持久化为一个「会话」,保留消息历史和元数据,可以随时关闭终端后再回来继续。本页介绍如何恢复会话、管理上下文,以及导出和派生会话。

## 会话存储

所有会话保存在 `$KIMI_CODE_HOME/sessions/` 下(默认 `~/.kimi-code/sessions/`),按工作目录分组存放:

```text
~/.kimi-code/
├── config.toml
├── session_index.jsonl
└── sessions/
    └── <workDirKey>/
        └── <sessionId>/
            ├── state.json
            └── agents/
                ├── main/
                │   └── wire.jsonl
                └── <subagentId>/
                    └── wire.jsonl
```

- `state.json`:会话标题、创建时间等元数据。
- `agents/*/wire.jsonl`:Agent 事件流,用于会话恢复和回放;同时记录发给模型的请求轨迹(工具 schema、请求参数、MCP 工具清单),便于调试。

::: warning 注意
`sessions/` 目录下的文件请勿手动编辑,否则可能导致会话无法正常恢复。
:::

## 启动与恢复会话

每次直接运行 `kimi` 都会创建新会话。以下方式可以恢复历史会话:

**继续当前目录最近的会话:**

```sh
kimi --continue
```

**恢复指定会话(通过 ID):**

```sh
kimi --session abc123
```

**交互式浏览历史会话并选择:**

```sh
kimi --session
```

::: warning 注意
`--continue` 与 `--session` 互斥。
:::

## 在 TUI 中切换会话

不离开当前终端也可以管理会话,以下斜杠命令仅在 Agent 空闲时可用:

- **`/new`**(别名 `/clear`):切换到新会话,丢弃当前上下文。
- **`/sessions`**(别名 `/resume`):浏览并恢复历史会话。
- **`/fork`**:派生当前会话(详见下文)。
- **`/title <text>`**(别名 `/rename`):设置会话标题方便识别;不带参数时显示当前标题。

## 上下文压缩

对话变长时,Kimi Code CLI 会在上下文接近窗口上限时自动压缩历史消息,释放 token 空间。也可以随时手动触发:

```
/compact
```

压缩时可以附带指引,告诉模型优先保留哪些信息:

```
/compact 保留与数据库迁移相关的讨论
```

## 派生会话

想在不破坏当前对话的前提下尝试新思路,使用 `/fork`:

```
/fork
```

fork 后你仍停留在原会话,对话不受影响、可以直接继续;派生出的副本与原会话彼此独立,可以随时通过 `/sessions` 切换过去。已保存的 `/goal` 不会复制到派生会话。如果你想在派生会话中进行自主 goal 工作,需要在那里开始一个新 goal。

fork 完成后,CLI 会打印一条可直接运行的 `kimi --resume` 命令(并自动复制到剪贴板),方便你在新终端进程中直接进入派生会话。

## 导出会话

用 `kimi export` 把会话打包为 ZIP,适合分享、归档或提交问题反馈:

```sh
kimi export <sessionId>
```

不传 `sessionId` 时导出当前目录最近的会话(有交互式确认,加 `-y` 跳过)。用 `-o` 指定输出路径:

```sh
kimi export <sessionId> -o ~/Desktop/my-session.zip
```

导出包含会话目录下的所有文件,包括诊断日志。全局诊断日志(`~/.kimi-code/logs/kimi-code.log`)默认也会打包;如不需要,加 `--no-include-global-log` 排除。

也可以在 TUI 内导出,无需离开交互界面:

- **`/export-debug-zip`**:产生与 `kimi export` 相同的调试 ZIP。
- **`/export-md`**(别名 `/export`):导出为人类可读的 Markdown 对话记录,适合分享或存档。可选接收路径参数;不带参数时写入工作目录下的 `kimi-export-<short-id>-<timestamp>.md`。

在 web UI 中,`/export` 会把当前会话下载为诊断 ZIP。压缩包包含持久化的会话数据、诊断日志,以及记录浏览器关键事件且大小有上限、只含元数据的 `logs/kimi-web.jsonl`;提示词正文、WebSocket 内容和 console 参数不会写入这份浏览器日志。这里的 web 命令与上面的 TUI `/export` 别名行为不同。

::: tip 提示
导出文件可能包含代码、命令输出和路径等敏感信息,分享前请先确认内容。
:::

## 下一步

- [数据路径](../configuration/data-locations.md) — 会话文件的完整目录结构说明
- [kimi 命令](../reference/kimi-command.md) — `--continue`、`--session`、`export` 等命令的完整参数参考