CLI
docStatic には、ウェブサイトの生成、配信、デプロイを支援する一連のスクリプトが用意されています。これらは、サイトの package.json 内の scripts セクションで定義されており、これが正式な一覧となります。引数を指定せずに npm run を実行すると、サイトに実際に含まれているスクリプトが表示されます。
以下のコマンドは、その用途ごとにグループ分けされています。
docStatic CLI コマンド
コマンドを実行するには、npm または yarn を使用します。例えば、npm run dev や yarn dev などです。
主要な docStatic スクリプト:
- `dev`: TinaCMSと連携した開発サーバーを起動します
- `build`: 本番環境向けのビルドを行います(TinaCMSのビルドを実行した後、Docusaurusのビルドを実行します)
- `build-local`: クラウド機能を使用せずにローカルでビルドします
- `check-links`: トピック内のすべての外部リンクにリクエストを送信し、各サーバーが返したHTTPステータスを記録します。これにより、「Broken Links」ダッシュボードが実際の404や500エラーを報告できるようになります。
--strictオプションを追加すると、リンク切れが見つかった場合にエラーで終了します。これは継続的インテグレーション(CI)ジョブで望ましい動作です。 ダッシュボードを参照してください。 - `generate`: 以下のすべてのジェネレータを一括で実行します。
prebuildおよびpredevがこれを呼び出すため、直接使用する必要はほとんどありません。 - `generate-media-index`: メディアファイルのインデックスを生成します
- `generate-git-identity`: Git 識別情報を生成します
- `generate-files`: アプリケーション用のファイルリストを生成します
- `generate-docs-metadata`: ダッシュボードや検索で使用されるメタデータインデックスを生成します
- `generate-link-report`: ネットワークリクエストを行わずにリンクインベントリを再構築します。前回の
check-links実行の結果は引き継がれるため、ビルド時にそれらの結果が破棄されることはありません。 - `update-theme-css`: テーマの CSS ファイルを更新します
- `lint` / `lint:fix`: フォーマットおよびコード品質をチェックし、必要に応じて修正します
- `mcp:install`: Model Context Protocol サーバーの依存関係をインストールします
- `mcp:build`: TypeScript から MCP サーバーをビルドします
- `mcp:dev`: 自動再起動機能付きで、開発モードの MCP サーバーを起動します
- `mcp:start`: AI アシスタント統合用のコンパイル済み MCP サーバーを起動します
- `mcp:test`: MCP サーバーの接続性テストを実行します
MCPサーバーの詳細については、MCPサーバーの統合を参照してください。
これらのコマンドは、DocusaurusドキュメントのCLIに記載されている標準的なDocusaurusコマンドを基に構築されています:
docusaurusstartbuildswizzledeployclearservewrite-translationswrite-heading-ids
自動実行コマンド
これらは自動的に実行されるため、通常は手動で呼び出す必要はありません:
prebuild、predev、prebuild-localは、ビルドや開発サーバーの起動前にそれぞれgenerateを実行し、メディアインデックス、ファイルリスト、ドキュメントのメタデータ、リンクインベントリ、テーマの CSS、および Git 識別情報を更新します。prestartはstartの前にリンクインベントリを更新するため、たとえcheck-linksを実行したことがなくても、「Broken Links」ダッシュボードにレポートが表示されます。postinstallは MCP サーバーの依存関係をインストールします。
API コマンド
clean-api-docsgen-api-docsgen-graphql
OpenAPI コマンドの詳細については、Docusaurus OpenAPI プラグインのドキュメントにある CLI の使用方法 を参照してください。
GraphQL コマンドの詳細については、Docusaurus GraphQL プラグインのドキュメントにある 使用方法 を参照してください。
サイトの作成および更新コマンド
これらのコマンドは package.json ではなく create-docstatic パッケージに由来するため、どこでも実行可能です。実行するために docStatic サイトは必要ありません。
- `npx create-docstatic@latest <プロジェクト名>`: 新しい docStatic サイトを作成します。詳細については、インストールを参照してください。
- `npx create-docstatic@latest --update`: 既存のサイトを最新の docStatic リリースに更新します。
create-docstaticで作成されたサイトのルートフォルダから実行してください。docStatic が管理するファイルと依存関係のバージョンを更新し、コンテンツ自体には手を加えません。
update コマンドでは、以下のオプションを使用できます:
- `--dry-run`: 実際に変更を加えることなく、変更される内容を報告します。
- `--force`: Gitのワーキングツリーがクリーンでない場合でも処理を実行します。このオプションを指定しない場合、コマンドはまず変更をコミットまたはスタッシュするよう求め、
git diffで更新内容を確認できるようにします。 - `--tag <dist-tag>`:
latestではなく、特定のdocstaticパッケージバージョンまたは dist-tag に更新します。 - `--no-install`: 更新後の依存関係のインストールをスキップします。
テンプレート同期コマンド
これらのコマンドは、docStatic リポジトリ自体(およびそのフォーク)にのみ存在し、create-docstatic で作成されたサイトには存在しません。これらは、template/ フォルダ内のスケルトンテンプレートをメインサイトと同期させます。
このテンプレートは、npx create-docstatic@latest が新しいサイトに展開するものであり、テンプレートとメインサイトが共有するコード(src/ 内の React コンポーネント、scripts/ 内のビルドスクリプト、tina/config.jsx、 docusaurus.config.ts、sidebars.tsなど——テンプレート側でも同じ変更を行う必要があります。
- `sync-template`: メインサイトから共有されているコード領域を
template/にコピーし、テンプレートのpackage.jsonの依存関係とスクリプトを整合させ、update-manifest.json(npx create-docstatic@latest --updateが既存のサイトを更新するために使用するファイル)を再生成します。 スタータードキュメントや設定値などのテンプレートコンテンツは変更されません。 - `sync-template:check`: 何も記述せずに、どのような変更が生じるかを報告し、テンプレートがずれている場合はエラーで終了します。 pre-commitフックがこのチェックを実行するため、
yarn sync-templateを実行して結果をステージングするまで、コミットはtemplate out of syncのエラーで失敗します。
共有ファイルを変更した後の典型的なフロー:
yarn sync-template
git add template/ update-manifest.json
git commit
リンティングコマンド
リンティングコマンドの詳細については、Biome ドキュメントの CLI を参照してください。