回到首页

Theseus

我自己用的 AI 协作系统,把多个 agent 的记录、长期结论、能力入口和服务控制放在一起。重构已经结束,还在继续建设。

TYPE
一个人用的 AI 协作系统
STATUS
重构结束,基础验收通过
WHEN
2026 年 3 月起
BUILT WITH
Python、TypeScript、Go、Bash 和网页代码
WHO
我一个人做的

这是什么

我给自己做的一套 AI 协作系统,多个 agent 留下的原始记录、以后还要用的结论、技能入口,以及语音转文字、图片文字识别这些服务,都放在同一套能追查出处的约定下。项目里的草稿、源码和产物仍留在各自的正本里,只有以后可能跨项目用到的认识,才提炼成长期笔记。

留下记录和找回结论,分别用 remember 和 recall。换了会话,recall 默认给我命中的摘要,需要时再取全文。服务另有统一的控制入口,可以查看、启停和设置开关,不需要为了关掉一个部件去改它的实现。

结论要留着出处

记忆分原始层和长期层,分别叫 L1、L2。原始层里,事件只能追加,对话镜像可以随摄入更新,附件单独保存。长期层里放用户模型、系统模型、主题知识和跨项目经验。发生事情后先留原始证据,再由 agent 提炼认识,通过命令行写入长期层。它不会定时把全部记录自动整理一遍。

写长期笔记时,正文要引用原始事件,命令还要声明这些引用,缺了引用,或者声明的引用没出现在正文里,写入就会被拒绝。remember 加上长期保存选项,会同时留事件和带引用的笔记。契约只管有没有引用,引用的事件是否真实、结论是否真的被它支持,没有自动检查。

受管长期笔记要引用原始事件原始事件提炼与写入受管长期笔记L1 · 原始事件事件引用事件只追加,保留原文追加新事件agent提炼可复用认识记忆命令行检查笔记中的引用有引用正文引用原始事件--refs 声明同一事件L2写入L2 → L1:引用缺引用拒绝退出码 2remember --durable 同时留事件,并建立带引用的长期笔记。L1 还有对话与附件,只追加规则针对事件。

FIG. 1 · 长期结论连回原始证据

示意图,按记忆命令的写入契约画。缺了引用的长期笔记会被拒绝写入。

技能只留一份正文

能力库叫 Armory,按 8 个领域组织入口。能力正文只有一份,agent 所在的宿主通过软链接引用它,软链接就是指向那份正文的入口。别的仓库拥有的能力,只登记位置,服务的使用说明由命令行生成,再同步成技能。

登记和启用是两件事,实际启用要看磁盘上的链接,管理程序每次都重新读。撤下链接不会删除正文,归档会保留内容,明确删除才会删掉正文并留下删除记录。现在登记了 369 项,其中 226 项标成 active,实际启用了多少我没有统计。

两个宿主入口引用同一份能力正文登记与管理同一份能力正文登记表记录状态与正源位置管理程序定位正源,管理链接能力正文撤链接时保留创建 / 撤销软链接宿主入口 A软链接宿主入口 B软链接引用登记不等于启用,真实启用看宿主软链接。管理程序撤销链接,不删除能力正文。服务命令行是说明正本,生成的技能由管理程序更新并启用。

FIG. 2 · 两个宿主引用同一份正文

示意图,按能力库的链接管理规则画。登记表帮助定位正文,实际启用由软链接决定,撤链接保留正文。

369 项技能登记的状态分组登记状态 · 合计 369 项登记表全量分组,不是启用数单位:项050100150200250活跃登记226插件已卸载71由模型覆盖(用户决定)56仅作引用6用户已删除5已移至其他项目3已归档27 种登记状态,合计 369 项,不能据此得出实际启用数量。实际启用由宿主软链接决定。

FIG. 3 · 369 项登记各在什么状态

数是 2026 年 10 月 10 日能力登记表的统计,7 个状态都画在里面。它统计的是登记状态,不是调用次数,也不是真实启用数。

做到哪了