# CLI

> scribase — one binary for humans and agents, every mutation returns an operation ID.

Source: https://scribase.com/docs/cli

# Production CLI

`scribase` is a real client for the durable management API. It does not construct
an in-memory control plane and it has no fake-provider execution path.

Configure the endpoint and an OIDC access token:

```sh
export SCRIBASE_API_URL=https://scribase-api.example.com
export SCRIBASE_ACCESS_TOKEN=REDACTED
```

Plain HTTP is rejected except for `localhost`, `127.0.0.1`, and `[::1]`, which
supports a local API behind no TLS proxy. The token and request body are sent to
`curl` through stdin configuration; the token is never placed in process
arguments or debug output. Responses are bounded at 16 MiB and printed as the
management API's JSON or Problem Details document.

Example lifecycle:

```sh
scribase doctor
scribase org put acme "Acme Platform"
scribase project put acme billing eu-1
scribase env create acme billing production production snapshot eu-1 create-production-001
scribase operation get acme op-REPLACE_ME
scribase env suspend acme billing production suspend-production-001
scribase env resume acme billing production resume-production-001
scribase env delete acme billing production delete-production-001
scribase audit list acme 0 50
```

Preview environments accept an optional final TTL in hours:

```sh
scribase env create acme billing pr-42 preview schema-only eu-1 create-pr-42 72
```

`SCRIBASE_CURL_BINARY` may select an alternate `curl` executable. Every other
command and argument is listed by `scribase help`.