dp-web4/hestia
GitHub: dp-web4/hestia
Hestia 是一个开源的本地优先 Web4 身份与信任层,为人类和 AI agent 提供加密身份、保险库、委托授权、见证链和多设备验证等一体化能力。
Stars: 4 | Forks: 0
# Hestia
Hestia 是开源的本地优先(local-first)层,它为任何实体——人类用户、AI agent、自主服务——在 Web4 生态系统中提供**加密身份**、**加密保险库**、**委托授权**和**信任记录**。它是面向人类的跨平台应用。提供供 AI agent 安装的插件。如果你习惯生活在终端中,还有 CLI 和 TUI。无需云端。
## Hestia 的功能
### 面向人类
**应用即正门** —— 一个跨平台的桌面应用 (Tauri 2),包含
仪表盘、保险库、见证链、委托、hub、策略、集群和
设置视图。以下所有功能也均可在应用中使用;CLI 是同一引擎的终端版本:
- `hestia init` → 在你的机器上生成加密保险库 + Web4 LCT 身份
- `hestia vault add` → 存储 API key、token、密钥(ChaCha20-Poly1305 + Argon2id)
- `hestia delegate grant --role administrator --expires 24` → 授予 AI agent 限定范围的权限,经过加密签名且可撤销
- `hestia delegate list` / `hestia delegate revoke` → 管理你的 agent 能执行的操作
- `hestia connect-hub ` → 使用你的身份加入 Web4 hub(社区、团队、组织)
- `hestia constellation add|list|remove|proof` → 将你的设备链接成一个可验证的 constellation —— 多设备证明即你的 MFA
- 具有分级可见性的个人资料 → 声明技能和展示链接;按照你的意愿推送到 hub
### 面向 AI agent
- 插件 SDK (Rust, TypeScript, Python) → 连接到本地 Hestia daemon
- `beginAction()` / `recordOutcome()` → 记录每次工具调用的见证审计追踪
- `vaultGet()` / `vaultSet()` → 通过受控的 MCP 接口访问凭证
- `queryPolicy()` → 在执行操作前检查你的权限
- 来自人类所有者的委托授权 → 在限定范围的权限内行动
### 面向 Web4 生态系统
- 每个 Hestia 实例都是一个完整的 Web4 展示实体:LCT 身份、T3/V3 信任张量、见证链
- Hub 集成:加入 hub,推送成员级别的个人资料,并通过端到端加密的 member↔hub 通道进行查询和操作
- Constellation 证明:在 hub 握手中包含基于挑战的多设备证明
- 凭证签发:OID4VCI 签发端点(SD-JWT-VC)—— 个人级,兼容 EUDI-wallet
- 联邦机制:实例间可移植的社会状态 *(Phase 4)*
## Hestia 不是什么
- 不是聊天界面、IDE 或工作流构建器 —— Hestia 有自己的应用,但它是你*展示实体*的归宿,而不是你工作工具的替代品
- 不是供应商云端 —— 一切都驻留在你的机器上
- 不仅限于 AI agent —— 人类同样是第一公民(即“通用”展示实体中的“通用”之意)
## 隐喻
**Hestia** 是希腊神话中的炉灶女神。每个家庭和城邦都有一个奉献给她的公共炉灶。当建立新的殖民地时,人们会从母城的炉灶中带走余烬去点燃新炉灶。这就是本产品的理念:你本地的 Web4 社会就是那个炉灶。你的 agent 是受你待客之道约束的客人。当你连接到 hub 时,你便带上了余烬。
## 真实状态
### 已构建并可用 (Phase 1)
| 组件 | 状态 | 备注 |
|-----------|--------|-------|
| **保险库** | 可用 | ChaCha20-Poly1305 + Argon2id,密码短语优先。CLI: init, add, get, list, remove。 |
| **策略引擎** | 可用 | 4 种预设模式 (permissive/safety/strict/audit-only),支持自定义规则、速率限制、glob+regex 匹配器。 |
| **见证链** | 可用 | SQLite 支持,哈希链接条目,与 web4-trust-core 集成。 |
| **信任演化** | 可用 | 每个 agent 的 T3/V3,由工具调用结果提供数据。 |
| **委托** | 可用 | DelegatedAuthority (web4-core U2),按角色+操作限定范围,已签名,可撤销。CLI: grant, list, revoke。 |
| **MCP server** | 可用 | 通过 rmcp + Axum HTTP 暴露 12 种工具。 |
| **插件 SDK** | 可用 | Rust, TypeScript, Python —— 接口完全一致。 |
| **Claude Code plugin** | 可用 | PostToolUse 见证钩子,策略门控。已在 4 台机器上部署。 |
| **CLI** | 可用 | vault, policy, delegation, constellation, serve, dashboard, info, init。 |
| **TUI 仪表盘** | 可用 | 基于运行中 daemon 的 ratatui 终端 UI。 |
| **跨平台应用** | 可用 | Tauri 2。包含仪表盘、保险库、见证链、委托、Hub、策略、集群、设置 —— 由 daemon 的 REST API 提供服务。这是主要的人机交互界面。 |
| **Hub 连接** | 可用 | 加入 hub(成员自行添加),推送成员级别的个人资料,带签名的回调。 |
| **Member↔hub 通道** | 可用 | 基于 HTTP 传输的端到端加密(密封通道)—— 查询和操作均脱离明文进行。 |
| **配对的 Member↔member 通道** | 可用 | 请求/确认配对,并通过 hub 交换端到端加密消息 (X25519 + ChaCha20-Poly1305);peer 的静态通道密钥从 hub 固定的 pubkey 端点解析。Hub 在转发时对密文内容一无所知(内容盲化)。 |
| **持久化收件箱 (accept-and-defer)** | 可用 | SQLCipher 加密的入站邮箱 (`inbox.db`):`hestia_notify --defer` 会暂存密封通知,随后由 `hestia_inbox` / `hestia_pair_inbox` 按照 consume-once(一次性消费)、at-least-once(至少一次)语义进行提取 (mcp-protocol §7.8)。能在 daemon 重启后存续。 |
| **Constellation** | 可用 | 将设备链接为可验证的 constellation;在 hub 握手中提供基于挑战的证明(作为 MFA 的多设备证明)。 |
| **个人资料** | 可用 | 技能 + 带有分级可见性的社交/职业展示链接。 |
| **凭证签发** | 可用 | OID4VCI 签发端点,SD-JWT-VC —— 兼容 EUDI-wallet,个人级。 |
| **PreToolUse 策略门控** | 可用 | Claude Code 插件中的同步策略门控 —— 由 daemon 决定的裁定(通过 exit code 实现 allow/warn/deny),为慢速策略实体提供的等待协议,legacy-engine 回退机制,与 PostToolUse 见证人配合使用。 |
| **AI 变体** (自主保险库) | 初始阶段 | 用于 agent 拥有的保险库的 `--ai` 标志;所有权模型仍在完善中。 |
### 尚未构建 (Phase 3+)
| 组件 | 状态 | 依赖 |
|-----------|--------|------------|
| **多 Hub 连接器** | 未开始 | 单 Hub 连接(已完成) |
| **保险库凭证注入** | 未开始 | 插件 SDK 接口已存在 |
| **硬件绑定** (TPM/YubiKey/SE) | 仅有 trait 契约 | 硬性绑定的企业层 |
| **联邦机制** | 未开始 | Phase 4 |
### 与最初计划相比的变动
最初的 README(2026 年 4 月)将 Hestia 描述为一个 agent 追踪层 —— “让你现有的 AI agent 符合 Web4 标准。” 这一点依然成立,但低估了它的潜力。截至 V2 架构工作(2026 年 6 月),Hestia 已成为人类和 AI 的**通用 Web4 展示实体原语**:
- 人类使用 Hestia 管理 Web4 身份,加入 hub,并将权限委托给 agent
- AI agent 使用 Hestia 持有凭证,在委托下行动,并建立受见证的信任记录
- Hub 会验证人类和 AI 发起的、经 Hestia 签名的请求
保险库 + 委托 + 见证链同时服务于这两种角色。“Agent 追踪”的定位属于 Phase 0 的构想;V2 架构将 Hestia 提升为整个 Web4 生态系统的展示实体底层基础。
## 仓库结构
```
hestia/
├── core/ # Rust core (vault, MCP host, delegation, policy, witness chain)
├── plugin-sdk/ # Plugin Authoring Kit
│ ├── rust/ # hestia-plugin-sdk (crates.io)
│ ├── typescript/ # @hestia-tools/plugin-sdk (npm)
│ └── python/ # hestia-plugin-sdk (PyPI)
├── plugins/ # First-party plugin implementations
│ ├── claude-code/ # Claude Code witness + policy hooks
│ └── openclaw/ # OpenClaw integration
├── hardbound-pak/ # Enterprise trait contracts (TPM/YubiKey/SE)
├── app/ # Tauri 2 cross-platform app — the primary human interface
├── docs/ # Architecture, plugin guide, ADRs
│ └── DESIGN_DECISIONS/ # ADR-style decision records
└── demo/ # Worked examples (consumer + enterprise)
```
## 见证法则
Hestia 是**策略无关**的:它不规定你应如何运行自己的身份或设备 constellation —— 由*你*来制定规则(哪些设备属于你、每台设备可以做什么、哪些操作需要你亲自出面、你的 agent 被委托了哪些权限),而 Hestia **负责执行这些规则并记录遵守情况**。每一个关键操作都会流经你的**策略引擎**并被记录在你的本地**见证链**中;委托是受范围限制且可撤销的;任何操作都不会超越你所授予的权限。这就是 Web4 的姿态(web4 的“法则被见证,而非被强加”)在*个人 / constellation* 规模上的体现 —— 这与社会规模下的 hub 具有相同的形态:系统不强制要求具体策略,它坚持的是,无论你的策略是什么,它都必须得到可验证的执行。图方便是你的选择;但审计追踪不是。
## Web4 基础
```
Web4 = MCP + RDF + LCT + T3/V3*MRH + ATP/ADP
```
Hestia 使用 [`web4-core`](https://github.com/dp-web4/web4/tree/main/web4-core) 进行 LCT 身份验证、委托、角色分配和加密。使用 [`web4-trust-core`](https://github.com/dp-web4/web4/tree/main/web4-trust-core) 进行见证链持久化和信任状态存储。
## 版本层级
- **开源版(本仓库)—— 免费,AGPL-3.0-or-later。** 包含保险库、委托、见证链、信任演化、策略引擎、插件 SDK、CLI、TUI、MCP server。功能完整且实际可用。
- **高级个人版 —— 待定 (TBD)。** 硬件绑定 (TPM/YubiKey/SE) + 带有信封加密的云端备份。
- **商业席位版 —— 待定 (TBD)。** 商业许可(规避 AGPL 限制)+ 团队管理 + 审计导出。
- **企业版 —— 定制。** 本地化管理 + SSO/SCIM + 合规性证明。(硬性绑定集成。)
## 许可证
[AGPL-3.0-or-later](LICENSE)。可提供用于闭源用途的商业许可证。
标签:可视化界面, 逆向工具, 通知系统