diff --git a/cloud/cli.mdx b/cloud/cli.mdx index 512d64d..dad7b04 100644 --- a/cloud/cli.mdx +++ b/cloud/cli.mdx @@ -84,7 +84,7 @@ celesto computer delete einstein | Command | Description | |---|---| -| `celesto computer create [--template ID] [--cpus N] [--memory MB] [--disk-size-mb MB] [--no-internet]` | Create a computer. Pass `--no-internet` to turn off outbound internet access. | +| `celesto computer create [--template ID] [--cpus N] [--memory MB] [--disk-size-mb MB] [--no-internet]` | Create a computer. Pass `--no-internet` to turn off outbound internet access (requires `celesto` `0.0.13` or later). | | `celesto computer templates` | List templates with preinstalled tools | | `celesto computer list [--status STATUS] [--template ID] [--project ID] [--limit N]` | List matching computers | | `celesto computer get NAME` | Get one computer by name or ID | diff --git a/cloud/computers.mdx b/cloud/computers.mdx index a0f4d70..cbc5098 100644 --- a/cloud/computers.mdx +++ b/cloud/computers.mdx @@ -84,7 +84,7 @@ computer.delete() - Outbound internet setting, fixed when you create the computer. Use `{"mode": "off"}` to create an offline computer. Offline computers use the default home storage rather than `persistent_home=True`. + Outbound internet setting, fixed when you create the computer. Use `{"mode": "off"}` to create an offline computer. Offline computers use the default home storage and cannot be combined with `persistent_home=True`. Requires Celesto SDK `0.0.13` or later. See [Network Control](/cloud/features/network-control) for Python, TypeScript, CLI, and OpenAI Agents examples. @@ -344,6 +344,12 @@ await computer.delete(); Keep `/home/ohm` across stop and restore. Set this at create time when you plan to reuse the computer across sessions. This setting cannot be changed after the computer is created. + + Outbound internet setting, fixed when you create the computer. Use `{ mode: "off" }` to create an offline computer. Offline computers use the default home storage and cannot be combined with `persistentHome: true`. Requires `@celestoai/sdk` `0.1.5` or later. + + +See [Network Control](/cloud/features/network-control) for Python, TypeScript, CLI, and OpenAI Agents examples. + ## Create a computer with a persistent home Computers are ephemeral by default. Pass `persistentHome: true` to keep `/home/ohm` across stop and restore: diff --git a/cloud/features/network-control.mdx b/cloud/features/network-control.mdx index e652119..3cd369e 100644 --- a/cloud/features/network-control.mdx +++ b/cloud/features/network-control.mdx @@ -4,10 +4,14 @@ sidebarTitle: "Network Control" description: "Choose whether an agent computer can connect to the internet, while keeping commands and terminal sessions available for your agent workflow." --- -You can decide whether a new Celesto computer can reach the internet. Turn internet access off for work that uses only the computer's files and installed tools. The computer can still run commands and provide a terminal for your agent. +You can decide whether a new Celesto computer can reach the internet. Turn internet access off when you want the computer to work only from files and tools already on disk, for example when an agent runs untrusted code, processes sensitive input that must not leave the sandbox, or reproduces a build with no outside package fetches. The computer can still run commands and provide a terminal for your agent. Set the choice when you create a computer. It stays with that computer across stop, start, and restore, so create a new computer when a task needs a different setting. + + Network Control requires Celesto SDK **0.0.13** or later for Python and **0.1.5** or later for TypeScript. The `--no-internet` CLI flag ships in the same Python release. + + ## Choose an internet setting | Setting | What your computer can do | @@ -138,7 +142,7 @@ async def main() -> None: asyncio.run(main()) ``` -When you reuse a computer with `computer_id`, the requested policy must match that computer's saved setting. Omit `network_policy` when you want to reuse the computer's existing setting. For a complete agent workflow, see [Sandbox an OpenAI agent with Celesto or SmolVM](/cloud/openai-agents). +When you reuse a computer with `computer_id`, the requested policy must match that computer's saved setting. If it does not, the session fails closed: `client.create()` raises `RuntimeError` and does not start the computer, so an agent that expected an offline sandbox never runs against an online one. Omit `network_policy` when you want to accept whatever setting the existing computer was created with. For a complete agent workflow, see [Sandbox an OpenAI agent with Celesto or SmolVM](/cloud/openai-agents). ## Related pages diff --git a/cloud/openai-agents.mdx b/cloud/openai-agents.mdx index bf2d311..32a9147 100644 --- a/cloud/openai-agents.mdx +++ b/cloud/openai-agents.mdx @@ -126,7 +126,7 @@ Pass a `CelestoSandboxClientOptions` to control how the computer is created. Eve - Outbound internet setting for a newly created computer. Use `{"mode": "off"}` to create an offline computer. When you reuse `computer_id`, the requested setting must match that computer. + Outbound internet setting for a newly created computer. Use `{"mode": "off"}` to create an offline computer. When you reuse `computer_id`, the requested setting must match that computer's saved policy; if it does not, `client.create()` raises `RuntimeError` and does not start the computer. Requires Celesto SDK `0.0.13` or later.