GNO CLI
A local search engine for notes, code, PDFs and Office docs: hybrid search, a CLI, MCP and a skill for ten agent clients.
- 117 ★ on the repository
- Last commit
Extended access
Why this level
- The index reads every file in the chosen folders, including private notes and mail.
- With an HTTP inference endpoint configured, document fragments can go to the specified server: the egress policy limits this per collection.
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add cli/gnoDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- The index reads every file in the chosen folders, including private notes and mail.
- With an HTTP inference endpoint configured, document fragments can go to the specified server: the egress policy limits this per collection.
This is third-party code. Review the repository files before installing.
What it does
GNO indexes Markdown, PDFs, Office files, plain text, source code and exports of mail, calendars and transcripts on your own machine. Search runs three ways: keyword (BM25), semantic by vectors, and hybrid with reranking and score explanations. Alongside sit a web UI with a knowledge graph and editor, a REST API, a TypeScript SDK, an MCP server and a background daemon. For agents GNO installs both a skill and an MCP connection. `gno skill install --target claude --scope user` drops the skill, `gno agents install` adds a block of retrieval and citation rules, and `gno mcp install` configures a client. `gno context build` compiles an evidence capsule with exact line ranges, hashes and one overall token budget. `gno ask --verify` answers only with what that evidence supports.
Who it is for. People who keep knowledge in notes, documents and code and want to give an agent memory without sending files to a cloud API.
Good fit when
- Notes sit in Markdown, PDF, Office and source files in one folder and need searching all at once.
- An agent has to find the paragraph on exponential backoff even when the query uses other words.
- You want an answer that withholds weakly supported claims: that is what `gno ask --verify` is for.
- Client work stays local while notes use a server on the local network: the egress policy sets this per collection.
Not a fit when
- Bun 1.4.1 or newer is not installed and you do not want to add it.
- You need a cloud index shared by a whole team: GNO runs on one machine.
- There are few documents and plain `grep` is enough.
Example request
Find in my notes why we dropped the queue rewrite and quote the sources.Limitations
Installation requires Bun 1.4.1 or newer. On macOS vector search needs Homebrew SQLite: `brew install sqlite3`. Models download on first use, and there are three network boundaries: a model download, a configured HTTP inference endpoint and uploading an exported artifact for publishing. There is no telemetry and no account is needed. Semantic search is switched on with a separate `gno embed` command, and keyword search works while it runs. The repository's accuracy benchmarks use a pinned corpus, so results on your own documents can differ.
How to disable. Remove the GNO entry from the client config, delete the skill and the rules block created by `gno agents install`, and run `bun remove -g @gmickel/gno`.
FAQ
How do I connect GNO as an MCP server?
Run `gno mcp install` for Claude Desktop or add `--target`, for example `--target claude-code` or `--target cursor`. The command writes absolute paths into the client config, and `--dry-run --json` shows them before writing.
What does `gno setup` do?
It connects a folder and returns only after keyword search finds a real fragment from your documents. Semantic indexing continues in the background.
Which agents are supported?
For the skill the targets are `claude`, `codex`, `opencode`, `openclaw` and `hermes`. The MCP connection installs into Claude Desktop, Cursor, Claude Code, Zed, Windsurf, Codex CLI, OpenCode, Amp, LM Studio and LibreChat.
What is an evidence capsule?
A bounded bundle for a goal: exact line ranges, content hashes, one overall token budget, collapsed duplicates and a list of what could not be found. `gno context build` compiles it and `gno context verify` checks it.
Do I need an account or a GPU?
No. Neither an account nor a GPU is needed, there is no telemetry and the license is MIT.
Discussion
No questions or reviews yet.
Related
CLI toolsLocal search over Markdown notes, docs and meeting transcripts: keywords, semantic search and reranking, with an MCP server
An agent searches, reads and writes a Roam Research graph through the desktop app's local API, with a CLI and a syntax skill
A CLI that builds a local notes index with catalyst questions so the agent finds material faster than plain grep search
Obsidian Hybrid Search
obsidian-hybrid-search
Local Obsidian vault search: agents find notes by meaning, words, tags and links through MCP, CLI or a plugin.
Get笔记 CLI (getnote)
Get笔记 CLI
The getnote CLI saves links and text to Get笔记 (Dedao Brain), searches notes and knowledge bases and installs five agent skills.
Skill linking an agent to the 得到大脑 notes service: saves links and images, searches by meaning, files notes in knowledge bases.
README in short
The README opens with installation and a two-minute path from indexing a folder to a verified answer. After that come a comparison with typical local RAG tools, agent and MCP setup, and REST API and SDK references.