Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Goldziher/basemind --skill basemind-documentsgit clone --depth 1 https://github.com/Goldziher/basemindWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/goldziher/basemind/basemind-documents)<a href="https://agentmods.dev/skills/goldziher/basemind/basemind-documents"><img src="https://agentmods.dev/badge/skills/goldziher/basemind/basemind-documents/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/goldziher/basemind/basemind-documents"><img src="https://agentmods.dev/badge/skills/goldziher/basemind/basemind-documents.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Memory Poisoning · line 45 Skill injects content designed to persist in agent memory or context across interactions. Persistent injection can alter agent behavior long after the initial interaction.Fix: Do not allow untrusted input to persist in agent memory or context. Validate all content before storing and implement memory isolation between sessions.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00107 | $0.01452 |
| Opus 5.5 | $0.00043 | $0.00581 |
| Sonnet 5.5 | $0.00021 | $0.00290 |
| Haiku 4.5 | $0.00011 | $0.00145 |
Grade A, and why
basemind-documents scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 88 lines — stays where its author put it; the contents beside it link to each section on GitHub.
basemind-documents — document RAG and web ingestion
basemind extracts 90+ file formats (PDF, Office, HTML, email, images via OCR) into a LanceDB vector store and answers meaning-based queries with cross-encoder reranking. Web pages scraped or crawled into the same store are searchable the same way. This is the surface for "find the passage about X", not "grep for the string X".
basemind first, open-the-file fallback. Prefer memory mode documents over opening PDFs/Office/HTML
by hand, and the web tools over ad-hoc fetching. For source code use basemind-code-search instead —
this skill is for prose and documents.
Requirements
memorymodedocumentsneeds a build with--features documents(orfull); the other memory modes need--features memory. Without them the tools dispatch but return an MCP error.- Web ingestion (
webmodesscrape/crawl/map) needs--features crawl. When that feature is off these tools are not registered at all — they simply won't appear in the tool list. - Documents must be scanned first:
basemind scanwith the documents feature extracts and embeds them into the machine-global cache (Linux~/.local/share/basemind/, macOS~/Library/Application Support/basemind/; overrideBASEMIND_DATA_HOME). See thebasemind-scanskill.
Tool routing
| Question | MCP tool | CLI |
|---|---|---|
| "Semantic search over PDFs/Office/HTML docs?" | memory { mode: "documents", query: "…" } |
basemind memory documents "query" |
| "Narrow to docs mentioning an entity?" | memory { mode: "documents", query: "…", entity_category: "…" } |
(MCP only) |
| "Narrow to docs with a keyword?" | memory { mode: "documents", query: "…", keywords_contains: "…" } |
(MCP only) |
| "Filter by file type?" | memory { mode: "documents", query: "…", mime_type: "application/pdf" } |
basemind memory documents "…" --mime-type application/pdf |
| "Pull a single URL into RAG?" | web { mode: "scrape", url: "…" } (robots-aware) |
basemind web scrape <url> |
| "Ingest a docs site section?" | web { mode: "crawl", url: "…" } |
basemind web crawl <seed-url> |
| "What URLs exist on this site?" | web { mode: "map", url: "…" } |
basemind web map <url> |
| "Recall something the agent stored earlier?" | memory mode get, list, or search |
basemind memory get "key" / list / search "q" |
| "Remember this for future sessions?" | memory { mode: "put", key, value } |
basemind memory put "key" "value" |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago Changed d20b9fe8ce99
- 7d ago Changed 8149d461e979
- 11d ago Changed · +6 lines 15bc43101a2b
- 1mo ago First seen · 82 lines · 107 tokens per session scan A 057e36a8666b
basemind-documents is a skill published in the GitHub repository Goldziher/basemind (113 stars, last pushed 2d ago), licensed MIT. It adds 107 tokens to every session and 1,452 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
hybrid-rag
Create and query a per-review hybrid RAG index of included PRISMA evidence. Uses dense sentence-transformers retrieval plus BM25 (Qdrant/ChromaDB) or native FTS (LanceDB), fused with Reciprocal Rank Fusion.
markitdown
Converts heterogeneous documents and selected URIs to Markdown with Microsoft MarkItDown for text analysis, search, and LLM/RAG ingestion. Covers safe local conversion, streams, Office/PDF/data formats, batch workflows, plugins, vision OCR, Azure extraction, and the official MCP server.
llamaindex
Data framework for building LLM applications with RAG. Specializes in document ingestion (300+ connectors), indexing, and querying. Features vector indices, query engines, agents, and multi-modal support. Use for document Q&A, chatbots, knowledge retrieval, or building RAG pipelines. Best for data-centric LLM…
xberg-picking-a-format
Use when choosing an output format for extracted documents — plain text, markdown, djot, HTML, JSON, or DocTags. Maps consumer (LLM, parser, archive) to the right --format / --content-format pair.
kb-retriever
A retrieval and question-answering assistant for a local folder of documents, including Markdown, text, PDFs, and spreadsheets.
azure-ai
Use for Azure AI: Search, Speech, OpenAI, Document Intelligence. Helps with search, vector/hybrid search, speech-to-text, text-to-speech, transcription, OCR. WHEN: AI Search, query search, vector search, hybrid search, semantic search, speech-to-text, text-to-speech, transcribe, OCR, convert text to speech.