mcpField
W
workspace

workspace

github.com/aws-samples生産性19737 回インストール3 週間前に更新
リポジトリ

workspace について

workspaceは、現在のセッション内のファイルを一元的に読み書きする機能です。ツールやスキル間でファイルを扱うワークフロー向けに、アップロード、コード生成物、Office文書などを論理パスで整理します。

主な機能

  1. 01セッション内ファイルの一覧表示
  2. 02テキストとバイナリの読み取り
  3. 03テキストまたはBase64の書き込み
  4. 04ツールやスキル間でのファイル受け渡し
  5. 05パス接頭辞によるファイル分類へのアクセス

活用シーン

  1. 01セッションにアップロードしたファイルの確認
  2. 02コードエージェントが作成したファイルの読み取り
  3. 03スキル間でファイルを受け渡す
  4. 04画像やOffice文書の保存

インストール

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

$npx skills add https://github.com/aws-samples/sample-strands-agent-with-agentcore --skill workspace

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

詳細

ワークスペース

現在のセッション内のすべてのファイルに、読み取り/書き込みの統一されたアクセスを提供します。userId と sessionId は自動的に挿入されるため、論理パスのみを指定してください。

パスの規則

プレフィックスアクセス先
uploads/<file>ユーザーがアップロードしたファイル
code-agent/<file>コードエージェントが作成したファイル(自動同期)
code-interpreter/<file>Code Interpreter ワークスペースで作成したファイル
documents/powerpoint/<file>PowerPoint プレゼンテーション
documents/word/<file>Word ドキュメント
documents/excel/<file>Excel スプレッドシート
documents/image/<file>他のツールの画像

注: /mnt/workspace 以下に書き込んだファイルはチャットセッション中保持され、 ユーザーのアップロードファイルは /mnt/workspace/inputs 以下で利用できます。コードエージェントに処理を委任すると、 セッションのアップロードファイルはコードエージェント自身の作業ディレクトリにダウンロードされます。

使用方法

セッション内のすべてを確認する:

workspace_list()
workspace_list("uploads/")
workspace_list("code-agent/")

コードエージェントが作成したファイルを読み取る:

workspace_read("uploads/data.jsonl")           # uploaded structured data
workspace_read("code-agent/calculator.png")   # binary → base64
workspace_read("code-agent/report.md")        # text → string

あるスキルから別のスキルにファイルを渡す:

result = workspace_read("documents/excel/data.xlsx")   # encoding: base64
workspace_write("code-agent/data.xlsx", result["content"], encoding="base64")

メモ

  • テキストファイルは、プレーン文字列の内容とともに encoding: "text" を返します。大きなテキストの読み取りには上限があります。truncated が true の場合、モデルコンテキストに繰り返し読み込むのではなく、Code Interpreter を使って完全なファイルを取得してください。Code Interpreter は /mnt/workspace/inputs/<file> を使用します。
  • JSON、JSONL、NDJSON のアップロードファイルはテキストファイルです。大きなチャット添付ファイルはモデルコンテキスト内で切り詰められる場合がありますが、完全なファイルは uploads/ 以下に残ります。
  • バイナリファイル(画像、Office ドキュメント、PDF など)は encoding: "base64" を返します。
  • workspace_write はどちらのエンコーディングも受け付けます。バイナリには "base64" を使用してください。
  • ここに書き込んだファイルは、セッション内の他のすべてのスキルからすぐに利用できます。

UI ガイダンス(tools-config から)

パスの規則(userId/sessionId は自動挿入):

  • uploads/<file> — ユーザーがアップロードしたファイル
  • code-agent/<file> — コードエージェントのファイル
  • documents/powerpoint/<file> — PowerPoint
  • documents/word/<file> — Word
  • documents/excel/<file> — Excel
  • documents/image/<file> — 画像

**バイナリとテキスト:**画像/PDF/Office ファイルは base64 エンコード(encoding: "base64")で返されます。書き戻す場合も同じエンコーディングを使用してください。

コメント