Volume and backup tools
Persistent volumes and the backups taken of them.
Permission is what the tool server requires before it dispatches; who holds it is read from the control plane’s own grant. The two are read from different places on purpose: a tool server that grants more than the control plane does offers an operation and then has it refused halfway through a conversation.
Advertised says whether the tool appears in the default tool list. Most do not:
a small window is advertised and the rest are found with search_tools, read with
describe_tool and invoked with request_tool. A tool reached that way is checked
against the same permission as a direct call.
Generated from Tool. Hand edits to this table are overwritten on the next build — change the Go doc comment, or the generator.
| Tool | Permission | Who holds it | Advertised |
|---|---|---|---|
backup_create |
backups:create |
operator |
no |
backup_list |
backups:read |
developer, operator, readonly, support |
no |
backup_restore |
backups:restore |
operator |
no |
backup_verify |
backups:read |
developer, operator, readonly, support |
no |
volume_create |
volumes:manage |
operator |
no |
volume_delete |
volumes:manage |
operator |
no |
volume_inspect |
volumes:read |
developer, operator, readonly, support |
no |
volume_list |
volumes:read |
developer, operator, readonly, support |
no |
volume_prune |
volumes:manage |
operator |
no |
backup_create
Section titled “backup_create”Create a new backup of Odysseus state including deployment configs, scaling policies, and metadata
| Argument | Type | Required | Meaning |
|---|---|---|---|
description |
string |
no | Human-readable description of the backup |
include_secrets |
boolean |
no | Include encrypted secrets in backup (requires admin role) |
deployments |
array |
no | Specific deployments to backup (omit for all deployments) |
backup_list
Section titled “backup_list”List available backups with their status and metadata
| Argument | Type | Required | Meaning |
|---|---|---|---|
limit |
integer |
no | Maximum number of backups to return |
status |
one of all, completed, failed, in_progress |
no | Filter by backup status |
since |
string |
no | Show backups since (e.g., ‘24h’, ‘7d’, ‘2026-01-01’) |
backup_restore
Section titled “backup_restore”Restore Odysseus state from a backup. This is a significant operation that may affect running deployments.
| Argument | Type | Required | Meaning |
|---|---|---|---|
backup_id |
string |
yes | ID of the backup to restore |
confirm |
boolean |
no | Must be true to proceed with restore |
dry_run |
boolean |
no | Preview restore changes without applying |
deployments |
array |
no | Specific deployments to restore (omit to restore all from backup) |
skip_running |
boolean |
no | Skip restoring deployments that are currently running |
backup_verify
Section titled “backup_verify”Verify integrity and restorability of a backup without applying it
| Argument | Type | Required | Meaning |
|---|---|---|---|
backup_id |
string |
yes | ID of the backup to verify |
detailed |
boolean |
no | Include detailed verification for each component |
volume_create
Section titled “volume_create”Create a new Docker volume for persistent data storage
| Argument | Type | Required | Meaning |
|---|---|---|---|
name |
string |
yes | Name for the new volume |
driver |
string |
no | Volume driver (default: ‘local’) |
labels |
object |
no | Labels to attach to the volume |
volume_delete
Section titled “volume_delete”Delete a Docker volume. Will fail if volume is in use unless force is specified.
| Argument | Type | Required | Meaning |
|---|---|---|---|
name |
string |
yes | Volume name to delete |
force |
boolean |
no | Force deletion even if volume is in use (WARNING: may cause data loss) |
confirm |
boolean |
yes | Must be true to proceed with volume deletion |
volume_inspect
Section titled “volume_inspect”Get detailed information about a specific Docker volume including mountpoint and labels
| Argument | Type | Required | Meaning |
|---|---|---|---|
name |
string |
yes | Volume name |
volume_list
Section titled “volume_list”List all Docker volumes with their size and usage information. Use format=‘summary’ (default) for minimal output, ‘standard’ for operational details, or ‘full’ for complete data. Use volume_inspect for full details on a specific volume.
| Argument | Type | Required | Meaning |
|---|---|---|---|
driver |
string |
no | Filter by volume driver (e.g., ‘local’) |
unused |
boolean |
no | Only show unused volumes (not mounted by any container) |
format |
one of summary, standard, full |
no | Response detail level: ‘summary’ (minimal), ‘standard’ (operational), ‘full’ (complete). Default: summary |
volume_prune
Section titled “volume_prune”Remove all unused Docker volumes to reclaim disk space
| Argument | Type | Required | Meaning |
|---|---|---|---|
confirm |
boolean |
yes | Confirm the prune operation (required) |