Skip to main content

概述

Headless(非交互)模式让 Qoder CLI 在没有交互式界面的情况下运行——接收一个提示词,执行任务,把结果输出到标准输出,然后退出。它适合把 Qoder 嵌入 Shell 脚本、自动化流程和 CI/CD 流水线。 进入 Headless 模式的方式是加上 --print(简写 -p):
由于没有人在旁边确认,Headless 模式下的权限需要预先配置好——任何原本需要弹窗确认的操作,在纯文本 Headless 模式下会被自动拒绝。相关说明见 权限

基本用法

把提示词作为参数传入,并加上 -p
也可以通过标准输入传入提示词:
在脚本中捕获输出:

输出格式

--output-format(简写 -o)指定输出格式,默认是 text 示例:
输入格式可以用 --input-format 指定,支持 textstream-json。使用 stream-json 输入时,可以通过标准输入持续发送结构化消息。

常用参数

Headless 模式下常配合以下参数使用: 完整参数见 CLI 启动参数参考。

权限控制

Headless 模式下没有交互式确认,因此需要通过权限参数预先决定哪些操作可以自动执行:
  • 在纯文本 Headless 模式下,任何”需要确认”的操作默认转为拒绝;若由宿主程序通过 stream-json 协议驱动(例如 Agent SDK),确认请求会转交宿主程序决策,见 权限 中”不同运行环境下 ask 的消费方式”。
  • --permission-mode accept_edits 可自动批准工作目录内的安全文件编辑。
  • --yolo(等价于 --permission-mode bypass_permissions)跳过所有确认,仅建议在完全可信的环境中使用
各权限模式的行为详见 权限

CI/CD 示例

在流水线中,通常先通过环境变量完成认证,再以 Headless 模式运行:
认证方式见 登录与认证。把输出格式设为 json,便于流水线后续步骤解析 Qoder 的结果。