はじめに
ドキュメントの作成は、仕様の整理・網羅性の確保・フォーマット統一など、地味に時間がかかる作業です。
今回は Anthropic の Claude Cowork を使い、Google Drive を接続した上で、既存のドキュメントフォーマットを参考にしながら新しい仕様書を自動で作成・アップロードするという一連の作業を試みました。
その過程でいくつかハマりどころもあったので、知見としてまとめます。
やったこと
- Claude に Google Drive コネクターを接続する
- 既存の単体ドキュメント(Excel)を参考フォーマットとして読み込む
- テストパターンの仕様をテキストで渡し、Excelファイルを生成する
- 生成したファイルを Google Drive の指定フォルダへアップロードする
- 参考ファイルのレイアウト(マトリクス形式)に合わせて再設計・修正する
Claude Cowork とは
Claude Cowork は Anthropic が提供するデスクトップ向けの AI エージェントです。チャットで指示するだけで、ファイル操作・コード実行・外部サービス連携などを自律的に行ってくれます。
特徴的なのが MCP(Model Context Protocol)コネクターの仕組みで、Google Drive・Slack・Notion などの外部サービスをプラグインのように接続できます。今回はこの Google Drive コネクターを活用しました。
Google Drive への接続
Cowork に Google Drive コネクターをインストールし、Googleアカウントと連携するだけで準備完了です。
接続後は以下のような操作が可能になります。
- 特定フォルダ内のファイル一覧取得
- ファイルの内容読み込み(xlsx・pdf・画像など)
- ファイルのアップロード(新規作成)
フォルダIDをURLから取得して渡すだけで、すぐにフォルダ内のファイル一覧を返してくれます。
ドキュメントの生成
テストパターンをテキストで渡す
今回は以下のような構成のテスト仕様を渡しました。
- 機能の変更概要(変更前・変更後の挙動)
- カテゴリ別のテストパターン(画面種別・条件・操作・期待結果)
- セキュリティ観点(XSSチェック、パラメータ改ざん)
- 非機能観点(ログ出力確認)
これをもとに Claude が Python(openpyxl)でExcelファイルを生成しました。
最初のアプローチ:縦並びリスト形式
最初は「No / テストパターン名 / 画面 / 前提条件 / 操作 / 期待結果 / 確認結果 / 備考」という列構成の、行ごとにテストケースを並べる形式で作成しました。
ファイルは問題なく生成されましたが、Google Drive でファイルを開こうとすると「ファイルを開けませんでした」というエラーが発生しました。
ハマりどころ:xlsx が Google Drive で開けない
原因の調査
Google Drive API 経由でアップロードした xlsx ファイルが開けない問題が発生しました。
試したこと:
- LibreOffice で再保存(
recalc.pyで再計算・検証)→ファイル自体は正常 -
disableConversionToGoogleTypeフラグのオン・オフを変更 → 改善せず - base64 エンコードの切り捨て確認 → 問題なし
解決策:CSV → Google スプレッドシートへの変換アップロード
xlsx での直接アップロードをあきらめ、CSV として text/csv でアップロードする方法に切り替えました。
Google Drive API は text/csv で受け取ったファイルを自動的に Google スプレッドシート形式に変換してくれます。これにより、ブラウザで問題なく開けるようになりました。
# ポイント:contentMimeType を text/csv にする
create_file(
title="ドキュメント.xlsx",
contentMimeType="text/csv",
textContent=csv_text # UTF-8 CSV 文字列
)
参考ファイルのレイアウトに合わせる
参考ファイルが読み込めない問題
既存の仕様書を参考フォーマットとして読み込もうとしましたが、Google Drive API 側で「生成AIコンテキストでの使用が制限されているアイテム」というエラーが返ってきて読み込めませんでした。
対応として、スクリーンショットとファイルそのものを共有し、openpyxl でローカル解析しました。
参考ファイルのレイアウト分析
解析の結果、参考ファイルは以下のような マトリクス形式でした。
| TC1 | TC2 | TC3 | ...
-----------+-----+-----+-----+----
画面 | | | |
条件A | ● | | ● |
条件B | | ● | |
-----------+-----+-----+-----+----
条件カテゴリ| | | |
あり | ● | ● | |
なし | | | ● |
行が「条件」、列が「テストケース番号」で、該当する箇所に「●」を入れる形式です。
最終行(備考行)に各テストケースの期待結果を記載します。
レイアウトの再現
openpyxl でテーマカラーを取得し(theme:N, tint:X 形式)、近似する RGB に変換して再現しました。
| 行の種類 | 背景色 |
|---|---|
| ヘッダー行(No, テスト番号) | 薄緑 (#C6E0B4) |
| カテゴリ行 | 水色 (#9DC3E6) |
| 備考行(期待結果) | 薄黄 (#FFE699) |
テストケースを条件×テストケースのマトリクスに再設計し、再アップロードしました。
まとめ
| フェーズ | 結果 |
|---|---|
| Google Drive 接続 | コネクターで簡単に接続できる |
| ドキュメントの生成 | テキストの仕様からExcelを自動生成できる |
| xlsx アップロード | Google Drive で開けない場合は CSV 変換が有効 |
| 参考ファイルのレイアウト再現 | スクリーンショット+ファイル共有でフォーマットを解析・再現できる |
特に有効だったポイント
- CSV 変換アップロード:xlsx の開けない問題を回避できる確実な手段
- openpyxl によるフォーマット解析:既存ファイルから色・幅・レイアウトを自動抽出
- テキスト仕様 → マトリクス形式への自動変換:条件の整理が視覚的になり、テスト漏れの確認がしやすい
今後の改善余地
- 参考ファイルが API 経由で読み込める場合は、フォーマット解析まで完全自動化できる
- テストケース数が多い場合は、シートを複数に分けるなどの対応も自動化できる
- 確認結果・実施日・担当者欄への入力補助(条件に応じた自動判定など)も応用できそう
使用技術・環境
- Claude Cowork(Anthropic のデスクトップ AI エージェント)
- Google Drive MCP コネクター(Cowork からインストール可能)
- Python / openpyxl(Excel生成)
- LibreOffice(ファイル再計算・検証)