Skip to content

kimi 命令

kimi 是 Kimi Code CLI 的主命令,用于在终端中启动一次交互式会话。不带任何参数运行时,它会在当前工作目录下开启一个新会话;配合不同的 flag,可以续上历史会话、跳过审批、从 Plan 模式开始,或者指定自定义的 Skills 目录。

sh
kimi [options]
kimi <subcommand> [options]

主命令选项

下表列出 kimi 主命令支持的全部选项。所有 flag 都是可选的,直接运行 kimi 即可进入交互式会话。

选项简写说明
--version-V打印版本号并退出。
--help-h显示帮助信息并退出。
--session [id]-S恢复一个会话。带 ID 时直接打开指定会话;不带 ID 时进入交互式选择器,从历史会话中挑选。
--continue-C继续当前工作目录下最近一次的会话,无需手动指定 ID。
--model <model>-m为本次启动指定模型别名。省略时,新会话使用配置文件中的 default_model,恢复会话使用会话当前模型。
--prompt <prompt>-p非交互执行单次 prompt,并把 Assistant 输出流式写到 stdout。该模式会使用 auto 权限处理工具调用,不会打开 TUI。
--output-format <format>设置非交互输出格式,支持 textstream-json。仅可与 --prompt 一起使用,默认 text
--yolo-y自动批准普通工具调用,跳过审批请求;Plan 模式中的 Bash 审批和退出审批不会被跳过。
--plan以 Plan 模式启动新会话,AI 会优先使用只读工具进行探索和规划,可以写入当前计划文件;Plan 模式中的 Bash 按权限模式单独处理。
--skills-dir <dir>从指定目录加载 Skills,替换自动发现的用户和项目目录。可重复传入以叠加多个目录。详见下文 自定义 Skills 目录

-r / --resume--session 的隐藏别名;--yes--auto-approve--yolo 的隐藏别名。它们在帮助信息中不会显示,行为与对应的官方 flag 完全一致。

注意

--yolo 会跳过普通工具调用的人工确认,包括文件写入和 Shell 命令执行。请只在受信任的工作目录下使用。Plan 模式的退出审批不会被 --yolo 跳过;Plan 模式下的 Bash 也按 --yolo 的普通放行规则处理。

flag 冲突规则

以下组合会在启动时被拒绝:

  • --continue--session 互斥:两者都表示"恢复历史会话",含义重叠。
  • --yolo 不能与 --continue--session 同时使用:恢复会话时会沿用原会话的审批设置。此规则仅适用于交互式模式;在 --prompt 模式下,--yolo 已因与 --prompt 互斥而被更早拦截。
  • --plan 不能与 --continue--session 同时使用:Plan 模式只对新会话生效。
  • --prompt 不能与 --yolo--plan 同时使用:非交互模式固定使用 auto 权限,并且不进入 Plan 模式。
  • --prompt 可以与 --continue 或带 ID 的 --session <id> 一起使用;不带 ID 的 --session 会尝试打开选择器,因此不能用于非交互模式。
  • --output-format 只能与 --prompt 一起使用;交互式 TUI 不支持把完整事件流写成 stdout JSONL。

如果需要在恢复会话时强制使用 YOLO 或 Plan 模式,请改在交互式会话内通过斜杠命令切换。

典型用法

最常见的入口是直接运行 kimi,在当前目录开启一次全新的会话:

sh
kimi

如果上一次会话被打断(关闭终端、网络断开等),想从断点继续,使用 --continue

sh
kimi --continue

它会自动找到当前工作目录下时间最近的那个会话并恢复。若想挑选其他历史会话,运行 kimi --session 进入交互式选择器,或者直接传入已知的 session ID:

sh
kimi --session 01HZ...XYZ

当任务比较琐碎,不希望被频繁的审批请求打断时,可以加上 --yolo

sh
kimi --yolo

需要先让 AI 阅读代码、产出实现计划,而不是立刻动手修改文件时,使用 --plan 进入 Plan 模式:

sh
kimi --plan

自定义 Skills 目录

如果需要加载自定义的 Skills 目录,可以通过两种方式指定:

  • CLI flag --skills-dir <dir>:可重复传入,会替换自动发现的用户和项目目录,适合临时切换或在脚本中使用。例如同时挂载两个目录:

    sh
    kimi --skills-dir /path/to/team-skills --skills-dir ./local-skills
  • config.tomlextra_skill_dirs:在配置文件中追加额外目录,与自动发现的目录叠加生效,适合长期配置团队共享 Skills(详见 Agent Skills)。

非交互执行

需要在脚本或 CI 中运行单次 prompt 时,使用 -p

sh
kimi -p "Summarize the current repository status"

输出采用 transcript 样式:thinking 内容和 Assistant 正文都会以 开头,换行后使用两个空格缩进。Assistant 正文会输出到 stdout;thinking、工具进度和 To resume this session: kimi -r <id> 提示输出到 stderr。-p 模式不会请求人工审批,普通工具调用、Plan 审批和 Agent 提问都会按 auto 权限策略处理。静态 deny 规则仍然会阻止匹配的工具调用。

需要临时切换模型时,加上 -m

sh
kimi -m kimi-code/kimi-for-coding -p "Explain the latest diff"

如果脚本需要结构化读取输出,可以使用 JSONL:

sh
kimi -p "List changed files" --output-format stream-json

stream-json 模式下,stdout 每行都是一个 JSON 对象。普通回复会输出 Assistant 消息;如果模型调用工具,会先输出带 tool_calls 的 Assistant 消息,再输出对应的 Tool 消息,最后继续输出后续 Assistant 消息。thinking 内容不会写入 JSONL;工具进度和恢复会话提示仍然写到 stderr。

子命令

kimi export

把一个会话打包成 ZIP 文件,便于分享、归档或者提交问题反馈。导出的压缩包包含会话目录下的所有文件,例如上下文记录、状态文件和会话诊断日志(如果该会话已经产生 logs/kimi-code.log)。

sh
kimi export [sessionId] [options]
参数 / 选项简写说明
sessionId要导出的会话 ID。省略时会自动选择当前工作目录下最近一次的会话,并要求确认。
--output <path>-o输出 ZIP 文件路径。省略时写入当前目录下的默认文件名。
--yes-y跳过默认会话的确认提示,直接导出。
--no-include-global-log不打包当前活动的全局诊断日志,即 ~/.kimi-code/logs/kimi-code.log。默认包含。

默认导出包含目标会话目录内的文件;如果会话目录里有 logs/kimi-code.log,会一并出现在 ZIP 的 logs/kimi-code.log。全局诊断日志 ~/.kimi-code/logs/kimi-code.log 默认也会打包,因为它可能包含其它会话或其它项目的事件,如果不想分享可以加 --no-include-global-log。加上后,ZIP 内路径是 logs/global/kimi-code.log,不会包含轮转出来的 kimi-code.log.1 等旧文件。

省略 sessionId 时,命令会先打印待导出的会话信息并请求确认;用 -y 可以跳过确认,适合在脚本里使用:

sh
# 导出当前工作目录最近一次会话,跳过确认
kimi export -y

# 导出指定会话到自定义路径
kimi export 01HZ...XYZ -o ./bug-report.zip

# 排除全局诊断日志,避免分享其它会话的事件
kimi export 01HZ...XYZ -o ./bug-report.zip --no-include-global-log

kimi migrate

将旧版 kimi-cli 的本地数据迁移到 kimi-code。该命令无任何 flag,纯交互式运行,会引导你完成数据迁移的全流程。

sh
kimi migrate

如果你之前使用过旧版 kimi-cli,可以运行此命令将历史会话、配置等数据迁移到 kimi-code 中,避免数据丢失。完整的迁移流程、迁移内容与注意事项见 从 kimi-cli 迁移