kimi 命令
kimi 是 Kimi Code CLI 的主命令,用于在终端中启动一次交互式会话。不带任何参数运行时,它会在当前工作目录下开启一个新会话;配合不同的 flag,可以续上历史会话、跳过审批、从 Plan 模式开始,或者指定自定义的 Skills 目录。
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> | 设置非交互输出格式,支持 text 与 stream-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,在当前目录开启一次全新的会话:
kimi如果上一次会话被打断(关闭终端、网络断开等),想从断点继续,使用 --continue:
kimi --continue它会自动找到当前工作目录下时间最近的那个会话并恢复。若想挑选其他历史会话,运行 kimi --session 进入交互式选择器,或者直接传入已知的 session ID:
kimi --session 01HZ...XYZ当任务比较琐碎,不希望被频繁的审批请求打断时,可以加上 --yolo:
kimi --yolo需要先让 AI 阅读代码、产出实现计划,而不是立刻动手修改文件时,使用 --plan 进入 Plan 模式:
kimi --plan自定义 Skills 目录
如果需要加载自定义的 Skills 目录,可以通过两种方式指定:
CLI flag
--skills-dir <dir>:可重复传入,会替换自动发现的用户和项目目录,适合临时切换或在脚本中使用。例如同时挂载两个目录:shkimi --skills-dir /path/to/team-skills --skills-dir ./local-skillsconfig.toml的extra_skill_dirs:在配置文件中追加额外目录,与自动发现的目录叠加生效,适合长期配置团队共享 Skills(详见 Agent Skills)。
非交互执行
需要在脚本或 CI 中运行单次 prompt 时,使用 -p:
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:
kimi -m kimi-code/kimi-for-coding -p "Explain the latest diff"如果脚本需要结构化读取输出,可以使用 JSONL:
kimi -p "List changed files" --output-format stream-jsonstream-json 模式下,stdout 每行都是一个 JSON 对象。普通回复会输出 Assistant 消息;如果模型调用工具,会先输出带 tool_calls 的 Assistant 消息,再输出对应的 Tool 消息,最后继续输出后续 Assistant 消息。thinking 内容不会写入 JSONL;工具进度和恢复会话提示仍然写到 stderr。
子命令
kimi export
把一个会话打包成 ZIP 文件,便于分享、归档或者提交问题反馈。导出的压缩包包含会话目录下的所有文件,例如上下文记录、状态文件和会话诊断日志(如果该会话已经产生 logs/kimi-code.log)。
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 可以跳过确认,适合在脚本里使用:
# 导出当前工作目录最近一次会话,跳过确认
kimi export -y
# 导出指定会话到自定义路径
kimi export 01HZ...XYZ -o ./bug-report.zip
# 排除全局诊断日志,避免分享其它会话的事件
kimi export 01HZ...XYZ -o ./bug-report.zip --no-include-global-logkimi migrate
将旧版 kimi-cli 的本地数据迁移到 kimi-code。该命令无任何 flag,纯交互式运行,会引导你完成数据迁移的全流程。
kimi migrate如果你之前使用过旧版 kimi-cli,可以运行此命令将历史会话、配置等数据迁移到 kimi-code 中,避免数据丢失。完整的迁移流程、迁移内容与注意事项见 从 kimi-cli 迁移。