DEV Community

SatoMiHill
SatoMiHill

Posted on

Github发现 | Reasonix – 专为 DeepSeek 打造的终端 AI 编程 Agent

如果你是一个经常用 DeepSeek API 做编程任务的开发者,有没有想过一个问题:同样的会话,为什么别人一个月的费用比你低一大截?

答案很可能不在模型本身,而在于客户端对前缀缓存的管理。大多数 Agent 框架在每个回合都会以不同的方式重排或注入内容,导致 DeepSeek 的自动前缀缓存机制频频失效,缓存命中率长期在 20% 以下。

Reasonix(GitHub 曾用名 DeepSeek-Reasonix)就是为解决这一问题而生的开源项目——它是一个专为 DeepSeek 打造终端编程 Agent,核心设计理念是围绕字节级稳定前缀缓存构建整个交互循环,让 token 成本在长时间运行中始终保持在极低水平。

官方给出了一个真实用户数据:单日输入 435M tokens,99.82% 缓存命中率,费用约 $12,而同样工作量无缓存需要约 $61,节省了近 80%。

原文链接:Github发现 | Reasonix – 专为 DeepSeek 打造的终端 AI 编程 Agent

专为 DeepSeek 打造的终端 AI 编程 Agent

相关链接

Reasonix 是什么

Reasonix 是一个开源的 DeepSeek 原生 AI 编程 Agent,发布于 GitHub,MIT 协议,目前版本 0.49.0,GitHub 获得 18.6k Stars 和 1.2k 次 Fork。

项目由 esengine 团队维护,采用 TypeScript + Node.js 开发,要求 Node ≥ 22。支持 macOS、Linux 和 Windows(PowerShell / Git Bash / Windows Terminal)。

它的产品定位很明确:做一款便宜到可以一直跑着的编程 Agent。大多数 Agent 框架默认使用前沿模型(Claude Opus、GPT-4o 等),一个月烧掉几百美元是常态。Reasonix 则把 DeepSeek 的成本优势做到极致,默认使用 v4-flash,按任务计费,缓存命中后费用更低。

核心功能

1. 三大架构支柱

Pillar 1 — Cache-First Loop(缓存优先循环)

大多数 Agent 框架每个回合都会重排或重写历史消息、注入新的时间戳,这会破坏 DeepSeek 前缀缓存所需的字节级精确匹配,导致缓存命中率极低。

Reasonix 将上下文分为三个固定区域:

  • 不可变前缀:system prompt + tool specs + few-shots,会话开始时冻结
  • 仅追加日志:每个回合的 assistant/tool 消息按顺序追加,不修改历史
  • 临时草稿区:R1 推理过程中的思考状态,不上传到服务端

这种设计保证前缀字节序列在整个会话期间完全稳定,缓存始终命中。实测数据:缓存命中率 99.82%。

Pillar 2 — Tool-Call Repair(工具调用修复)

DeepSeek 的工具调用有几个常见失败模式:JSON 出现在思考区块而非 tool_calls、超过 10 个参数的 schema 参数丢失、max_tokens 截断导致 JSON 不完整、重复相同调用的”风暴”问题。

Reasonix 内置四层修复管道:

  • flatten:超过 10 个叶参数或深度 >2 的 schema 自动转换为点号格式传参
  • scavenge:正则扫描思考内容,抢救被遗忘的工具调用
  • truncation:检测不平衡 JSON 并请求续写补全
  • storm:识别重复相同调用,直接跳过并注入反思

Pillar 3 — Cost Control(成本控制)

提供了四套互补的成本控制机制:

  • flash-first 分级默认:flash(v4-flash,便宜 12 倍)/ auto(自动升级困难任务)/ pro(v4-pro)三档
  • 回合结束自动压缩:每个工具结果超过 3000 tokens 时自动摘要,减少后续上下文量
  • /pro 单次升级:手动触发下一次 v4-pro 执行,随后自动降回 flash
  • 失败信号自动升级:连续 3 次失败后自动切换到 v4-pro 执行当前回合

2. 多模式运行

命令 说明
reasonix / reasonix code 编程 Agent(默认,包含文件系统访问)
reasonix chat 纯聊天模式,无文件系统工具
reasonix run "task" 单次执行任务,流式输出到 stdout

3. MCP 服务器支持

支持 stdio、SSE、Streamable HTTP 三种协议连接 MCP 服务器,配置文件和命令行参数均可指定。一个配置格式同时适用于两种方式。

4. Skills 系统

以 Markdown 格式编写可被模型调用的操作手册,支持两种模式:

  • inline:直接内联执行
  • subagent:生成独立的子 Agent 循环

Reasonix 还会自动加载 Claude-format 的 SKILL.md 文件,OpenSpec 等工具的工作流可直接迁移使用。

5. Memory 系统

用户私有知识固定写入前缀,支持四类:

  • user:用户全局偏好
  • feedback:对模型输出的反馈
  • project:项目私有信息
  • reference:参考文档

6. 钩子(Hooks)

生命周期钩子支持在关键节点注入自定义逻辑:

  • PreToolUse:工具执行前拦截(可做权限 gating)
  • PostToolUse:工具执行后处理
  • UserPromptSubmit:用户提交前处理
  • Stop:会话停止时的清理逻辑

7. Web 搜索

默认使用 Mojeek 搜索引擎,可切换为自托管的 SearXNG 或 Metaso,通过 /search-engine 命令动态更换。

8. 内置 Web Dashboard

启动时自动在本地启动一个 Web 界面(默认 http://localhost:18792),显示当前会话的文件树、token 用量、缓存命中率、费用等实时指标。

9. 桌面客户端(预发布)

使用 Tauri 构建的原生桌面客户端,bundles 独立的 Node 运行时,无需单独 npm install。提供多标签页、右侧面板实时显示已读取/编辑的文件、底部费用/缓存/令牌仪表盘。目前为预发布状态,macOS 需手动 xattr 处理 Gatekeeper,Windows 需绕过 SmartScreen。

10. 会话持久化

每个工作区的会话独立持久化存储,下次进入同一目录可以继续上次的上下文。

11. 其他功能

  • Plan mode/plan 提交计划供用户确认后再执行
  • 自动检查点:会话异常中断可恢复
  • Transcript 回放/replay 回放历史会话
  • 事件日志/events 查看操作历史
  • /effort 旋钮:调节模型推理努力程度
  • QQ 频道(国内特色):可将 QQ 消息接入当前会话流程,远程操控 CLI
  • 语义索引reasonix index 支持本地 Ollama 或 OpenAI 兼容嵌入端点

快速部署

前提要求:Node.js ≥ 22

全局安装(推荐日常使用)

npm install -g reasonix
reasonix code my-project
# 首次运行粘贴 DeepSeek API key,之后自动持久化
Enter fullscreen mode Exit fullscreen mode

临时运行(不全局安装)

cd my-project
npx reasonix code
Enter fullscreen mode Exit fullscreen mode

获取 DeepSeek API Keyhttps://platform.deepseek.com/api\_keys

其他子命令

reasonix doctor    # 健康检查:Node、API key、MCP 配置
reasonix update    # 升级 Reasonix 本身
reasonix --help    # 查看全部子命令
Enter fullscreen mode Exit fullscreen mode

配置文件:位于 ~/.reasonix/config.json,支持按项目覆盖(<project>/.reasonix/)。

适用人群

深度使用 DeepSeek API 的开发者——如果你已经有 DeepSeek API key,想找一个低成本的编程 Agent,Reasonix 是目前该场景下成本控制最好的选择

需要长时间运行后台任务的用户——缓存稳定性设计让它可以低成本地一直挂着跑

开源爱好者——MIT 协议,代码完全开源,社区活跃度高(157 个 open issues,5 个 open PRs)

国内用户——QQ 频道接入、中文 Discord 社区支持是加分项

需要 Claude / GPT 多模型支持——Reasonix 是 DeepSeek-only,不适合需要对比多模型能力的场景

杂货喵实测体验

杂货喵 小编亲测了 Reasonix 的安装和基础代码编辑功能,整体体验可以用一个字概括:

安装过程非常顺畅,npm install -g reasonix 不到一分钟搞定,首次运行会提示粘贴 API key,之后就记住了不用再管。启动后的 Ink 终端界面比较清晰,左上角是当前目录和会话状态,右下角实时显示 token 用量和费用预估,交互逻辑和 Claude Code 比较接近但上手更快。

小编让它读取了一个小型 Node.js 项目的代码并做了几处 SEARCH/REPLACE 修改,整个过程中 /apply 的确认机制让人比较安心——Agent 提出的改动不会直接落盘,必须手动确认才会写入文件,这种设计对新手比较友好。

成本方面,测试了大约 10 分钟的会话,token 消耗折算下来不到 $0.1,相比 Claude Code 订阅制的成本结构,DeepSeek 侧的费用确实低了一个数量级。

当然,DeepSeek 的推理能力相比 Claude Opus 在复杂任务上仍有差距,如果你做的是需要深度推理的架构设计或算法优化类任务,Reasonix 的表现可能不如 Claude Code。但对于日常 CRUD、代码重构、Bug 修复这类场景,它完全能够胜任,而且成本优势明显。

需要 IDE 深度集成——终端优先的设计不适合喜欢 GUI 鼠标操作的用户

完全免费/离线运行——需要 DeepSeek API key,是付费服务
个数量级。


总结:Reasonix 是一个设计目标非常明确的开源编程 Agent。它不追求功能的大而全,而是围绕 DeepSeek 的成本结构和缓存机制做深度优化,把”低单位成本 × 高缓存命中率”这件事做到了极致。如果你是 DeepSeek 重度用户,寻找一个能一直跑着的编程助手,Reasonix 值得一试。

Top comments (0)