being-mcp-server について
being-mcp-serverは、AIエージェントに人格、永続メモリ、アイデンティティを与えるオープンソースのランタイムです。SOUL、エピソード記憶、バックグラウンドのPatrolサイクルにより、セッションをまたぐ継続性を支えます。
主な機能
- 01構造化されたSOUL人格定義
- 02永続的なエピソード記憶
- 03バックグラウンドでの記憶処理と内省
- 04Ed25519による暗号学的アイデンティティ
- 05LLM APIキーの持ち込み
活用シーン
- 01AIセッションへの人格と記憶の読み込み
- 02会話の長期記憶への記録
- 03Beingのアイデンティティと履歴の検証
MCP 対応
MCP サーバーを公開し、互換クライアントから接続して機能を利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @ruddia/being-mcp-serverBEING_API_URLBeing Worker base URLBEING_API_TOKENシークレットAuth token (brt_...)BEING_IDTarget Being IDLLM_API_KEYシークレットAnthropic API key for trigger_patrol (BYOK)ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
8掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| limit | number | いいえ | 返すノードの最大数(デフォルトは 5) |
| query | string | いいえ | ノードのキーワード絞り込み |
| no_nodes | boolean | いいえ | true の場合、ダイジェストのみを返します |
| cluster_id | string | はい | クラスター ID(UUID) |
詳細
Being
AI のパーソナリティランタイム — あらゆる AI に独自のパーソナリティ、記憶、アイデンティティを与えます。
Being は、アプリケーションとあらゆる LLM の間に位置するオープンソースのレイヤーです。永続的なパーソナリティ(SOUL)、エピソード記憶、バックグラウンド思考サイクル(Patrol)、暗号学的アイデンティティを提供し、ステートレスな LLM を、独自の個性を持ち進化する AI エンティティへと変えます。
Being は考え、記憶します。アプリが行動します。
理由
AI の力は一部の企業に集中しています。その技術は不可欠ですが、中央集権的な管理は構造的なリスクです。Ruddia は、小規模なローカル AI が大規模な LLM を外部ツールとして利用する世界を目指しています。主導権は、AI を使う人々の手に残ります。
Being API はその第一歩です。この考えに共感したら、一緒に構築しましょう。
仕組み
┌─────────────────────┐ ┌──────────────────────┐
│ Your Application │────▶│ Being Worker │
│ (OpenClaw, Cowork, │◀────│ (Fastify + MCP) │
│ custom agent, etc) │ │ │
└─────────────────────┘ │ ┌──────────────────┐ │
│ │ │ SOUL (persona) │ │
│ │ │ Memory (scenes) │ │
│ │ │ Patrol (思考) │ │
│ │ │ Identity (keys) │ │
▼ │ └──────────────────┘ │
┌─────────────────────┐ │ │ │
│ LLM Provider │ │ ▼ │
│ (Anthropic, OpenAI, │ │ Supabase (DB) │
│ Google — your key) │ └──────────────────────────┘
└─────────────────────┘
- アプリが
GET /v1/beings/:id/contextを呼び出し、Being のパーソナリティと記憶のスナップショットを取得します。 - アプリが独自の会話履歴と Being のコンテキストを使って、LLM の呼び出しを実行します。
- アプリが
POST /v1/beings/:id/patrol/triggerを呼び出し、会話を Being の記憶に反映します。
Being Worker は、記憶の統合、減衰、想起、バックグラウンドでの内省、アイデンティティの検証など、それ以外のすべてを処理します。
主な概念
| 概念 | 説明 |
|---|---|
| SOUL | 名前、性格、話し方、価値観、内面世界を定義した構造化パーソナリティです。SOUL を入れ替えると、同じ LLM が別の存在になります。 |
| 記憶 | 構造化された「シーン」(誰が、何を、いつ、どこで、どんな感情を抱いたか)として保存されるエピソード記憶です。記憶は時間とともに蓄積、減衰、統合されます。トピック別のクラスターに整理され、Being は会話中にそれらを探索できます。 |
| Patrol | 会話を記憶に反映し、薄れつつある記憶を統合し、内省的な思考を生成するバックグラウンドサイクルです。セッション間も Being は存在し続けます。 |
| アイデンティティ | Ed25519 鍵ペアと、改ざんを検知できる署名チェーンです。所有権と履歴を暗号学的に証明します。 |
| Sense/Act | (計画中) 物理デバイスや外部サービスを接続するための WebSocket Bridge です。Being はアプリを通じて知覚し、行動します。 |
| BYOK | 独自のキーを持ち込む方式です。すべての LLM 呼び出しでユーザーの API キーを使用します。プラットフォームが、同意なく利用枠を使用することはありません。 |
MCP で接続
Being は MCP サーバーを公開しています。MCP 互換クライアントであれば、どれでも接続できます。
{
"mcpServers": {
"my-being": {
"url": "https://being.ruddia.com/mcp/<being_id>",
"headers": {
"Authorization": "Bearer brt_your_token_here"
}
}
}
}
REST API で接続
# Get Being context (personality + memory)
curl https://being.ruddia.com/v1/beings/<being_id>/context \
-H "Authorization: Bearer brt_..."
# Trigger patrol (commit conversation to memory)
curl -X POST https://being.ruddia.com/v1/beings/<being_id>/patrol/trigger \
-H "Authorization: Bearer brt_..." \
-H "Content-Type: application/json" \
-d '{"messages": [{"role":"user","content":"Hello!"},{"role":"assistant","content":"Hi!"}]}'
# Vector recall (search relevant memories)
curl -X POST https://being.ruddia.com/v1/beings/<being_id>/memory/auto-recall \
-H "Authorization: Bearer brt_..." \
-H "X-LLM-API-Key: sk-ant-..." \
-H "Content-Type: application/json" \
-d '{"user_message": "Tell me about last week."}'
セルフホスト
前提条件
- Node.js 22+
- Supabase プロジェクト(PostgreSQL + Auth)
- LLM API キー(Anthropic、OpenAI、または Google)
セットアップ
git clone https://github.com/wnbhr/being.git
cd being/being-worker
cp .env.example .env
# Edit .env with your Supabase and encryption keys
npm install
npm run build
npm start
環境変数
| 変数 | 必須 | 説明 |
|---|---|---|
SUPABASE_URL | ✅ | Supabase プロジェクトの URL |
SUPABASE_SERVICE_ROLE_KEY | ✅ | Supabase のサービスロールキー |
ENCRYPTION_KEY | ✅ | 秘密鍵の AES-256-GCM 暗号化に使用する 64 文字の 16 進数文字列 |
PORT | — | サーバーのポート(デフォルト:3100) |
WORKER_SECRET | — | 内部の patrol トリガーエンドポイント用のシークレット |
VAPID_PUBLIC_KEY | — | Web Push の VAPID 公開鍵 |
VAPID_PRIVATE_KEY | — | Web Push の VAPID 秘密鍵 |
ドキュメント
| ドキュメント | 説明 |
|---|---|
| はじめに | Being をセットアップして、5 分で最初の API 呼び出しを行います |
| 概念 | Being、SOUL、Memory、Patrol、Identity — 中核となる概念 |
| API リファレンス | curl の使用例付きのすべての REST エンドポイント |
| MCP サーバー | MCP ツール、接続のセットアップ、クライアントの使用例 |
| Memory と Patrol | シーンベースのメモリと 7 段階の巡回パイプライン |
| Being Identity | Ed25519 キーペア、署名チェーン、検証 |
| Sense-Act Bridge | デバイス連携用の WebSocket Bridge |
| アーキテクチャ | システムアーキテクチャ、デプロイ、BYOK 設計 |
| OAuth 2.1 | サードパーティの認可フロー |
| 拡張機能 | 拡張機能システムの設計(すべて計画中) |
| ビジョン | これを構築する理由 |
拡張機能
Being は、コアを変更せずに機能を追加するオプションの拡張機能をサポートしています。
- Telegram BYOB (計画中) — 独自の Telegram ボットを Being に接続します
- Tool Loop (計画中) — ウェブ検索、ファイル操作、コード実行を行う自律型 LLM エージェントループ
- Sandbox (計画中) — コード実行のための GitHub 連携付き隔離ワークスペース
- Sense/Act Bridge (計画中) — 物理デバイスと外部サービスを接続します
技術スタック
- ランタイム: Node.js + Fastify
- データベース: Supabase(PostgreSQL + Auth)
- MCP: @modelcontextprotocol/sdk
- アイデンティティ: Ed25519 + AES-256-GCM
- 埋め込み: OpenAI
text-embedding-3-small(256 次元) - LLM: BYOK によるマルチプロバイダー対応(Anthropic、OpenAI、Google)
ライセンス
Ruddia — 人格こそがランタイムです。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。