(S)AGE 受治理智能体记忆层
为 AI 智能体提供可签名、可审核、可追溯的持久记忆与协作消息层。
- Star 数
- ★ 261
- 最近更新
- 1 天前
- License
- Apache-2.0
- 主语言
- Go
- FA 评分
- 55/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配Codex · Claude Code
- 费用
- 免费,无需付费服务
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 长期运行多个编码智能体的团队,需要让下一个会话知道上一轮的设计决策与失败尝试
- 不适合
- 只需要简单 RAG 检索、不关心记忆来源与审计的团队
- 希望开箱即得拜占庭容错的个人用户,单节点没有冗余
- 不愿在本地运行节点与守护进程的纯云工作流
- 源码审查
- 55/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
(S)AGE(Sovereign Agent Governed Experience)是一个面向 AI 智能体的本地记忆与消息治理层。每次记忆写入都由智能体签名,经过校验生命周期后才进入正常召回,并按域权限与密级控制可见范围,同时保留可审计的历史。系统基于 CometBFT/ABCI 共识运行:个人模式只有一个真实验证者并由自动投票器完成准入,多验证者部署则需要 BFT 法定人数。存储分两层,BadgerDB 是权威共识状态,SQLite(个人)或 PostgreSQL + pgvector(集群)在提交时投影记忆内容与向量供授权召回。对外接口包括 MCP 工具、Python SDK(sage-agent-sdk)和签名 REST API,配套的 CEREBRUM 是以 3D 脑图为界面的本地控制台,用于管理代理注册、Access Groups、联邦与更新。
智能体通过 MCP 工具(如 sage_inception、sage_remember、sage_recall、sage_task、sage_inbox、sage_message_claim、sage_message_replies、sage_node_health)或 SDK 的 propose()/list_memories()/hybrid() 提交记忆与任务;节点校验签名与域权限后把事务送入 CometBFT 记忆共识路径,提交时写入 BadgerDB,并由 SQLite/PostgreSQL 投影记忆正文与向量。召回在同一授权范围内做语义检索并返回置信度、状态与来源。协作侧提供精确指定代理的任务积压、单向任务通知、统一收件箱、消息领取与幂等回复,以及带会话与修订号围栏的同代理运行时接管。CEREBRUM 控制台(http://127.0.0.1:8080/ui/)展示链健康、代理、联邦、召回调优、保险库恢复与升级流程。
- 长期运行多个编码智能体的团队,需要让下一个会话知道上一轮的设计决策与失败尝试
- 企业平台团队要求所有智能体记忆可追溯作者、可审核准入、可按域授权
- 多代理协作场景中需要把任务分派给确切代理、领取请求并幂等回复
- 合规受审计的研发组织,需要在保留审计历史的前提下让记忆衰减或弃用
- 需要跨组织有限共享经验,但不想授予对方本地成员资格或写权限的团队
如何安装或部署这个 Agent?
桌面安装:从 GitHub Releases 下载对应平台安装包(macOS DMG 已签名与公证、Windows EXE、Linux tar.gz),打开后在 CEREBRUM 中完成设置。
源码构建(Go 1.26.10+):
git clone https://github.com/l33tdawg/sage.git && cd sage
go build -o sage-gui ./cmd/sage-gui/
./sage-gui setup
./sage-gui serveDocker 部署:
docker pull ghcr.io/l33tdawg/sage:latest
docker run -d --name sage \
-p 8080:8080 \
-v ~/.sage:/root/.sage \
ghcr.io/l33tdawg/sage:latestPython SDK:
python -m pip install sage-agent-sdk如何使用这个 Agent?
先确认节点健康:
curl http://127.0.0.1:8080/health健康返回 {"status":"healthy"}。连接 MCP 客户端后调用 sage_inception 并按返回的记忆模式操作。用 Python SDK 读取已提交记忆:
import os
from sage_sdk import AgentIdentity, SageClient
identity = AgentIdentity.from_file(os.environ["SAGE_IDENTITY_PATH"])
domain = os.environ["SAGE_DOMAIN"]
with SageClient(
base_url="http://127.0.0.1:8080",
identity=identity,
trust_env=False,
) as client:
page = client.list_memories(
domain=domain, status="committed", limit=3,
)
for memory in page.memories:
print(memory.memory_id, memory.content)需要写入时在可写域调用 propose() 并显式设置 classification;语义检索使用 hybrid()。老版本安装后需重新运行安装器以写入 Claude Code 钩子:
cd /path/to/your/project
sage-gui mcp install这个 Agent 有哪些优点和局限?
- 记忆写入由智能体签名归属,配合准入校验、置信度与审计历史,来源可查
- 共识层采用真实 CometBFT/ABCI,个人节点与多验证者网络可用同一套机制,且支持就地链升级与恢复快照
- 访问控制粒度细:注册状态、角色、域权限、Access Groups 与密级共同决定可见性
- 接口面完整:MCP 工具、Python 同步/异步 SDK、签名 REST API 三种集成路径,可对接 Claude Code、Codex、Cursor 等 MCP 客户端
- 联邦采用显式导出与有界 Read/Copy 策略,不会自动授予本地成员资格或写权限
- 个人模式只有一个验证者加自动投票器,没有任何拜占庭冗余,注册更多智能体也不会增加共识投票者
- 部署与运维门槛不低:需要理解链、应用版本激活、签名围栏与恢复流程,部分版本还需手工安装才能修复自身更新
- 默认记忆在本地,但联邦、连接器与远程模型提供商会把数据发往配置的目的地,需自行评估隐私
- 召回效果依赖记录内容、配置与智能体对工具的使用,文档明确不保证每次都能检索到
- 仓库大量变更说明涉及签名围栏、AppHash 校验等复杂故障面,非专业运维团队排障成本高
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| (S)AGE 受治理智能体记忆层 当前 | 55 · 缺口较多 | 桌面应用免费 | ★ 261 | 1 天前 | Go | Codex · Claude Code |
| Tenuo 智能体授权 | 82 · 表现良好 | 代码库 / SDK免费版 + 付费版 | ★ 105 | 今天 | Rust | OpenAI API |
| Archestra | 71 · 存在缺口 | 自托管服务免费版 + 付费版 | ★ 4.4k | 今天 | TypeScript | Codex · Claude Code · OpenAI API · Claude API |
| Agenvoy | 70 · 存在缺口 | 命令行工具免费 | ★ 621 | 1 天前 | Go | Codex · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示仓库具备较完整的权限与治理设计:README 与 GETTING_STARTED 描述了按域授权、Access Group、分类检查、Ed25519 签名身份、审计链与本地默认存储;SECURITY.md 明确 Personal 面板仅面向 localhost,联邦为显式 opt-in。扣分点:外部效应方面,README 提到可选联邦、连接器、远程模型提供方与 OpenAI tunnel-client 会向配置目标发送数据,但静态文件未给出可核验的出站目的地清单或默认关闭的强制证据,故 external_effects 仅 1;least_privilege 与 user_confirmation 有文档支撑但缺少代码级强制证据,给 2 而非 3。依赖安全有 go.mod 固定版本、govulncheck 与 CodeQL 工作流,但未提供实际扫描结果,给 2。回滚有升级快照与恢复说明,给 2。
自一致性较好:README、GETTING_STARTED、SECURITY.md 对版本号(v11.24.5)、端口(8080)、MCP 工具数与架构描述基本一致。依赖可用性有 go.mod 明确版本与 CI 的 go mod tidy 校验,给 2。失败信息方面文档提到健康检查返回 {"status":"healthy"}、错误响应采用 RFC 7807,但缺少面向用户的系统性错误码/排障说明,给 1。
受众与场景覆盖个人、家庭、团队、多验证者网络,文档分层清晰,给 2。能力边界说明较充分(agents 不是 validators、个人模式无拜占庭冗余、召回依赖记录与配置),给 2。触发精度方面 MCP 工具众多(38 个)且存在弃用别名,文档对何时调用何工具的描述偏叙述性,缺少精确触发条件矩阵,给 1。环境适配覆盖 macOS/Windows/Linux、Docker、源码构建,给 2。
信息架构有 README 目录、docs/reference/INDEX 指引,给 2。安装说明详尽(源码、Docker、桌面包、升级),给 2。命名稳定性存在隐忧:项目名在 (S)AGE/SAGE、sage-gui/amid 之间摇摆,package.json 版本为 1.0.0 而产品为 11.24.5,给 1。示例与 FAQ 有快速上手与示例对话,给 2。已知限制散见于 SECURITY_FAQ 引用但本证据未含其内容,给 1。许可证为完整 Apache-2.0,给 2。版本与变更日志非常详尽,给 2。维护责任方面 SECURITY.md 给出响应时限与联系人,但发布者身份未经核实,给 1。
输出可用性有 SDK 示例、REST/MCP 参考与仪表盘,给 2。边际价值方面,治理型记忆层相对普通 RAG 有差异化,但价值主张多依赖自述研究(Paper 4 相关系数)且未在本证据中可核验,给 1。成本效益方面需运行 CometBFT 节点、可选 Ollama 与约 650MB 重排模型,对个人用户偏重,给 1。
claim_traceability:README 引用 docs/reference 与论文,但本证据未包含这些文件内容,无法逐条追溯,给 1。cross_source_corroboration:README、GETTING_STARTED、SECURITY.md 相互印证版本与架构,但关键安全与性能主张缺少独立来源,给 1。fact_inference_separation:文档大体区分了事实与设计意图,但存在营销化表述(如“killer feature”“proved”),推断与事实边界不够严格,给 1。
- 发布者身份未经 FollowAgents 企业注册表核实,属未知而非可疑;部署前应自行确认来源与签名。
- 可选联邦、连接器、远程模型提供方与 OpenAI tunnel-client 会向配置目标发送数据,静态文件未给出完整出站目的地清单,启用前需逐项审查。
- package.json 版本为 1.0.0 而产品版本为 11.24.5,且项目名在 (S)AGE/SAGE、sage-gui/amid 间不一致,集成时以实际发布物为准。
- 价值主张引用自述研究(Paper 4 相关系数),本证据无法核验,不应据此推断实际效果。
- 本评估为静态源码审阅,未执行任何构建或测试,CI 工作流存在不代表其通过。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
v11.25.1 SAGE v11.25.1
发布说明摘录
SAGE v11.25.1 AMID can approve a distinct local agent. Operators can opt into --local-agent-key-dir (SAGE_LOCAL_AGENT_KEY_DIR) to supply identity-bound target consent keys to the existing access-policy route and Python SDK methods. Root authorization, same-machine checks, and consensus validation remain required. Unregistered targets are refused before signing or broadcast, and malformed Ed25519 private-key encodings fail closed. …在 GitHub 查看 ↗ -
v11.25.0 SAGE v11.25.0
发布说明摘录
SAGE v11.25.0 includes the merged implementation through #526 and release preparation #527. Fresh startup New personal chains start directly at the supported app29 version. Shared Unix deployments use one signed full-validator genesis, then init-fresh-node --genesis-sha256 <digest> on each prepared node before serve. Existing chains keep their keys, genesis and governed upgrade history. See the [fresh-genesis guide](https://github.com/l33tdawg/sage/blob/v11.25.0/docs/reference/fresh-genesis.md). App30 and compatibility …在 GitHub 查看 ↗ -
v11.24.5 SAGE v11.24.5
发布说明摘录
Sovereign Agent Governed Experience — persistent, governed memory for AI agents. What's Changed * Fix task identity across domains by @l33tdawg in https://github.com/l33tdawg/sage/pull/480 * release: prepare SAGE v11.24.5 by @l33tdawg in https://github.com/l33tdawg/sage/pull/483 Full Changelog: https://github.com/l33tdawg/sage/compare/v11.24.4...v11.24.5在 GitHub 查看 ↗