> Discover all available pages from the documentation index: https://mastra.zisheng.pro/fr/llms.txt # StorageWorkspaceRef `StorageWorkspaceRef` est l'union discriminée utilisée pour associer un Workspace à un Agent stocké. Elle désigne soit un Workspace enregistré par identifiant dans l'environnement d'exécution Mastra, soit un instantané de Workspace intégré en ligne. Il s'agit du type utilisé par [`BuilderAgentDefaults.workspace`](https://agent-builder.mastra.ai/reference/builder-agent-defaults) et par les enregistrements d'Agents stockés. ## Exemple d'utilisation ```typescript import { MastraEditor } from '@mastra/editor' // Variant 1 — reference a runtime workspace by id new MastraEditor({ builder: { enabled: true, configuration: { agent: { workspace: { type: 'id', workspaceId: 'builder-workspace' }, }, }, }, }) // Variant 2 — inline a workspace snapshot new MastraEditor({ builder: { enabled: true, configuration: { agent: { workspace: { type: 'inline', config: { name: 'inline-builder-workspace', filesystem: { provider: 'local', config: { basePath: './agent-files' }, }, }, }, }, }, }, }) ``` ## Variantes **{ type: 'id'; workspaceId: string }** (`IdRef`): Référence un Workspace enregistré dans l'environnement d'exécution Mastra au moyen de new Mastra({ workspace }) ou de mastra.addWorkspace(). L'identifiant est la clé de jointure entre la configuration d'administration, l'enregistrement de l'Agent stocké et l'hydratation. **{ type: 'id'; workspaceId: string }.type** (`'id'`): Discriminant. Doit être la valeur littérale "id". **{ type: 'id'; workspaceId: string }.workspaceId** (`string`): Identifiant d'un Workspace enregistré dans l'environnement d'exécution Mastra. Utilisé par le Builder pour créer un instantané du Workspace, le conserver, puis l'hydrater ultérieurement. **{ type: 'inline'; config: StorageWorkspaceSnapshotType }** (`InlineRef`): Intègre directement un instantané de Workspace. Le Builder dérive un identifiant déterministe de la forme inline-\ et conserve l'instantané. Les configurations en ligne identiques sont ainsi dédupliquées entre les Agents. **{ type: 'inline'; config: StorageWorkspaceSnapshotType }.type** (`'inline'`): Discriminant. Doit être la valeur littérale "inline". **{ type: 'inline'; config: StorageWorkspaceSnapshotType }.config** (`StorageWorkspaceSnapshotType`): Configuration sérialisée du Workspace (système de fichiers, Sandbox, montages, recherche, Skills et Tools). Consultez la section StorageWorkspaceSnapshotType ci-dessous pour obtenir la liste des champs. ## `StorageWorkspaceSnapshotType` Structure intégrée sous `{ type: 'inline', config }`. Définie dans `@mastra/core/storage`. **name** (`string`): Nom d'affichage du Workspace. **description** (`string`): Description de l'objectif affichée dans la liste des Workspaces. **filesystem** (`StorageFilesystemConfig`): Configuration du système de fichiers principal. provider doit correspondre à un identifiant enregistré dans MastraEditor.filesystems (intégré : local). **sandbox** (`StorageSandboxConfig`): Configuration du Sandbox. provider doit correspondre à un identifiant enregistré dans MastraEditor.sandboxes (intégré : local). **mounts** (`Record`): Systèmes de fichiers supplémentaires montés sur le Workspace et indexés selon leur chemin de montage. **search** (`StorageSearchConfig`): Configuration de la recherche (Provider vectoriel, modèle d'embedding et paramètres BM25). **skills** (`string[]`): Identifiants des entités Skill attribuées à ce Workspace. **tools** (`StorageWorkspaceToolsConfig`): Configuration des Tools du Workspace (listes autorisées et valeurs par défaut). **autoSync** (`boolean`): Synchronisation automatique entre le système de fichiers et le Sandbox. (Default: `false`) **operationTimeout** (`number`): Délai d'expiration de chaque opération, en millisecondes. ## Hydratation `StorageWorkspaceRef` est résolu de manière différée lors de l'appel à `mastra.editor.agent.getById()`, et non lors de l'appel à `list()`. L'Editor recherche les Providers de système de fichiers et de Sandbox dans `MastraEditor.filesystems` / `MastraEditor.sandboxes`, puis matérialise un `Workspace` d'exécution. Les Providers manquants donnent lieu à un avertissement et le Workspace est omis. ## Voir aussi - [Workspace](https://agent-builder.mastra.ai/workspace) : concept et exemples détaillés. - [BuilderAgentDefaults](https://agent-builder.mastra.ai/reference/builder-agent-defaults) : emplacement où ce type est défini comme valeur par défaut du Builder. - [Classe MastraEditor](https://mastra.zisheng.pro/fr/reference/editor/mastra-editor) : enregistre les Providers de système de fichiers et de Sandbox. - [StorageBrowserRef](https://mastra.zisheng.pro/fr/reference/editor/storage-browser-ref) : type de référence apparenté pour la configuration du navigateur.