# Choosing where to run work (/claude-and-chatgpt-2/architecture/choosing-where-to-run-work)

---
type: Document
title: "Choosing where to run work"
description: "Which way of running Claude fits which job, what machine each one uses, what survives, and five habits that always apply."
status: stable
order: 0.45
ksor:
  owner: team:panaversity
  audience: [ public ]
  approval:
    by: process:panaversity
    at: 2026-11-09T20:42:36Z
chapter: "F00A"
part: Front
expert_status: required
concepts: [ "Where to run work" ]
last_verified: 2026-11-09
sources:
  - id: claude-projects
    title: "Let Claude coordinate ongoing work with Projects (Anthropic, verified 2026-11-09)"
    resource: https://code.claude.com/docs/en/claude-projects
  - id: self-hosted
    title: "Self-hosted environments (Anthropic, verified 2026-11-09)"
    resource: https://code.claude.com/docs/en/self-hosted-environments
  - id: claude-tag-security
    title: "Security and data handling, Claude Tag (Anthropic, verified 2026-11-09)"
    resource: https://claude.com/docs/claude-tag/concepts/security-and-data
generated:
  at: 2026-11-09T20:42:36Z
  by: process:panaversity
trust_tier: unverified
build_id: sha256:46fd53c5d7ab1c14f6347908d45c9fdaecda4d914439923ee878bdcecd57803e
dirty: true
ksor_version: 0.0.60
---

### Match the job to the runtime

Each way of running Claude decides two things: what kind of machine the work runs on, and what survives afterward.

| If you need | Use | Where it runs | What survives |
| --- | --- | --- | --- |
| Research, code or files, now, working back and forth with Claude | A Claude chat (a cloud session in the chat examined, not confirmed for every chat) | A cloud sandbox for the session. In the session examined, a Firecracker microVM | The conversation and saved files. The VM's state lasts until the VM is reclaimed or the session ends |
| Work on files on your own computer | A chat linked to your computer, or Claude Code on your machine | A cloud sandbox plus a bridge to the folders you connect. Or your own machine | Your files |
| Recurring work while your computer is off | A cloud scheduled task | A new cloud session for each run, with a fresh copy of the repository and a cached setup script | Only external state |
| A stream of related tasks that outlasts one session | A Claude project (beta, Pro and Max) | Each task in its own thread, usually a new cloud session with its own sandbox. A coordinator session routes the work | Project memory, instructions, the Library and pushed branches. Uncommitted sandbox changes can be lost |
| Recurring work on local files | A Desktop scheduled task | Your machine, while the app is open and the computer is awake | Your local folder |
| Repeating a check during a session | `/loop` | Inside the open session | The session's state |
| Cloud sessions that must reach internal systems, or keep code on your own machines | A self-hosted environment (beta, Team and Enterprise) | Your runners, inside your network. Anthropic still runs the control plane and receives the conversation | Checkouts, artifacts and files on your hosts. Anthropic stores the transcript |
| Team work handed to Claude in Slack | Claude Tag (beta, Team and Enterprise) | A sandbox for each Slack thread, in an organization-level environment | The thread, pushed branches and posted results. Files only in the sandbox are lost when the thread goes quiet |
| A bot, service or database that runs 24 hours a day, 7 days a week | Your own server or a managed service. Claude Code can work on it over SSH | That server | The data that is stored durably, according to the service's design for storage and backups |

The last row follows from the [overview](overview.md): no VM stays on for you. Work that never stops needs a service you or a provider runs.

For the project row, see [Projects: coordination on top of sessions](projects-coordination-on-top-of-sessions.md).[^claude-projects] For the self-hosted row, see [Cloud environments and self-hosted runners](cloud-environments-and-self-hosted-runners.md).[^self-hosted] For the Claude Tag row, see [Claude Tag](from-personal-worker-to-business-worker.md#claude-tag-a-team-worker-with-its-own-accounts).[^claude-tag-security]

### Five habits, whichever you choose

1. **Save anything that matters outside the VM:** in an artifact, a repository, Drive or a connected app.
2. **Expect a fresh VM after an idle gap.** Have your scripts install what they need. For cloud scheduled tasks, put the installs in the environment's setup script, whose result is cached.
3. **Write scheduled prompts as complete, standalone instructions.** The page on [scheduled tasks](scheduled-tasks.md) explains why.
4. **Keep long-lived secrets out of the sandbox.** Reach services through connectors, or use a narrow [network secret](cloud-environments-and-self-hosted-runners.md#variables-network-secrets-and-the-github-proxy). A key that can do something serious, such as paying, belongs in a connector with its own check.
5. **Enforce approval for consequential actions in the service that performs them.** Consequential actions are ones with real effects, such as payments, sends and deletes. An approval prompt in Claude is an extra layer. It is not the safeguard.

The fifth habit is the same rule as in [What stays your responsibility](../new-way-of-working/what-stays-your-responsibility.md): permissions over words. The [worked example](worked-example-brightlines-payment-run-as-a-business-ai-worker.md) shows it in a real design.

[^claude-projects]: As verified on November 9, 2026. Let Claude coordinate ongoing work with Projects, Anthropic.
[^self-hosted]: As verified on November 9, 2026. Self-hosted environments, Anthropic.
[^claude-tag-security]: As verified on November 9, 2026. Security and data handling, Claude Tag docs, Anthropic.
