kimi-code / docs /zh /guides /interaction.md
SaylorTwift's picture
SaylorTwift HF Staff
Add files using upload-large-folder tool
f0634fb verified
|
Raw History Blame Contribute Delete
9.63 kB
# 交互与输入
Kimi Code CLI 以交互式 TUI 运行,核心由输入框、对话视图和状态栏三部分组成。本页介绍输入方式、媒体粘贴、审批流程和模式切换。
## 输入框基本操作
输入框接受自由文本:`Enter` 发送,`Shift-Enter` 或 `Ctrl-J` 插入换行。输入框为空时按 `↑` / `↓` 浏览当前工作目录的历史输入,包括此前运行过的 Shell 命令。
**退出 CLI**:输入框为空时按 `Ctrl-D`,或空闲状态下连按 `Ctrl-C` 两次,或输入 `/exit`。流式输出期间按 `Ctrl-C` 或 `Esc` 是中断当前轮次,不会退出程序。
## 粘贴图片与视频
Kimi Code CLI 支持在输入框中直接粘贴图片和视频,让 AI 结合视觉内容理解你的问题——截图报错、UI 设计图、架构图,直接粘贴进去就能讨论,无需上传或转存。
**视频输入是 Kimi Code 的特色能力**,支持直接粘贴视频片段让模型分析其中的内容、界面流程或代码演示。
操作方式:
- **macOS / Linux**:`Ctrl-V`
- **Windows**:`Alt-V`
粘贴后输入框显示占位符,可像普通文本一样编辑;提交时自动替换为实际内容。纯文本剪贴板会回退到普通粘贴。媒体功能是否可用取决于当前模型的多模态能力(`image_in` / `video_in`),登录 Kimi Code 账号后默认开启。
当会话中累积的媒体超过 20 MB 时,最早的图片和视频会自动从请求中省略,并显示一条警告。
## 斜杠命令
以 `/` 开头输入命令,补全菜单实时过滤,`Esc` 关闭;匹配不到时按普通消息发送。常用命令:
| 命令 | 作用 |
| --- | --- |
| `/new` | 新建会话 |
| `/sessions` | 浏览并恢复历史会话 |
| `/compact` | 压缩当前会话的上下文 |
| `/undo` | 撤销最近的提示词 |
| `/model` | 切换当前会话使用的模型 |
| `/plan` | 切换 Plan 模式(先出计划再动手) |
| `/yolo` | 打开权限模式列表并预选 "Ask When Needed"(常规修改和命令自动完成) |
| `/goal` | 开始或管理目标模式 |
| `/help` | 查看全部命令 |
已激活的 [Agent Skills](../customization/skills.md) 也会注册为斜杠命令(如 `/skill:<name>`)。全部命令说明见[斜杠命令参考](../reference/slash-commands.md)。
## 文件引用
键入 `@` 触发文件路径补全,选中后插入相对路径,Agent 读取消息时直接加载该文件内容。
- **适用范围**:git 与非 git 目录都可用;隐藏路径也可补全,`.git` 除外
- **文件夹候选**:以 `/` 结尾,可继续补全其下路径
- **降级行为**:快速搜索辅助工具仍在下载时,先回退到基础文件系统扫描
> `@` 引用和斜杠命令是两套机制:`@` 给 Agent 提供文件上下文,`/` 调用内置功能或 Skill。
## 审批流程
Agent 调用会产生副作用的工具(修改文件、执行命令等)时,TUI 会弹出审批面板让你确认。
- **确认**:方向键选择后 `Enter`,或按 `1`/`2`/`3` 数字键直接选择
- **拒绝**:`Esc`、`Ctrl-C`、`Ctrl-D`
- **会话内放行**:选「Approve for this session」,本次会话内同类调用不再询问
- **永久规则**:在[配置文件](../configuration/config-files.md#permission)预置 allow / deny 规则
"Ask When Needed" 模式下的普通工具调用、Plan 模式下对计划文件的写入,不触发审批。
### 三种权限模式
**"Always Ask"**(始终询问,原 Manual)是默认模式:只读操作自动放行,修改文件、执行命令等其余操作都会逐一向你确认,适合需要全程掌控每个改动的场景。
**"Ask When Needed"**(必要时询问,原 YOLO)用 `/yolo` 开启,自动批准普通工具调用,适合已知安全的批处理任务。敏感操作仍会询问——例如访问 `.env`、SSH 私钥等敏感文件、执行 `shutdown`、`rm -rf` 这类危险命令,或退出 Plan 模式——Agent 也仍可能向你提问。
**"Never Ask"**(完全自动,原 Auto)用 `/auto` 开启,是完全无人值守模式:所有工具审批自动处理,包括敏感文件和计划退出,且 Agent 不会向你提问,完全由它自己做决定。内置的危险命令拦截会在 "Always Ask" 和 "Ask When Needed" 模式下要求你确认 `shutdown`、`reboot`、`rm -rf` 这类命令;在 "Never Ask" 模式下这些命令直接执行,不再拦截。
## 模式切换
### Plan 模式
Plan 模式下,Agent 先输出行动计划,等待你确认后才动手修改文件,适合复杂或高风险任务。
- 切换:`Shift-Tab` 或 `/plan`
- 清除当前计划:`/plan clear`(仅空闲时)
Agent 输出方案后会等待你审批——可批准执行、拒绝、或要求修改。退出 Plan 模式需要你确认,即使开启了 "Ask When Needed" 模式也不例外。"Never Ask" 模式例外:计划退出会自动批准,并在记录中标记为 "Auto-approved"。
### Shell 模式
Shell 模式让你不离开对话就能运行终端命令,命令输出会写入对话上下文,AI 在后续轮次能够看到这些结果。
- 进入:在空输入框中键入 `!`,或粘贴以 `!` 开头的命令。
- 退出:在空输入框中按 `Backspace` 或 `Esc`;提交命令后也会自动回到普通模式。
- 后台运行:命令执行期间按 `Ctrl+B` 可将其转为后台任务。
- 召回历史命令:在 Shell 模式的空输入框中按 `↑` 浏览此前运行过的 Shell 命令,召回后仍处于 Shell 模式,可再次作为命令执行。
- 长输出:命令输出过长时,结束后的输出卡片会自动折叠,按 `Ctrl-O` 可与工具输出一起展开或折叠。
进入 Shell 模式后,输入框左侧会显示 `!` 提示符,边框变为紫色。例如,无需新开终端就能运行 `!gh auth login` 登录 GitHub CLI,登录后 Kimi 就可以直接使用 `gh`。
### 目标模式
目标(goal)让 Agent 在多个轮次中持续朝一个明确结果工作——普通提示词说「下一步做什么」,目标说的是「最终要达成什么状态」。适合终点清晰、结果可验证的任务,如修复一批失败的测试、追查并修复构建失败的根因。一次性修改或只需要一个答案的问题,用普通提示词更合适。
在 `/goal` 后写目标,写清完成条件和停止条件(目标最长 4000 个字符,超长会被拒绝,已输入的文本保留在输入框中):
```sh
/goal 修复所有结算系统回退的漏洞,为每个修复补充测试,最后运行结算测试套件
```
避免 `/goal 找出代码库中的所有 bug` 这类宽泛写法——没有成功标准的目标,Agent 可能立刻进入「阻塞」状态,或工作得远超预期。明显无法完成的目标(如 `/goal 证明 1 + 1 = 3`)也会被直接标记为「阻塞」。
常用管理命令:
| 命令 | 作用 |
| --- | --- |
| `/goal` 或 `/goal status` | 查看当前目标及进展 |
| `/goal pause` / `/goal resume` | 暂停 / 继续目标 |
| `/goal cancel` | 取消目标(需确认,取消后无法继续) |
| `/goal replace <objective>` | 用新目标替换当前目标 |
| `/goal next <objective>` | 追加后续目标,当前目标完成后自动开始 |
目标有三种停止方式:**完成**:达成后自动清除并总结;**暂停**:手动暂停、中断轮次或出错;**阻塞**:Agent 无法按当前表述继续,会简短说明原因。时间预算只在目标活跃且会话打开时计时,会话关闭或目标暂停期间不计时,重新打开会话后用 `/goal resume` 按剩余预算继续。
Web 界面中,对话下方的目标条可直接暂停、继续或取消目标;点击目标条可展开详情,配置了 token 预算时会显示预算进度。
用 `/goal next <objective>` 可以在不打断当前目标的情况下安排后续工作:当前目标运行期间后续目标对 Agent 不可见,完成后自动开始第一个。`/goal next manage` 打开交互式管理器,可调整顺序、编辑或删除(方向键浏览,`Space` 选择,`E` 编辑,`D` 删除,`Esc` 取消)。当前目标被暂停、取消或阻塞时,后续目标不会自动开始。
> 提示:`manual` 权限模式下目标可能停下来等待工具审批;非交互模式只支持创建目标(`kimi -p "/goal ..."`),完成时退出码 `0`、阻塞时 `3`、暂停时 `6`。
## 流式输出期间
Agent 思考或调用工具时,输入框仍然可用,支持以下额外操作:
- **`Ctrl-S`**:把输入框中的内容立即注入正在运行的轮次,无需等待结束
- **`Esc` / `Ctrl-C`**:中断当前轮次
- **`Ctrl-O`**:全局切换工具输出和压缩摘要的折叠状态
Agent 正通过 `WaitFor` 等待后台任务时,按 `Ctrl-S` 会提前结束本次等待。后台任务继续运行,已有工具结果保留;如果同批还有其他前台工具,Agent 会在它们返回后处理新消息。
## 外部编辑器
按 `Ctrl-G` 把当前输入内容发给外部编辑器,保存后回填到输入框,不保存则保持原样。适合需要输入大段文本或带格式内容的场景。
编辑器优先级:`/editor` 配置 > `$VISUAL` 环境变量 > `$EDITOR` 环境变量。未配置时可先运行 `/editor` 选择默认编辑器。
## 下一步
- [键盘快捷键](../reference/keyboard.md) — 全部快捷键的完整速查表
- [斜杠命令](../reference/slash-commands.md) — 所有内置命令的说明与别名
- [会话与上下文](./sessions.md) — 如何恢复会话、压缩上下文、导出对话