
Semahash
io.github.emergent-wisdom由 GitHub 账号 emergent-wisdom 发布v0.10.0更新于 Oct 25, 2026
Content-addressed semantics: fail-closed handshakes over 617 cognitive patterns.
概览
本地 MCP 服务器,提供 Sema 的内容寻址认知模式词表,让助手搜索、解析、铸造模式并在共享概念上做握手校验。
- 可以做什么
- 搜索、查找和解析内容寻址模式,可展开依赖,并通过分层分类树、词表统计和极简图概览浏览词表,也可校验模式 JSON。铸造新模式:校验、计算哈希并加入词表;计算或验证上下文摘要,用于多智能体定义集的漂移检测。在智能体之间执行失败即停的握手,支持协作式前缀匹配和严格全哈希校验,不匹配即中止。查找、验证、安装、发布 semahash.org 上的词表库并登录,以及清空会话缓存以恢复完整搜索结果。
- 适用场景
- 适合多个智能体或人员需要共享一套可哈希验证的协作、推理与信任模式词表,并在依赖某个概念前确认双方理解一致的场景。也适合构建或分发自有私有模式库的团队。
- 运行要求
- 作为本地 stdio 进程运行,通过 uvx 从 semahash 的 PyPI 包启动(或用 pip 安装),机器上需要 uv 或 Python。内置词表无需 API 密钥。从 semahash.org 安装或发布需要网络访问,发布还需要 semahash.org 账户及在个人资料页创建的密钥。
安装
在 SourceWeft 中
- 打开 控制台中的 Semahash,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
[Sema — When the hash is the word]
Sema: When the Hash Is the Word
Content-addressed semantics for multi-agent coordination.
[PyPI] [MCP Registry] [Paper] [DOI] [Code: MIT] [Content: CC BY 4.0]
Sema is a content-addressed reference system for reasoning and communication. Participants encode and hash information under an agreed representation, then reuse the content address as a verifiable reference, optionally paired with a human-readable handle. Matching full references establishes identity of the resolved hashed content; semantic equivalence, correctness, and enforcement remain separate questions.
Web: semahash.org · Discord: Join
Install
MCP Server (recommended)
Add to any MCP client (Claude Code, Cursor, VS Code, Windsurf, Claude Desktop):
Or via Claude Code CLI:
This uses uv to download, install, and run sema in an isolated environment on first invocation, then caches it for subsequent calls.
Claude Code plugin (MCP server + skill)
Sema also ships as a Claude Code plugin — MCP server plus a skill that teaches the agent the search/resolve/mint/handshake workflow:
This gives you the MCP server and the sema-usage skill (auto-loaded), which teaches when to search vs mint, how to embed handles in text, and how to verify meaning at boundaries. The skill is a Claude Code convenience — the MCP server works with any client.
For local development:
Permanent install (pip)
For CLI-only use (no MCP server):
Quick Start
Use with AI Agents (MCP)
Already covered above via the JSON config or pip install path. For development against this repo:
Your agent now has access to sema_search, sema_lookup, sema_handshake, and 9 more tools. Any MCP-compatible client works — Sema exposes a standard stdio server.
Verify it works — ask your agent: "Search sema for coordination patterns and handshake on StateLock"
Sema exposes a standard MCP stdio server — any MCP-compatible client works, including OpenClaw (openclaw mcp set sema '{"command":"uvx","args":["--from","semahash[mcp]","sema","mcp"]}').
Use via CLI
Bring Your Own Vocabulary
Build a private registry from scratch — no PR or maintainer in the loop:
Subsequent sema commands (including sema mcp) read from your private
registry. (SEMA_DB_PATH, if set, overrides sema use.) See
CONTRIBUTING.md for the canonical
contribution path and docs/specification/versioning.md for the
refinement and supersession policy.
Package a project database as a verified, standalone library release:
Publish the generated library.json and versioned ZIP as assets on the
corresponding published GitHub Release. Consumers install the Release asset URL
for library.json—not the repository URL or a branch:
It installs one verified snapshot at a time rather than merging vocabularies;
the bundled vocabulary remains the offline default. Use sema update mylib to
follow the installed library's recorded release pointer. See
Publishing and Installing Vocabulary Libraries for
the complete DeFi authoring, dependency-closure, packaging, GitHub Release, and
update workflow.
Libraries published on semahash.org can be found and installed by name, without an account:
To list a release there so other people and agents can find it, log in once and publish from the command line:
An agent can log in with a key that you create on your semahash.org profile
page instead: it pipes the key to sema login --key - or calls the
sema_library_login MCP tool.
The login follows the OAuth 2.0 device authorization flow, so it also works
from an agent or a machine without a browser. To use another deployment, run
sema login --registry https://registry.example. A successful login remembers
that registry for subsequent commands. --registry and SEMA_REGISTRY_URL
override the remembered choice; https://semahash.org is the first-use default.
Use in Python
Try the Protocol (No API Keys Needed)
See the handshake in action: matching hashes PROCEED, mismatched hashes HALT, and unknown patterns HALT. Cooperative mode accepts short prefixes for drift detection; strict mode requires the full hash. Takes 2 seconds.
How It Works
Take any concept (a coordination protocol, a reasoning pattern, a trust mechanism), express it in canonical form, hash it. That hash IS the word. Change one byte in the definition, get a different word.
This is the Anti-Postel principle: strict mode proceeds only on full-hash identity; cooperative mode uses compact prefixes as a non-adversarial drift signal. Mismatches fail closed in both modes.
The Vocabulary
The bundled vocabulary spans 4 layers:
- Physics — Immutable substrate (locks, entropy, causality)
- Mind — Hybrid cognition (reasoning, inference, strategy)
- Society — Multi-agent coordination (economics, governance, protocols)
- Infrastructure — Operational constraints (data structures, verification)
Each pattern is a content-addressed behavioral definition. Concrete cards may add machine-verifiable contracts, invariants, failure modes, parameters, and typed dependencies where those fields are identity-defining.
MCP Tools
When running as an MCP server (sema mcp), these tools are available:
Local View
The local view shows the vocabulary selected with sema use, the same one a
connected agent writes to. It follows later switches, and its 3D graph grows
while the agent mints: new patterns light up and appear in a live list. The
pattern browser has card, list, and JSON views. Development stays on your
computer; semahash.org hosts finished libraries, and a
writable vocabulary's page lists the optional steps to publish one there.
Experiments
The experiments/ directory contains reproducible evaluations of Sema's
claims and implementation boundaries.
Delta reconstruction
The public v0.3.0 to v0.4.0 reconstruction experiment checks whether the
current graph and hash-cascade algorithm can rebuild a target vocabulary from
an earlier release. It compares both aggregate roots, semantic pattern content,
the logical dependency graph, unhashed metadata, and the complete normalized
read model rather than treating root equality as complete release equality.
It also demonstrates the safe reconstruction path: integrate the delta into a
complete staged card snapshot, compile a fresh database, verify the result, and
only then activate it.
The experiment and its expected results are documented in
experiments/delta_reconstruction/README.md.
Small synthetic versions of its addition, removal, rename, cascade, metadata,
and failure cases run in the regular test suite.
Multi-agent design challenge
The controlled multi-agent design challenge compares three conditions:
Agents with Sema patterns produced physics-grounded designs that survived adversarial scrutiny. Agents without Sema produced shallow designs that failed safety review.
To reproduce:
See experiments/sema_design_challenge/README.md for details.
Key Properties
- Zero semantic collisions across the full vocabulary
- 16.9x average token compression via content-addressed stubs
- Fail-closed architecture — mismatches halt, never fail silently
- Mean embedding similarity of 0.21 — high structural distinctness
Formal-verification pilot
Sema's handshake decision kernel and canonicalization type tags have a small
Lean 4 proof suite. The handshake supports cooperative prefix matching for
ordinary drift detection and strict full-hash verification for proof-grade
identity; the proofs state each guarantee separately. The encoding proof
establishes pre-hash domain separation, while Python conformance tests connect
the models to production. See
verification/README.md for the proven theorems,
trusted-computing-base assumptions, and explicit limits of the claim.
Using with understanding-graph
Sema gives your agents shared semantic memory — a vocabulary of cognitive patterns with content-addressed identity. Understanding Graph gives them shared episodic memory — the actual thinking trail behind a decision. They compose:
With both installed, an agent can:
- Anchor an understanding-graph decision node in a sema pattern hash (e.g.
StateLock#c9c2) so the meaning of the primitive can never drift. - Use
graph_semantic_searchto find all past graph nodes that reference a given sema pattern — hash-stable history, not keyword matching. - Call
sema_handshakebefore writing a decision that depends on a shared concept; if it returnsHALT, the agent writes atensionnode instead and stops, preventing silent divergence.
Full walkthrough: docs/guides/understanding-graph.md
Repository Structure
Contributing
Want to add patterns, improve existing ones, or host the frontend locally? See CONTRIBUTING.md.
Citing
See CITATION.cff for the machine-readable version (GitHub
renders a "Cite this repository" button from it).
Safety
Sema ships no executable code — it's a library of pattern definitions (handles, mechanisms, invariants, dependency graphs). The MCP server hands patterns to clients as data; it does not execute the behaviors they describe.
Intended use: reasoning and reference. Patterns are thinking tools — named concepts agents can search, resolve, and handshake on to reason about coordination, risk, and procedure. See docs/manuals/vocabulary-design.md for the intent behind each pattern and the design choices.
Running patterns as executable recipes is untested. Many patterns describe procedures an agent could step through; patterns in a Dynamics category do not, because they describe how a system behaves and are applied to interpret a case rather than executed. Executing a procedure is still a research phase — the mechanism text has not been validated end-to-end, and we make no claims about safety when a pattern is executed rather than referenced. If you go this route, run the agent's execution step in a sandboxed environment. Patterns with known risks carry a caution field in their metadata; absence of that flag means the pattern has not been classified as risky, not that it has been certified safe.
The long-term goal is cryptographically enforced safety constraints on agent-to-agent communication — an active research direction.
License
Sema is dual-licensed:
-
Code (everything in
src/,web/,experiments/,scripts/, and the package config) — MIT. Self-host it, fork it, build commercial products on top of it. -
Content (the pattern vocabulary in
data/, the documentation indocs/, the academic paper inpaper/, and the prose displayed on semahash.org) — CC BY 4.0. Reuse the patterns and prose anywhere, for any purpose including commercial. Suggested attribution when sharing the vocabulary:
For academic citation, see CITATION.cff. GitHub renders this
as a "Cite this repository" button on the project page that generates APA and
BibTeX automatically.
来源:README.md,提交 61c94b8
工具
0版本历史
9- v0.10.0最新Oct 11, 2026
- v0.9.1Oct 9, 2026
- v0.9.0Oct 8, 2026
- v0.8.1Oct 8, 2026
- v0.8.0Oct 7, 2026
- v0.7.1Oct 4, 2026
- v0.7.0Sep 28, 2026
- v0.6.0Sep 27, 2026
- v0.5.5Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分