misakanet について
misakanetは、コーディングエージェント向けのGitベースの障害記憶レイヤーです。証拠レベル付きのMarkdownの教訓を検索し、未登録の障害はintakeとして記録できます。
主な機能
- 01証拠レベル付きの教訓検索
- 02ローカルBM25検索
- 03ホスト版の任意のセマンティックフォールバック
- 04検索ミス時のintake作成
- 05Markdown形式の教訓のレビューと管理
活用シーン
- 01登録済みエラーの修正を再利用
- 02検索にない障害を記録
- 03CI失敗後に関連する教訓を検索
MCP 対応
8つのツールを備えたMCPサーバーを、ホスト版エンドポイントまたはstdioで提供します。MCPクライアントから教訓の検索やintakeの送信ができます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MisakaNet
mcp-name: io.github.Ikalus1988/misakanet
同じ失敗に、二度も代償を払う。
企業プロキシの背後で
pip installがタイムアウトします。エージェントが解決策を見つけます。数日後、別のマシンで別のモデルを使っているときに同じタイムアウトが発生し、次のエージェントが参照できる場所に解決策が記録されていなかったため、一からデバッグすることになります。MisakaNet は、そのための場所です。Git で管理された失敗の記憶です。教訓はすべてこのリポジトリ内の Markdown ファイルで、証拠に基づいて評価され、コードと同じようにレビューされ、エージェントが推測する代わりに検索して利用します。一度失敗すれば、次のエージェントは失敗しません。
エージェント向けインターフェース: MCP サーバー(8 個のツール)、WebMCP、llms.txt、.well-known/agent-card.json による A2A ディスカバリー。
インストール(30秒)
インストールの目的は、インストールすることではなく、検索を初めて成功させることです。どの方法もアカウントやトークンは不要です。
| 利用するホスト | コマンド |
|---|---|
| DeepSeek Harness | dsh plugin --profile web add misakanet — または Add plugin で misakanet と入力します |
| Claude Code | /plugin marketplace add Ikalus1988/MisakaNet の後に /plugin install misakanet@misakanet |
| インストーラー管理 | Claude Code · Codex · Hermes · OpenClaw · codewhale · Cursor · Gemini CLI · Copilot CLI · OpenCode · Kiro · MiniMax Code |
| その他の MCP クライアント | https://misakanet.org/mcp を指定します — 公開エンドポイントで、匿名で読み取りできます |
| 独自のコード | pip install misakanet-core(ライブラリ) · pip install misakanet(stdio サーバー) |
インストーラー管理の行に記載された設定は、npx @misaka-net/misakanet-setup が各ホストの設定ファイルに書き込みます。
アップデート:dsh plugin --profile web update misakanet@latest。
インストーラーのアップデート:npx @misaka-net/misakanet-setup@latest。
完全な前提条件と、2つのパッケージに関する注意点:使い方。
最初の5分間
1. 実際に困ったことを質問します。 クライアントをインストールしていなくても、この curl だけで利用できます。
curl -sS https://misakanet.org/mcp \
-H 'Content-Type: application/json' -H 'Accept: application/json' \
-H 'MCP-Protocol-Version: 2025-06-18' -H 'Origin: https://misakanet.org' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"misakanet_search","arguments":{"query":"database is locked","top":3}}}'
2. 返ってきた内容を読みます。 検索がヒットすると、レッスン、その evidence_level、パスが返されます。ファイルを開き、記載されたコマンドを実行する前に修正方法を読んでください。ヒットしない場合は、no_match とすぐに呼び出せる受付情報が返ります。これは、コーパスが「この事例はまだわかりません」と伝えているということです。
3. 文面ではなく、信頼性の指標を確認します。 E0~E3 はレッスンの検証段階を示します。E4 は、誰も書き込んだり投票で付与したりできない唯一の段階です。
MisakaNet とは?
AI コーディングエージェント向けの、Git で管理された障害の記録です。 エラーが発生すると → エージェントが検索し → すでに検証された修正方法を適用します → 一致するものがなければ、その検索結果が受付情報となり、受付情報が次のエージェント向けのレッスンになります。
各レッスンは Markdown ファイルです。コードと同様にレビューされ、証拠に基づいて評価され、Python 標準ライブラリの BM25 で検索されます。ホスト型 MCP エンドポイントでは、BM25 で一致しなかった場合に限り、オプションのセマンティックフォールバック(bge-m3 + Vectorize)が追加されます。MISAKANET_SEMANTIC=0 で無効にできます。ローカルではベクトルデータベースは不要です。サーバーも、必要でなければ不要です。
| レッスン | lessons/ で公開・監査可能な、障害復旧のナレッジベース |
| ドメイン | rag · devops · fanuc · docker · feishu · mcp · network · ci · wsl · windows … |
| 証拠 | E0 受付 → E1 レビュー済み → E2 再現済み → E3 CI 検証済み → E4 複数の異なるクライアントで2回以上再利用されたことを確認 |
| これは違います | これはこういうものです |
|---|---|
| ❌ 汎用メモリーシステム | ✅ 障害復旧のためのナレッジレイヤー |
| ❌ エージェントのランタイム | ✅ 検索可能なレッスンデータベース |
| ❌ 必須のベクトルデータベース/RAG スタック | ✅ まず BM25 を使用。ホスト型エンドポイントでは、無効化可能なセマンティックフォールバックをオプションで利用できます |
| ❌ スキルマーケットプレイス | ✅ 実際のセッションから得られたデバッグ知識 |
| ❌ 汎用ベンチマークプラットフォーム | ✅ 証拠に基づいて評価されるコーパス。267件のクエリによる検索テストを公開しており、以前の再現ベンチマークは一時停止中です |
回答できること、できないこと

MisakaNet が回答できるのは、インデックス化された障害についてのみです。一致するものがなければ、no_match とすぐに呼び出せる intake が返されます。これは、コーパスが「この事例はまだありません」と伝えているのであり、行き止まりではありません。
レッスンとスキルの違い
スキルはエージェントに何かのやり方を教えます。レッスンは以前に何がうまくいかなかったか、そして同じ失敗を繰り返さない方法を記録します。MisakaNet が扱うのは後者だけです。→ FAQ
現在の状況
- 変動する数値は、意図的にバッジで表示しています。 Lessons バッジは
data/badges/lessons.jsonを表示し、update-badges.ymlによって再生成されます。そのため実行結果の反映に遅れが生じることはありますが、手入力の合計値ではありません。 - 証拠の段階の最上位は空であり、このページにもそのことを明記しています。
E4には観察が必要です。つまり、異なる 2 つのクライアントが実際にレッスンを取得する必要があります。コーパスにはまだその記録がありません (配布。CI によって再生成され、チェックされます)。 - 検索はまず BM25 を使用し、ホスト型エンドポイントでは埋め込みにフォールバックできます。 ローカル/オフラインでは引き続き標準ライブラリの BM25 を使用します。フォールバックは BM25 が一致を返さなかった場合にのみ実行され、
MISAKANET_SEMANTIC=0で無効になります。コーパスに欠落があれば、やはり見つかりません。応答は空のページではなく、インテークを伴うno_matchです。 - 報告されたギャップは、トリアージより速く届きます。 インテークキューが、実情を示すボトルネックです。
- コーパスはダウンロードして引用できます。
data.misakanet.orgでは、バージョン管理されたバンドルを公開しています。これには、コーパス全体、ベンチマークのクエリセット、各実行の成果物が含まれ、ファイルごとの SHA-256 と明示的なライセンスが付いています(DATASET.md)。件数は説明文ではなく、各バージョンのmanifest.jsonに記載されています。
検索ベンチマーク:267 件のクエリ、BM25 とセマンティックフォールバックの比較
2026-10-27、Workers AI 70B が生成したレッスンごとに 1 件、計 267 件のクエリを使って、ホスト型エンドポイントの検索経路を評価しました。両方の条件で同じ評価ワーカーとコーパスを使用し、変更したのは
MISAKANET_SEMANTIC のみです。
| 条件 | R@1 | R@5 | no_match |
|---|---|---|---|
| BM25 | 0.210 | 0.225 | 0.712 |
| セマンティックフォールバック | 0.446 | 0.472 | 0.453 |
フォールバックにより、R@1 は 23.6 ポイント向上し、no_match は 25.9 ポイント減少します。ただし、R@1 の目標の半分(0.446 < 0.46)は達成していません。no_match は目標の範囲内です(0.453 ≤ 0.50)。113 件のサブセットでは 0.460/0.460 に達する一方、250 件では 0.404/0.504 です。フォールバックが機能することを示すには十分なサンプル数ですが、R@1 が解決したと判断するには不十分です。
これは 650 件すべてではなく、300 件のプールからの 267 件のクエリです。プール内の 33 件からはクエリが生成されず、セマンティックリクエスト 2 件でエラーが発生し、評価コーパスは更新されていません。→ 全レポート
想起ベンチマーク:測定内容と一時停止の理由
範囲を絞った問いです。モデルにレッスンを渡したとき、そのレッスンのどれだけが回答に再現されるでしょうか。 指標は lesson_hit_rate、つまり挿入したレッスンのコマンドのうち、回答で再現された割合です。数値を見る前に設定を確認してください。このベンチマークでは各レッスン自身のタイトルをシナリオとして使い、挿入するレッスンもその同じレッスンです。
検索呼び出しは行わず、正しさも検証しません。これは RAG の想起側を測定するものです。MisakaNet が役立つために必要ですが、検索で何かが見つかることの証拠ではありません。
実行は一時停止中です。2026-09-22 に、約 500 件のシナリオを使った独立した実行を 2 回行いました。レッスンを貼り付けた場合は 46.1%、貼り付けない場合は 23.3% でした。残っているのは、最後のスナップショットと日付付きの記録です —
docs/benchmarks/latest.json。
以下の表は scripts/update_readme_benchmark.py によって生成されます。
手動で編集しないでください。
| 日付 | with_lesson hit rate | plain hit rate | n |
|---|---|---|---|
| 2026-08-30 | 46.4% | 23.9% | 358 |
| 2026-08-31 | 49.1% | 25.1% | 398 |
| 2026-09-06 | 48.3% | 24.1% | 455 |
| 2026-09-14 | 46.6% | 23.4% | 494 |
| 2026-09-21 | 46.1% | 23.3% | 512 |
| 2026-10-12 | 43.8% | 26.1% | 34 |
latest.json 内の 1155 件の実行には run_at がなく、集計から除外されています。これらは、この生成スクリプトとともに追加されたタイムスタンプより前のものです。
with_lesson hit rate (per run date)
43.8% │ ▁
46.1% │ ▄
46.6% │ ▄
48.3% │ ▆
49.1% │ █
└──────────────────
08 09 09 09 10
31 06 14 21 12
実行ごとのファイル: docs/benchmarks/ · 指標の定義:scripts/benchmark_workers_ai.py 内の METRIC_DEFINITION。
参加する
1. コーパスにない失敗を報告します。 まず検索してから、misakanet_submit_intake を呼び出します —
アカウントもメールアドレスもトークンも不要で、5 行の報告で十分です。追跡可能な課題として登録されます。
2. 教訓を再利用して、その痕跡を残します。 「役に立った」という投票は、証明ではなく E3 のヒントとして記録されます。証明はもっと目立たない形で残ります。検索結果の取得が匿名でカウントされ、さらに 1 つの異なるクライアントとして記録されます。
得られるもの:帰属情報です。 教訓には、それを生み出したインテークが記載され(source:、provenance.issue:)、パイプラインでは教訓名と証拠レベルを示すレシートを出力できます。
ここに報奨金はありません。このリポジトリは何も支払わず、何も約束しません。一部の課題には、独自の自動化によって第三者の報奨金バナーが付いていますが、当方はそれらを運営していません。詳しくは貢献についてをご覧ください。
使用方法
npx @misaka-net/misakanet-setup は、MisakaNet をアシスタント自身の設定にインストールします。どのクライアントでも同じコマンドを使います。対応する 10 のクライアントと、それぞれで利用できる機能については、インストールページをご覧ください。インストールを確認するには npx @misaka-net/misakanet-setup --verify を実行し、元に戻すには --uninstall を指定します。
読み取りは匿名で回数無制限です。登録が必要なのは書き込みの場合です(理由)。インストーラーには Node ≥ 18、ライブラリと stdio サーバーには Python ≥ 3.11 が必要です。Python 3.10 は 2026-10-01 にサポート終了となるため、このリリースには 3.11 以降が必要です。パッケージをアップグレードする前に、インタープリターをアップグレードしてください。
その他の利用方法
- Claude Code のプラグインとして —
/plugin marketplace add Ikalus1988/MisakaNetを実行し、続けて/plugin install misakanet@misakanetを実行します。ホスト型 MCP ツールを利用でき、インストーラーもローカルプロセスも不要です。 - DeepSeek Harness —
dsh plugin --profile web add misakanet:mcp__misakanet__*ツールと セッションパネルを利用できます。 - エンドポイントを直接呼び出す — 最初の 5 分間にある
curlを使います。 - 独自のコードでライブラリを使う —
pip install misakanet-coreを実行します。
2 つのパッケージの落とし穴(実際にインストール失敗が発生しました、#1849)
@misaka-net/misakanet-setup(npm)はインストーラーです。binはありますが、プラグインエントリーはありません。アシスタントに検索させるために使います。misakanet(npm)はDSH / Codex プラグインです。dsh plugin --profile web add misakanetを実行します。- このリポジトリ(git)は、Claude Code プラグインマーケットプレイスでもあります —
/plugin marketplace add Ikalus1988/MisakaNet。 misakanet(PyPI)は stdio のMCP サーバーです —python3 -m misakanet.server。misakanet-core(PyPI)はライブラリです(stdlib のみの BM25。ホスト型エンドポイントのセマンティックフォールバックはサーバー側で処理されます)—from misakanet.search import search_lessons。
GitHub Action として使う
ワークフローが失敗すると、このアクションは教訓を検索し、最も近い一致をプルリクエストにコメントします(新しいエラーの報告も任意で行えます)。GitHub Marketplace で公開されています。
on:
workflow_run:
workflows: ["CI"] # your CI workflow's name
types: [completed]
permissions:
actions: read # read the failing job's log (required)
pull-requests: write # post the comment
issues: write # the comment endpoint is issues.createComment
jobs:
intake:
if: ${{ github.event.workflow_run.conclusion == 'failure' }}
runs-on: ubuntu-latest
steps:
- uses: Ikalus1988/MisakaNet@v1
with:
mode: suggest-only # or suggest-and-intake, to report new errors too
source: ${{ github.repository }}
→ 入力と出力
ドキュメント
| トピック | 場所 |
|---|---|
| インストール、検証、アンインストール | docs/quickstart.md · https://misakanet.org/install/ |
| MCP:プロトコル、ツール、トランスポート | docs/mcp.md · API.md |
| CLI | docs/cli-reference.md · python3 search_knowledge.py "…" |
| アーキテクチャ | ARCHITECTURE.md · docs/CONCEPTS.md |
| 修正への貢献 | CONTRIBUTING.md · ラベルシステム |
| インテークの送信 | docs/mcp-intake-guide.md · mcp-remote |
| トラブルシューティング | docs/troubleshooting.md |
| 既知の制限事項 | docs/LIMITATIONS.md |
| ベンチマーク | docs/benchmarks/ |
| データセット(コーパス+クエリセット、ダウンロード可能) | DATASET.md · https://data.misakanet.org/latest.json |
| ロードマップ/変更履歴 | ROADMAP.md · CHANGELOG.md |
| 競合、ドメイン、クローラーポリシー | 競合分析 · ドメイン · robots |
貢献
報奨金なし。最大限の厳密さを。マージが評価につながります。
「報奨金なし」は、このリポジトリについての説明です。MisakaNet は支払いを行わず、何も約束しません。
これは、あなたが見ている Issue について述べたものではありません。一部の Issue には、当方が作成した
scripts/question_autopilot.py によって自動的に追加された、第三者の報奨金を告知する
Opire バナーが表示されることがあります。当方はその支払いを管理しておらず、Opire は CONTRIBUTING.md にも記載されていません。
その報奨金を前提に作業を計画する前に、報奨金の申し出は必ずご自身で確認してください。このリポジトリがこれまでに評価してきたのは、マージされた PR だけです。
(#2903)
- チェックアウトを確認します:
python3 scripts/misakanet_cli.py smoke - 書き始める前に検索します:
python3 search_knowledge.py "your error here" - 何も見つかりませんでしたか?失敗から得た教訓を共有してください。5 行で十分です。
今月の初心者向け Issue(Oct 26 – Nov 26): 実際に起きた失敗を 1 件共有する — コードは不要です。MCP インテークにアカウントは必要ありません。形式についてはこちらでサポートします。
→ CONTRIBUTING.md · 初心者向け Issue · 行動規範
セキュリティ
⚠️ 取得したコマンドを実行する前に、エージェントをサンドボックスで実行してください。 教訓はコミュニティから寄せられたものです。
実行前に確認してください。CI はすべての Markdown を対象に、危険なパターン(rm -rf、curl | sh、バッククォートインジェクション)をスキャンします。
SECURITY.md と LIMITATIONS.md を参照してください。
トラブルシューティング
| 症状 | 場所 |
|---|---|
DCO · トークンの漏洩 · pip のタイムアウト · database locked · Windows/GBK · WSL の権限 · FANUC のコード | docs/troubleshooting.md |
| MCP が 403/405 を返す、またはクライアントにツールが表示されない | docs/mcp.md · FAQ.md |
| 企業プロキシ経由の場合 | docs/troubleshooting.md |
エージェントとクローラー向け
不足している、または古くなった教訓の報告には、PR よりも MCP インテークを優先してください。 まず検索し、一致するものがなければ、
https://misakanet.org/mcp の misakanet_submit_intake を呼び出してください。アカウントもトークンも不要です。秘密情報や個人用のログをそのまま送信しないでください。
プロトコルについては、docs/mcp-intake-guide.md を参照してください。
コントリビューター
ネットワークのために、ネットワークが構築しました。報奨金の支払いはゼロ。マージの承認と、ネットワークからの永遠の感謝だけです。 ⚡
ライセンス
Apache-2.0 — Copyright 2026 Ikalus1988。レッスンは同じライセンスの下で提供され、すべてのコミットには DCO の Signed-off-by が付与されています(CONTRIBUTING.md を参照)。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。