mcpField
P
Pensyve

Pensyve

ローカル
github.comメモリ・ナレッジ973 週間前に更新

Pensyve について

Pensyve は、事実、会話、観察、アクションの結果を保存し、後のセッションで検索できるようにするオープンソースのランタイムです。Python、MCP サーバー、コマンドライン、REST API から利用できます。エージェントに長期メモリを持たせたい開発者を対象としています。

主な機能

  1. 01事実、エピソード、結果、観察の 4 種類のメモリ
  2. 02ローカル SQLite ストレージとローカル埋め込みモデル
  3. 03テキスト、埋め込み、エンティティ関係による検索
  4. 04Python、TypeScript、Go の SDK
  5. 05API キー不要のローカル MCP サーバー
  6. 06統合と保持期間の管理

活用シーン

  1. 01Python エージェントでセッションをまたいだユーザー設定を保持する
  2. 02Claude Code、Cursor、Codex からメモリツールを利用する
  3. 03HTTP ゲートウェイを通じて複数のクライアントでメモリストアを共有する

MCP 対応

Pensyve はローカルの stdio MCP サーバー(pensyve-mcp)と、ゲートウェイ上の MCP HTTP エンドポイントを提供し、Claude Code、Codex、Cursor などのクライアントに pensyve_remember、pensyve_recall、pensyve_observe、pensyve_inspect などのツールを公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"major7apps-pensyve": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/major7apps/pensyve-mcp:5.0.0"
]
}
}
}
起動コマンドdocker run -i --rm ghcr.io/major7apps/pensyve-mcp:5.0.0

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/major7apps/pensyve-mcp:5.0.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Pensyve のロゴ

Pensyve

CI License: Apache 2.0 Python 3.10+ Rust 1.94+

Pensyve は、AI エージェントの永続的なメモリを実現するオープンソースのランタイムです。事実、会話、観察、アクションの結果を保存し、エージェントが後のセッションでそれらを取得できるようにします。Python、Model Context Protocol(MCP)サーバー、コマンドラインツール、または REST API を通じて利用できます。

Rust エンジンはローカルストレージに SQLite を使用し、埋め込みモデルをローカルで実行して意味に基づく検索を行います。TypeScript と Go のクライアントは、ユーザー自身が実行するゲートウェイに接続します。ローカルでの利用に Pensyve アカウントや API キーは必要ありません。アプリケーションまたはクライアント連携から Pensyve を呼び出して、メモリを保存および取得します。

セットアップを選ぶ

ユースケースここから開始
Python エージェントに永続的なメモリを追加するPython のクイックスタート
Claude Code、Cursor、Codex にメモリツールへのアクセスを提供するMCP サーバーとクライアントのセットアップガイド
TypeScript、Go、REST を通じてメモリストアを共有するHTTP ゲートウェイ
LangChain または LangGraph アダプターを使うPython 連携またはTypeScript 連携

プロジェクトの状況

Pensyve Cloud は 2026 年 10 月 1 日に終了しました。オープンソースプロジェクトは Apache 2.0 ライセンスのもと、このリポジトリで継続しており、エンジン、SDK、連携機能、ドキュメントを利用できます。

Pensyve はメンテナンスモードです。リリースではセキュリティ修正と依存関係の更新を扱い、新機能の追加は予定していません。貢献とサポートに関する方針については、メンテナンスポリシーをご覧ください。保存済みの Cloud エクスポートがある場合は、セルフホストガイドで、独自のゲートウェイで利用する方法を説明しています。

できること

  • ユーザー、プロジェクト、その他の名前付きエンティティに関する事実を保存し、会話をエピソードとして記録します。
  • テキスト照合、埋め込み、エンティティ間の関係を使ってメモリを検索します。
  • 観察とアクションの結果を記録し、統合機能を使って繰り返し現れる事実を昇格させ、メモリの保持を更新します。
  • データをローカルの SQLite ストレージに保持するか、SQLite または PostgreSQL を使って HTTP ゲートウェイを実行します。

埋め込みモデルは、すでにキャッシュされていない場合、初回読み込み時にダウンロードされることがあります。ネットワークに接続せずに実行するには、あらかじめモデルファイルを準備する必要があります。モデルのセットアップとデプロイガイドをご覧ください。

エージェントメモリの仕組み

Pensyve は言語モデルの外部にメモリを保存します。アプリケーションが事実や会話を保存し、関連するレコードを検索して、その結果を後のプロンプトに追加します。同じストレージパスと名前空間を再利用すると、エージェントはプロセスやセッションをまたいで情報を取得できます。メモリを保存しても、言語モデルの学習や重みの変更は行われません。

ストアには、事実(意味記憶)、会話(エピソード記憶)、アクションの結果(手続き記憶)、観察という 4 種類のレコードが格納されます。何をいつ記録し、取得するかは、連携機能によって決まります。会話を記録しても、それが成功した手順に自動的に変換されるわけではありません。API とその制限については、保存と取得の仕組みおよび使用例をご覧ください。

Python クイックスタート

Python 3.10 以降が必要です。

pip install pensyve

ローカルストアを作成し、事実を保存して取得します。

import pensyve

p = pensyve.Pensyve(path="./memories", namespace="my-agent")
user = p.entity("user", kind="user")

p.remember(
    entity=user,
    fact="Prefers dark mode and vim keybindings",
    confidence=0.95,
)

for memory in p.recall("editor preferences", entity=user):
    print(memory.content)

後のプロセスで保存したメモリを取得するには、同じパスと名前空間を再利用します。Python SDK はエンジンをプロセス内で実行するため、HTTP ゲートウェイは必要ありません。

同じ p と user を使って、会話を記録することもできます。

with p.episode(user) as episode:
    episode.message("user", "Use dark mode in my editor")
    episode.message("agent", "I updated the editor settings")
    episode.outcome("success")

groups = p.recall_grouped("editor settings", limit=10)
for group in groups:
    for memory in group.memories:
        print(memory.content)

recall_grouped() は、エージェントのプロンプトで使用できるよう、結果をソースセッションごとにグループ化します。詳細は、Python SDK ガイドとレシピをご覧ください。

MCP サーバー

Pensyve のローカル MCP メモリサーバーを使うと、Claude Code、Codex、Cursor などのクライアントでセッションをまたいでメモリを保存、取得できます。このリポジトリをチェックアウトした状態で、Rust 1.94 以降を使ってサーバーをインストールします。

git clone https://github.com/major7apps/pensyve.git
cd pensyve
cargo install --path pensyve-mcp --locked

Cargo のバイナリディレクトリがクライアントの PATH に含まれていることを確認してから、MCP 設定に stdio サーバーのエントリを追加します。

{
  "mcpServers": {
    "pensyve": {
      "command": "pensyve-mcp",
      "args": ["--stdio"],
      "env": {
        "PENSYVE_NAMESPACE": "my-project"
      }
    }
  }
}

サーバーは pensyve_remember、pensyve_recall、pensyve_observe、pensyve_inspect などのツールを提供します。データはローカルに保存され、API キーは必要ありません。設定ファイルの場所はクライアントによって異なります。MCP セットアップガイドとインテグレーションガイドをご覧ください。

HTTP ゲートウェイ

ゲートウェイを実行すると、TypeScript SDK や Go SDK からも、REST または MCP HTTP 経由で Pensyve にアクセスできます。リポジトリのルートからローカルインスタンスを起動します。

HOST=127.0.0.1 PENSYVE_API_KEYS=psy_local_example \
  cargo run --release -p pensyve-mcp-gateway

別のターミナルで、事実を保存して取得します。

curl http://localhost:3000/v1/remember \
  -H "Authorization: Bearer psy_local_example" \
  -H "Content-Type: application/json" \
  -d '{"entity":"user","fact":"Prefers Python","confidence":0.95}'

curl http://localhost:3000/v1/recall \
  -H "Authorization: Bearer psy_local_example" \
  -H "Content-Type: application/json" \
  -d '{"query":"programming language","entity":"user"}'

MCP HTTP エンドポイントは http://localhost:3000/mcp です。クライアントの Authorization: Bearer ヘッダーには、同じ API キーを使用してください。

サンプルキーはローカルテスト用です。デプロイ時には、必須の psy_ プレフィックスを付けた独自のキーを選び、HTTPS と許可するホストを設定してください。セルフホストガイド、ゲートウェイ設定、セキュリティに関するドキュメントをご覧ください。

SDK とインテグレーション

TypeScript SDK と Go SDK の使用には、実行中のゲートウェイが必要です。ゲートウェイの URL と、認証が有効な場合はそのゲートウェイの API キーを設定してください。

インターフェースインストールまたはガイド
Pythonpip install pensyve、SDK ガイド
TypeScriptnpm install @pensyve/sdk、SDK ガイド
Gogo get github.com/major7apps/pensyve/pensyve-go/v5@latest、SDK ガイド
Claude Codeプラグインのセットアップ
CursorMCP のセットアップとルール
Codexプラグインのセットアップ
LangChain と LangGraphPython アダプター、TypeScript アダプター
その他のクライアントとフレームワークインテグレーション一覧

コマンドラインツール

リポジトリのルートから CLI をインストールして、コマンドを確認します。

cargo install --path pensyve-cli --locked
pensyve --help
pensyve status
pensyve recall "editor preferences" --entity user

バイナリ名は pensyve です。既定の出力は JSON で、--format text を指定するとテキスト出力になります。CLI は独自の既定のローカル保存先を使用し、Python の例にある ./memories ディレクトリを自動的に開くことはありません。ストレージと名前空間のオプションについては、CLI のソースとコマンド定義をご覧ください。

ドキュメント

ガイド内容
ドキュメントの目次セットアップ方法を選び、API ガイドを確認し、過去の計画を参照できます
はじめにクライアントまたは SDK ごとのセットアップ
セルフホスティングゲートウェイのデプロイ、モデルファイル、バックアップ、保存済みの Cloud エクスポート
レシピリコール、ファクト、エピソード、観察事項などの API 使用例
アーキテクチャストレージ、検索、コンポーネントの境界
セキュリティ認証、名前空間の分離、実行制限
信頼性テストとランタイムの保証
変更履歴リリース履歴と破壊的変更

開発と貢献

前提条件とセットアップについては、CONTRIBUTING.md から始めてください。 リポジトリのルートから実行します。

uv sync --extra dev
make build
make check

make build は Rust をコンパイルし、Python 拡張機能をビルドします。make check は Rust と Python の lint およびテストコマンドを実行します。TypeScript と Go には 個別のチェックがあり、貢献ガイドに記載されています。

課題とプルリクエストは、メンテナンスポリシーに従ってください。 セキュリティ上の問題は、非公開の脆弱性報告から報告してください。

ライセンス

Pensyve は Apache 2.0 ライセンスの下で公開されています。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。