---
title: blossom app_plan:deploy
url: "/docs/reference/cli/app_plan/deploy/"
canonical_url: https://docs.blossom88.com/docs/reference/cli/app_plan/deploy/
markdown_url: https://docs.blossom88.com/docs/reference/cli/app_plan/deploy.md
summary: Deploy a plan into a new Environment and start its first deployment
categories:
- cli
- reference
---

# blossom app_plan:deploy

Deploy a plan into a new Environment and start its first deployment

## Usage

    blossom app_plan:deploy [--id ID] [--data DATA] [--environment ENVIRONMENT] [--note NOTE] [--prepared-by PREPARED_BY] [--follow] [--timestamps]

## Flags

| Flag | Description |
| --- | --- |
| `--id` | App Plan id; omit to plan the repository in the working directory and deploy it |
| `--data, -d` | YAML or JSON data, a path to a data file, or an HTTP(S) URL |
| `--environment` | Environment name for this deploy, such as staging; defaults to the plan's |
| `--note` | A note for whoever reviews the plan: why it exists, what to check, what an agent decided |
| `--prepared-by` | The tool or agent that prepared the plan, shown beside your name, such as "Claude Code" |
| `--follow, -f` | Follow deployment logs |
| `--timestamps` | Show log timestamps. Default: true. |

Examples:

    blossom app_plan:deploy --id app_plan-100
    blossom app_plan:deploy --id app_plan-100 --environment staging
    blossom app_plan:deploy --id app_plan-100 --follow
    cd path/to/the/app && blossom app_plan:deploy

Deploys a plan into a new Environment: the App when it is new, the
Environment, its Services, the Git repository, the registry link, the
variables, and a data link. Then it starts that Environment's first
deployment exactly as `environment:deploy` does, within the Account's capacity
limit, which is the one standing approval for paid capacity. Above the limit
the deployment pauses until the limit is raised. Pass `--follow` to watch the
build and release.

Each deploy creates one more Environment, so a plan can be used again with
another name (`--environment staging`) or, through Edit in the Web UI,
another area. The plan itself never changes and stays as the starter it is;
the Environment owns everything from then on.

Without `--id`, the repository in the working directory is planned (as
`app_plan:create` does), saved, and deployed in one step. `--note` and
`--prepared-by` apply to that saved plan.
