mcpField
M
mdzilla

mdzilla

github.com/pi0開発11036 回インストール31 週間前に更新
リポジトリ

mdzilla について

mdzillaは、ターミナル利用者やエージェント向けのMarkdownドキュメントブラウザーです。ローカルディレクトリ、GitHub、npm、HTTP、`llms.txt`から取得・表示し、検索やプレーンテキスト出力、Markdown形式でのエクスポートもできます。

主な機能

  1. 01ローカル、GitHub、npm、HTTPのドキュメント読み込み
  2. 02ドキュメントのページ解決と表示
  3. 03タイトルと本文の検索
  4. 04プレーンテキスト出力
  5. 05Markdownファイルへのエクスポート

活用シーン

  1. 01ターミナルでプロジェクト文書を閲覧
  2. 02エージェント向けに特定ページを取得
  3. 03トピックやキーワードで文書を検索
  4. 04オフライン処理用に文書をエクスポート

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/pi0/mdzilla --skill mdzilla

インストール後、Claude Code で/mdzillaを入力して読み込まれたか確認します。

詳細

mdzilla

ターミナルやエージェント向けのMarkdownドキュメントブラウザーです。ローカルディレクトリ、GitHub、npm、HTTP、llms.txt からドキュメントを取得してレンダリングします。

CLI

npx mdzilla <source> [query] [options]
ソース
ソース構文備考
ローカルディレクトリmdzilla ./docsローカルのドキュメントディレクトリをスキャンします
ファイルmdzilla README.md単一のMarkdownファイルをレンダリングします
GitHubmdzilla gh:owner/repoリポジトリ内の docs/ を探します
npmmdzilla npm:package-nameパッケージをダウンロードして、ドキュメントを読み込みます
HTTPmdzilla https://example.com/llms.txt、Markdownネゴシエーション、HTMLからMarkdownへの変換の順に試します
オプション
  • --export <dir> — ドキュメントをフラットな .md ファイルにエクスポートします
  • --plain — プレーンテキストで出力します。AI エージェントまたはTTYではない標準出力の場合は自動的に有効になります
スマート解決

2番目の位置引数はスマート解決されます。

  1. ナビゲーションパスと一致する場合 → そのページをレンダリングします
  2. 一致しない場合 → タイトルと本文を検索します
エージェントでの使用
npx mdzilla gh:unjs/h3 /guide/basics        # render a specific page
npx mdzilla gh:unjs/h3 router               # search for 'router'
npx mdzilla https://h3.unjs.io /guide       # render page from URL
npx mdzilla npm:consola --plain             # list all pages (plain)

オフライン処理用にドキュメントをエクスポートします。

npx mdzilla <source> --export ./fetched-docs

その後、必要に応じてエクスポートされた .md ファイルを読み込みます。

プログラムから利用するAPI

ドキュメントのエクスポート
import { exportSource } from "mdzilla";

await exportSource("./docs", "./dist/docs");
await exportSource("gh:unjs/h3", "./dist/h3-docs");
await exportSource("npm:h3", "./dist/h3-docs", { plainText: true });
await exportSource("https://h3.unjs.io", "./dist/h3-docs");
コレクション
import { Collection, resolveSource } from "mdzilla";

const docs = new Collection(resolveSource("./docs"));
await docs.load();

console.log(docs.tree); // NavEntry[] navigation tree
console.log(docs.flat); // FlatEntry[] flat list

const content = await docs.getContent(docs.flat[0]);
const results = docs.filter("query"); // fuzzy search

コメント