Context7
Up-to-date docs for AI agents
作者提供的说明(英文原文)
Local search over your code and documents for AI agents.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
作者没有在注册中心列出安装信息。请查看下方作者的 README。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过 GitHub 账户 semlith 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.51.1)于4天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Rust。
同一分类中有:Context7, Codebase Memory, Exa
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Local search over your code and documents for AI agents.
Website · Install · Quick start · Agents · Portal · Benchmarks · Docs
An agent working in a large codebase either reads too much, which is slow and expensive, or guesses which file to open, which is often wrong. What it needs is the few spans that answer the question. Semlith finds them.
EMBED_BATCH both land on the right chunk.semlith cloud login. The portal binds to 127.0.0.1 only. Model weights and acceleration packs are the only downloads, each pinned by digest, and --airgap refuses every outbound request before a connection opens.semlith setup, and a ledger of every retrieval with the tokens it saved.One command, no Rust toolchain needed.
macOS and Linux
curl --proto '=https' --tlsv1.2 -fsSL https://raw.githubusercontent.com/semlith/semlith/main/install.sh | sh
Windows
irm https://raw.githubusercontent.com/semlith/semlith/main/install.ps1 | iex
The installer picks the release for your machine, verifies the ed25519 signature on the release's SHA256SUMS, checks the archive against it, unpacks it into ~/.semlith/bin and runs semlith setup. Setup puts Semlith on your PATH, downloads the embedding model, registers Semlith with each agent client that has a registration CLI, and installs the daemon as a login service. Run semlith setup again at any time to repair an install, and --yes takes every default.
| Variable | Effect |
|---|---|
SEMLITH_VERSION | Install a specific release tag. |
SEMLITH_HOME | Install somewhere other than ~/.semlith. |
SEMLITH_NO_SERVICE=1 | Skip the login service. |
You can also run cargo install semlith, or take an archive from the releases page. semlith upgrade replaces the binary with the newest release, and Semlith never checks for updates on its own.
Requirements. A 64-bit machine running macOS on Apple silicon, Linux on x86_64 or aarch64, or Windows on x86_64 (Windows PowerShell 5.1 is enough). The Linux archives ship libonnxruntime.so beside the binary and need only glibc 2.34 or later and libstdc++ (GLIBCXX_3.4.22). Debian 12, Ubuntu 22.04, RHEL 9 and Amazon Linux 2023 all qualify. Intel macOS is not supported, because ONNX Runtime no longer ships for it.
The installer writes the binary to ~/.semlith/bin (mode 700 on macOS and Linux) and, on Linux, libonnxruntime.so beside it. Nothing is written until the archive passes three checks. SHA256SUMS must carry the project's ed25519 signature, checked with ssh-keygen -Y verify (OpenSSH 8.1 or later, which macOS, current Linux distributions and Windows 10 and later have). The archive's SHA-256 must match it. When gh is on your PATH, its GitHub artifact attestation, signed by this repository's release workflow, is checked too. A missing or wrong signature stops the install, and semlith upgrade holds a release to the same key, built into the binary, which semlith --version names. curl is held to https and TLS 1.2 or later, and the script runs only once it has fully downloaded. Releases before v0.40.0 are not signed, so these installers do not install them.
To read the installer before running it:
curl --proto '=https' --tlsv1.2 -fsSLO https://github.com/semlith/semlith/releases/latest/download/install.sh
less install.sh gh attestation verify install.sh --repo semlith/semlith sh install.sh
On Windows, run irm https://github.com/semlith/semlith/releases/latest/download/install.ps1 -OutFile install.ps1, read it, then run powershell -ExecutionPolicy Bypass -File install.ps1.
To verify an archive by hand:
echo 'semlith-release ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICMTHiHMzeSHzzc+8UDZHUzJcvb6XGUBb+TJdFes91xm' > allowed_signers
ssh-keygen -Y verify -f allowed_signers -I semlith-release -n file -s SHA256SUMS.sig < SHA256SUMS grep " semlith- - .tar.gz$" SHA256SUMS | shasum -a 256 -c gh attestation verify semlith- - .tar.gz --repo semlith/semlith
cd ~/src/ripgrep
semlith index . # one store, and the model (~52 MB) downloads once semlith search "where is a file detected as binary" semlith neighbors search_parallel # callers and callees semlith start # the daemon and the portal
$ semlith search "where is a file detected as binary" -k 1
$ semlith neighbors search_parallel callers (2) main via defines (extracted) crates/core/main.rs:44 · call at line 166 run via calls (resolved) crates/core/main.rs:78 · call at line 90 callees (25) matcher via calls (resolved) crates/core/flags/hiargs.rs:379 · called at crates/core/main.rs:177 search_worker via calls (resolved) crates/core/flags/hiargs.rs:705 · called at crates/core/main.rs:176 ...
Every hit is a path:start-end locator you can hand to an editor or an agent, and vf says the vector and keyword lists both found it. Documents answer the same way.
semlith setup # registers each agent client that has a registration CLI
semlith doctor # checks each client can actually reach it, and says how to fix it if not
semlith setup registers the MCP server at user scope in each installed client that has a registration CLI, which is six of the 12 documented clients. The other six are a config file, which semlith setup --register-all writes for you, and semlith doctor reports on every one. Each stanza is run against the binary in tests/clients.rs, and docs/clients.md has them all with the HTTP transport. Setup also installs the Semlith Agent Skill, a steering hook that suggests a Semlith call when an agent is about to grep, and a read-only research agent.
semlith mcp serves MCP over stdio, and the daemon serves the same tools over HTTP at /mcp, behind an agent key (semlith key show). Eight tools are listed by default, because every definition costs tokens on every request, and SEMLITH_MCP_TOOLS=all lists all sixteen.
| Tool | Answers |
|---|---|
semlith_search | Where is the answer? Path, span, enclosing symbol and how it was found. |
semlith_brief | Everything one question needs in one call, with spans, text and one-hop callers and callees, under a token budget. |
semlith_read | One span or one symbol, nothing around it. |
semlith_symbol | Where is this defined? history: true gives what it used to be. |
semlith_neighbors | What calls it, and what it calls. |
semlith_impact | Everything that reaches it, and the files involved. |
semlith_files | Which files are indexed. |
semlith_stats | What each store holds. |
semlith_path, semlith_trace | How two symbols connect, as a chain or as evidence. |
semlith_pattern | A tree-sitter structural pattern over one language. |
semlith_index, semlith_add, semlith_forget | Change a store from inside a conversation. |
semlith_report | One of five reports from the ledger, index and graph. |
semlith_languages | The language names lang accepts. |
A bare semlith mcp opens every registered store, so one question can span repositories. It speaks MCP 2026-07-28, 2025-11-25, 2025-06-18 and 2024-11-05, each proven by a session in tests/mcp.rs. In the official MCP registry it is listed as mcp-name: io.github.semlith/semlith
semlith start runs one daemon that owns every store. It holds each store's write lock, watches its folders, re-embeds what you save, and serves a portal at http://127.0.0.1:7365. The URL with its session token is printed once, on stdout. docs/portal.md documents every page.
Search . Hybrid results, each saying which list found it.
Graph . Callers, callees, blast radius and paths.
Index runs . Live rate per device, pause and stop.
Ledger . Every retrieval, and the tokens it saved.
It is not on the network. The daemon binds 127.0.0.1 only, with no flag to change it. Every page and /api/ route needs the per-run session token, sent in a Semlith-Token request header, and without it the answer is 401. The agent key opens /mcp and nothing else. Responses carry a Content-Security-Policy of `'self'
只显示了开头部分;其余内容请在仓库中阅读