---
name: dedalus-machines
description: Create and operate persistent Linux virtual machines with the Dedalus CLI, official SDKs, or raw Machines API.
metadata:
  author: Dedalus Labs
  version: "1.0"
---

# Dedalus Machines

Use this skill when a developer or agent needs an isolated Linux machine for code execution, burst compute, or a persistent workspace.

## Start here

1. Follow the [Quickstart](https://docs.dedaluslabs.ai/dcs/dm/quickstart) to authenticate, create a Machine, and run a command.
2. Use [Executions](https://docs.dedaluslabs.ai/dcs/dm/executions) for agents and backend services.
3. Use [SSH](https://docs.dedaluslabs.ai/dcs/dm/ssh) for an interactive debugging shell.
4. Consult the [API reference](https://docs.dedaluslabs.ai/api-reference/dcs) for raw HTTP request and response shapes.

## Machine contract

- A default Machine has 1 vCPU, 4096 MiB of memory, 10 GiB of persistent storage, and a 300-second autosleep window.
- Files on the root filesystem persist across sleep and wake. Memory and CPU execution state reset, and stopped processes must be restarted.
- Autosleep handles intermittent workloads. Call sleep and wake directly only when the application must control the transition time.
- Sleeping stops compute billing. Storage remains billable or counts against the included storage allowance.

## Client boundaries

- Raw mutating HTTP requests require `Idempotency-Key`. Official SDK clients generate one unless the caller overrides it.
- Raw and generated SDK SSH-session requests require an OpenSSH `public_key`.
- `dedalus ssh` generates a temporary Ed25519 keypair and submits its public key automatically.
- SSH authorization must be used within 10 minutes. A connected session closes after 30 idle minutes or 12 hours total.

## Source priority

Use the current documentation for workflows and the [canonical control-plane OpenAPI document](https://github.com/dedalus-labs/dedalus/blob/main/apps/cloud/apps/dcs/src/controlplane/openapi/dcs.openapi.json) for raw API contracts. Treat archived SDK versions and products absent from the current navigation as unavailable.

Do not invent deletion-retention periods, Hobby storage-overage rules, concurrent SSH-session limits, or unreleased feature availability. If current published sources do not answer a product-contract question, state that it is unresolved.
