Skip to content

Latest commit

 

History

History
166 lines (110 loc) · 12.5 KB

File metadata and controls

166 lines (110 loc) · 12.5 KB

DeepAgent Code logo

具备持久记忆与控制平面的 AI 编程智能体

English | 简体中文


DeepAgent Code 是一个构建在持久文档记忆之上的 AI 编程智能体。它保留了 opencode 的运行时基座,并在其上叠加了一层控制平面——让智能体不再像一次性的对话工具,而更像一位记得住你项目、会替你打磨模糊需求、能对硬骨头深挖到底的队友。

下面的每一项特性,都从一个真实的需求出发——一个普通编程智能体(包括 opencode)尚未满足的需求——再向下讲到我们为满足它而构建的底层架构。

你可以做什么

把历史一起带过来——换工具不必从零开始

需求: 你已经在另一个智能体里——Codex 或 Claude Code——积累了几个月的上下文,而换工具通常意味着把这一切统统丢下:那些对话、沉淀下来的记忆、你调好的技能。单是这份代价,就足以把人留在早该告别的工具上。

DeepAgent 的做法: 一键导入你已有的历史。把它指向一个 Codex 或 Claude Code 的安装目录,它就会把你的会话、记忆和技能热导入 DeepAgent——读取各工具的本地格式,归一化后重放进文档图,让导入的对话表现得和原生对话一样。导入过程中会对密钥做脱敏,导入的项目彼此隔离、不会和你正在进行的工作冲突,重复导入会收敛而不是产生重复。入口有三处:设置里的"导入历史"面板、侧栏的历史视图,以及 import-history 命令行。迁移只需几分钟,而不是推倒重来。

一直对话下去,不必换新

需求: 长任务会撑爆上下文窗口。多数智能体的应对方式是截断历史,或在阈值处一刀切地整体摘要——于是任务进行到一半,智能体忘了你一小时前拍的板,或者窗口被陈旧的工具输出塞满,质量断崖式下跌。

DeepAgent 的做法: 你的对话被当作一份持续维护的工作状态,而不是不断变长的聊天记录。每一轮开始前,智能体都会重建一份工作面——任务锚点、最近若干轮的原文、活跃的文件引用,以及此刻真正相关的旧事实——同时完整历史被持久归档、随时可查。工作面被严格控制在模型窗口的一个固定比例以内,永远给模型留足思考和作答的余地。你只管一直说,智能体替你保持专注。

随手分叉、切换窗口,记忆不丢

需求: 你想同时试两条思路,或把工作交给一个全新的对话,却不想从头失忆重来,也不想把原来的线程搅乱。

DeepAgent 的做法: 从任意一条消息分叉当前对话。分叉出的新对话会继承父对话到该点为止的记忆,在时间线顶部显示一条贯穿窗口的"从对话派生"分割线,并像文件夹一样嵌套挂在来源对话之下(子 agent 与分叉同理,最多三层深)。知识沿作用域层级向上流动——单个会话学到的东西可提升到整个项目,跨项目的偏好则沉淀在用户全局层——所以换窗口是一次干净的交接,而非一次清零重来。

想到哪问到哪,让智能体替你打磨

需求: 半成品的提问只能换来半有用的回答,而你未必总知道该怎么把想要的东西说清楚。

DeepAgent 的做法: 输入框上有两种情景模式。直接模式原样发送你的提示——措辞由你做主。智能模式会把粗糙的想法打磨成更精准的提示,给出草拟的方案和决策建议,并在自动执行任何操作前等你确认。智能体替你塑形到什么程度,由你决定。

对真正的难题深挖到底

需求: 复杂的工作——一个架构决策、一次棘手的迁移、一个隐蔽的 bug——需要的不止一次自信的单程作答。它需要调研、需要第二意见、需要有人主动来挑刺。

DeepAgent 的做法: 在更高的工作强度下,主智能体会拆解任务,扇出给专注的子 agent 并行调研各个模块,综合它们的发现,再运行独立的审阅者——审阅者的职责是"击破"方案,而不是附和。扇出受可配置的并发上限约束;运行中的子 agent 会出现在会话侧栏面板和时间线内联卡片里,你可以旁观并随时跳进任意一个。

团队与智能体,在同一处协作

需求: 和队友协调、驱动智能体,通常发生在两个不同的工具里。

DeepAgent 的做法: 每个项目的群聊就在会话侧栏里。把某个智能体 @ 进来当作聊天成员,它便会跑完整的智能体回路——查代码、生成、修复——拉取项目知识与最近消息作为上下文,然后带着实时进度在群里内联回复。

它是怎么做到的

上面每一项能力,底层都由一个控制平面原语来支撑。这些正是普通运行时所没有的部分。

四图合一 — 代码图、知识图、项目记忆、文档图被统一进同一个带类型、双向链接的存储。当智能体拉取上下文时,对某个符号的改动会连带浮现出与它真正相连的设计决策、过往诊断和知识——是连通的上下文,而不是四次互不相干的关键词检索。

领域包 — 140+ 个可组合的知识包,覆盖编程语言、框架、平台(云、Kubernetes、CI)、硬件,以及业务/风险领域(安全、隐私、合规)。每个包捆绑了带类型的文档(策略、方法论、知识、技能、故障档案)与探测器,能为你的任务自动激活相应的包;冲突按"更严策略优先"消解,激活的集合会被版本锁定,从而让一次运行可复现。内核保持领域中立——专业能力是磁盘上的数据,而非写死的代码。

知识分级调用 — 一条单调递增的强度阶梯(general → high → xhigh → max → ultra)决定控制平面机器启动到什么程度。general 贴近原生运行时——又快又省。越往上,逐级解锁持久知识、项目交接摘要、更重的策略/方法论层,以及多智能体编排。只有当你上调档位时,才为深度付费。

自学习 — 工作落地后,智能体会提出候选的知识、事实与方法论。晋升是证据门控的(一项测试通过、一条诊断清零、一次校验确认)且由用户掌控——持久知识是被有意结转的,而非后台悄悄猜出来的。会话中稳定的结论会随时间巩固进项目记忆,于是下一次会话对你的代码库上手更聪明。

安装

npm install -g deepagent-code

然后运行:

deepagent-code
# 或使用别名:
deepagent

快速示例

启动智能体并交给它一个任务:

deepagent-code "为 /api/users 端点添加限流"

智能体将会:

  1. 用 LSP 找到端点定义并理解其结构
  2. 检查项目记忆中已有的中间件模式
  3. 激活相关领域包(后端 API、项目所用语言)
  4. 遵循项目约定实现限流
  5. 运行测试、捕获诊断,并提出一条候选记忆:"本项目使用 express-rate-limit 中间件"

下一次会话,当你要在别处添加限流时,智能体已经知道这套模式。

核心概念

文档图 — 所有持久状态都存放在带类型的文档里:knowledgestrategymethodologyskillmemorydesignworklogdiagnosiseval。文档之间相互链接(支持/阻断/冲突/校验),构成一张可遍历的图。

作用域分层session-private(当前对话)、project-shared(本项目所有会话)、user-global(跨项目偏好)、public-system(内置技能)、sealed(仅供审计,永不进入上下文)。

上下文准入 — 检索命中要经过准入门。完整的工具输出(原始 LSP 转储、诊断、能力索引)被写入证据工件,带引用链接、仅工具可见;只有摘要与 file:line 片段进入模型上下文。敏感值(SSH 主机、令牌、内部路径)只被建议、绝不自动展开。

AI IDE 微服务 — 按符号名与意图查询代码(例如 code_intel({ symbol: "AgentGateway.open", intent: "overview" })),而非按 file:line 坐标。一次调用即可拿到定义、引用、调用链、类型层级与诊断。基于 LSP、支持 38 种语言服务器;当某文件类型未配置服务器时,优雅降级到 grep/read。

预置 MCP 目录 — 面向 Git 平台、文件搜索、只读数据库与浏览器自动化的精选 MCP 服务器。风险等级在加载时由目录模板推导(不来自用户配置,因而无法被注入),服务器默认不连接,写操作与外部请求置于审批门之后。

架构

┌─────────────────────────────────────────────────────────────┐
│  控制平面(DeepAgent 新增)                                  │
│  • 四图合一存储(代码 + 知识 + 记忆 + 文档)                 │
│  • 持续维护的工作状态(记忆 + 压缩)                         │
│  • 领域包系统(可组合、自动激活的知识)                     │
│  • 上下文装配与准入门                                       │
│  • 多智能体编排与对抗式审阅                                 │
│  • 证据门控的学习 + 工作强度阶梯                            │
└─────────────────────────────────────────────────────────────┘
                             │
┌─────────────────────────────────────────────────────────────┐
│  运行时基座(来自 opencode)                                 │
│  • 智能体回路与工具执行                                     │
│  • 会话、分叉与供应商管理                                   │
│  • MCP 客户端运行时                                         │
│  • 权限系统                                                 │
└─────────────────────────────────────────────────────────────┘
                             │
┌─────────────────────────────────────────────────────────────┐
│  智能层                                                     │
│  • LSP 微服务(38 种语言服务器)                            │
│  • 预置 MCP 服务器(git/文件/数据库/浏览器)                │
│  • 领域适配器(校验与诊断)                                 │
│  • 诊断与校验回路                                           │
└─────────────────────────────────────────────────────────────┘

DeepAgent 的控制平面在供应商轮次的边界上运作:在每次模型调用前挑选上下文,调用后把证据写回文档图。它不替换 opencode 的运行时——只是叠加在其之上。

文档

许可与署名

DeepAgent Code 采用 AGPL-3.0-or-later 许可。如果你修改并将其作为网络服务运行,必须向用户提供你的源代码。

本项目衍生自 opencode(MIT 许可)。完整的上游许可与署名见 NOTICE。本项目不暗示 opencode 或其贡献者的任何背书。


由 DeepAgent 打造