astrid-runtime/astrid

Astrid is a portable, capability-secure operating system for composable software.

解决的问题

Astrid 为 AI Agent 提供了一个安全、可移植的运行时。它通过用操作系统级的安全边界取代基于提示词的信任,解决了为不可信的 AI Agent 提供本地文件、网络和凭据访问权限所带来的安全风险。Astrid 不是信任模型会遵循指令,而是在运行时级别使用基于权限的安全模型来强制执行安全。

工作原理

Astrid 作为一个“哑”内核运行,管理名为“capsules”的 WebAssembly (WASM) 组件的沙箱。这些 capsules 包含实际的逻辑、工具和 LLM 提供商。

  • The Kernel: 作为事件路由和权限执行器。它不包含业务逻辑或 LLM 句柄;它只是路由 IPC (进程间通信) 事件并执行访问控制列表 (ACL)。
  • Capsules: 这些是通过总线通信的 WASM 组件。每个 capsule 声明其需求并提供特定的工具或服务。它们在没有环境权限(无直接系统调用或文件访问)的 Wasmtime 沙箱中运行。
  • Capability Model: 对资源(文件、网络主机)的访问通过经过签名、范围限定且可撤销的令牌授予。没有令牌就意味着没有访问权限。
  • Uplinks: 像 CLI 或 HTTP 网关这样的前端作为协议客户端连接到守护进程,以发送和接收事件。

适用对象

构建 AI Agent 的开发人员以及需要在其机器上以严格、可验证的安全边界和逐主体隔离运行不可信 Agent 代码的运营人员。

亮点

  • WASM Sandboxing: 使用 Wasmtime 确保 capsules 无法直接访问主机内存或系统调用。
  • Cryptographic Capabilities: 资源访问通过与主体绑定且会过期的签名 ed25519 授权进行管理。
  • Per-Principal Isolation: 每个 Agent 身份都有其独立的隔离 capsule 访问、KV 存储、机密和审计链。
  • Live Lifecycle: 无需重启即可从运行中的守护进程中安装、升级或移除 capsules。
  • Signed Audit Chain: 维护一个哈希链接的、经过签名的 JSONL 日志,记录所有决策和调用,以便进行独立验证。