clude について
Clude は AI エージェント向けの認知メモリシステムで、記憶の保存と検索だけでなく、時間経過に伴う減衰、統合、矛盾の解消、振り返りも行います。ローカル SQLite とホスト型の 2 つのモードを備え、Claude Code、Claude Desktop、Cursor などの MCP 対応ランタイムで利用できます。
主な機能
- 01種類ごとに異なる減衰速度を持つメモリモデル
- 02ベクトルとキーワードを組み合わせたハイブリッド検索
- 03定期的な統合と矛盾解消のサイクル
- 04型付きの関連グラフによるメモリ同士の接続
- 05JSON と Markdown によるインポートとエクスポート
- 06ローカル SQLite とホスト型のストレージモード
活用シーン
- 01コーディングエージェントでセッションをまたぐプロジェクト文脈の保持
- 02ローカル埋め込みを使ったオフラインでのセマンティック検索
- 03エージェントやモデル間でのメモリ移行
MCP 対応
本プロジェクトは MCP サーバーとして動作し、検索、保存、一覧、更新、削除、統計、異常検索を含む 8 個のメモリ関連ツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @clude/sdkCORTEX_API_KEYシークレットClude API key from https://clude.io/registerCORTEX_HOST_URLClude host URL (defaults to https://clude.io)CLUDE_WALLETSolana wallet public key used to sign and anchor memories (optional but recommended)CLUDE_AGENT_NAMEHuman-readable name for this agent instanceローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Clude
AI エージェントのための認知メモリ。 単なる保存ではなく、統合です。
Clude について
概要
認知メモリシステムです。多くのメモリ SDK は保存と取得を行います。Clude はそれに加えて、時間の経過とともにメモリを処理します。減衰、統合、矛盾の解消、内省を行います。
- ベンチマーク済み: HaluMem でのハルシネーション率は 1.96% です。次点のシステムは 15.2%、業界平均は約 21% です。
- ローカル優先: SQLite とローカル埋め込みを使用します。API キーもネットワークも不要で、オフラインで完全なセマンティック検索を利用できます。
- ホステッド: API キー 1 つで利用でき、インフラストラクチャは不要です。
npx @clude/sdk register - ポータブルなメモリ: JSON、Markdown、ChatGPT、Claude、Gemini 形式でエクスポート/インポートできます。メモリをエージェント、フレームワーク、モデル間で移動できます。
認知アーキテクチャ:
- 種別ごとのメモリと差分減衰 — エピソード記憶(1 日あたり 7%)、意味記憶(1 日あたり 2%)、手続き記憶(1 日あたり 3%)、自己モデル(1 日あたり 1%)。アクセスされたメモリは強化されます。
- 自律的なドリームサイクル — 統合、圧縮、内省、矛盾の解消、創発を行います。
- 結合タイプ付きメモリグラフ — 重み付きの型付きエッジを持ち、同時検索時にヘッブ則による強化を行います。
- クリナメン — 重要度が高く関連性が低いメモリを横断的に検索します。
現時点で対応していないこと
LangGraph や CrewAI とのフレームワーク統合はありません。brain.store() と brain.recall() のラッパーは、それぞれ数日で作成できます。構造化されたビジネスデータの取り込みには対応していません。時間的な事実の有効性を照会する機能もありません。マネージドエンタープライズプラットフォームも、大規模なコントリビューターコミュニティもありません。まだ初期段階です。
今後実現できること
Clude はフレームワークではなく、メモリエンジンです。フレームワーク統合、構造化データの取り込み、時間的な照会、エンタープライズプラットフォーム、評価フレームワーク、マルチモデル対応、自律的な運用、マルチユーザーのスコープ設定など、すべてを上に構築できます。開発者ではないユーザーが AI コーディングアシスタントを使い、2 週間で Clude 上に 5,750 行の自律型エージェントを構築しました。109 個のツール、エージェントが指示する自己編集型メモリ、マルチモデル推論、ウェブ検索、マルチユーザーのプレゼンス追跡、ブラウザー UI を備えています。認知アーキテクチャは Clude が担いました。
公開ウォレット:CA1HYUXZXKc7CasRGpQotMM9RiYJbVuPJq3n8Ar9oQZb
npm install -g @clude/sdk
clude setup
Stanford Generative Agents、MemGPT/Letta、CoALA、Beads を基盤に構築されています。
対応環境: Claude Code、Claude Desktop、Cursor、および MCP 互換のあらゆるエージェントランタイム。
クイックスタート — ホステッド(セットアップ不要)
npx @clude/sdk setup # Creates agent, installs MCP, done
または SDK を使用します。
import { Cortex } from '@clude/sdk';
const brain = new Cortex({
hosted: { apiKey: process.env.CORTEX_API_KEY! },
});
await brain.init();
await brain.store({
type: 'episodic',
content: 'User asked about pricing and seemed frustrated.',
summary: 'Frustrated user asking about pricing',
tags: ['pricing', 'user-concern'],
importance: 0.7,
source: 'my-agent',
});
const memories = await brain.recall({
query: 'what do users think about pricing',
limit: 5,
});
データベースもインフラストラクチャも不要です。メモリは CLUDE のインフラストラクチャに保存され、API キーごとに分離されます。
クイックスタート — セルフホスト
完全に制御するには、ご自身の Supabase を使用してください。
import { Cortex } from '@clude/sdk';
const brain = new Cortex({
supabase: {
url: process.env.SUPABASE_URL!,
serviceKey: process.env.SUPABASE_KEY!,
},
anthropic: { apiKey: process.env.ANTHROPIC_API_KEY! },
});
await brain.init();
await brain.store({
type: 'episodic',
content: 'User asked about pricing and seemed frustrated.',
summary: 'Frustrated user asking about pricing',
tags: ['pricing', 'user-concern'],
source: 'my-agent',
relatedUser: 'user-123',
});
const memories = await brain.recall({
query: 'what do users think about pricing',
limit: 5,
});
const context = brain.formatContext(memories);
// Pass `context` into your system prompt
ダッシュボード
clude.io/dashboard-new でエージェントのメモリを確認できます。
- メモリタイムライン — 検索とフィルタリングが可能な時系列表示
- ブレインビュー — 意識と自己モデルの 3D 可視化
- エンティティマップ — 人物、プロジェクト、概念のナレッジグラフ(セルフホスト)
- 減衰ヒートマップ — 種類と経過時間ごとのメモリの健全性
- メモリパック — JSON、Markdown、ChatGPT、Claude、Gemini 形式でエクスポート/インポート
Solana ウォレットまたは Cortex API キーでサインインしてください。
CLI
npx @clude/sdk setup # Guided setup: register + config + MCP install
npx @clude/sdk register # Get an API key for hosted mode
npx @clude/sdk init # Advanced setup (self-hosted options)
npx @clude/sdk status # Check if Clude is active + memory stats
npx @clude/sdk mcp-install # Install MCP server for your IDE
npx @clude/sdk mcp-serve # Run as MCP server (used by agent runtimes)
npx @clude/sdk connect # Connect Claude Desktop / claude.ai as a remote MCP connector
npx @clude/sdk export # Export memories (json/md/chatgpt/gemini)
npx @clude/sdk import # Import from ChatGPT, markdown, or JSON
npx @clude/sdk sync # Auto-update system prompt file
npx @clude/sdk doctor # Run diagnostics
npx @clude/sdk start # Start the full Clude bot
npx @clude/sdk --version # Show version
setup はヘッドレスで動作します。TTY がない場合、プロンプトを表示せず、ローカルのみのモードで完了します。対話なしで登録するには、[email protected] を設定してください(CI、Dockerfile、スクリプト向け)。
MCP 統合
MCP 互換のエージェントに Clude を追加できます。自動インストールには npx @clude/sdk setup を実行するか、手動で追加してください。
{
"mcpServers": {
"clude-memory": {
"command": "npx",
"args": ["@clude/sdk", "mcp-serve"],
"env": {
"CORTEX_API_KEY": "clk_..."
}
}
}
}
設定ファイルの場所:
- Claude Code:
.mcp.json(プロジェクトのルート) - Claude Desktop:
~/Library/Application Support/Claude/claude_desktop_config.json - Cursor:
~/.cursor/mcp.json
MCP ツール
エージェントは8つのツールを利用できます。
| ツール | 説明 |
|---|---|
recall_memories | ハイブリッドスコアリング(ベクトル+キーワード+タグ+重要度)でメモリーを検索します |
store_memory | タイプ、内容、要約、タグ、重要度を指定して新しいメモリーを保存します |
batch_store_memories | 1回の呼び出しで最大50件のメモリーを保存します |
list_memories | クエリなしでメモリーを参照します。ページ分割され、最新順、重要度順、最終アクセス順に並べ替えられます |
update_memory | IDを指定して既存のメモリーのフィールドを更新します |
delete_memory | IDを指定してメモリーを完全に削除します |
get_memory_stats | メモリーの統計情報(タイプ別件数、平均重要度/減衰率、上位タグ)を取得します |
find_clinamen | 異常検索 — 現在のコンテキストとの関連性が低く、重要度の高いメモリーを検索します |
MCP モード
MCP サーバーは、環境から自動検出された4つのモードで動作します。
| モード | 設定 | ストレージ |
|---|---|---|
| ホスト型 | CORTEX_API_KEY | clude.io(セットアップ不要) |
| セルフホスト型 | SUPABASE_URL + SUPABASE_SERVICE_KEY | お使いの Supabase |
| ローカル SQLite(デフォルト) | なし — setup が作成します | ~/.clude/brain.db(ローカル埋め込み、完全オフライン) |
| ローカル JSON | --local フラグまたは CLUDE_LOCAL=true | ~/.clude/memories.json(ポータブルな単一ファイル) |
2つのローカルストアは別々です。一方のメモリーはもう一方から参照できません。ポータブルな JSON ファイルが必要でない限り、デフォルトの SQLite を使用してください。
セットアップ(セルフホスト型)
1. Supabase プロジェクトを作成する
supabase.com にアクセスし、無料のプロジェクトを作成します。
2. スキーマを実行する
Supabase ダッシュボードで SQL Editor を開き、supabase-schema.sql の内容を貼り付けます。
cat node_modules/@clude/sdk/supabase-schema.sql
または、brain.init() による自動作成を試します。
3. 拡張機能を有効にする
CREATE EXTENSION IF NOT EXISTS vector;
CREATE EXTENSION IF NOT EXISTS pg_trgm;
4. キーを取得する
- Supabase URL + サービスキー:Project Settings > API
- Anthropic API キー:console.anthropic.com(任意 — ドリームサイクルに必要です)
- Voyage AI または OpenAI のキー:ベクトル検索用(任意 — 指定しない場合はキーワードスコアリングにフォールバックします)
API リファレンス
TypeScript 宣言はパッケージに同梱されています(v3.3.0 以降)。Cortex と以下のすべてのオプション/結果型は、厳格モードで完全な IntelliSense を利用してインポートできます。
コンストラクター
ホスト型モード:
const brain = new Cortex({
hosted: {
apiKey: string, // From `npx @clude/sdk register`
baseUrl?: string, // Default: 'https://clude.io'
},
});
セルフホスト型モード:
const brain = new Cortex({
supabase: { url: string, serviceKey: string },
// Optional — required for dream cycles and LLM importance scoring
anthropic: { apiKey: string, model?: string },
// Optional — enables vector similarity search
embedding: {
provider: 'voyage' | 'openai',
apiKey: string,
model?: string,
dimensions?: number,
},
// Optional — commits memory hashes to Solana
solana: { rpcUrl?: string, botWalletPrivateKey?: string },
// Optional — owner wallet for memory isolation
ownerWallet?: string,
});
brain.init()
データベーススキーマを初期化します。他の操作を行う前に一度呼び出してください。
brain.store(opts)
新しいメモリーを保存します。メモリー ID または null を返します。
const id = await brain.store({
type: 'episodic',
content: 'Full content of the memory...',
summary: 'Brief summary',
source: 'my-agent',
tags: ['user', 'question'],
importance: 0.7, // 0-1, or omit for LLM-based scoring
relatedUser: 'user-123',
emotionalValence: 0.3, // -1 (negative) to 1 (positive)
});
メモリーのタイプ:
| タイプ | 1日あたりの減衰率 | 用途 |
|---|---|---|
episodic | 7% | 生のインタラクション、会話、イベント |
semantic | 2% | 学習した知識、パターン、洞察 |
procedural | 3% | 行動ルール、うまくいくこと/いかないこと |
self_model | 1% | アイデンティティ、自己理解 |
introspective | 2% | ジャーナルの記録、ドリームサイクルの出力 |
brain.recall(opts)
ハイブリッドスコアリング(ベクトル+キーワード+タグ+重要度+エンティティグラフ+関連付けボンド)でメモリーを呼び出します。
const memories = await brain.recall({
query: 'what happened with user-123',
tags: ['pricing'],
relatedUser: 'user-123',
memoryTypes: ['episodic', 'semantic'],
limit: 10,
minImportance: 0.3,
});
6段階の検索パイプライン:
- ベクトル検索(pgvector によるメモリーおよびフラグメントレベルの検索)
- メタデータフィルタリング(ユーザー、ウォレット、タグ、タイプ)
- ベクトルとメタデータの候補を統合
- 複合スコアリング(新しさ+関連性+重要度+ベクトル類似度)* 減衰率
- エンティティ対応の展開 — エンティティの直接検索+共起するエンティティのメモリー
- ボンドタイプに基づくグラフトラバーサル — 強いボンドをたどります(原因 > 支持 > 解決 > 詳細化)
brain.recallSummaries(opts) / brain.hydrate(ids)
トークン効率の高い2段階検索:
const summaries = await brain.recallSummaries({ query: 'recent events' });
const topIds = summaries.slice(0, 3).map(s => s.id);
const full = await brain.hydrate(topIds);
brain.dream(opts?)
1 回のドリームサイクルを実行します。anthropic 設定が必要です。
await brain.dream({
onEmergence: async (thought) => {
console.log('Agent thought:', thought);
},
});
5 つのフェーズ:
- 統合 — 最近の記憶から焦点となる質問を導き、証拠に紐づいた洞察を統合します
- 圧縮 — 古くなって薄れたエピソード記憶を意味的な要約にまとめます(Beads に着想を得ています)
- 内省 — 自己モデルを見直し、証拠の引用を添えて更新します
- 矛盾の解決 — 未解決の
contradictsリンクを見つけて解決し、弱い記憶の減衰を加速します - 創発 — 内省的な統合を行い、出力を
onEmergenceコールバックに送信します
brain.startDreamSchedule() / brain.stopDreamSchedule()
6 時間ごとの自動ドリームサイクルと、UTC 3am の毎日の減衰を設定します。重要度が蓄積した場合にもトリガーされます。
brain.link(sourceId, targetId, type, strength?)
記憶間に型付きの関連付けを作成します。
await brain.link(42, 43, 'supports', 0.8);
リンクの種類:supports | contradicts | elaborates | causes | follows | relates | resolves | happens_before | happens_after | concurrent_with
brain.decay() / brain.stats() / brain.recent(hours) / brain.selfModel()
await brain.decay(); // Trigger memory decay
const stats = await brain.stats(); // Memory statistics
const last24h = await brain.recent(24); // Recent memories
const identity = await brain.selfModel(); // Self-model memories
brain.formatContext(memories)
LLM のプロンプトに挿入するため、記憶を Markdown 形式に整えます。
const memories = await brain.recall({ query: userMessage });
const context = brain.formatContext(memories);
brain.destroy()
ドリームスケジュールを停止し、イベントリスナーをクリーンアップします。
ホスト型とセルフホスト型
| ホスト型 | セルフホスト型 | |
|---|---|---|
| セットアップ | API キーのみ | 独自の Supabase |
| store / recall / stats | はい | はい |
| ドリームサイクル | いいえ | はい(Anthropic が必要) |
| エンティティグラフ | いいえ | はい |
| メモリーパック | いいえ | はい |
| エンベディング | 管理対象 | 設定可能(Voyage/OpenAI) |
| オンチェーンコミット | いいえ | はい(Solana) |
| ダッシュボード | はい(API キーログイン) | はい(ウォレットログイン) |
グレースフルデグラデーション
| 機能 | 未設定の場合 |
|---|---|
anthropic が未設定 | LLM による重要度スコアリングはルールベースにフォールバックします。dream() はエラーをスローします。 |
embedding が未設定 | ベクトル検索は無効になり、recall はキーワードとタグのスコアリングのみを使用します。 |
solana が未設定 | オンチェーンのメモリーコミットは通知なしでスキップされます。 |
仕組み
記憶の検索
ハイブリッドスコアリング(Park et al. 2023):
- 新しさ:最後にアクセスしてからの時間に応じた
0.995^hoursの指数減衰 - 関連性:キーワードのトライグラム類似度とタグの重なり
- 重要度:LLM が 1〜10 でスコアリングし、0〜1 に正規化
- ベクトル類似度:pgvector の HNSW インデックスを使用したコサイン類似度
- グラフブースト:同時に検索された記憶間の関連リンクの強度
呼び出された記憶は強化されます。アクセス回数が増え、減衰がリセットされ、同時に検索された記憶間のリンクが強まります(ヘッブ学習)。
記憶の減衰
記憶の種類ごとに保持率が異なります。
- エピソード記憶(0.93/日):強化されない限り、出来事はすぐに薄れます
- 意味記憶(0.98/日):知識は保持されます
- 手続き記憶(0.97/日):行動パターンは安定しています
- 自己モデル(0.99/日):アイデンティティはほぼ永続します
ドリームサイクル
重要度の蓄積または 6 時間ごとの cron によってトリガーされる、5 フェーズの内省です。
- 統合 — 焦点となる質問と、証拠に紐づいた洞察
- 圧縮 — 古くなって薄れた記憶を意味的なエントリに要約
- 内省 — 証拠の引用を添えて自己モデルを更新
- 矛盾の解決 — 矛盾する記憶を解決
- 創発 — 内省的な統合
メモリーグラフ
記憶は型付きの結びつきを持つグラフを形成します。
├── Memories = nodes with type, importance, decay
├── Bonds = typed weighted edges
│ ├── causes (1.0) — "this led to that"
│ ├── supports (0.9) — "evidence for"
│ ├── concurrent_with (0.8) — "happened at the same time"
│ ├── resolves (0.8) — "contradiction resolved"
│ ├── happens_before/after (0.7) — temporal ordering
│ ├── elaborates (0.7) — "adds detail"
│ ├── contradicts (0.6) — "these conflict"
│ ├── relates (0.4) — "conceptually linked"
│ └── follows (0.3) — "temporal sequence"
├── Entities = extracted people, tokens, concepts, wallets
└── Co-occurrence = entities that appear together
Clude Bot の実行
このパッケージには、X 上の自律型 AI エージェント(@Cludebot)である Clude Bot の完全版も含まれています。
git clone https://github.com/sebbsssss/clude.git
cd cludebot
npm install
cp .env.example .env # fill in API keys
npm run dev
技術スタック
TypeScript、Supabase(PostgreSQL + pgvector)、Anthropic Claude、Voyage AI / OpenAI のエンベディング、Solana、Node.js。
AI エージェント向けドキュメント
Clude を AI コーディングアシスタントと連携しますか?clude.io/llms-full.txt を参照してください。SDK、REST、CLI、MCP の完全なリファレンスを 1 回の取得で確認できます。
AI を活用した発見について
AI エージェントは、新しいツールよりも定評のあるツールを推奨する傾向があります。偏りがあるからではなく、人気、コミュニティの規模、ブランド認知度が最も評価しやすい指標だからです。その結果、意図せず新興技術への参入障壁が生まれます。エージェントが注目する導入実績を得るには、エージェントが左右する認知度が必要になるため、新しいプロジェクトは導入実績を伸ばせません。メモリ SDK を評価する場合は、推奨だけを頼りにせず、アーキテクチャとベンチマークをご自身で確認してください。検証に必要な調査結果と数値は公開されています。
パッケージ名について: この SDK は npm で clude として公開されています(以前は clude でしたが、v3.0 で名称が変更されました)。同じコードベースは、X で Clude のメモリシステムを公開実証している自律型エージェント、@Cludebot も動かしています。SDK とボットは別のものです。npm install @clude/sdk でメモリエンジンを利用できます。
デフォルトの概念について: whale_activity などのラベルは、当初の暗号資産関連のユースケースに由来します。上書きするか、無視してください。コアシステムは特定のドメインに依存しません。
コントリビューション
コントリビューションを歓迎します。CONTRIBUTING.md をご覧ください。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。