AegisDB – 自托管AI代理内存,单个C语言二进制文件
AegisDB是一个自托管的AI代理内存系统,提供持久化、语义化和工作记忆功能,通过简单的JSON-over-TCP协议访问。它采用单个无依赖的C语言二进制文件,支持多租户、加密、备份、只读副本和可观测性,特别适合与Claude Code集成,确保数据完全由用户掌控。
AegisDB是一款专为AI代理设计的自托管内存系统,旨在解决AI代理在会话间遗忘信息的问题。它通过一个简单的JSON-over-TCP协议,为代理提供持久化、可搜索的长期记忆,包括基于事件历史、语义事实(支持向量搜索)以及易失性工作记忆。整个系统仅由一个无依赖的C语言二进制文件构成,用户可完全掌控数据,无需第三方服务。
AegisDB的快速部署非常简单:通过Docker运行单个命令即可启动服务器。它内置了客户端工具,支持ping、存储和搜索操作。对于Claude Code用户,通过MCP服务器集成,只需一条命令即可让Claude拥有跨会话的持久记忆。
该系统的核心特性包括:自托管与隐私保护——代理记忆永不离开用户基础设施,支持静态加密;单一二进制文件,无依赖——采用C语言编写,仅依赖cJSON和加密库;面向团队设计——支持多租户身份验证(基于命名空间和作用域令牌)、每个租户的存储配额和速率限制、在线备份和只读副本,以及一键启动的Prometheus/Grafana可观测性栈。
AegisDB提供了三种内存类型:持久化事件记忆(追加日志,支持CRC32校验和崩溃恢复)、语义事实(可更新记录)和工作记忆(基于TTL的易失性环形缓冲区)。检索方式包括按ID、时间范围、标签、语义(嵌入向量)搜索,并支持余弦相似度排序和去重。对于大规模语义搜索,系统在超过阈值后自动切换至HNSW图索引,支持int8量化以降低内存占用。
此外,AegisDB还支持记录间的关系边、图遍历和代理命名空间隔离。系统提供可选的静态加密(XChaCha20-Poly1305)、可观测性指标、在线快照备份和只读副本。并发方面采用分片poll()事件循环线程,支持可选的fsync持久化策略(同步、批处理或间隔刷新)。
构建AegisDB需要Linux系统、GCC 11+或Clang 14+,以及CMake 3.20+或GNU Make。提供CMake和Make两种构建方式,并支持Docker多阶段构建。预构建的多架构镜像已发布至GitHub Container Registry。
配置选项丰富,包括数据目录、端口、嵌入维度、ANN阈值、持久化模式、检查点间隔、租户限制等。系统还支持复制、只读模式和外部认证令牌。详细的配置文件和示例可参照项目文档。
总体而言,AegisDB为AI代理开发者提供了一个自托管、高性能、功能全面的内存解决方案,兼顾隐私、可扩展性和易用性。