# Projects

> A project holds everything one product needs on Rytiv: its sandbox, its twins and its production, so your agent can build it end to end.

> **Not available yet:** Projects are not an object of the API yet. This page describes how they will work, so you can plan for them. Today your agent works with [apps](https://docs.rytiv.com/apps.md), [computers](https://docs.rytiv.com/computers.md), [sandboxes](https://docs.rytiv.com/sandboxes.md) and [Postgres](https://docs.rytiv.com/postgres.md) directly, and an [agent token](https://docs.rytiv.com/guides/agents-and-tokens.md) with a class and a list of apps draws the line between them.

## One sentence to start

Connect your coding agent once, then ask it to "build project XY on Rytiv". The agent creates the project and works inside it. You do not set up environments, databases or preview addresses by hand.

## Three parts, three levels of risk

| Part | What it is for | What the agent may do |
| --- | --- | --- |
| [Sandbox](https://docs.rytiv.com/concepts/sandbox.md) | Trying things | Everything |
| [Twin](https://docs.rytiv.com/concepts/twins.md) | One task, against a copy of production | Everything, on the copy |
| [Production](https://docs.rytiv.com/concepts/production.md) | Serving your users | Reversible steps; irreversible ones wait for you |

## The rule

**Reversible steps run without asking.** A deploy that can be rolled back, a branch that can be dropped, a secret that can be changed again: none of these stop your agent.

**Only irreversible steps need a tap.** Deleting a production database or dropping a table waits until you confirm it with your passkey. See [Confirmations](https://docs.rytiv.com/concepts/confirmations.md).

The platform enforces this, not the agent: the key your agent holds cannot confirm its own request.
