Update container
PUT /api/v1/projects/{projectId}/{agentType}/container
Updates the project’s container configuration. Lightweight changes (budget, skip permissions, allowed domains) are applied in-place. Other changes (image, mounts, env vars, network mode, agent type) trigger a full container recreation.
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Project ID
Request Body required
Section titled “Request Body required ”Updated container configuration
object
Updated container configuration
object
AgentType identifies the CLI agent running in this project (e.g. “claude-code”, “codex”).
AllowedDomains lists domains accessible when NetworkMode is “restricted”.
CloneURL is the git repository URL to clone inside the container (remote projects).
CostBudget is the per-project cost limit in USD (0 = use global default).
EnabledAccessItems lists active access item IDs (e.g. [“git”,“ssh”]).
EnabledRuntimes lists active runtime IDs (e.g. [“node”,“python”,“go”]).
object
ForwardedPorts lists container ports to expose via the reverse proxy. Each port (1-65535) is accessible at http://{projectId}-{agentType}-{port}.localhost:{serverPort}/
Mounts is a list of additional bind mounts from host into the container.
object
ContainerPath is the absolute path inside the container.
HostPath is the absolute path on the host.
ReadOnly mounts the path as read-only inside the container.
NetworkMode controls the container’s network isolation level.
SkipPermissions controls whether terminals skip permission prompts. Stored as a Docker label on the container.
Temporary is true when a remote project’s workspace is ephemeral.
Responses
Section titled “ Responses ”OK
Container holds the container result when a container was created. Nil when the request did not include container configuration.
object
AgentType is the agent type for this container.
ContainerID is the Docker container ID.
Name is the container name.
ProjectID is the deterministic project identifier.
Recreated is true when the container was fully recreated (not just settings updated).
Bad Request
object
Not Found
object
Internal Server Error