Deep Code 团队你们好,感谢打造了这么棒的工具——TUI 体验非常好,deepseek-v4 的深度思考和推理强度控制也特别好用。
我想请求为 Deep Code CLI 添加 headless(无头/非交互)模式 的支持。
目前的 cli.tsx:73 强制要求 TTY:
if (!process.stdin.isTTY) {
process.stderr.write("deepcode requires an interactive terminal...");
process.exit(1);
}
这导致 Deep Code 无法在脚本、cron 定时任务或 CI/CD 流水线中使用。
为什么需要这个功能
| 场景 |
能做什么 |
| CI/CD 集成 |
在 GitHub Actions 中让 Deep Code 做 PR review、生成 changelog、运行提交前检查 |
| 定时任务 |
每日自动搜集行业新闻、检查依赖更新、仓库健康巡检——通过 cron 执行 |
| 多 Agent 协同 |
一个"调度者"Agent 可以启动多个 Deep Code 子 Agent 并行工作 |
| 编辑器/IDE 集成 |
Neovim、VSCode 插件通过程序化接口调用 Deep Code(与 #36 相关) |
| 批量处理 |
对多个项目自动执行同一个 prompt |
其他工具的做法
- Claude Code:
-p 在非 TTY 下自动执行并退出,支持 --json 结构化输出。文档
- Aider:支持
--message / --no-auto-commits,可脚本化调用
- Codex CLI:也有开发者提了同样的 issue
建议的实现方式
最小可用改动:
- 当 stdin 不是 TTY 时,
-p/--prompt 变为执行模式(而非仅预填充)
- 非 TTY 模式下自动批准权限(因为没有用户可询问)
- 执行完毕后退出,并返回结构化结果
可选增强:
--json 输出结构化结果(模型、tokens、修改的文件等)
--max-turns N 限制最大轮次
--auto-approve 作为显式开关(即使在 TTY 模式下也可用)
目前的替代方案及其局限
目前唯一的变通方案是"伪调度"——在每次打开 Deep Code 时检查条件(比如"距上次新闻搜集是否已过 3 天")。这能覆盖个人使用场景,但无法用于 CI 或多 Agent 协同。
English TL;DR: Requesting headless/non-interactive mode so Deep Code can run in scripts, cron, and CI/CD. Claude Code and Aider already support this. Minimum change: make -p executable in non-TTY mode with auto-approved permissions.
Deep Code 团队你们好,感谢打造了这么棒的工具——TUI 体验非常好,deepseek-v4 的深度思考和推理强度控制也特别好用。
我想请求为 Deep Code CLI 添加 headless(无头/非交互)模式 的支持。
目前的
cli.tsx:73强制要求 TTY:这导致 Deep Code 无法在脚本、cron 定时任务或 CI/CD 流水线中使用。
为什么需要这个功能
其他工具的做法
-p在非 TTY 下自动执行并退出,支持--json结构化输出。文档--message/--no-auto-commits,可脚本化调用建议的实现方式
最小可用改动:
-p/--prompt变为执行模式(而非仅预填充)可选增强:
--json输出结构化结果(模型、tokens、修改的文件等)--max-turns N限制最大轮次--auto-approve作为显式开关(即使在 TTY 模式下也可用)目前的替代方案及其局限
目前唯一的变通方案是"伪调度"——在每次打开 Deep Code 时检查条件(比如"距上次新闻搜集是否已过 3 天")。这能覆盖个人使用场景,但无法用于 CI 或多 Agent 协同。