docmancer
docmancer CLIを使用してローカルドキュメンテーション知識ベースを検索・クエリできます。サードパーティライブラリのドキュメント、APIリファレンス、ベンダー提供のドキュメント、バージョン固有のAPI動作、GitBookやMintlifyの公開ドキュメント、オフライン・ローカルドキュメント検索が必要な場合、またはエージェントのレスポンスを最新の外部ドキュメントに基づいて根拠付けたい場合に使用します。
description の原文を見る
Search and query local documentation knowledge bases using docmancer CLI. Use when the user asks about third-party library docs, API references, vendor documentation, version-specific API behavior, GitBook or Mintlify public docs, offline or local doc search, or needs to ground agent responses in up-to-date external documentation.
SKILL.md 本文
docmancer
ドキュメンテーションコンテキストを圧縮し、コーディングエージェントがドキュメントではなくコードにトークンを費やすようにします。パブリックサイト(GitBook、Mintlify、GitHub、汎用ウェブ)からフェッチし、SQLite FTS5でローカルにインデックスして、ソース帰属付きのコンパクトなコンテキストパックを取得します。APIキー、ベクトルデータベース、コアパス上のバックグラウンドデーモンは不要です。
MITオープンソース。 CLIは完全なプロダクトです。ドキュメントの追加、クエリ、コーディングエージェントへのスキルインストールはすべてローカルマシンで実行できます。オプションのベンチマークハーネス(docmancer bench)は、独自のコーパス上でレトリーバルバックエンド(FTS、Qdrantベクトル、RLM)を比較します。
使用時機
- ユーザーがサードパーティライブラリ、SDK、またはAPIについて質問し、正確で最新のドキュメンテーションが必要な場合。
- ユーザーがパブリックサイト(GitBook、Mintlify、またはウェブホストされたドキュメント)のドキュメントを参照している場合。
- バージョン固有のAPI動作を検証したり、正確なメソッドシグネチャを確認する必要がある場合。
- ユーザーが以前に取り込んだドキュメンテーションを検索またはクエリするよう依頼する場合。
- ユーザーが自身のドキュメント上でレトリーバル品質をベンチマーク・比較したい場合。
ワークフロー
- ドキュメントがすでにインデックスされているか確認:
docmancer list - 不足していてユーザーがソースを承認した場合:
docmancer add <url-or-path> - 関連コンテキストをクエリ:
docmancer query "<question>" - 返されたコンテキストを使用 して、ソース帰属付きセクションで応答をグラウンディングします。
コマンド
ドキュメンテーションの追加
docmancer add <url-or-path>
URLまたはローカルパスからドキュメントをフェッチしてインデックスします。ドキュメントプラットフォームを自動検出します。
| フラグ | 目的 |
|---|---|
--provider <auto|gitbook|mintlify|web|github> | 特定のプロバイダーを指定(デフォルト: auto) |
--strategy <strategy> | 検出戦略を指定(llms-full.txt、sitemap.xml、nav-crawl) |
--max-pages <n> | フェッチするページ数の上限(デフォルト: 500) |
--browser | JavaScriptの多いサイト向けPlaywright フォールバック |
--recreate | このソースのインデックスを削除して再構築 |
ドキュメンテーションのクエリ
docmancer query "<question>"
ソース帰属とトークン削減を備えたコンパクトなマークダウンコンテキストパックを返します。これはエージェントが呼び出すべき主なコマンドです。
| フラグ | 目的 |
|---|---|
--budget <n> | 推定最大出力トークン(デフォルト: 2400) |
--limit <n> | 返すセクションの最大数 |
--expand | マッチの周辺セクションを含める |
--expand page | 予算内に収まる完全なページコンテンツを含める |
--format <markdown|json> | 出力形式(デフォルト: markdown) |
ソースの更新
docmancer update [source]
すべてのソース、または特定のソースを再フェッチして再インデックスします。上流のドキュメントが変更されている可能性がある場合に使用します。
ソースの管理
| コマンド | 目的 |
|---|---|
docmancer list | インデックスされたドキュメンテーションソースを表示 |
docmancer list --all | すべての保存されたページ・ファイルを表示 |
docmancer inspect | インデックス統計と抽出位置を表示 |
docmancer remove <source> | ソースまたはdocsetルートを削除 |
docmancer remove --all | インデックス全体をクリア |
セットアップと診断
| コマンド | 目的 |
|---|---|
docmancer setup | コンフィグ・データベースを作成し、検出されたエージェントスキルをインストール |
docmancer setup --all | すべてのエージェント統合を非対話的にインストール |
docmancer doctor | コンフィグ、インデックス正常性、エージェントスキルインストールを確認 |
docmancer init | プロジェクトローカル docmancer.yaml を作成 |
docmancer fetch <url> --output <dir> | インデックスなしでドキュメントをマークダウンファイルにダウンロード |
エージェント統合
docmancer install <agent>
サポート対象エージェント: claude-code、claude-desktop、cline、cursor、codex、codex-app、codex-desktop、gemini、github-copilot、opencode。グローバルインストールの代わりにプロジェクトローカルインストールの場合は --project を追加します。
ベンチマーク
docmancer bench は、同一の標準化チャンク上で再現可能なアーティファクトを使用してレトリーバルバックエンドを比較します。FTSはコアに含まれており、QdrantとRLMは実験的な追加機能です。
docmancer bench init
docmancer bench dataset create --from-corpus <dir> --size 30 --name <name>
docmancer bench dataset create --from-legacy <path.json> --name <name>
docmancer bench dataset validate <path>
docmancer bench run --backend <fts|qdrant|rlm> --dataset <name> [--run-id ...] [--k-retrieve ...] [--k-answer ...] [--timeout-s ...]
docmancer bench compare <run_id> <run_id> [...]
docmancer bench report <run_id>
docmancer bench list
実行ごとのアーティファクトは .docmancer/bench/runs/<run_id>/ 以下に格納されます(config.snapshot.yaml、retrievals.jsonl、answers.jsonl、metrics.json、report.md、traces/)。コンテンツハッシュ化された ingest_hash は、ドリフトしたコーパス間での実行比較を防止します。
オプション追加機能: pipx install 'docmancer[vector]'(Qdrant)、pipx install 'docmancer[rlm]'(RLM)、pipx install 'docmancer[judge]'(ragas経由のLLM判定回答スコアリング)。
MCP経由のAPIツール(パックがインストールされている場合)
ユーザーが docmancer install-pack <pkg>@<version> を実行した場合(例:open-meteo@v1 キー不要の天気デモ用)、エージェントホストはローカルstdio MCPサーバー(docmancer mcp serve)を起動し、ちょうど2つのメタツールを公開します:
docmancer_search_tools(query, package?, limit?): タスク説明でツールを検索します。最初に常にこれを呼び出して、完全修飾ツール名と入力スキーマを発見します。docmancer_call_tool(name, args): 検索から返された特定のツールを呼び出します。
ユーザーが実際のAPIに対して何かを行うよう依頼した場合のワークフロー:
- 短いタスク説明(使用中のパックがわかる場合は
package)を含むdocmancer_search_toolsを呼び出します。トップマッチは完全な入力スキーマをインライン化して返します。 - 返された
safetyブロックが受け入れ可能であることを検証します。destructive: trueの場合、ユーザーが--allow-destructiveでインストールしない限り呼び出しはブロックされます。 - 完全修飾
nameと、インライン化されたスキーマに準拠するargsオブジェクトを含めるdocmancer_call_toolを呼び出します。 - レスポンスに
_docmancer.idempotency_keyが含まれている場合、同じargs._docmancer_idempotency_keyで再試行して安全に重複排除します。
ユーザーが必要とする可能性があるクレデンシャルセットアップ(それが必要なパックのみ、open-meteo 用ではない):
- シェル起動エージェント(Claude Code、Codex CLI): シェルで
export <PACK>_API_KEY=...。 - GUI起動エージェント(Cursor、Claude Desktop): エージェントのMCPコンフィグを編集し、
docmancerサーバーエントリの下に"env": {"<PACK>_API_KEY": "..."}を追加するか、~/.docmancer/secrets/<package>.envに<PACK>_API_KEY=...を記述します。
各インストール済みパックに対してどのクレデンシャルソースが解決されるかを確認するには、docmancer mcp doctor を実行します。
よくある間違い
docmancer ingestは使用しないでください。これは廃止予定です。代わりにdocmancer addを使用してください。docmancer evalまたはdocmancer dataset generate/evalは使用しないでください。これらは削除されました。docmancer bench runとdocmancer bench dataset createを使用してください。docmancer addでソースを追加する前にdocmancer queryを実行しないでください。先にdocmancer listを確認してください。- ドキュメントがインデックスされていると仮定しないでください。クエリする前に常に
docmancer listで確認してください。 ingest_hashガードを理解せずに異なるコーパスからdocmancer bench compareの実行を混在させないでください。必要な場合は、明示的に--allow-mixed-ingestを渡してください。
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- docmancer
- リポジトリ
- docmancer/docmancer
- ライセンス
- MIT
- 最終更新
- 2026/4/28
Source: https://github.com/docmancer/docmancer / ライセンス: MIT