进阶
脚本模式 -p
heng-agent -p "任务" 执行完这一个任务就退出:接管道、输出 JSON 或逐行事件,放进脚本、CI、定时任务里用。没人可问,需要确认的操作默认都拒绝,用 --allowed-tools 精确放行。
- 预计用时
- 约 5 分钟
- 适用版本
- v0.5.0 及以上
执行一个任务就退出
heng-agent -p "统计 src 下每个模块的代码行数"做完把回答打印到标准输出、退出。服务商、模型、权限模式这些参数和交互模式一样能用(--provider、--model、--permission-mode、--workdir)。自定义命令也行:-p "/add-tests src/api/auth.py",见 技能与自定义命令。
接管道
cat error.log | heng-agent -p "分析这段错误" # 管道内容附在问题后面
echo "解释一下 README" | heng-agent -p # 只写 -p:管道内容就是问题放行它要做的事
-p 没人可问,需要确认的操作默认都拒绝。三种放开的办法,从精确到宽松:
| 写法 | 效果 |
|---|---|
--allowed-tools "edit_file,bash(python -m pytest*)" |
这次运行额外允许的规则,逗号分隔,写法同 /permissions |
--permission-mode accept-edits |
改文件不问,跑命令仍拒绝 |
--permission-mode auto |
全部放行(只在 CI、一次性沙箱这类可信环境用) |
--disallowed-tools "bash(git push*)" 额外禁止,拒绝规则优先于一切。
heng-agent -p "把 cart.py 的运费改成 15 元,跑测试确认" --allowed-tools "edit_file,bash(python -m pytest*)"给程序读的输出
--output-format |
输出 |
|---|---|
text(默认) |
普通文字 |
json |
结束时输出一个 JSON:result、session_id、usage…… |
stream-json |
每个事件一行 JSON,给别的程序实时展示进度 |
heng-agent -p "统计代码行数" --output-format jsonsession_id 可以接着用:heng-agent --resume <id> -p "继续:……"。
做完是这样
heng-agent -p "…" 跑完就退出,标准输出里是回答(或一个 JSON);没被放行的操作被拒绝,不会卡在等确认上。