GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
作者提供的说明(英文原文)
Failure-memory layer for coding agents: search evidence-rated failure lessons by error text.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"misakanet": {
"command": "uvx",
"args": [
"misakanet"
]
}
}
}在终端中运行这条命令
claude mcp add misakanet -- uvx misakanet粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"misakanet": {
"command": "uvx",
"args": [
"misakanet"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"misakanet": {
"type": "stdio",
"command": "uvx",
"args": [
"misakanet"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月9日
注册名称已通过 GitHub 账户 Ikalus1988 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(3.6.0)于今天进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
同一分类中有:GitHub, Desktop Commander, Cloudflare MCP
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
MCP server for terminal commands, file operations, and process management
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
English | 日本語 | 简体中文
mcp-name: io.github.Ikalus1988/misakanet
The same failure, paid for twice.
A
pip installtimes out behind a corporate proxy. An agent finds the fix. Days later the same
timeout appears on another machine, under another model — and is debugged from scratch, because the
fix was never written down anywhere the next agent looks.
MisakaNet is that place: a git-backed failure memory. Every lesson is a Markdown file in this
repository — graded by evidence, reviewed like code, retrieved by an agent instead of guessed at.
You fail once; the next agent does not.
Agent-native interfaces: MCP server (8 tools), WebMCP, llms.txt, A2A discovery via .well-known/agent-card.json. The local stdio server (pip install misakanet) ships 11 — the hosted endpoint is a subset; docs/mcp.md has both rows.
Core
Install
Ecosystem
The point of an install is a first successful search, not the install. None of these needs an account or a token.
| Your host | Command |
|---|---|
| DeepSeek Harness | dsh plugin --profile web add misakanet — or type misakanet in Add plugin |
| Claude Code | /plugin marketplace add Ikalus1988/MisakaNet then /plugin install misakanet@misakanet |
| Cindy | install the MisakaNet plugin (id misakanet) from Cindy's plugin list |
| Installer-managed | Claude Code · Codex · Hermes · OpenClaw · codewhale · Cursor · Gemini CLI · Copilot CLI · OpenCode · Kiro · MiniMax Code · DeepSeek Harness · Cindy |
| Any other MCP client | point it at https://misakanet.org/mcp — public endpoint, anonymous reads |
| Your own code | pip install misakanet-core (library) · pip install misakanet (stdio server) |
The installer-managed row is what npx @misaka-net/misakanet-setup writes into each host's config. For DeepSeek Harness that is the rules half only ($DSH_HOME/AGENTS.md): its tools come from the plugin in the row above, which the installer prints as the one manual step.
Updates: dsh plugin --profile web update misakanet@latest. Installer updates: npx @misaka-net/misakanet-setup@latest. Full prerequisites and the two-package trap: How to use it.
1. Ask it something you have actually broken. No client installed? This curl is the whole interface:
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. Read what came back. A hit returns the lesson, its evidence_level, and its path — open the file and read the fix before running any command in it. A miss returns no_match plus a ready-to-call intake: the corpus saying it does not know this one yet.
3. Check the trust signal, not the tone. E0–E3 say how far a lesson was verified; E4 is the one nobody can write or vote into.
Git-backed failure memory for AI coding agents. An error shows up → the agent searches → it applies a fix somebody already verified → if nothing matches, the miss becomes an intake, and the intake becomes a lesson for the next agent.
Every lesson is a Markdown file: reviewed like code, graded by evidence, retrieved with BM25 over the Python standard library. The hosted MCP endpoint adds an optional semantic fallback (bge-m3 + Vectorize) only when BM25 returns no match; MISAKANET_SEMANTIC=0 disables it. No vector database is required locally, and no server unless you want one.
| Lessons | failure-recovery knowledge base, open and auditable under lessons/ |
| Domains | rag · devops · fanuc · docker · feishu · mcp · network · ci · wsl · windows … |
| Evidence | E0 intake → E1 reviewed → E2 reproduced → E3 CI verified → E4 observed reuse by two or more distinct clients |
| It is not | It is |
|---|---|
| ❌ a general memory system | ✅ a failure-recovery knowledge layer |
| ❌ an agent runtime | ✅ a searchable lesson database |
| ❌ a mandatory vector database / RAG stack | ✅ BM25 first; optional, disable-able semantic fallback on the hosted endpoint |
| ❌ a skill marketplace | ✅ debugging knowledge from real sessions |
| ❌ a general-purpose benchmark platform | ✅ a corpus graded by evidence; a 267-query retrieval run is published, and the older recitation benchmark is paused |
MisakaNet answers for the failures it has indexed, and only those. When nothing matches the reply is no_match plus a ready-to-call intake — the corpus saying "not this one yet", not a dead end.
A skill teaches an agent how to do something; a lesson records what went wrong before and how not to fail again. MisakaNet is only the second thing. → FAQ
data/badges/lessons.json, regenerated by update-badges.yml, so it can lag a run but is never a hand-typed total.E4 needs an observation — two distinct clients actually retrieving a lesson — and the corpus has none yet (distribution, regenerated and checked by CI).MISAKANET_SEMANTIC=0 turns it off. A corpus gap is still a miss: the reply is no_match plus an intake, not an empty page.data.misakanet.org publishes a versioned bundle — the full corpus, the benchmark query set, and every run artifact — with a per-file SHA-256 and an explicit license per file (DATASET.md). The counts live in each version's manifest.json, not in prose.On 2026-10-27 the hosted endpoint's retrieval path was evaluated on 267 queries, one per lesson generated by Workers AI 70B. Both arms used the same eval worker and corpus; only MISAKANET_SEMANTIC changed.
| arm | R@1 | R@5 | no_match |
|---|---|---|---|
| BM25 | 0.210 | 0.225 | 0.712 |
| semantic fallback | 0.446 | 0.472 | 0.453 |
The fallback improves R@1 by 23.6 points and cuts no_match by 25.9 points. It does not meet the R@1 half of the target (0.446 < 0.46); no_match is within the target (0.453 ≤ 0.50). A 113-query subset reaches 0.460/0.460, while 250 reaches 0.404/0.504: the sample is large enough to show the fallback works, not large enough to call R@1 solved.
This is 267 queries from the 300-entry pool, not the full 650; 33 pool entries yielded no query, 2 semantic requests errored, and the eval corpus was not refreshed. → full report
The table above measures a configuration production no longer uses. Until 2026-10-28 the semantic path ran only when BM25 returned nothing, so a confident-but-wrong lexical hit suppressed it — 13 of the 20 recorded misses were exactly that. For queries containing CJK characters the two ranked lists are now fused (reciprocal-rank) instead of one gating the other.
Measured on the live endpoint, 64 Chinese queries, 0 transport failures:
| bucket | n | before | after |
|---|---|---|---|
| zh → zh | 31 | 0.710 | 0.774 |
| zh → en | 33 | 0.455 | 0.697 |
| zh → en, low overlap | 14 | 0.214 | 0.500 |
For scale: bge-m3 pure cosine already reached 0.636 on the cross-lingual bucket, and a gemini embedding 0.727 — so most of the gap was the decision to consult the vector path, not the model. English queries are untouched (the fuse is gated on CJK characters) and sit at 15/20 against a floor of 16, which is where they were before this change. → full report
One narrow question: when you hand a model a lesson, how much of that lesson comes back? The metric is lesson_hit_rate — the share of the injected lesson's commands reproduced in the answer. Read the setup before the number: the scenario in this benchmark is each lesson's own title, the injected lesson is *that same lesson*, no retrieval call is made, and correctness is not checked. It measures the recitation half of RAG: necessary for MisakaNet to help, and not evidence that search finds anything.
The run is paused. Two independent runs of ≈500 scenarios each on 2026-09-22: 46.1% with the lesson pasted in, 23.3% without. What remains is t
只显示了开头部分;其余内容请在仓库中阅读