■ はじめに
ここ最近、コーディングエージェントの利用者はエンジニアだけではなくなってきました。私のような営業職や、業務部門のメンバーが日常的に使う場面も増えています。
ただ、非エンジニアが普段扱うファイルは、圧倒的にWord・Excel・PowerPointが多いかと思います。「こんなパワポを作ってほしい」「このエクセルの1か所だけ直してほしい」といった依頼をエージェントにそのまま渡せると、業務での使い道は一気に広がります。
そうしたなか、IBMのコーディングエージェント「IBM Bob」にも、Officeファイルを読み書きするための機能 office-insights が追加されました。
※以下2026年8月更新 Ver2.1.0「Officeファイルの読み書き」参照
そこで本記事では実際にこのoffice-insightsを触ってみた範囲で、概要や使い方、何ができるのかを紹介するほか、Bobの挙動からわかる範囲で、どのような仕組みで動いているのかまでをまとめていきたいと思います。
IBM Bob IDE版はVer2.1.0以上、Bob ShellはVer2.0.2以上のバージョンで、このoffice-insights利用可能です。
本記事では IDE版 IBM Bob での利用を中心に紹介します。
■ office-insightsとは?
このoffice-insightsは、IBM Bob(Ver2.1.0以上)にデフォルトで入っているSkillsで、Word、Excel、PowerPointなどのOfficeファイルに対して、Bobが次のような操作を行えます。
- ファイルの内容を読み取り、構成の確認やテキストなどの要素を取得する
- 文字の変更や内容の追加・削除など、ファイルを編集する
- 既存ファイルの読み書きだけでなく、新規作成もできる
- ファイル内にエラーがないかチェックする
特に、Officeファイルを単なるテキストや画像として扱うのではなく、OOXMLで構成された「構造を持つドキュメント」として理解し、文章・表・数式・図形・スタイルなどの要素を構造に沿って読み書きできる点が大きな特徴です。※仕組みについては後述します。
Skillsとは「IBM Bobに繰り返しやらせたい作業手順やルール」をMarkdown(SKILL.md)として定義しておくと、ユーザーの指示に応じて、Bobが自動で読み込んで手順どおりに動いてくれるという仕組みです。
https://bob.ibm.com/ja/docs/ide/features/skills
これまでも、Pythonなどで同じようなことはできたものの、実行環境を用意したり、Officeファイルを扱うためのライブラリをインストールしたりと、事前に環境を準備する必要がありました。
対して、このoffice-insightsは、ユーザー側で特別な準備をする必要はなく、Bobに「このExcelの内容を確認して」「このPowerPointを修正して」とお願いすれば、裏でBobがよしなにやってくれるわけです。
面倒な準備をしなくてよい上に、企業管理のPCで自由にライブラリが追加できない場合にも対応できるため、BobでOfficeファイルが非常に使いやすくなったというのが大きな特徴です。
Excelの集計など、データ量が多い処理では、分析用スクリプトの実行にNode.jsを求められる場合があります。
ただし、Node.jsが必須というわけではなく、処理内容によってはPowerShellなど、PCで利用できる別の方法で代用することも可能です。
■ 実際に使ってみよう
さて、ざっくり概要が分かったところで、早速使っていきましょう。当記事ではWord、Excel、PowerPointに対して読み取りや、編集、新規作成がそれぞれどんな感じで出来るのかを試して範囲で紹介したいと思います。
①Wordファイルの変更履歴を「読み取り」
まずは試しに .docx の読み取りをして、どんな挙動をするのか試していきます。
題材は「変更履歴」にしたいと思います。Wordを部署間で共同編集していると量が増えると、誰がどの変更をしたのかを探すのも一苦労ですよね。そこで変更の一覧を表にしてもらいましょう。
イメージとしては以下の様な感じです。※内容はサンプル
Wordファイルを添付し、以下のようなプロンプトをAskモードでBobに投げてみます。
ユーザー側ですることはこれだけ。あとはBobの挙動を眺めてみましょう。
@<サンプルの企画書>.docx
この資料の変更履歴を確認し、修正内容を表で整理してください。
文章の追加、削除、書式変更など全ての変更を対象として、表には、担当者、変更箇所、変更の種類、変更前、変更後、変更内容の要約、を含めてください。
文書は変更せず、変更履歴の確認だけ行ってください。
まずBobは office-insights スキルを読み込んだあと、ファイル全体の構造を概要レベルで確認します👇

ただ、概要情報だけでは変更履歴の詳細までは確認できません。
そこで次に、Wordファイルの内部データを解析用のJSONファイルとして書き出します。
このとき、Bobは作業用として .bob/tmp/office-dumps/<ファイル名> フォルダを作成し、その配下にJSONファイルを保存します👇
このJSONファイルのスキーマから、「変更履歴」を表す「revision.~」という情報があるかどうか確認。Bobの標準読み取りツールを使って、「revision.~」に一致する箇所を特定し、元のJSONファイルのどのあたりを参考にすればいいか当たりを付けます。👇
詳細情報が入ったJSONファイルの、当たりを付けた行付近を一気に読み取り、その情報を元にBobが変更履歴の一覧を表にしてくれました。👇

…以上が実際にBobが作業する流れですが、以下の特徴があることが分かります。
- まずファイル全体の構造を把握→必要に応じて詳細情報取得、と段階を踏んで情報収集
- Officeファイルの内部情報をJSONとして展開し、変更履歴などの構造化された情報も参照できるようにする
つまり単純にWordファイルを読んだだけでは分からない情報まで、このoffice-insightsでカバーできる。しかも段階を踏むので無駄がないという事がよくわかります。
では、この仕組みを使ってOfficeファイルの「読み取り」だけでなく、「編集」ではどこまでできるのでしょうか。続いて実際に試してみます。
②Excelファイルを集計・編集してみる
続いて.xlsxで編集を試していきます。題材はよくある集計シートの作成です。既存の売上明細データから、Excelの関数を使って新たらしいシートに集計用の表とグラフを作ってもらいます。
今回はサンプルとして、案件ID、売上日、年月、製品、売上高、原価、粗利など、営業実績を想定した20項目が入った売上実績明細のダミーデータを用意しました。
.xlsxファイルをBobに扱わせる場合は、元データをExcelのテーブルにしておくのがおすすめです。
https://support.microsoft.com/ja-jp/excel/get-started/create-and-format-tables
テーブル化しておくと、データの構造が明確になり、Bobのようなコーディングエージェントもデータの範囲や項目を把握しやすくなるため、集計や編集を行いやすくなります。
Bobを開いて、Excelファイルを添付し、以下のようなプロンプトをAgentモードでBobに投げます。
@<サンプルの売上明細データ>.xlsx
添付のExcelを読み込み、新しいシートに月別(年月単位)の「売上高・粗利・粗利率・案件数」の集計表を作成してください。
集計値を直接書き込むのではなく、元データのExcelテーブルを参照する数式を各セルに設定し、元テーブルの行数が増減しても自動で再集計されるようにしてください。
表の下に、月別の売上高と粗利を比較する集合縦棒グラフも作成してください。
Bobの挙動を見ると、まず office-insights スキルを読み込み、先程と同じようにファイル全体の構造を概要レベルで確認します。
その後「売上高」「粗利」がどの範囲に入っているかなどを取得し、集計に必要な情報をまとめています。👇
元データの構造を確認したBobは、次に集計方法を組み立てていきます。
今回の「年月」列は文字列ではなく日付として保持されているため、月ごとの集計では、「対象月の1日以上」かつ「翌月1日未満」という条件で絞り込む方法を選択していました。
その後、新しいシートを追加し、設計した集計ロジックをもとに、ヘッダー、集計数式、グラフ、セルの書式などをまとめて設定していきます。👇
このあたりを見ると、指示された値を単純に書き込むのではなく、元データの型や構造を確認したうえで、Excel上で再利用できる形に組み立てていることが分かります。
編集が終わると、Bobは作成したシートや数式、グラフに問題がないかをチェック。数式の数やエラーセルの有無、グラフの追加状況を確認したうえで、実際の数式も一部スポットチェックしていました。
最終的に作業用ファイル(元ファイルはそのまま)を開いてユーザーに確認を促しています。👇
Bobが自動で開いたExcelを見てみると数式設定や集計表の書式設定、グラフなどが完璧にできています。👇
Bobの画面に戻って、承認すると元ファイルに上書きされます。
…ここまでがBobで「編集」をするときの流れになりますが、これも以下の特徴があることが分かります。
- テキストベースの内容だけでなく、セルのデータ型、テーブルの範囲など、Excelの要素単位で認識して編集が可能。
- 編集後には、数式エラーの有無やグラフの作成状況などをチェックし、問題がないか検証する。
つまりExcelの機能を認識して編集をして自分でエラーチェックをするという一連の流れを自律的にやってくれるというわけです。そして重要な変更確認はExcelを開いて人間にさせるというところまで親切にやってくれます。
以上、Word、Excelを簡単に試してみましたが、PowerPointでも同じように読み書きが可能なうえに、それぞれファイルの新規作成も可能です。
特長をまとめると、office-insights はOfficeファイルの構造を理解し、内容の読み取りから編集、検証までを一連の作業として実行できるSkillsだと言えそうです。
今回試した範囲では、特に以下の3点が印象的でした。
- Officeファイルの内部構造を理解して読み書きできる
- 自然言語の指示だけで、数式やグラフなどの編集まで実行できる
- 編集後のエラーチェックまで自動で行える
特に非エンジニアにとっては、Officeファイルの複雑な仕組みを知らなくても、日本語で指示するだけで作業を任せられる点が大きなメリットだと思います。
もちろん、すべてのファイルを正確に処理できるわけではないため、最終的な内容やレイアウトの確認は必要ですが、それでも日常業務で十分に活用できそうだと感じました。
■ office-insightsはどのような仕組みで動いている?
さて、ここまで実際の動作を紹介してきましたが、個人的に気になったのが「BobはどうやってOfficeファイルを読み書きしているのか?」というところです。ここからは、少し内部の仕組みに踏み込んでみたいと思います。
Officeファイルの構造を操作する仕組み
まず、Wordの.docx、Excelの.xlsx、PowerPointの.pptxは、本記事冒頭でも触れたようにOOXMLという形式で構成されています。
これらは内部的には複数のXMLファイルなどをZIP形式でまとめたもので、文章、セル、数式、図形、書式などの情報が構造化されて格納されています。
こうしたOfficeファイルをAIエージェントから操作する仕組みの一例として、オープンソースの「OfficeCLI」があります。
上記の「OfficeCLI」は、Word・Excel・PowerPointのファイルを、Microsoft Officeを起動せずにコマンドから読み書きできるツールです。
例えば、ファイルの概要を取得したり、指定したセルの値を変更したり、スライドに図形を追加したりといった操作が可能です。
IBM Bobに搭載されているoffice-insightsも、こうした「Officeファイルの構造を解析し、要素単位で読み書きする仕組み」を利用していると考えられます。
そのため、単純にテキストを抽出するだけではなく、Wordの変更履歴やExcelの数式、PowerPointの図形なども、それぞれの構造に沿って扱えるわけです。
Bobでは機能を絞り込んでシンプルにしている
ただし、上記のオープンソース「OfficeCLI」のようなツールには非常に多くの機能があり、そのすべてをAIエージェントに公開すると、操作方法が複雑になってしまいます。
そこでIBM Bobのoffice-insightsでは、主に以下の2つのツールを通じてOfficeファイルを操作できるように整理されています。
| ツール | 主な役割 |
|---|---|
office_read |
内容の取得、構造の確認、詳細情報の取得、エラーチェックなど |
office_edit |
要素の追加・変更・削除・移動、一括編集など |
この2つのツールを使い分けることで、Bobは「ファイルの構造を確認する」「必要な部分を編集する」「編集結果を検証する」といった作業を進められます。
※イメージとしては実際にファイルを操作するのが上記のツールで、そのツールの使い方・手順がoffice-insightsに書いてある、という感じです。
また、利用できる操作も、一般的なOffice操作ツールと比べると一部に絞られています。
例えば、Excelではセル・数式・テーブル・グラフなどの基本的な操作が可能ですが、ピボットテーブルやスライサーなどの高度な機能は、Bobのツールから直接操作する機能としては公開されていません。
PowerPointでも、スライドや図形、表、グラフなどは扱える一方、アニメーションや動画、3Dモデルなどの操作は公開されていません。
つまり、Officeファイルを操作するための豊富な機能のうち、Bobが利用するものを整理し、AIエージェントから扱いやすい形にしているというわけです。
ファイルを安全に編集するための工夫
もう一つ特徴的なのが、既存ファイルを編集するときの流れです。
今回のExcelの例でも確認できましたが、Bobは元ファイルをいきなり上書きするのではなく、まず作業用のコピーを作成して編集を進めます。
具体的には、.bob/tmp/office-edits/配下に作業用ファイルを配置し、編集や検証が完了したあと、ユーザーの確認を経て元ファイルに反映する仕組みになっています。
これは単にOfficeファイルを操作するだけのツールとは異なり、AIエージェントが自律的に編集することを前提とした安全対策と言えそうです。
AIが意図しない変更をしてしまった場合でも、元ファイルをすぐに上書きしないため、ユーザーが内容を確認してから反映するかどうか判断できます。
こうして見ると、office-insightsはOfficeファイルの読み書き機能を提供するだけでなく、「Bobが適切な操作を選択し、安全に作業を進めるための手順まで含めた仕組み」になっていることが分かります。
■ まとめ
いかがでしたでしょうか。今回は、IBM Bobのoffice-insightsを使って、WordやExcelの読み取り・編集を試しながら、その仕組みについても紹介しました。
実際に使ってみて感じたのは、office-insightsは単にOfficeファイルを読み書きするだけでなく、「ファイルの構造を理解し、必要な操作を実行して、結果を検証するところまで任せられる」という点です。
もちろん、対応していない機能もありますし、最終的な内容の確認は人間が行う必要があります。それでも、これまで手作業で行っていた資料の確認や集計、修正といった作業を、日本語の指示だけで進められるのは大きなメリットだと感じました。
特に私のような非エンジニアにとって、普段使い慣れたWord・Excel・PowerPointをそのまま扱えることは、コーディングエージェントを日常業務で活用する大きなきっかけになりそうです。
■ 参考文献
・IBM Bob 変更履歴
・IBM Bob Skills
・IBM Bob ツール
・OfficeCLI









