AbTARS:自托管AI代理,具备持久记忆和5层自愈能力
AbTARS 是一个自托管的 AI 代理系统,具有持久记忆、自愈能力和点对点通信功能。它支持通过 Telegram、Discord 和 IRC 交互,利用多级记忆检索、情感追踪和夜间维护,实现无需人工干预的持续运行。
AbTARS 是一个开源的、自托管的 AI 代理桥接系统,旨在将大型语言模型(LLM)连接到 Telegram、Discord 和 IRC 等通讯平台,同时提供持久的记忆、自我修复和代理间通信功能。该项目以“你的硬件,你的规则”为理念,强调用户数据的隐私和自主控制。
核心特性:持久记忆(AbMind)
AbTARS 的核心是 AbMind,一个独立的记忆包,支持多级检索。它结合了五种搜索阶段(FTS5、三元组、二进制签名、向量嵌入和实体图)以及七个后处理层(包括交叉阶段惩罚、上下文增强、情感增强等)。记忆系统还具备 25 种情感类型和每记忆评分,以及夜间睡眠维护过程,该过程包括 12 个步骤,如提取、合并、修剪、矛盾检测和翻译修复。此外,AbMind 还采用“记忆达尔文主义”,即未使用的记忆会逐渐淡化,而经常回忆的记忆会得到强化。
自愈与可靠性
AbTARS 设计为可连续运行数月而无需人工干预。其五层监督机制包括:L1 心跳检测、L2 进程内看门狗、L3 外部看门狗(带断路器)、L4 OS 级监督(通过 launchd 或 systemd)以及 L5 预防性每日重启。此外,系统还通过漏桶算法进行模型健康监控,并设有自愈代理来诊断失败任务,尝试修复,并在三次失败后暂停任务。
代理集群与点对点通信
主代理可以生成最多三个并发的独立后台会话,每个都有自己的上下文和工具循环。这些会话的结果会自动注入到主代理的下一个提示中。点对点通信功能允许不同的 abTARS 实例通过 OpenAI 兼容的 /v1/chat/completions 端点进行交互,使用 Ed25519 签名进行身份验证,并支持 mDNS 唤醒隐藏在防火墙后的实例。
安全与隐私
安全性是 abTARS 的另一个重点。平台级访问控制仅允许已注册的 chatId/userId 访问代理。基于角色的访问(主、用户、访客)限制了命令、工具和记忆的访问。秘密保险库使用 AES-256-GCM 加密,并通过 scrypt 派生密钥进行保护。所有入站消息都会经过注入扫描器,浏览器代理具备 SSRF 防护,所有日志和导出中的凭据都会被自动编辑。
安装与部署
通过 npm 全局安装 abtars 和 abmind 包,然后运行一系列安装命令即可快速启动。需要配置 ~/.abtars/config/.env 文件,其中包含 Telegram 机器人令牌和至少一个模型提供商。支持多种传输方式,包括推荐的高级客户端协议(ACP)、直接 API 和钩子。要求 Node.js 22+。
社区与许可
该项目在 GitHub 上以 Apache-2.0 许可发布,拥有超过 2400 次提交和 1700+ 测试。社区可通过 Discord 和 GitHub 仓库参与贡献。更多文档和详细信息请访问 aksika.github.io/abtars。