自动化与运维 rustself-hostedsandboxed-executionmcptelegram-botvoice-assistantvector-memorywebauthn

Moltis 个人代理服务器

在自有硬件上运行的持久化个人助手,隔离执行工具并连接多种消息渠道。

FollowAgents 评估 · FARS-2.0
待评估
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

Moltis 是用 Rust 编写的本地优先持久化个人代理服务器,以单个二进制程序运行。它通过 Gateway Server 提供 HTTP、WebSocket 与认证入口,并由 Chat Service、Agent Runner、Tool Registry 和 Provider Registry 协同处理对话与工具调用。会话以 JSONL 持久化,记忆使用 SQLite,并支持向量与全文混合检索及跨会话召回。工具执行可在 Docker 或 Apple Container 的每会话隔离环境中完成,另有 WASM 工具路径。它可部署在 Mac Mini、Raspberry Pi 或自有服务器上,并提供 Web UI、消息渠道、语音和 MCP 接入。

用户从 Web UI、Telegram、Signal、Microsoft Teams、Discord、Nostr 或 API 发送消息后,Gateway Server 经 WebSocket/HTTP 接收请求,Chat Service 调用 Agent Runner 组装提示词并流式调用 Provider Registry 中的模型提供方。Agent Runner 可通过 Tool Registry 调用工具;命令在 Docker 或 Apple Container 沙箱中执行,MCP 服务器可通过 stdio 或 HTTP/SSE 接入。系统写入 JSONL 会话和 SQLite 记忆,支持定时任务、生命周期钩子、检查点与恢复;moltis acp 可通过 stdio 向 ACP 客户端提供 Moltis,同时可驱动 codex-acpclaude-agent-acp 和 Cursor 等外部 ACP 代理。

  1. 希望把个人助手运行在 Mac Mini、Raspberry Pi 或自有服务器上的个人用户,可用它保存会话状态并从网页或聊天渠道继续对话。
  2. 需要让代理执行命令但不希望直接在宿主机运行的开发者,可使用 Docker 或 Apple Container 的每会话沙箱。
  3. 同时使用 Telegram、Signal、Discord、Microsoft Teams 或 Nostr 的团队或个人,可把这些渠道接入同一持久化代理服务。
  4. 希望从多个会话中找回历史信息的知识工作者,可使用 SQLite、全文搜索和向量记忆进行跨会话召回。
  5. 已有 ACP 工作流的开发者,可使用 `moltis acp` 作为 stdio 服务,或让 Moltis 驱动 `codex-acp`、`claude-agent-acp` 与 Cursor。

这个 Agent 有哪些优点和局限?

优点
  • 单一 Rust 二进制提供持久化代理服务,部署边界明确,不依赖 Node.js、npm 或运行时。
  • 工具调用可使用 Docker、Apple Container 或 WASM 路径,并采用每会话隔离。
  • 内置 JSONL 会话、SQLite 记忆、向量加全文检索和跨会话召回,不需要另行拼装这些基础能力。
  • 同时覆盖 Web UI、多个聊天渠道、语音、MCP 和 ACP,且可使用多提供方模型。
  • 安全措施包含 WebAuthn passkey、API key、加密 vault、SSRF 防护、跨域 WebSocket 验证和工具调用前钩子。
局限
  • 源码构建明确需要 `just` 与 Node.js 来生成 Web UI 的 Tailwind CSS,即使运行目标是单一 Rust 二进制。
  • 隔离命令执行依赖 Docker 或 Apple Container;Docker 部署示例还挂载了 Docker socket。
  • 首次无人值守配置需要密码、提供方选择和 `MOLTIS_API_KEY`,具体模型服务的账户与费用并未说明。
  • 完整功能面较广,包含 59 个 Rust workspace crate;受限设备需要使用 `lightweight` 特性组合,意味着功能可能有所取舍。

如何安装或部署这个 Agent?

macOS 或 Linux 可运行:curl -fsSL https://www.moltis.org/install.sh | sh;也可运行 brew install moltis-org/tap/moltis,或拉取镜像:docker pull ghcr.io/moltis-org/moltis:latest。从源码构建时需要 just 和 Node.js:克隆仓库后执行 just build-cssjust build-release,再执行 cargo run --release --bin moltis。完整 WASM 沙箱构建可改用 just build-release-with-wasm

如何使用这个 Agent?

启动后打开 https://moltis.localhost:3000;首次启动会在终端打印设置码,用它在 Web UI 设置密码或注册 passkey。Docker 可映射端口并挂载配置和数据卷;无人值守首次启动前设置 MOLTIS_PASSWORDMOLTIS_PROVIDERMOLTIS_API_KEY,然后访问 https://localhost:13131 完成使用。受限设备可使用 --no-default-features --features lightweight

这个 Agent 与同类方案有什么区别?

仓库将 Moltis 与 OpenClaw 和 Hermes Agent 对比:Moltis 的定位是带模块化 Rust crate 的持久化个人代理服务器,运行时为单一 Rust 二进制;OpenClaw 以 TypeScript 与配套应用为主,Hermes Agent 以 Python、TypeScript TUI/Web 为主。README 还列出 Moltis 的 Docker/Podman、Apple Container 与 WASM 沙箱路径,以及 SQLite + FTS + 向量记忆。

常见问题

密钥会被发送到 Moltis 服务器之外吗?
项目声明密钥不会离开你的机器;它还使用加密 vault、`secrecy::Secret`、输出脱敏与零化处理。模型提供方自身如何处理请求不在给定材料的说明范围内。
是否必须使用 Docker?
不一定。README 说明工具沙箱可使用 Docker、Apple Container 和 WASM;Docker 是推荐部署方式之一,源码也可直接构建并运行。
怎样防止工具执行产生破坏性操作?
工具调用前可由 `BeforeToolCall` 钩子检查或阻止,系统还有 destructive command guard、自动检查点和恢复工具;这些是控制机制,不等于自动保证所有操作安全。
能否接入 Codex 或 Claude Code?
可以。README 将 OpenAI Codex 列为模型支持,并说明可驱动 `codex-acp` 和 `claude-agent-acp` 等 ACP 代理;`moltis acp` 也能通过 stdio 为 ACP 客户端提供服务。

相关 Agents