misakanet
失败恢复记忆库:从真实工程会话中搜索和记录失败恢复教训,支持 BM25 + 语义 RAG 检索和知识库管理。
安装
dsh plugin --profile web add misakanet
沙箱测试结果
| 阶段 | 结果 |
|---|---|
| 1 安装 | ✓ |
| 2 列装 | ✓ |
| 3 挂载 | ✓ |
| 4 启动 | — |
四阶段在隔离沙箱里跑:安装(有网)→ 列装 → 挂载 → 启动(后三步断网)。
README
<div align="right">
[English](README.md) | [日本語](README.ja.md) | [简体中文](README.zh-CN.md)
</div>
MisakaNet
mcp-name: io.github.Ikalus1988/misakanet
同一个失败,付两次钱。
一个 pip install 在公司代理后面超时。某个 Agent 读证书链、找到那个开关、修好了。几天后,同一个超时
出现在另一台机器、另一个模型下——它被从头再排查一遍,因为那个修法从没写到下一个 Agent 会去看的地方。
MisakaNet 就是那个地方:一个 git 托管的失败记忆库。每条 lesson 都是本仓库里的 Markdown 文件——
按证据分级、像代码一样审阅、被 Agent 检索而不是被猜。你失败一次,下一个 Agent 不再失败。
Agent 原生接口:MCP 服务器(8 个工具)、WebMCP、llms.txt、
A2A(.well-known/agent-card.json)。本地 stdio server(pip install misakanet)是 11 个——
托管端点是它的子集,两行都写在 [docs/mcp.md](docs/mcp.md)。
<p align="center">
<img src="promotional/misaka-compare.jpg" width="720" alt="MisakaNet — Before: 30+ min manual debugging vs After: 0.02s with MCP"/>
</p>
<p align="center">
<em>Core</em>
<a href="https://github.com/Ikalus1988/MisakaNet/actions/workflows/pr-checks.yml"><img src="https://github.com/Ikalus1988/MisakaNet/actions/workflows/pr-checks.yml/badge.svg" alt="CI"></a>
<a href="https://github.com/Ikalus1988/MisakaNet/tree/main/lessons"><img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Ikalus1988/MisakaNet/data/badges/lessons.json" alt="Lessons"></a>
<a href="https://github.com/Ikalus1988/MisakaNet/blob/main/scripts/mcp_server.py"><img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Ikalus1988/MisakaNet/data/badges/tools.json" alt="MCP Tools"></a>
<a href="https://misakanet.org/api/search-index"><img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Ikalus1988/MisakaNet/data/badges/retrieval.json" alt="Retrieval backend (today)"></a>
<a href="https://github.com/Ikalus1988/MisakaNet/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-Apache--2.0-blueviolet" alt="License"></a>
<a href="https://github.com/Ikalus1988/MisakaNet/stargazers"><img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Ikalus1988/MisakaNet/data/badges/stars.json" alt="Stars"></a>
</p>
<p align="center">
<em>Install</em>
<a href="https://www.python.org/downloads/"><img src="https://img.shields.io/badge/python-3.11+-blue" alt="Python"></a>
<a href="https://pypi.org/project/misakanet/"><img src="https://img.shields.io/pypi/v/misakanet" alt="PyPI"></a>
<a href="https://www.npmjs.com/package/misakanet"><img src="https://img.shields.io/npm/v/misakanet" alt="npm"></a>
<a href="https://github.com/marketplace/actions/misakanet-intake-bot"><img src="https://img.shields.io/badge/Marketplace-MisakaNet%20Intake%20Bot-blue?logo=github" alt="GitHub Marketplace"></a>
</p>
<p align="center">
<em>Ecosystem</em>
<a href="https://glama.ai/mcp/connectors/org.misakanet/misaka-net"><img src="https://glama.ai/mcp/connectors/org.misakanet/misaka-net/badges/score.svg" alt="MisakaNet MCP connector on Glama"></a>
<a href="https://mcptoplist.com/server/io.github.Ikalus1988%2Fmisakanet"><img src="https://img.shields.io/badge/MCP-Toplist-blue" alt="MCP Toplist"></a>
<a href="https://dshfind.com/en/plugins/Ikalus1988/MisakaNet?ref=badge"><img src="https://dshfind.com/api/badge/Ikalus1988/MisakaNet?metric=downloads&lang=zh" alt="DSH 插件下载量(dshfind)"></a>
</p>
安装(30 秒)
安装的目标是一次成功的检索,不是"装完"。下面每一种都不需要账号或 token。
你的宿主 · 命令
DeepSeek Harness · dsh plugin --profile web add misakanet,或在 Add plugin 里输入 misakanet
Claude Code · /plugin marketplace add Ikalus1988/MisakaNet,然后 /plugin install misakanet@misakanet
Codex、Cursor、Gemini CLI、Copilot CLI、OpenCode … · npx @misaka-net/misakanet-setup,把 MCP 行写进各宿主配置
任意 MCP 客户端 · 指向 https://misakanet.org/mcp——公开端点,匿名可读
自己的代码 · pip install misakanet-core(库)· pip install misakanet(stdio server)
更新:dsh plugin --profile web update misakanet@latest · npx @misaka-net/misakanet-setup@latest。
前置条件与"两个包"的坑:[怎么用](#怎么用)。
头五分钟
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. 读返回的东西。 命中会返回 lesson、它的 evidence_level 和路径——先打开文件读完,再决定要不要执行
里面的命令。未命中返回 no_match 加一条可直接调用的 intake:那是语料在说"它还不认识这个失败"。
3. 看信任信号,不看语气。 E0–E3 表示验证到哪一步;E4 是唯一既不能自写、也不能靠投票拿到的等级。
**8 个 misakanet_* 工具** 都列在 AGENTS.md §3.2,其中 6 个匿名可用(write_lesson / preflight 需要 token)。
MisakaNet 是什么?
给 AI 编码 Agent 用的 git 托管失败记忆库。 报错出现 → Agent 检索 → 应用别人验证过的修法 →
没有命中就留下 intake,最终变成下一位 Agent 的 lesson。
每条 lesson 都是 Markdown 文件:像代码一样审、按证据分级、用纯 Python 标准库的 BM25 检索。
没有向量库、没有 embedding 模型、不想要服务也可以不起服务。
课程 · 失败修复知识库,公开可审计,位于 lessons/
接口 · Streamable HTTP,8 个工具,端点 https://misakanet.org/mcp;匿名可读,注册只为写入
领域 · rag · devops · fanuc · docker · feishu · mcp · network · ci · wsl · windows …
证据 · E0 intake → E1 已复核 → E2 已复现 → E3 CI 验证 → E4 被两个以上不同客户端真实复用
它不是 · 它是
❌ 通用记忆系统 · ✅ 失败修复知识层
❌ Agent 运行时 · ✅ 可检索的 lesson 数据库
❌ 向量数据库 / RAG 栈 · ✅ BM25 关键词检索,纯标准库(仍需 Python ≥ 3.11)
❌ 技能市场 · ✅ 来自真实会话的排错知识
❌ 通用基准平台 · ✅ 按证据分级语料;公开了 267 条检索评测,旧的复述基准已暂停
它能回答什么、不能回答什么
MisakaNet 只回答它已经索引过的失败。没有命中时,返回的是 no_match 加一条可直接调用的 intake——
那是语料在说"这个还没收录",不是死路。
Lesson 和 Skill 有什么区别?
Skill 教 Agent 怎么做某事;Lesson 记录曾经哪里错了、以及怎么不再错。MisakaNet 只做后者。
→ [FAQ](FAQ.md)
今天的它在哪里
- 会动的数字是徽章:Lessons 徽章读
data/badges/lessons.json,由update-badges.yml重新生成——
可能落后一次运行,但永远不会是手写总数。
- 证据阶梯的顶端是空的,这页如实写着:
E4需要观测(两个不同客户端真的检索到同一篇),语料目前
一个都没有([分布](docs/trust-semantics.md),由 CI 重新生成并校验)。
- **检索是 BM25,匹配词不匹配
…(truncated)
以上内容来自 npm 上的 README,我们只做格式化,不改内容。
版本
npm 上共发布:40,最后更新 2026-11-02