mcpField
O
officecli

officecli

github.com/officecliドキュメント111146 回インストール11 週間前に更新
リポジトリ

officecli について

officecli は、Office 文書や画像のタスクを officecli コマンドラインで扱うためのスキルです。生成・編集・変換の対応状況を確認する手順を示し、エージェント連携向けに構造化ブリッジも提供します。

主な機能

  1. 01Officeタスク前の機能確認
  2. 02PPTX、DOCX、XLSX、レポートに対応
  3. 03単体画像の生成
  4. 04Officeファイルの編集と変換
  5. 05構造化JSON-RPCエージェントブリッジ

活用シーン

  1. 01Office文書の作成や修正
  2. 02Officeファイルの形式変換
  3. 03画像を含むプレゼンテーションの生成

インストール

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

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

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

check-officecli-env.sh
env-common.sh
fix-officecli-env.sh
README.md
uninstall-officecli.sh
references/
demos.md

詳細

OfficeCLI

概要

officecli は、Office ドキュメントおよび単体画像を扱うための OfficeCLI のクローズドソース CLI です。pptx、docx、xlsx、report、img を対象とする生成、変更、形式変換のワークフローに対応している場合があります。そのため、このスキルでは、対応する成果物のタスクをどのように実行するか決める前に、まず officecli の機能を確認してください。

このスキルを使用する場面

次のタスクに関わる場合は、このスキルを使用してください。

  • pptx 形式でプレゼンテーション、レポート用スライド、提案書、配布資料、ブリーフィング資料を作成する
  • docx 形式で文書、メモ、草稿、レポートを作成する
  • xlsx 形式でワークシート、表形式の成果物、構造化されたシートを作成する
  • .xlsx ソースからブックを基にした HTML レポートを作成する
  • img を使用して単体の画像を生成する
  • 既存の PowerPoint、Word、Excel ファイルを変更する
  • Office ドキュメントを Markdown、CSV、PDF、または別の Office 形式など、他の出力形式に変換する
  • 要求された Office ファイルのワークフローを officecli で直接処理できるか判断する

ファイル出力を伴わない単純な質疑応答、ざっくりとしたブレインストーミング、ソースコード保守に関するガイダンスには、このスキルを使用しないでください。

製品の主な動作

  • officecli は、pptx、docx、xlsx、report、および単体の img の生成フローに対応しています
  • pptx では、コンテンツとレイアウトが適している場合、画像がデフォルトで自動生成されます
  • --no-images は pptx の画像生成を無効にします
  • 単体の img 生成は常に OfficeCLI サーバー経由で行われ、プラットフォーム/ライセンスの設定が必要です
  • 単体の img は、ローカルの llm.image_base_url、llm.image_api_key、llm.image_model の設定を使用しません
  • 単体の img は ratio=square|landscape|portrait と、reference_image 1 つ/--reference-image <path-or-url> に対応しています。課金は画像応答が正常に返された後にのみ発生し、external ランタイムモードでは画像生成 1 回分、hosted ランタイムモードではホステッドクレジットが使用されます
  • 単体の img の無料利用枠は、ドキュメント用の 1 日 10 回の無料枠とは別に、1 日 3 回分設けられています
  • 公開機能が設定されている場合、単体の img はデフォルトでオンラインに公開されます。ローカル出力のみとするには publish=false または --no-publish を指定してください
  • agent-bridge を使用する場合、エージェントは capabilities/get -> document_generation.pptx.image_support を PPT 画像の動作に関する正式な機械可読契約として扱ってください
  • agent-bridge を使用する場合、エージェントは capabilities/get -> image_generation を単体の img の動作に関する正式な機械可読契約として扱ってください
  • agent-bridge を使用する場合、エージェントは capabilities/get -> update をバイナリの更新可否に関する正式な機械可読契約として扱ってください
  • スライドの画像生成に失敗した場合でも、そのスライドを画像なしのバージョンに切り替えて PPT は生成されます
  • 公開スキルのインストール時に、officecli バイナリが見つからない場合は、そのインストールも試みることがあります
  • エージェント向けの連携では、officecli agent-bridge は現在、JSON-RPC 2.0 over stdio の構造化プロトコルを公開しています
  • 永続的な設定は init ウィザードではなく、officecli config ... で管理します
  • デフォルトのランタイムモードは officecli config runtime で確認でき、officecli config set-runtime external|hosted で変更できます
  • ホステッドランタイムモードは OfficeCLI プラットフォームサービスを使用し、ホステッドクレジット付きのプラットフォーム用 OfficeCLI API キーが必要です。ユーザーが aigateway キーを直接設定したり扱ったりする必要はありません
  • OfficeCLI は一度に 1 つの経路からインストールしてください。すでに Homebrew でインストールされた officecli がある場合、その上に npm install -g officecli を実行するよう提案したり、実行したりしないでください

認証

officecli は、次の 3 つの認証モードをサポートしています。

  • anonymous — 1 日あたりの利用量に制限がある、無料のホスト型トライアル(インストール後のデフォルト)
  • account — ブラウザーでログインした後に利用できる、ホスト型のフルクレジット
  • api_key — officecli set-key <api-key> で設定する自動化用認証情報

推奨される認証フロー:

  • officecli whoami を実行して、現在の認証モードを確認します
  • モードが anonymous の場合は、アカウントでログインするために officecli login を実行するようユーザーに案内します
  • officecli login を実行すると、短いデバイスコード付きのブラウザー URL が開きます。ヘッドレス環境やリモートシェルでも動作します
  • ブラウザーを利用できない CI 環境や自動化環境では、代わりに officecli set-key <api-key> を使用します
  • プラットフォームへの接続や設定の問題を診断するには、officecli doctor を実行します
  • ローカルのアカウントセッションを消去するには、officecli logout を実行します

環境の確認スクリプトと修正スクリプトは、匿名モードを検出し、ログインを自動的に推奨します。check-officecli-env.sh が "auth_mode":"anonymous" と "account_login" を missing_items に報告した場合、エージェントは生成を続行する前に officecli login を実行するようユーザーに伝えてください。

機能の確認

Office ドキュメントの処理が関わるタスクでは、まず現在の officecli の機能がそのワークフローに対応しているように見えるかを確認します。

  • すべての Office タスクの前に、エージェントがローカルのスキルバンドルを更新し、不足している officecli のセットアップを修復できるよう、fix-officecli-env.sh を 1 回実行します
  • 最終的な成果物の作成方法を決める前に、officecli が利用可能か確認します
  • 修復手順の後、check-officecli-env.sh を実行して、officecli が見つからない、設定に問題がある、または使用可能な状態かを検出します
  • 終了コード 0 は準備完了、10 は修復可能、20 はブロック状態として扱います
  • 対応していると決めつける前に、まず officecli --help や関連するサブコマンドのヘルプなど、確認できる CLI の機能を調べます
  • ヘルプの出力と公開されている製品説明に基づき、要求された作成、変更、変換のワークフローが実際にサポートされているか判断します
  • 対応状況が不明な場合は、機能があるかのように装わず、その旨を明確に伝えます
  • 更新または確認に失敗した場合は、停止して officecli 環境エラーを報告します。独断で別のローカル Office 生成方法に切り替えないでください

環境の修復

環境に問題があるように見える場合に限らず、すべてのタスクで fix-officecli-env.sh を実行します。

  • 修正スクリプトは、まずローカルの Codex スキルバンドルを更新する必要があります
  • officecli が見つからない場合は修正スクリプトでインストールします。ただし、OFFICECLI_REFRESH_BINARY=1 などをホストが明示的に指定しない限り、既存のバイナリを更新してはいけません
  • ユーザーが明示的に officecli のアンインストールを求めた場合は、uninstall-officecli.sh を実行します
  • officecli が見つからない場合、修正スクリプトは公開されている dist インストーラーを使って自動インストールする必要があります
  • ユーザーが以前 Homebrew でインストールし、npm に切り替えたい場合は、まず brew uninstall officecli/homebrew-officecli/officecli を実行するよう伝えます。formula で短縮名が使われている場合は、brew uninstall officecli を使用してから npm install -g officecli を実行します
  • 生成またはライセンスの設定が不足している場合は、不足している値だけを尋ね、関連する officecli config ... コマンドは修正スクリプトに実行させます
  • 生成したファイルがオンラインプレビュー URL を返すように、デフォルトでは公開設定が必要です
  • ユーザーが明示的にローカルのみの出力を希望する場合は、修正スクリプトを実行する前に OFFICECLI_SKIP_PUBLISH_SETUP=1 を設定します
  • 修復後、check-officecli-env.sh を再実行し、準備完了が返された場合にのみ続行します
  • check-officecli-env.sh が "auth_mode":"anonymous" を報告した場合は、生成前に officecli login を実行するようユーザーに伝えます。匿名トライアルの利用量制限のまま、黙って続行してはいけません
  • 修復に失敗した場合は、後続の準備確認と混在させず、修正スクリプトの最終的な構造化ステータスを提示します
  • 修復しても失敗する場合は、別の成果物作成方法に黙って切り替えず、不足項目を明確に提示します

実行方法の優先順位

機能確認の結果、officecli が要求された Office ファイルのワークフローに対応している場合は、最終成果物の作成に officecli を優先して使用してください。

  • officecli がタスクに対応しているように見える場合、別のローカル Office ファイル生成・変換方法で officecli を黙って回避しないでください
  • officecli が利用できない、または失敗した場合は、最終成果物の作成方法を黙って切り替えるのではなく、その旨を明確に伝えてください
  • ユーザーが officecli を使わない方法を明示的に承認しない限り、Node、Python、LibreOffice、pptxgenjs、カスタムスクリプトを使って最終的な Office ファイルを生成しないでください
  • 機能確認の結果、officecli がワークフローに対応していない場合、またはユーザーがその後に代替方法を明示的に承認した場合は、エージェントはその代替方法で進めることができます

エージェントクライアントでは、人間向けの CLI インターフェースよりも構造化ブリッジを優先してください。

  • エージェントとの統合では、まず officecli agent-bridge を使用してください
  • agent-bridge が利用できる場合、スピナー出力や人間向けの進捗行をプロトコルとして解析しないでください
  • 生成を呼び出す前に initialize または capabilities/get を最初に呼び出し、返された PPT 画像機能のフィールドをキャッシュしてください
  • capabilities/get -> update もキャッシュしてください。available=true の場合は、人間向け CLI のプロンプトを解析するのではなく、update_command を提示するか、独自の更新フローを実行してください
  • 生成リクエストには task/invoke を使用し、中間状態については event 通知を処理してください
  • 追加の質問には、標準入力の自由形式のプロンプトに回答を書き込むのではなく、task/respond を使用してください
  • キャンセルには task/cancel を使用し、ポーリングのフォールバックには task/status を使用してください

ツールの使用範囲

Office ファイルに関連する補助作業では、Python やその他のツールを引き続き使用できます。

  • 検査、検証、デバッグ、XML や zip の分析、成果物の差分確認には、補助的な用途として使用できます
  • officecli が要求されたワークフローに対応しているように見える場合、これらのツールで最終的な Office 成果物の作成方法を黙って置き換えないでください
  • このルールは処理の振り分けと最終成果物の取り扱いに関するものであり、分析作業で特定の言語やツールを使うことを禁じるものではありません

プロンプト作成の指針

エージェントに officecli の使用を依頼する際は、出力品質に最も影響する詳細を含めてください。

  • ファイルのトピックまたは主題
  • タスクが作成、変更、変換のいずれか
  • 対象読者
  • 希望するトーンまたはスタイル
  • ページ数、セクション数、スライド数の要件
  • 画像を使用するか、使用しないか、既定の動作に任せるか
  • 変換タスクの場合は、ソースファイルと出力形式
  • 簡潔な表現、エグゼクティブ向けの文体、表を多用する構成など、重要な制約

officecli のセットアップや問題の修正に関するタスクでは、明示的な設定コマンドを優先してください。

  • officecli login
  • officecli logout
  • officecli whoami
  • officecli doctor
  • officecli set-key <api-key>
  • ./check-officecli-env.sh
  • ./fix-officecli-env.sh
  • ./uninstall-officecli.sh
  • officecli config status
  • officecli config runtime
  • officecli config set-runtime hosted
  • officecli config set-runtime external
  • officecli config set-generation
  • officecli config set-license
  • officecli config set-publish
  • officecli config set-defaults

出力に関する要件

適切な officecli リクエストでは、提案内容だけでなく、完成したファイル成果物が作成されます。このスキルでは、まず officecli が要求された Office ファイルのワークフローに対応しているかを判断し、対応している場合は最終成果物に officecli を優先して使用してください。

ユーザーから採点、レビュー、検証、品質確認を明示的に求められない限り、生成後に PPT のスコアリングを自動実行しないでください。

  • 生成後の既定の動作は、ファイル成果物を納品することです
  • スコアリングを行う場合は、officecli score ... または office.review / office.score を使用します

エージェントプロトコルのメモ

呼び出し元がエージェントまたは TUI クライアントの場合、優先するプロトコルのインターフェースは次のとおりです。

  • トランスポート:stdio
  • フレーミング:Content-Length ヘッダー
  • 制御プレーン:JSON-RPC 2.0
  • 優先ツール:office.prepare と office.render
  • 互換性用ツール:office.generate

最小限のメソッドセット:

  • initialize
  • capabilities/get
  • session/open
  • session/close
  • task/invoke
  • task/respond
  • task/status
  • task/cancel

重要なイベントタイプ:

  • task.started
  • task.progress
  • task.question
  • task.output
  • task.completed
  • task.failed
  • task.cancelled

別のエージェント向けにガイダンスや例を生成する場合は、エージェント優先のレンダリングフローを使用してください。

  • initialize または capabilities/get を呼び出します
  • document_generation.<type>.payload_schema、preferred_tool、prepare_required を読み取ります
  • report の場合は office.prepare を呼び出し、pptx、docx、xlsx の場合は直接レンダリングに進みます
  • 現在のエージェント自身に最終的なペイロード JSON を生成させます
  • office.render を呼び出して、検証、組み立て、最終ファイルの書き込みを行います
  • img の場合は、document_type=img を指定して office.generate を呼び出します。office.render は画像をサポートしていません
  • 画像以外のドキュメントで office.generate にフォールバックするのは、互換性、レガシークライアント、または OpenClaw 固有のフローの場合に限ります

ユーザーが人間向けの CLI インターフェースを明確に希望している場合に限り、officecli new ... にフォールバックします。

すべてのエージェントクライアントでは、画像の取り扱いに次のルールを適用してください。

  • capabilities/get -> document_generation.pptx.image_support を読み取ります
  • 単体の img リクエストの前に、capabilities/get -> image_generation を読み取ります
  • capabilities/get -> document_generation.<type>.payload_schema を読み取ります
  • capabilities/get -> update を読み取ります
  • pptx のデフォルトの画像動作は、ハードコードされたクライアント側の想定ではなく、default_enabled に基づいて判断します
  • 単体の img では office.generate を使用し、必要に応じて ratio と reference_image を設定します。ローカルのプロバイダー設定は使用しないでください
  • 単体の img では、ユーザーがオンラインアクセスを希望する場合、デフォルトで公開を有効にしておきます。ローカルのみの出力の場合に限り publish=false を渡します
  • 単体の img では、サーバーから残高またはクォータのメタデータが返された場合、それを提示します
  • agent-bridge が利用可能な場合、officecli の stdout から人間向けの更新プロンプトを解析しないでください。代わりに、構造化された update フィールドを使用します
  • ホスト型を人間向け CLI 生成のデフォルトにするには、officecli config set-runtime hosted を実行します。ローカル/外部生成に戻すには、officecli config set-runtime external を実行します
  • report の場合は、最初に office.prepare を呼び出し、最終的な説明の根拠を workbook_summary と base_report_json に置きます
  • ユーザーがテキストのみの PPT を明示的に希望する場合は、enable_images=false を渡し、必要に応じて disable_flag に言及します
  • 生成された PPT に画像がない理由をユーザーから尋ねられた場合は、config_command を案内します
  • task.output、task.completed、または task/status に result_meta.image_support.attention_required=true が含まれている場合、生の警告に埋もれさせず、主要な問題として提示します
  • result_meta.image_support.reason=image_generation_degraded の場合は、image_base_url、image_api_key、image_model を確認するよう、ユーザーにはっきり伝えます
  • 表示には warnings を使用しますが、機械的な判断には result_meta を優先します

OpenClaw パッケージ

このリポジトリには、OpenClaw 向けパッケージも skills/openclaw-officecli/ に含まれています。

  • Codex 向けのスキルディレクトリをそのまま再利用するのではなく、OpenClaw ユーザーにはこのパッケージを使用します
  • OpenClaw パッケージは、officecli agent-bridge を使用した同一ホスト上のローカルデプロイを前提としています
  • OpenClaw のインストール手順は docs/openclaw-user-quickstart.md に記載されています

コメント