You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Workspace namespaces: more than one Workspace per Durable Object storage #219
A Durable Object's storage holds exactly one Workspace, because the vfs_* table names are fixed. @cloudflare/shell in cloudflare/agents had a namespace option that gave each Workspace its own tables. That let one agent keep separate workspaces side by side, for example a scratch area and a durable project, or one per sub-task.
We're deprecating Shell for Computer. Nobody is blocked on this today, but I'm filing it so it's tracked.
Proposal
Add an optional namespace to WorkspaceOptions. Its default would keep today's table names, so existing data doesn't move.
A namespace prefixes every vfs_* / _vfs_* table, along with the execution-runtime tables.
Validate it strictly (for example ^[a-z][a-z0-9_]*$), because it goes into table names as text.
Two Workspaces with different namespaces on the same storage must not see each other's files, changes, sync cursors, or mounts.
A different option is to say "one workspace per Durable Object" and point people at facets or child DOs. If that's the intended model, document it and close this.
Triage summary: this is a feature request for an optional namespace in WorkspaceOptions. It would prefix the vfs_* / _vfs_* and execution-runtime tables, so several Workspaces can share one Durable Object's storage. The default would keep today's table names. The likely area is the Workspace storage/schema layer. The issue also offers an alternative: document one Workspace per DO. I found no duplicate open issues.
Activity
github-actions commentedon Oct 8, 2026
Triage summary: this is a feature request for an optional
namespaceinWorkspaceOptions. It would prefix thevfs_*/_vfs_*and execution-runtime tables, so several Workspaces can share one Durable Object's storage. The default would keep today's table names. The likely area is the Workspace storage/schema layer. The issue also offers an alternative: document one Workspace per DO. I found no duplicate open issues.