Skip to main content

Compress local documentation context for coding agents.

Project description

Local docs context for coding agents.

PyPI version License: MIT Python 3.11 | 3.12 | 3.13

Install | First run | What you get | Wiki

Local docs ingest and query demo

Docmancer turns any pile of docs into a hybrid-search index your coding agent can query through a simple CLI. Point it at a folder of Markdown / PDF / DOCX / RTF / HTML, or at a docs URL (GitBook, Mintlify, generic web, GitHub), and ask questions in natural language. Results come back as compact context packs with source attribution, sized to fit a token budget.

A fresh install ships everything you need: SQLite FTS5, a docmancer-owned local Qdrant for dense and sparse vectors, FastEmbed for embeddings (no API key), and a hybrid retriever that fuses lexical, dense, and sparse signals with Reciprocal Rank Fusion.

Install

pipx install docmancer    # Python 3.11, 3.12, or 3.13

If pipx picks an unsupported interpreter, pin one: pipx install docmancer --python python3.13.

First run

Three commands take you from a fresh install to a grounded query:

docmancer setup                                     # config + database + agent skills
docmancer ingest ./docs                             # index local files
docmancer query "How do I authenticate?" --explain  # hybrid search across the index

setup creates ~/.docmancer/ with the config and SQLite database, auto-detects installed coding agents, and installs their skill files. On the first ingest, docmancer downloads the pinned Qdrant binary (~60 MB) and the FastEmbed models (~500 MB) into ~/.docmancer/. After that, ingest stays offline.

Prefer to index a docs site instead of local files?

docmancer add https://docs.pytest.org
docmancer query "How do I parametrize a fixture?" --mode hybrid

What you get

Hybrid search by default. query fans out across SQLite FTS5 (lexical, BM25-reranked), Qdrant dense vectors (FastEmbed bge-base-en-v1.5), and SPLADE sparse vectors, then fuses results with Reciprocal Rank Fusion. The token budget keeps responses small so your agent has room for actual work:

Context pack: ~900 tokens vs ~4800 raw docs tokens (81.2% less docs overhead, 5.33x agentic runway)

No API keys required. FastEmbed runs locally. The optional OpenAI / Voyage / Cohere providers exist if you want them; if the key is missing, ingest falls back to FTS5-only and warns rather than aborting.

Inspectable. Every section is written to ~/.docmancer/extracted/ as Markdown plus JSON. docmancer inspect shows index stats. docmancer query --explain shows which signal (lexical / dense / sparse) placed each result.

Agent integration built in. docmancer setup drops skill files for Claude Code, Cursor, Codex, Cline, Claude Desktop, Gemini, GitHub Copilot, and OpenCode. Your agent can call docmancer query directly from its conversation loop.

Where to next

The wiki is the authoritative reference for everything else. Pick a page based on what you need:

Page When to read it
Commands Core docs commands and advanced pack commands
Configuration All YAML keys, env vars, and the API-key reference
Architecture How ingest, retrieval, and MCP runtime actually work
Supported Sources What file formats and URL providers are covered
Install Targets Where each agent's skill file lands
MCP Packs Version-pinned API tool packs
Troubleshooting Common errors and fixes

Wiki home | Changelog | PyPI

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

docmancer-0.5.1.tar.gz (1.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

docmancer-0.5.1-py3-none-any.whl (180.7 kB view details)

Uploaded Python 3

File details

Details for the file docmancer-0.5.1.tar.gz.

File metadata

  • Download URL: docmancer-0.5.1.tar.gz
  • Upload date:
  • Size: 1.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for docmancer-0.5.1.tar.gz
Algorithm Hash digest
SHA256 8136be536f743b3287262f761ea547fc7d109308a656d4da02e30971e6d7359f
MD5 72593ebdf75f0896eef3f2fd28afcc7f
BLAKE2b-256 77fb7b60dc7f7df272e2b4214cb5ff1ee8810d24f52d8d06b7a38f85105b8f77

See more details on using hashes here.

Provenance

The following attestation bundles were made for docmancer-0.5.1.tar.gz:

Publisher: publish.yml on docmancer/docmancer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file docmancer-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: docmancer-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 180.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for docmancer-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e0cdab517150e0e978a8a7b32ef97644aba760cd736bfc2a2d85d270151e4fcf
MD5 b7eaffa5641dbd8b8be7617d9e1088c3
BLAKE2b-256 da859c1135d39914993422f9a27e150519b2cebf9d8e9048b62af0cdce7aadc2

See more details on using hashes here.

Provenance

The following attestation bundles were made for docmancer-0.5.1-py3-none-any.whl:

Publisher: publish.yml on docmancer/docmancer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page