睡前丢给它三张工单,早上收代码和账单:我开源了一个 DeepSeek 驱动的 AI 编码助手
前言
睡前我在终端敲了一行命令,把三张工单丢进队列,去睡觉了。
早上起来,三个 git worktree 里躺着改好的代码,每个任务一份报告:改了哪些文件、验收命令的输出、花了多少钱。像这样:
发文提示:上面两张图是本地路径(
src/文章示例/图片资源/下),发布到掘金时请手动上传替换;第一张适合设为封面。
这是我写的开源工具 DeepSeeker-Code:一个 DeepSeek 驱动的 AI 编码助手,VS Code 插件 + 终端 CLI 双端,agent 主循环、工具系统、MCP、Hooks、Skills、子代理,全都有。仓库在这:github.com/xknk/deepse…。
一、为什么又要造一个轮子?
网上不缺「给 Claude Code 改个环境变量接 DeepSeek」的教程。我试过,能用,但一直别扭:
- 那是寄生:人家的提示词、人家的工具协议、人家的发布节奏,你只是换了个 API 地址。模型行为不匹配了,你没法改 agent 本身。
- 更要命的是账单黑箱:一轮对话花了多少钱?哪轮在空转烧 token?没人说得清。便宜的模型配上失控的轮次,最后不一定便宜。
所以我自己写了一个,把「成本」当成一等公民来设计——这是我认为它和「寄生教程」最大的区别,展开讲讲。
二、成本信任链:四环
第一环:任务结算单。 每个 run 结束都有一张结算行:输入/输出/缓存命中的 token 数、按官网价折算的花费。/usage 能看近 7 天总花费、缓存节省额、费用 top 会话。哪里在烧钱,一目了然。不是概念图——开头两张就是实跑:两班挂机 5 张工单,总共 ¥0.8,缓存命中率 89%~97%。
第二环:预算制运行。 /budget 0.5 给单个任务设 5 毛钱上限。触顶先软提醒模型收敛,仍超到 120% 就在轮边界硬截断——不会失控跑一晚上。挂机之前设个预算,睡得着。
第三环:上下文 HUD。 输入框旁边一个水位环显示上下文占用(口径和自动压缩判定同源),悬停看已用/窗口/压缩次数;旁边胶囊实时显示本会话累计花费和缓存命中率。模型「内存」还剩多少,不再靠猜。
第四环:挂机批处理。 开头那一幕的完整形态:
# 写一张工单(frontmatter:标题 + accept 验收命令必填,正文就是任务描述)
deepseeker-code batch add 修复登录页样式.md
# 串行跑整个队列(worktree 隔离 + 审批自动应答:编辑类放行、高危拒绝并记录)
deepseeker-code batch run
每个任务在独立 worktree 里跑,不污染你的工作区;跑完自动执行你写的验收命令;报告落在 done/ 目录,改动保留在 worktree 等你人工处置。可配 --wait-window 23:00-07:00 只在深夜跑。
三、该有的也都有
捡重点说,完整清单看仓库 README:
- 计划模式:先只读调研出方案,你批准了才动手;方案可以直接在面板里改完再执行
- 检查点回滚:每条消息发送前自动存档,
⏱面板一键回到任意时点,连文件改动一起回滚(先恢复文件、再截断对话,不会出现半途状态) - 逐消息撤回:任意一条提问旁边有 ↺,点击回到发送前,原文自动回填输入框,改两个字重发
- 贴图:vision 模型直接看图;非 vision 模型自动降级走你配置的图像理解 MCP,不丢图
- VS Code 多 Tab:一个会话一个页签,和 Claude Code 的工作区形态一致;CLI 端功能对等
- 中文优先:界面和回复中英双语一键切换(
/lang),提示词针对中文场景调过 - 扩展机制:MCP 外部工具、11 类生命周期 Hooks、目录式 Skills,声明式配置
四、上手
VS Code 侧栏扩展商店搜 DeepSeeker-Code(或 插件市场直链);终端党:
npm install -g deepseeker-code
两端的配置都只要一个 DeepSeek API Key(环境变量 DEEP_SEEK_API_KEY,推荐不放配置文件里)。
模型走官网 API 按量计费,给个真实参考:写这篇文章当天,我两班挂机跑了 5 张工单一共 ¥0.8,最贵的一张 ¥0.28——还停在它自己那张工单 ¥0.3 预算帽的 92% 上。
五、说说实话
这是我一个人的开源项目,刚上架不久,装量还很小。它不是「平替 Claude Code」——生态、模型能力差距都客观存在。它的定位是:给想要一个便宜、透明、可自己动手改的 AI 编码助手的开发者。核心 agent 循环和成本链路都在仓库里,欢迎来挑毛病、提 issue、扔工单进来试试挂机。
这个挂机链路我自己天天在用:拿它做了个叫 lunchshift 的小工具(npm 搜 lunchshift),扫出仓库里的 TODO/FIXME 杂活自动生成工单,午休挂机跑。开头那两张图就是它今天的实跑——5 张工单全过验收,一共 ¥0.8。其中有一班,agent 把上一班的自己留下的一个错误结论写成了工单,中午就修掉了。
结语
睡前丢工单,早上收账单。这大概是程序员对 AI 最放心的信任方式。
项目已经开源:github.com/xknk/deepse…(终端 npm install -g deepseeker-code;文中案例的小工具叫 lunchshift)。觉得「成本看得见、活干得放心」这个方向有点意思,点个 star 就是对我最大的鼓励。
总结
- 挂机批处理:工单 frontmatter 带验收命令和预算帽,worktree 隔离串行跑,报告连结算单落
done/,改动保留在 worktree 等人工处置; - 成本信任链:任务结算单 +
/usage、/budget预算帽硬截断、水位环与花费胶囊——每分钱、每轮 token 都看得见; - 账单是真的:两班挂机 5 张工单全过验收,共 ¥0.80,缓存命中 89%~97%,最贵一张 ¥0.28 停在预算帽的 92%;
- 定位:单人本地、便宜透明、可自己动手改;文中的挂机案例就是拿它做的小工具 lunchshift。