Ephemeral
AI agents.

Ephemeral gives you disposable workers. On each request a fresh machine starts, does your task with only the tools, files and budget you allow, then disappears. What remains is the result.

Define once. Run anywhere. Leave nothing behind.

  1. 1

    Define the task

    A prompt and input, the files, APIs and websites it may use, the model, and the most it may spend. Save it as a workflow to run it again by name.

  2. 2

    Run it your way

    Call the API, use the CLI, start one in the dashboard or set a schedule. Each run gets a fresh microVM of its own and streams every step as it happens.

  3. 3

    Keep the result

    The output, the timeline and the exact cost are recorded, and a signed callback can deliver them. The machine and everything on it are destroyed.

curl https://app.ephemer.al/v1/runs \
  -H "Authorization: Bearer $EPHEMERAL_API_KEY" \
  -d '{
    "prompt": "Find out why this payment failed.",
    "input": { "payment_id": "pay_123" },
    "files": [{ "file": "playbook.md" }],
    "connections": { "payments": { "ref": "payments-api" } },
    "web": { "allow": ["status.example.com"] },
    "shell": false,
    "max_cost_micros": 500000
  }'
Succeededrun_8f2a4c19…e07d$0.0054 of $0.50
  1. Queuedbudget $0.50 reserved
  2. MicroVM readyeu-west-1
  3. Worker startedshell off, web on
  4. readplaybook.md
  5. paymentsGET /payments/pay_123 → 200decline_code: insufficient_funds
  6. web_fetchGET status.example.com → 200All systems operational
  7. Succeeded4 model calls, 9,180 tokensThe card issuer declined pay_123 for insufficient funds. The processor had no incidents. Ask the customer to retry or use another card.
  8. Worker destroyed$0.0054 charged, $0.4946 released

Ephemeral workflows, on your schedule

Save a task as a workflow and run it whenever it is needed: from your backend with new input, from the CLI, or on a timetable like every weekday at 09:00 in Tokyo. Each run starts fresh and is recorded on its own.

  • Any cadence, from every few minutes to monthly, in any time zone
  • A start is skipped while the last run is still going
  • Every run keeps the exact definition it used
PUT /v1/workflows/investigate-payment
{
  "prompt": "Find out why this payment failed.",
  "model": "openai/gpt-6-luna",
  "files": [{ "file": "playbook.md" }],
  "connections": {
    "payments": { "ref": "payments-api" }
  },
  "web": { "allow": ["status.example.com"] },
  "timeout_seconds": 120
}

Connect your stack, keep your keys

Give agents your HTTP APIs and MCP servers. Ephemeral holds the credentials and makes each call, so no token ever enters the machine and only the methods or tools you allow get through. Web access passes the same checks.

  • HTTP APIs and MCP servers, with API keys or OAuth
  • Allow only the methods or tools a task needs
  • Every call recorded, credentials removed from responses
Connections for one run
"connections": {
  "payments": {
    "ref": "payments-api",
    "allowed_methods": ["GET"]
  },
  "support": {
    "ref": "helpdesk-mcp",
    "allowed_tools": ["create_ticket"]
  }
},
"web": { "allow": ["status.example.com"] }

Built so nothing lingers

Isolation1 microVM per run

Nothing is shared between runs. Scratch files are discarded with the machine.

Lifetime≤ 1 hour

Five minutes by default. When the timeout ends, the worker is stopped and destroyed.

Connections0 keys in the VM

A broker adds your credentials and enforces the methods or tools you allow.

BudgetHard cap per run

Reserved before the run starts. Model calls stop at the limit. The rest is released.

Files1 MiB each

Mounted read-only at the path you choose, up to 4 MiB in a single run.

Record30 days

Output, every event and the final cost stay after the machine is gone.

Pay for the seconds it runs

Prepaid credits, no subscription. Each run reserves its budget, is charged for what it used, and releases the rest.

How pricing works
Compute
$0.0002per second
Models
At costas the provider reports it
Credits from
$5with optional automatic top-up

Or run it in your own AWS

The same engine and dashboard as a single image. Terraform sets it up in your account, with your model provider and your own network rules. Licensed per installation.

Read the self-hosting guide
Self-hosted installation
python3 scripts/configure.py --production
python3 scripts/terraform.py plan
python3 scripts/terraform.py apply

# then, on the host
EPHEMERAL_MODE=self-hosted
EPHEMERAL_LICENSE_TOKEN=lic_…
EPHEMERAL_MACHINE_ID=production-eu

Every run starts clean.

esc

Nothing matches “”.