
moltis v20260818.08
Rust による安全で永続的なパーソナルエージェントサーバー。単一のバイナリ、サンドボックス実行、マルチプロバイダーLLM、音声、メモリ、Telegram、WhatsApp、Discord、Teams、MCPツール。設計によるセキュリティ、あなたのハードウェア上で動作します。
Moltis — Rustで実装された安全な永続型パーソナルエージェントサーバー
単一バイナリ — サンドボックス化され、安全で、あなたのもの。
Moltisは最近Hacker Newsのフロントページに掲載されました。何か不具合があれば、ぜひissueを開いてください。Moltisを素晴らしいものにすることに注力しています。
設計によるセキュリティ — あなたの鍵がマシンの外に出ることはありません。すべてのコマンドはサンドボックス化されたコンテナ内で実行され、ホスト上では決して実行されません。
あなたのハードウェア — Mac Mini、Raspberry Pi、またはあなたが所有する任意のサーバーで動作します。単一のRustバイナリで、Node.js不要、npm不要、ランタイム不要です。
フル機能 — 音声、メモリ、セッションをまたいだ呼び出し、自動編集チェックポイント、スケジューリング、Telegram、Signal、Discord、ブラウザ自動化、MCPサーバー、SSHまたはノードベースのリモート実行、ホストピニング付きの管理型デプロイキー(Web UI内)、ライブのSettings → Toolsインベントリ、Cursor互換のプロジェクトコンテキスト、コンテキストファイルの脅威スキャン — すべて内蔵。サプライチェーン攻撃を受けるプラグインマーケットプレイスはありません。
監査可能 — エージェントランナーとモデルインターフェースは約7.5K行に収まり、プロバイダーはさらに約19K行です。Rustワークスペースは59のモジュール型クレートにわたる約270K行で、個別に監査でき、テストを含む470以上のRustファイルがあります。UnsafeコードはFFIとプリコンパイル済みランタイム境界に分離されており、コアのエージェントループには含まれません。
インストール
# ワンライナーインストールスクリプト (macOS / Linux)
curl -fsSL https://www.moltis.org/install.sh | sh
# macOS / Linux は Homebrew で
brew install moltis-org/tap/moltis
# Docker (マルチアーキテクチャ: amd64/arm64)
docker pull ghcr.io/moltis-org/moltis:latest
# またはソースからビルド
cargo install moltis --git https://github.com/moltis-org/moltis
比較
| OpenClaw | Hermes Agent | Moltis | |
|---|---|---|---|
| 主要スタック | TypeScript + Swift/Kotlin コンパニオンアプリ | Python + TypeScript TUI/Webサーフェス | Rust |
| ランタイム | Node.js + npm/pnpm/bun | Python + uv/pip、オプションのNode UI部品 | 単一のRustバイナリ |
| ローカルチェックアウトサイズ* | ~1.1M アプリLoC | ~152K アプリLoC | ~270K Rust LoC |
| アーキテクチャ | 広範なゲートウェイ、チャネル、ノード、アプリエコシステム | 学習ループとリサーチツールを備えたCLI/ゲートウェイエージェント | モジュール型クレートを備えた永続型パーソナルエージェントサーバー |
| クレート/モジュール | npmパッケージ、拡張機能、アプリ | Pythonパッケージ、プラグイン、ツール、TUI | 59のRustワークスペースクレート |
| サンドボックス/バックエンド | アプリレベルの権限、ブラウザ/ノードツール | ローカル、Docker、SSH、Daytona、Singularity、Modal | Docker/Podman + Apple Container + WASM |
| 認証/アクセス | ペアリングとローカルゲートウェイ制御 | CLIおよびメッセージングゲートウェイのセットアップ | パスワード + パスキー + APIキー + Vault |
| 音声I/O | 音声ウェイクおよびトークモード | 音声メモの文字起こし | 内蔵STT + TTSプロバイダー |
| MCP | プラグイン/統合サポート | MCP統合 | stdio + HTTP/SSE |
| スキル | バンドル、管理、ワークスペーススキル | 自己改善スキルとSkills Hubサポート | バンドル/ワークスペーススキル + 自律的改善 + OpenClawインポート |
| メモリ/RAG | プラグインベースのメモリとコンテキストエンジン | エージェントがキュレートするメモリ、セッション検索、ユーザーモデリング | SQLite + FTS + ベクターメモリ |
* LoCはtokeiで測定、node_modules、生成されたビルド出力、dist、targetを除外。
アーキテクチャ — クレートマップ
現在のRustワークスペース: 59クレートにわたる約270K LoC。以下の表は主要クレートを役割別にグループ化しており、アーキテクチャを把握しやすくしています。
コアランタイム:
| クレート | LoC | 役割 |
|---|---|---|
moltis-gateway | 37.4K | HTTP/WSサーバー、RPC、認証、起動時の配線 |
moltis-tools | 37.0K | ツール実行、サンドボックス化、WASMツール |
moltis-providers | 18.9K | LLMプロバイダー実装 |
moltis-agents | 14.5K | エージェントループ、ストリーミング、プロンプト組み立て |
moltis-chat | 14.2K | チャットエンジン、エージェントオーケストレーション |
moltis-config | 10.3K | 設定、検証 |
moltis-httpd | 9.9K | HTTPサーバープリミティブとミドルウェア |
moltis (CLI) | 4.7K | エントリポイント、CLIコマンド |
moltis-sessions | 3.5K | セッション永続化 |
moltis-common | 1.5K | 共有ユーティリティ |
moltis-service-traits | 1.2K | 共有サービスインターフェース |
moltis-protocol | 0.7K | ワイヤープロトコル型 |
機能および統合クレート:
| カテゴリ | クレート | 合計LoC |
|---|---|---|
| チャネル | moltis-telegram、moltis-whatsapp、moltis-signal、moltis-discord、moltis-msteams、moltis-matrix、moltis-slack、moltis-nostr、moltis-channels | 34.0K |
| WebとAPI | moltis-web、moltis-graphql、moltis-webhooks | 10.8K |
| 拡張性 | moltis-mcp、moltis-mcp-agent-bridge、moltis-skills、moltis-plugins | 11.5K |
| メモリとコンテキスト | moltis-memory、moltis-qmd、moltis-code-index、moltis-projects | 11.7K |
| 音声とブラウザ | moltis-voice、moltis-browser | 9.2K |
| 認証とセキュリティ | moltis-auth、moltis-oauth、moltis-vault、moltis-secret-store、moltis-network-filter、moltis-tls | 8.5K |
| スケジューリングと自動化 | moltis-cron、moltis-caldav、moltis-auto-reply | 4.7K |
| セットアップとインポート | moltis-provider-setup、moltis-openclaw-import、moltis-onboarding | 11.7K |
| ネイティブおよびノードホスト | moltis-swift-bridge、moltis-node-host、moltis-courier | 5.7K |
| WASMツール | moltis-wasm-precompile、moltis-wasm-calc、moltis-wasm-web-fetch、moltis-wasm-web-search | 1.4K |
| サポートクレート | moltis-media、moltis-metrics、moltis-tailscale、moltis-routing、moltis-canvas、moltis-schema-export、benchmarks | 2.1K |
制約のあるデバイス(Raspberry Piなど)では--no-default-features --features lightweightを使用してください。
セキュリティ
- 小さなunsafeサーフェス — コアのエージェント/ゲートウェイコードは安全なRustのまま。unsafeはSwift FFI、ローカルモデルラッパー、プリコンパイル済みWASM境界に分離
- サンドボックス化された実行 — Docker + Apple Container、セッションごとの分離
- シークレット処理 —
secrecy::Secret、ドロップ時にゼロ化、ツール出力から編集 - 認証 — パスワード + パスキー (WebAuthn)、レート制限、IPごとのスロットル
- SSRF保護 — DNS解決済み、ループバック/プライベート/リンクローカルをブロック
- オリジン検証 — クロスオリジンのWebSocketアップグレードを拒否
- フックゲーティング —
BeforeToolCallフックが任意のツール呼び出しを検査/ブロック可能 - サプライチェーン整合性 — アーティファクト証明、Sigstoreキーレス署名、GPG署名 (YubiKey)、SHA-256/SHA-512チェックサム
詳細はセキュリティアーキテクチャを参照してください。
リリースの検証はgh attestation verify <artifact> -R moltis-org/moltisで行うか、リリース検証を参照してください。
機能
- AIゲートウェイ — マルチプロバイダーLLMサポート (OpenAI Codex、GitHub Copilot、ローカル)、ストリーミング応答、サブエージェント委任を備えたエージェントループ、セッションモード、並列ツール実行
- コミュニケーション — コマンドパレットのエージェントプロンプトとMarkdownコピー/エクスポートを備えたWeb UI、Telegram、Signal、Microsoft Teams、Discord、ネイティブのライブツールカード付きSlack、Nostr DM + NIP-29グループチャット (BlockのBuzzチャネルを含む)、APIアクセス、音声I/O (8つのTTS + 7つのSTTプロバイダー)、プッシュ通知付きモバイルPWA
- メモリとリコール — エージェントごとのメモリワークスペース、埋め込みベースの長期メモリ、ハイブリッドベクター + 全文検索、自動圧縮付きセッション永続化、セッションをまたいだリコール、Cursor互換のプロジェクトコンテキスト、コンテキストファイルの安全性スキャン
- 管理ファイル — Settingsでの認証付きネストファイル管理、エージェントがアドバタイズするホストパス、Docker、Podman、Apple Containerサンドボックス用の独立したデフォルト読み取り専用マウント
- より安全なエージェント編集 — 内蔵スキルとメモリの変更前の自動チェックポイント、復元ツール、セッションブランチング
- 拡張性 — MCPサーバー (stdio + HTTP/SSE)、スキルシステム、サーキットブレーカー付き15のライフサイクルフックイベント、破壊的コマンドガード
- エージェントクライアントプロトコル — 外部ACPエージェント (
codex-acp、claude-agent-acp、Cursor) を駆動し、moltis acpを介してstdioでMoltisをACPクライアントに提供 - セキュリティ — 保存時暗号化Vault (XChaCha20-Poly1305 + Argon2id)、パスワード + パスキー + APIキー認証、サンドボックス分離、SSRF/CSWSH保護
- 運用 — Cronスケジューリング、耐久性のあるローカルCalDAV、Gmail、Himalayaメール、再利用可能なSlack/Discord/Matrix/Teamsメッセージデータセット、プロバイダー固有の読み取り専用エージェントツール、高速全文検索、JSONL/Markdownプロジェクション、エージェント計装 (LLMトレース用Langfuse、Grafana/Datadog用OTLP)、Prometheusメトリクス、クラウドデプロイ (Fly.io、DigitalOcean)、Tailscale統合、管理型SSHデプロイキー、ホストピニングされたリモートターゲット、Settingsのライブツールインベントリ、CLI/Webリモート実行ドクターフロー
仕組み
Moltisはローカルファーストの永続型エージェントサーバーです — 単一のRustバイナリが あなたと複数のLLMプロバイダーの間に立ち、耐久性のあるセッション状態を保持し、 データをクラウドリレーに渡すことなく、さまざまなチャネルであなたとやり取りできます。
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Web UI │ │ Telegram │ │ Discord │
└──────┬──────┘ └──────┬──────┘ └──────┬──────┘
│ │ │
└────────┬───────┴────────┬───────┘
│ WebSocket │
▼ ▼
┌─────────────────────────────────┐
│ Gateway Server │
│ (Axum · HTTP · WS · Auth) │
├─────────────────────────────────┤
│ Chat Service │
│ ┌───────────┐ ┌─────────────┐ │
│ │ Agent │ │ Tool │ │
│ │ Runner │◄┤ Registry │ │
│ └─────┬─────┘ └─────────────┘ │
│ │ │
│ ┌─────▼─────────────────────┐ │
│ │ Provider Registry │ │
│ │ Multiple providers │ │
│ │ (Codex · Copilot · Local)│ │
│ └───────────────────────────┘ │
├─────────────────────────────────┤
│ Sessions │ Memory │ Hooks │
│ (JSONL) │ (SQLite)│ (events) │
└─────────────────────────────────┘
│
┌───────▼───────┐
│ Sandbox │
│ Docker/Apple │
│ Container │
└───────────────┘
ゲートウェイの起動、メッセージフロー、セッション、メモリの詳細はクイックスタートを参照してください。
はじめに
ビルドと実行
just (コマンドランナー) とNode.js (Tailwind CSS用) が必要です。
git clone https://github.com/moltis-org/moltis.git
cd moltis
just build-css # Web UI用のTailwind CSSをビルド
just build-release # リリースモードでビルド
cargo run --release --bin moltis
WASMサンドボックスツールを含む完全なリリースビルドの場合:
just build-release-with-wasm # WASMアーティファクト + リリースバイナリをビルド
cargo run --release --bin moltis
https://moltis.localhost:3000を開きます。初回実行時、セットアップコードが
ターミナルに表示されます — Web UIでそれを入力してパスワードを設定するか、パスキーを登録します。
オプションフラグ: --config-dir /path/to/config --data-dir /path/to/data
Docker
# Docker / OrbStack
docker run -d \
--name moltis \
-p 13131:13131 \
-p 13132:13132 \
-p 1455:1455 \
-v moltis-config:/home/moltis/.config/moltis \
-v moltis-data:/home/moltis/.moltis \
-v /var/run/docker.sock:/var/run/docker.sock \
ghcr.io/moltis-org/moltis:latest
https://localhost:13131を開いてセットアップを完了します。無人Docker
デプロイの場合は、初回起動前にMOLTIS_PASSWORD、MOLTIS_PROVIDER、MOLTIS_API_KEY
を設定してセットアップウィザードをスキップします。Podman、OrbStack、TLS信頼、永続化の詳細はDockerドキュメントを参照してください。
クラウドデプロイ
Fly.io (CLI):
fly launch --image ghcr.io/moltis-org/moltis:latest
fly secrets set MOLTIS_PASSWORD="your-password"
すべてのクラウド設定は、プロバイダーがTLS終端を処理するため--no-tlsを使用します。
詳細はクラウドデプロイドキュメントを参照してください。
ライセンス
MIT