mcpField
M
memini

memini

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

memini について

meminiは、コーディングエージェント向けのローカル優先のプロジェクト記憶・ガードレールシステムです。リポジトリに教訓を保存し、フックで同じ失敗につながる編集を警告または阻止し、Git連携で古い記憶を検出します。

主な機能

  1. 01SQLiteとMarkdownでリポジトリ内に記憶を保存
  2. 02リスクのあるファイル編集を警告・阻止
  3. 03セッション開始時に記憶の要約を注入
  4. 04Git連携による古い記憶の検出
  5. 05CLIとMCP記憶ツール

活用シーン

  1. 01ビルドを壊した変更の再発防止
  2. 02デプロイルールやファイルのリスクを記録
  3. 03プロジェクト記憶の確認・検証・アーカイブ

MCP 対応

stdioのMCPサーバーを通じて、エージェントはプロジェクトの教訓を記録・検索し、コンテキストを確認して編集前にファイルをチェックできます。フックにより、任意のMCPツール呼び出しに頼らないガードレールも実現します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"lumayapartners-memini": {
"command": "npx",
"args": [
"-y",
"memini"
]
}
}
}
起動コマンドnpx -y memini

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

パッケージ
npmmemini0.4.0

ツール

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

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

詳細

memini

npm version CI memini MCP server

同じ失敗を二度と繰り返さない。 AI コーディングエージェントのための、ミス防止ガードレールと永続的なプロジェクトメモリです。

AI コーディングエージェントには状態がありません。セッションが始まるたびに、すべてを忘れてしまいます。月曜日に vercel.json を編集してビルドを壊したエージェントは、木曜日にもまったく同じ編集をためらいなく試します。memini は、各リポジトリに 失敗した試み、壊れやすいファイル、決定事項、デプロイルールの永続メモリを提供し、エージェントが過去の失敗を繰り返そうとした瞬間に、関連する警告を強制的に提示します。

エージェントが読むかどうかを選べるノートではありません。エージェントが回避できないガードレールです。

memini のデモ — 記録済みのデプロイミスを繰り返す前にエージェントを停止します

仕組み

  1. メモリはリポジトリに保存されます — ローカルの SQLite インデックスと、人が読めて PR でレビューできる Markdown ビューを含む .memini/ フォルダーです。ローカルファーストで、マシンの外部にデータが送信されることはありません。
  2. フックがガードレールを適用します — エージェントがリスクの記録されたファイルを編集しようとすると、編集が実行される前にインターセプトされ、記録された教訓が注入されます:

    [WARNING] Editing vercel.json broke the build (recorded 2026-07-03) — Tried changing buildCommand; deploy failed. Actual fix: move checkout server-side and set VITE_STRIPE_USE_SERVER=true.

    • warn の重大度:セッションごとに一度エージェントに警告し、その後は続行できます。
    • block の重大度:人間がメモリをアーカイブするまで、編集は常に拒否されます。
  3. セッション開始時にダイジェストを注入します。重要なメモリを(重大度優先、トークン予算に合わせて)まとめたものです。
  4. MCP ツールで、エージェントは学んだことを記録できます:remember_failed_attempt、remember_fragile_file、remember_decision、end_session_summary、さらに recall_project_context と check_before_editing。
  5. Git を考慮した陳腐化検知 — メモリは参照先ファイルのハッシュを記録します。pm stale は根拠となるファイルが変更されたメモリにフラグを付け、陳腐化したメモリは再検証されるまでガードレールを発動しません。

クイックスタート(90 秒)

cd your-repo
npx -y memini init       # creates .memini/ + installs Claude Code hooks

# record your first guardrail
npx -y memini remember failed_attempt \
  "Editing vercel.json broke the build" \
  -b "Tried changing buildCommand; deploy failed. Fix: move checkout server-side." \
  --file vercel.json --severity warn

これで完了です。次回、このリポジトリで Claude Code のセッションが vercel.json を編集しようとすると、まず警告が表示されます。

Cursor、Windsurf、その他の MCP クライアント:

claude mcp add memini -- npx -y memini mcp   # Claude Code MCP
npx -y memini install-mcp --write cursor     # Cursor: MCP + rule + enforced preToolUse hook
npx -y memini install-copilot                # GitHub Copilot: enforced preToolUse hook (.github/hooks)
npx -y memini install-mcp                    # print generic MCP config

適用は複数のゲートで構成されており、memini はそのいくつかをカバーします:

  • 編集前 — ガードレール対象ファイルへの編集は、実行される前にブロックされます。 block → 拒否、warn → 記録された履歴をユーザーに提示します。以下に対応しています:
    • Claude Code — pm init でインストールされます
    • Cursor(1.7 以降)— pm install-mcp --write cursor
    • GitHub Copilot — CLI、クラウドコーディングエージェント、VS Code エージェントモード(プレビュー)— pm install-copilot
  • コミット前 — すべてのツール — Git の pre-commit ガードレールが、block の重大度が設定されたファイルに触れるコミットをブロックします。どの IDE やエージェント(Windsurf、Cline、人間など)が編集したかは問いません。 pm init(または pm install-hooks --git)でインストールされます。失敗時は処理を続行し、git commit --no-verify で回避できます。
  • アドバイザリー — あらゆる MCP クライアント — check_before_editing/recall_project_context ツールに加え、エージェントにこれらの使用を促す、常に適用される Cursor ルールがあります。

メモリを長期にわたって有用に保つ

メモリツールの有用性は、その中身次第です。放置すれば劣化します。memini はメモリを健全に保ちます。

  • 自動記録 — Claude Code のセッション終了フックが、セッション中に実際にファイルが変更された場合、永続的な教訓(うまくいった修正、壊れやすいファイル、失敗したアプローチ)を記録するようエージェントに促します。pm remember を覚えておく必要はありません。何も行われなかったセッションでは動作しません。
  • 有用性の追跡 — ガードレールが実際に発動するたびに、memini がその回数を記録します。pm stats では、どのメモリが役立っているか、どれが一度も発動していないかを確認できます。
  • pm review — 類似した重複、同じファイルに対する矛盾したガードレール、作成から長い時間が経っても一度も発動していない休眠状態のガードレールを検出します。すべてローカルのヒューリスティックで処理し、LLM は使いません。残すもの、統合するもの、アーカイブするものは自分で判断できます。
  • Git に基づく陳腐化検出 — メモリは参照するファイルのハッシュを記録します。コードが変更されると、メモリにフラグが付き、再検証されるまで発動しなくなります(pm stale / pm verify)。

CLI

コマンド機能
pm init.memini/、gitignore、フックを設定します
pm remember <type> <title> [-b body] [--file f...] [--severity warn|block]メモリを記録します
pm recall [query] [--file f] [--digest]メモリを検索します/エージェント用ダイジェストをプレビューします
pm check <path>ガードレールをチェックします(リスクが記録されている場合は終了コード 1)— CI で使用できます
pm list / show / archive / approve <id>メモリを管理します
pm statsメモリの状況を確認します — ガードレールの発動回数、カバレッジ、陳腐化
pm review重複、矛盾、休眠状態のガードレールなど、品質上の問題を検出します
pm stale / pm verify <id>古くなったメモリを検出して再検証します
pm mcpMCP サーバーを実行します(stdio)
pm doctorセットアップを診断します

メモリの種類:decision、failed_attempt、fragile_file、architecture、deployment、client_preference、session_summary。

スコープ:リポジトリ間でのルール共有

プロジェクト固有の教訓もあれば、同じ組織やクライアントに属するマシン上のすべてのリポジトリに適用される教訓もあります。memini には 3 つのスコープがあります。

スコープ保存場所用途
project(デフォルト)<repo>/.memini/このリポジトリで失敗した修正、壊れやすいファイル、決定事項
workspaceリポジトリの親フォルダーにある .memini/そのフォルダー以下のすべてのリポジトリで共有する組織/クライアントの規約
user~/.memini/どこでも適用される個人ルール
cd ~/work/acme && pm init --workspace     # one-time: workspace store covering ~/work/acme/*

# from inside any repo under ~/work/acme:
pm remember deployment "DB connections must use org OAuth, never PATs" \
  --file "databricks.yml" --severity warn --scope workspace

pm promote <id> --workspace               # lift a project lesson that turned out to be org-wide

ワークスペースフォルダー以下のすべてのリポジトリには、後から作成したものも含め、これらのガードレールが自動的に適用されます。解決処理は、.gitconfig や ESLint の設定と同様に、ディレクトリーツリーを上方向にたどります。ワークスペース/ユーザースコープのファイルガードレールは glob で照合されます(vercel.json は任意のリポジトリの vercel.json に一致し、config/**/*.yml も使用できます)。また、より広いスコープのメモリは人間が検証した場合にのみ発動します。エージェントが提案できるメモリはプロジェクトスコープに限られるため、プロンプトインジェクションを受けたエージェントがリポジトリ間に広がるルールを仕込むことはできません。pm doctor では、有効なスコープを確認できます。

設計原則

  • 助言ではなく、強制。 MCP のメモリツールはエージェントが任意で使うものですが、フックは必須です。エージェントがメモリの確認を思いつかなくても、ガードレールは機能します。
  • 人が読めて、PR にできる。 すべてのメモリは .memini/ 以下の Markdown に変換され、チームはほかの変更と同じようにレビューできます。
  • Git に紐づいた証拠。 メモリには、作成時のブランチ、コミット、ファイルのハッシュが記録されるため、主張を検証でき、陳腐化も検出できます。
  • ローカルファースト。 リポジトリ内の SQLite と Markdown を使用します。アカウント、クラウド、テレメトリーはありません。保存前にメモリ本文からシークレットを自動的に伏せ字にします。
  • 複数ツールに対応。 コアは CLI とファイルで構成され、Claude Code のフックと MCP は薄いアダプターとして機能します。

セキュリティ

ローカルファーストを前提に設計されています。サーバーもアカウントもテレメトリーもありません。シークレットは保存前に自動で秘匿化され、ファイル参照はリポジトリ内に限定され、注入されるメモリテキストにはサイズ上限が設けられ、データとして明示されます。率直な制限事項(ガードレールが介入するのは編集ツールであり、任意のシェルコマンドではないこと、warn は注意喚起であり、block はそうではないこと)を含む、完全な脅威モデルについては SECURITY.md をご覧ください。

ステータス

初期段階です(v0.1)。チーム同期(レビューのワークフローを備えた、チーム全体で共有するメモリ)はロードマップに含まれています。フィードバックや問題の報告をお待ちしています。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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