create-feishu-doc について
create-feishu-docは、ブラウザー自動化でFeishuワークスペースに文書を作成するスキルです。認証状態の確認、空白文書の作成、内容入力、スクリーンショットによる確認を行います。
主な機能
- 01agent-browserによるFeishuの操作
- 02ワークスペースの認証状態確認
- 03空白文書の作成とタイトル入力
- 04複数段落の文書内容入力
- 05スクリーンショットによる作成結果の確認
活用シーン
- 01Feishuワークスペースでの文書作成
- 02ブラウザーセッションを再利用した複数文書の作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ fradser/ dotclaude --skill create-feishu-docインストール後、Claude Code で/create-feishu-docを入力して読み込まれたか確認します。
詳細
Feishu ドキュメント作成の自動化
目的
ブラウザー自動化を使用して UI を操作し、認証を行い、指定したタイトルとコンテンツでドキュメントを作成することで、Feishu(Lark)ワークスペースで新しいドキュメントを作成するプロセスを自動化します。
前提条件
- Feishu ワークスペースへのアクセス権(https://leiniao-ibg.feishu.cn)
- ワークスペースの有効な認証情報
agent-browserによるブラウザー自動化機能
ワークフロー
ステップ 1:ブラウザー自動化スキルを読み込む
Skill ツールを使用して office:agent-browser スキルを読み込み、ブラウザー自動化コマンドを利用できるようにします。
ステップ 2:Feishu Drive に移動する
Feishu Drive のホームページを開きます。
agent-browser open https://leiniao-ibg.feishu.cn/drive/home/
ページが読み込まれるまで待ちます。
agent-browser wait --load networkidle
ステップ 3:認証を確認する
すでにログインしているか確認するため、スナップショットを取得します。
agent-browser snapshot -i
ログインが必要な場合は、ユーザーが手動で認証を完了するまで待つか、ページの状態に応じて認証フローを処理します。
ステップ 4:新しいドキュメントを作成する
「新建」(新規)ボタンをクリックします(スナップショットを使用して要素の参照先を特定します)。
agent-browser snapshot -i
# Locate "新建" button ref (e.g., @e1)
agent-browser click @e1
ドロップダウンメニューが表示されるまで待ちます。
agent-browser wait 1000
もう一度スナップショットを取得し、「文档」(ドキュメント)オプションを特定します。
agent-browser snapshot -i
# Locate "文档" button ref (e.g., @e2)
agent-browser click @e2
ステップ 5:新しいドキュメントの種類を選択する
サブメニューから「新建空白文档」(新しいドキュメント)オプションをクリックします。
agent-browser wait 1000
agent-browser snapshot -i
# Locate "新建空白文档" button ref (e.g., @e3)
agent-browser click @e3
ステップ 6:新しいタブを待つ
新しいドキュメントが新しいタブで開くまで待ちます。
agent-browser wait --load networkidle
タブを確認して、新しいドキュメントページが開いたことを確認します。
agent-browser tab
複数のタブがある場合は、新しいタブ(通常は最後のタブ)に切り替えます。
agent-browser tab 2 # Adjust index based on tab list
ステップ 7:ドキュメントのタイトルを入力する
ページでは通常、タイトル入力フィールドに自動的にフォーカスが移動します。デフォルトでタイトルフィールドにフォーカスしている場合は、そのままタイトルを入力します。
agent-browser type @e1 "Document Title Here"
自動的にフォーカスしない場合は、スナップショットを取得してタイトル入力欄を特定します。
agent-browser snapshot -i
# Locate title input ref (e.g., @e1)
agent-browser fill @e1 "Document Title Here"
ステップ 8:ドキュメントのコンテンツを入力する
Tab キーを押すかクリックして、コンテンツ領域に移動します。
agent-browser press Tab
または、コンテンツエディターを特定してクリックします。
agent-browser snapshot -i
# Locate content editor ref (e.g., @e2)
agent-browser click @e2
ドキュメントのコンテンツを入力します。
agent-browser type @e2 "Document content goes here..."
複数行のコンテンツを入力する場合は、入力内容に改行を含めます。
agent-browser type @e2 "First paragraph
Second paragraph
Third paragraph"
ステップ 9:確認して保存する
最後にスクリーンショットを取得し、ドキュメントが正常に作成されたことを確認します。
agent-browser screenshot
Feishu ドキュメントは自動保存されるため、明示的な保存操作は必要ありません。これでドキュメントを使用できます。
ステップ 10:ブラウザーを閉じる(任意)
作業が完了したら、ブラウザーセッションを終了します。
agent-browser close
エラー処理
認証の問題
認証に失敗した場合やログインが必要な場合:
- ワークフローを一時停止します
- 手動でのログインが必要であることをユーザーに伝えます
- 続行する前に確認を待ちます
- 認証後、ワークフローを再開します
要素が見つからない場合
スナップショットで想定される UI 要素(ボタンの参照先)を特定できない場合:
- デバッグのため、
-iフラグを付けずに完全なスナップショットを取得します - UI が変更されたか、言語設定が異なるかを確認します
- フォールバックとしてセマンティックロケーターを使用します。
agent-browser find text "新建" click # Find "新建" (New) button agent-browser find text "文档" click # Find "文档" (Doc) button agent-browser find text "新建空白文档" click # Find "新建空白文档" (New Doc) button
タイムアウトの問題
ページの読み込みに時間がかかりすぎる場合:
- 待機タイムアウトを延長します:
agent-browser wait --load networkidle --timeout 10000 - ネットワーク接続を確認します
- Feishu サービスが利用可能か確認します
カスタマイズ
別のワークスペース
別の Feishu ワークスペースで使用するには、ステップ 2 の URL を置き換えます。
agent-browser open https://your-workspace.feishu.cn/drive/home/
ドキュメントテンプレート
空白のドキュメントではなく、特定のドキュメントテンプレートを使用するには:
- 「Doc」をクリックした後、テンプレートギャラリーに移動します
- 使用するテンプレートを特定してクリックします
- タイトルとコンテンツの入力に進みます
ベストプラクティス
- セッションの再利用:複数のドキュメントを作成する場合は、ブラウザーセッションを開いたままにし、認証状態を再利用します
- エラー時のスクリーンショット:デバッグのため、重要な各ステップでスクリーンショットを取得します
- UI の読み込み待ち:UI 要素が読み込まれるよう、ページ遷移後は必ずネットワークがアイドル状態になるまで待ちます
- 明示的な待機:ドロップダウンメニューをクリックした後などに、明示的な待機(例:
agent-browser wait 1000)を使用します
参考資料
ブラウザー自動化リファレンス
ブラウザー自動化のコマンドとパターンの詳細については、以下をご覧ください。
office:agent-browserスキルを読み込むと、コマンドの完全なリファレンスを確認できます- agent-browser のドキュメントで、スナップショットと操作のパターンをご覧ください
使用例
# Complete workflow example
agent-browser open https://leiniao-ibg.feishu.cn/drive/home/
agent-browser wait --load networkidle
agent-browser snapshot -i
agent-browser click @e1 # 新建 button
agent-browser wait 1000
agent-browser snapshot -i
agent-browser click @e2 # 文档 button
agent-browser wait 1000
agent-browser snapshot -i
agent-browser click @e3 # 新建空白文档 button
agent-browser wait --load networkidle
agent-browser tab
agent-browser tab 2 # Switch to new tab
agent-browser type @e1 "My Document Title"
agent-browser press Tab
agent-browser type @e2 "My document content..."
agent-browser screenshot