AzureBlobFilesystem
Azure Blob Storage コンテナにファイルを保存します。インターフェースの詳細は、WorkspaceFilesystem インターフェースを参照してください。
インストールインストールへの直接リンク
- npm
- pnpm
- Yarn
- Bun
npm install @mastra/azure
pnpm add @mastra/azure
yarn add @mastra/azure
bun add @mastra/azure
使用方法使用方法への直接リンク
Workspace に AzureBlobFilesystem を追加して Agent に割り当てます。
import { Agent } from '@mastra/core/agent'
import { Workspace } from '@mastra/core/workspace'
import { AzureBlobFilesystem } from '@mastra/azure/blob'
const workspace = new Workspace({
filesystem: new AzureBlobFilesystem({
container: 'my-container',
connectionString: process.env.AZURE_STORAGE_CONNECTION_STRING,
}),
})
const agent = new Agent({
id: 'file-agent',
name: 'file-agent',
model: 'anthropic/claude-opus-4-7',
workspace,
})
アカウントキーアカウントキーへの直接リンク
完全な接続文字列を渡さない場合は、アカウント名とアカウントキーを使用します。
import { AzureBlobFilesystem } from '@mastra/azure/blob'
const filesystem = new AzureBlobFilesystem({
container: 'my-container',
accountName: process.env.AZURE_STORAGE_ACCOUNT_NAME,
accountKey: process.env.AZURE_STORAGE_ACCOUNT_KEY,
})
Shared Access Signature トークンShared Access Signature トークンへの直接リンク
Shared Access Signature(SAS)トークンは、accountName または endpoint と組み合わせて使用します。
import { AzureBlobFilesystem } from '@mastra/azure/blob'
const filesystem = new AzureBlobFilesystem({
container: 'my-container',
accountName: process.env.AZURE_STORAGE_ACCOUNT_NAME,
sasToken: process.env.AZURE_STORAGE_SAS_TOKEN,
})
DefaultAzureCredentialDefaultAzureCredentialへの直接リンク
環境から Azure ID の認証情報を取得できる場合は、DefaultAzureCredential を使用します。
import { AzureBlobFilesystem } from '@mastra/azure/blob'
const filesystem = new AzureBlobFilesystem({
container: 'my-container',
accountName: process.env.AZURE_STORAGE_ACCOUNT_NAME,
useDefaultCredential: true,
})
DefaultAzureCredential を使用する場合は、@azure/identity をインストールします。
- npm
- pnpm
- Yarn
- Bun
npm install @azure/identity
pnpm add @azure/identity
yarn add @azure/identity
bun add @azure/identity
コンストラクターパラメーターコンストラクターパラメーターへの直接リンク
container:
connectionString?:
accountName?:
accountKey?:
sasToken?:
useDefaultCredential?:
endpoint?:
prefix?:
id?:
displayName?:
icon?:
description?:
readOnly?:
プロパティプロパティへの直接リンク
id:
name:
provider:
readOnly:
メソッドメソッドへの直接リンク
AzureBlobFilesystem は WorkspaceFilesystem インターフェースを実装し、標準の Filesystem メソッドをすべて提供します。
readFile(path, options?)- ファイルの内容を読み取りますwriteFile(path, content, options?)- ファイルに内容を書き込みますappendFile(path, content)- ファイルに内容を追記しますdeleteFile(path, options?)- ファイルを削除しますcopyFile(src, dest, options?)- ファイルをコピーしますmoveFile(src, dest, options?)- ファイルを移動または名前変更しますmkdir(path, options?)- ディレクトリを作成しますrmdir(path, options?)- ディレクトリを削除しますreaddir(path, options?)- ディレクトリの内容を一覧表示しますexists(path)- パスが存在するか確認しますstat(path)- ファイルまたはディレクトリのメタデータを取得します
init()initへの直接リンク
Filesystem を初期化し、コンテナへのアクセスと認証情報を検証します。
await filesystem.init()
getInfo()getinfoへの直接リンク
この Filesystem インスタンスのメタデータを返します。
const info = filesystem.getInfo()
// { id: '...', name: 'AzureBlobFilesystem', provider: 'azure-blob', status: 'ready' }
getContainer()getcontainerへの直接リンク
基盤となる Azure Blob Storage の ContainerClient を返します。
const container = await filesystem.getContainer()
getMountConfig()getmountconfigへの直接リンク
Azure Blob Filesystem のマウントに対応する Sandbox Provider 向けのマウント設定を返します。
const config = filesystem.getMountConfig()
// { type: 'azure-blob', container: 'my-container', ... }
Azure Blob を Sandbox にマウントするには、Sandbox が azure-blob マウント設定に対応している必要があります。Sandbox Provider が Azure Blob のマウントに対応していない場合、Workspace からファイルを直接操作するには filesystem を使用してください。