docmost について
Docmost API を介してワークスペースやコンテンツを管理する、AI エージェント向け CLI スキルです。エンティティ名-操作名のコマンドと一貫した JSON 応答を備え、ページ編集、検索、アクセス管理、インポートとエクスポートに対応します。
主な機能
- 01ワークスペース、スペース、メンバーを管理
- 02ページの作成、編集、整理
- 03ページ検索と履歴の確認
- 04招待、グループ、共有を管理
- 05ファイルのインポート、エクスポート、転送
活用シーン
- 01Docmost ドキュメントを作成・更新
- 02ページの検索と変更履歴の確認
- 03ワークスペースやスペースのアクセス権を調整
- 04ドキュメントや添付ファイルをインポート・エクスポート
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ dapi/ docmost-cli --skill docmostインストール後、Claude Code で/docmostを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.envrc.env.test.exampledocker-compose.test.ymlREADME.mdLICENSE.gitignoreCLAUDE.mdmcp_config_example.jsonmise.tomlpackage-lock.jsonpackage.json.claude/pr-review-loop-report.local.mdsettings.local.json.github/workflows/ci.ymldocs/plans/2026-02-27-skill-md-plan.md2026-03-03-agent-friendly-output-design.md2026-02-27-cli-full-crud-expansion-plan.md2026-02-27-skill-md-design.md2026-02-27-cli-full-crud-expansion-design.md2026-03-07-integration-tests-plan.md2026-03-07-integration-tests-design.mdscripts/wait-for-docmost.shsrc/__tests__/cli-utils.test.tsfilters.test.tsdiscovery.test.tsenvelope.test.tssrc/__tests__/integration/comment.test.tsdiscovery.test.tsfile.test.tssrc/__tests__/integration/helpers/run-cli.ts詳細
docmost
AI エージェント向け Docmost CLI スキルです。
インストール
このスキルを GitHub からインストールします。
npx skills add dapi/docmost-cli --skill docmost --agent '*' -g -y
CLI をインストールします。
npm install -g github:dapi/docmost-cli
環境変数を設定します(推奨)。
export DOCMOST_API_URL=https://docs.example.com/api
export DOCMOST_TOKEN=<token>
# or login with email/password:
export DOCMOST_EMAIL=<email>
export DOCMOST_PASSWORD=<password>
簡単な確認を行います。
docmost workspace-public --format json
コマンドの命名規則:entity-action(action-entity ではありません)
すべてのコマンドは entity-action 形式を使用します:page-update、space-create、comment-delete。
update-page、create-space、delete-comment は絶対に使用しないでください。これらのコマンドは存在せず、実行に失敗します。
実行ルール
- 実行前の確認は不要です。必要なコマンドを直接実行してください。
docmostが見つからない場合は、インストールして(npm install -g github:dapi/docmost-cli)再試行してください。 - すべての
--format json出力は、成功時は{ "ok": true, "data": ... }、エラー時は{ "ok": false, "error": ... }のエンベロープでラップされます。 - エージェントのワークフローでは
--format jsonを優先してください。 - ユーザーが人間に読みやすい表形式を明示的に希望した場合は、
--format tableを使用してください。 --format textがサポートされるのは次のコマンドのみです。page-info(Markdown コンテンツを返します)page-history-detail(Markdown コンテンツを返します)invite-link(生のリンクを返します)
- 認証情報には環境変数を優先し、コマンド履歴やプロセス一覧に
--passwordを残さないでください。 - 認証の優先順位:
--token>DOCMOST_TOKEN>--email/--password>DOCMOST_EMAIL/DOCMOST_PASSWORD。 - リスト/履歴コマンドでは、共通のページネーション制御を使用してください。
--limit <n>(1~100、デフォルトは 100)--max-items <n>(合計レコード数が N 件に達した時点で停止)
- Markdown/散文のコンテンツ(
page-update、comment-create、comment-update)には、次のいずれかを使用してください。- 文字列リテラル、
@path/to/file.md、または-(標準入力)
- 文字列リテラル、
- バイナリのエクスポート/ダウンロードコマンドは、
--outputが指定されていない場合、標準出力にバイト列を書き込みます。page-export、space-export、file-download
- 終了ステータスのみが必要な場合は
--quietを使用してください。
出力形式
すべての --format json 応答は、予測可能なエンベロープを使用します。
成功(単一オブジェクト)
{ "ok": true, "data": { "id": "abc", "title": "Runbook" } }
成功(リスト)
{ "ok": true, "data": [{ "id": "abc" }], "meta": { "count": 2, "hasMore": false } }
エラー(stderr)
{ "ok": false, "error": { "code": "NOT_FOUND", "message": "Page not found", "details": null } }
エージェント向け解析ルール
- 常に最初に
okフィールドを確認してください - リストの場合:項目は
data配列にあります。ページネーションではmeta.hasMoreを確認してください - 変更操作の場合:作成/更新されたオブジェクトが
dataに返されます - エラーには型付きの
codeが含まれます:AUTH_ERROR、NOT_FOUND、VALIDATION_ERROR、NETWORK_ERROR、INTERNAL_ERROR - 終了コード:0=成功、1=内部エラー、2=認証、3=見つからない、4=検証、5=ネットワーク
- 利用可能なすべてのコマンドとオプションを確認するには、
docmost commandsを使用してください
コアコマンドのパターン
検索
docmost commands # list all commands with options as JSON
ワークスペースとメンバー
docmost workspace-info --format json
docmost workspace-public --format json
docmost workspace-update --name "Docs" --description "Team docs" --format json
docmost workspace-update --enforce-sso true --enforce-mfa true --format json
docmost member-list --format table
docmost member-role --user-id <userId> --role admin --format json
docmost member-remove --user-id <userId> --format json
ユーザー
docmost user-me --format json
docmost user-update --name "Alice" --locale en --page-edit-mode edit --full-page-width true --format json
スペース
docmost space-list --format table
docmost space-info --space-id <spaceId> --format json
docmost space-create --name "Engineering" --slug engineering --description "Tech docs" --format json
docmost space-update --space-id <spaceId> --name "Platform" --format json
docmost space-delete --space-id <spaceId> --format json
docmost space-member-list --space-id <spaceId> --format table
docmost space-member-add --space-id <spaceId> --role writer --user-ids "u1,u2" --format json
docmost space-member-add --space-id <spaceId> --role reader --group-ids "g1,g2" --format json
docmost space-member-remove --space-id <spaceId> --user-id <userId> --format json
docmost space-member-role --space-id <spaceId> --group-id <groupId> --role admin --format json
docmost space-export --space-id <spaceId> --export-format markdown --output ./space.zip --format json
docmost space-export --space-id <spaceId> --export-format html --include-attachments > ./space.zip
ページ
docmost page-list --format table
docmost page-list --space-id <spaceId> --format table
docmost page-info --page-id <pageId> --format json
docmost page-info --page-id <pageId> --format text
docmost page-create --space-id <spaceId> --title "Runbook" --icon "book" --format json
docmost page-create --space-id <spaceId> --title "Child" --parent-page-id <parentId> --format json
docmost page-update --page-id <pageId> --title "Runbook v2" --format json
docmost page-update --page-id <pageId> --content @./content.md --format json
echo "# Updated" | docmost page-update --page-id <pageId> --content - --format json
docmost page-move --page-id <pageId> --parent-page-id <parentId> --position a00000 --format json
docmost page-move --page-id <pageId> --root --format json
docmost page-move-to-space --page-id <pageId> --space-id <targetSpaceId> --format json
docmost page-delete --page-id <pageId> --format json
docmost page-delete --page-id <pageId> --permanently-delete --format json
docmost page-delete-bulk --page-ids "id1,id2,id3" --format json
docmost page-restore --page-id <pageId> --format json
docmost page-trash --space-id <spaceId> --format table
docmost page-duplicate --page-id <pageId> --format json
docmost page-duplicate --page-id <pageId> --space-id <targetSpaceId> --format json
docmost page-breadcrumbs --page-id <pageId> --format table
docmost page-tree --space-id <spaceId> --format json
docmost page-tree --page-id <pageId> --format json
docmost page-history --page-id <pageId> --limit 50 --max-items 200 --format table
docmost page-history-detail --history-id <historyId> --format json
docmost page-history-detail --history-id <historyId> --format text
ページのインポート/エクスポート
docmost page-export --page-id <pageId> --export-format markdown --output ./page.zip
docmost page-export --page-id <pageId> --export-format html --include-children --include-attachments > ./page.zip
docmost page-import --file ./page.md --space-id <spaceId> --format json
docmost page-import-zip --file ./notion.zip --space-id <spaceId> --source notion --format json
page-import-zip --source がサポートする値:generic、notion、confluence。
検索
docmost search --query "onboarding" --format table
docmost search --query "oauth" --space-id <spaceId> --creator-id <userId> --format json
docmost search-suggest --query "auth" --format json
docmost search-suggest --query "auth" --space-id <spaceId> --include-pages --include-groups --max-results 20 --format json
招待
docmost invite-list --format table
docmost invite-info --invitation-id <inviteId> --format json
docmost invite-create --emails "[email protected],[email protected]" --role member --format json
docmost invite-create --emails "[email protected]" --role admin --group-ids "g1,g2" --format json
docmost invite-revoke --invitation-id <inviteId> --format json
docmost invite-resend --invitation-id <inviteId> --format json
docmost invite-link --invitation-id <inviteId> --format text
グループ
docmost group-list --format table
docmost group-info --group-id <groupId> --format json
docmost group-create --name "Tech Writers" --description "Docs team" --format json
docmost group-create --name "Maintainers" --user-ids "u1,u2" --format json
docmost group-update --group-id <groupId> --name "Platform Writers" --format json
docmost group-delete --group-id <groupId> --format json
docmost group-member-list --group-id <groupId> --format table
docmost group-member-add --group-id <groupId> --user-ids "u1,u2" --format json
docmost group-member-remove --group-id <groupId> --user-id <userId> --format json
コメント
docmost comment-list --page-id <pageId> --format table
docmost comment-info --comment-id <commentId> --format json
docmost comment-create --page-id <pageId> --content @./comment.md --format json
docmost comment-create --page-id <pageId> --content "Please clarify" --selection "Auth flow" --format json
docmost comment-create --page-id <pageId> --content "Reply text" --parent-comment-id <commentId> --format json
docmost comment-update --comment-id <commentId> --content "Updated comment" --format json
docmost comment-delete --comment-id <commentId> --format json
共有
docmost share-list --format table
docmost share-info --share-id <shareId> --format json
docmost share-for-page --page-id <pageId> --format json
docmost share-create --page-id <pageId> --include-subpages true --search-indexing false --format json
docmost share-update --share-id <shareId> --include-subpages false --format json
docmost share-delete --share-id <shareId> --format json
ファイル
docmost file-upload --file ./diagram.png --page-id <pageId> --format json
docmost file-upload --file ./diagram-v2.png --page-id <pageId> --attachment-id <attachmentId> --format json
docmost file-download --file-id <fileId> --file-name diagram.png --output ./diagram.png
docmost file-download --file-id <fileId> --file-name report.pdf > ./report.pdf
エージェントのワークフロー
ページの CRUD(推奨されるデフォルト)
「ドキュメントページを作成/更新/移動/削除」といったリクエストの場合:
- ワークスペースと対象のスペースを特定します。
docmost workspace-info --format json→.okを確認し、.dataを使用しますdocmost space-list --format json→.data[]を順に確認し、.meta.hasMoreを確認します
- 既存のページを調べます。
docmost page-list --space-id <spaceId> --format json→.data[]を順に確認します
- 変更する場合は、ソースページを読み取ります。
docmost page-info --page-id <pageId> --format text
- 変更を適用します。
page-create/page-update/page-move/page-delete→.okを確認し、.data.idを取得します
- 検証します。
docmost page-info --page-id <pageId> --format json→.okを確認します
検索と履歴の調査
「これがどこに記載されているか見つけて」や「誰がこれを変更したか」といったリクエストの場合:
docmost search --query "..." --format tabledocmost page-info --page-id <pageId> --format textdocmost page-history --page-id <pageId> --format tabledocmost page-history-detail --history-id <historyId> --format text
アクセス制御
「アクセスを追加/削除」のようなリクエストの場合:
- ワークスペースレベル:
member-list、member-role、member-remove、invite-*
- スペースレベル:
space-member-list、space-member-add、space-member-remove、space-member-role
- 公開ページの共有:
share-for-page、share-create、share-update、share-delete
エクスポート/インポートと添付ファイル
- コンテンツをエクスポート:
page-export/space-export - コンテンツをインポート:
page-import/page-import-zip - ファイルを添付:
file-upload - ファイルをダウンロード:
file-download
リクエストの意味
- 「自分の workspace / 自分のスペース」 ->
docmost workspace-info - 「spaces / セクション」 ->
docmost space-list - 「pages / ページ」 ->
docmost page-list - 「探して / 検索」 ->
docmost search --query "..." - 「変更履歴」 ->
docmost page-history - 「削除済みページ / ゴミ箱」 ->
docmost page-trash - 「アクセス / access」 ->
member-*/space-member-*/share-*
トリガーの例
トリガーする
- 「Docmost にページを作成して」
- 「runbook ページを更新して」
- 「oauth に関する内容をすべて Wiki から探して」
- 「このページの変更履歴を表示して」
- 「削除したページを復元して」
- 「ページを別の space に移動して」
- 「space を markdown にエクスポートして」
- 「ユーザーを reader として space に追加して」
- 「ページの公開 share を作成して」
- 「ファイルをページにアップロードして」
- 「Docmost の space をすべて一覧表示して」
- 「新しいユーザーを workspace に招待して」
- 「メンバーのロールを admin に変更して」
- 「Notion の zip を Docmost にインポートして」
- 「ページツリーを表示して」
- 「ページを複製して」
トリガーしない
- Docmost API を使わずにローカルの markdown ファイルを編集する
- Git/GitHub の操作
- Slack/Telegram/メールでのメッセージ送信タスク
- Docmost 以外の Web スクレイピングやブラウザーの自動操作
コメント
Markdown 対応