Skip to content

无头模式(exec)

在脚本、CI、cron 或其他程序里非交互地运行 hipmmcode。

bash
hipmmcode "tokio 最新版本是多少?"                  # 位置参数 → exec
hipmmcode exec "修复挂掉的测试"                     # 显式形式
cat report.md | hipmmcode "总结这个文件"            # stdin 作为上下文
echo "提示词" | hipmmcode                          # stdin 作为提示词

失败时退出码非零 —— 可以放心作为 CI 步骤的闸门。

输出格式

Flag输出
(默认)最终助手文本,纯文本
--json / --output-format json一个 JSON 信封:结果文本、用量、费用、会话 id、退出元数据
--stream / --output-format stream-jsonNDJSON —— 运行过程一行一个事件(工具调用、文本增量、结果)

更细的流:--include-partial-messages(逐 token 增量)、--include-hook-events(hook 生命周期帧)、--prompt-suggestions(预测的下一条用户消息)、--verbose

结构化输出

强制回答符合 JSON Schema —— 自动校验,不匹配自动重试:

bash
hipmmcode --print --json-schema '{"type":"object","properties":{"version":{"type":"string"}},"required":["version"]}' \
  "最新稳定版 Rust 是哪个版本?"

上限与预算

bash
hipmmcode --max-turns 8 "..."            # 限制工具迭代次数(默认 200)
hipmmcode --max-budget-usd 0.50 "..."    # 硬性花费上限 —— 到达即停止

预算耗尽会在结果信封中标出(budget_exceeded)。

系统提示控制

Flag效果
--system-prompt <text> / --system-prompt-file <f>完全替换 lead 系统提示(仅 exec)
--append-system-prompt <text> / --append-system-prompt-file <f>追加(可重复)
--dump-system-prompt打印组装后的完整提示并退出(不调模型)
--no-memory跳过持久记忆注入
--exclude-dynamic-system-prompt-sections机器相关段落移到首条用户消息,提升 prompt 缓存复用

无头运行中的会话

无头运行默认也持久化会话(之后可续接):

bash
hipmmcode --resume sess_abc "接着上次继续"
hipmmcode -c "再来一件事"                        # 继续最近会话
hipmmcode --fork-session --resume sess_abc "换个思路试试"
hipmmcode --no-session-persistence "一次性问题"

自治助手

bash
# 持续干到条件达成(由廉价评估模型验证):
hipmmcode --goal "所有测试通过" "修复测试套件"

# 运行结束时提炼记忆(自进化):
hipmmcode --auto-memory "重构配置加载器"

goalMaxContinuations(默认 25)限制 --goal 的续跑次数;goalEvaluatorModel 指定评估模型。

没有人在场时的权限

无头运行没人点"允许"。可选项:

Flag行为
(无)ask 规则的决策失败关闭(拒绝)
--dangerously-skip-permissions跳过所有弹窗(显式 deny 规则除外)
--permission-mode acceptEdits自动批准文件编辑,危险 shell 仍拒绝
--permission-webhook <url>每个决策 POST 给你的服务;回 {"behavior":"allow"|"deny"|"allow_always"}
--permission-prompt-tool <mcp-tool>把决策路由给某个 MCP 工具
--ask-webhook <url>AskUserQuestion 调用 POST 给你的服务;回 {"answers":[…]}

规则语法见权限

工具面控制

bash
hipmmcode --allowed-tools Bash,Read,Grep "..."   # 白名单(FileRead 仍可作为别名)
hipmmcode --disallowed-tools WebSearch "..."         # 黑名单(在白名单之后应用)
hipmmcode --bare "..."                               # 快速启动:跳过技能/MCP/hooks,工具收窄到 Bash+Read+Edit
hipmmcode --safe-mode "..."                          # 排障:禁用全部自定义

定时运行

bash
hipmmcode cron list                    # <cwd>/.hipmmcode/scheduled_tasks.json 中的持久任务
hipmmcode cron daemon --interval 60    # 进程外调度器:轮询 + 无头触发

退出码

含义
0成功
1错误(flag / 配置 / 认证 / 网络)
2JSON 参数不合法,或 hook 阻断
非零触到 max-turns 上限、预算上限、或 schema 校验重试耗尽

长期运行的集成,优先考虑服务器与任务队列SDK 协议。完整机器集成手册内嵌在二进制里:hipmmcode integration