Agents and CLI
The aria command line
Install the aria CLI and use it: sign in, link a repository, deploy, check, read logs, manage variables and databases. Every command and flag.
In this page
The aria command line deploys and runs your app from a terminal. Install it with one command, sign in with a code you confirm in Aria, and from then on aria deploy, aria status, aria check and aria logs do what the dashboard does. It needs Node.js 22 or newer.
How do I install it?
curl -fsSL https://api.getaria.cloud/v1/downloads/cli/install.sh | shThe script checks your Node.js version, downloads the CLI, verifies its checksum, installs it as ~/.aria/bin/aria and remembers which Aria it came from. If ~/.aria/bin is not on your PATH, the script prints the line to add. Check it with:
aria --versionHow do I sign in?
aria loginThe terminal shows a code. Confirm it in Aria, on the web or in the app, and choose which workspace and project the terminal can reach. You never type a password into the terminal. Useful options:
--no-browserprints the code and the link without opening a browser.--appconfirms the code in the Mac app instead of the browser.--name NAMEnames this terminal in your list of keys.
aria whoami shows who and what the terminal is signed in to. aria logout signs out and revokes the terminal’s access.
How do I connect a repository?
aria link
aria initaria link chooses which project this repository deploys to and writes .aria/link.json at the repository root. aria init does that if needed, then installs the Aria skill for your agent into .claude/skills/aria/SKILL.md, adds or refreshes an Aria section in AGENTS.md, and connects Claude Code over MCP. Running it twice changes nothing. Options are --no-mcp and --reconnect.
To connect a different agent:
aria mcp add --agent codexSee Connect a coding agent. Inside the Mac app and the web dashboard you can do most of this by asking Aria AI.
What commands are there?
| Command | What it does |
|---|---|
aria login [--no-browser] [--app] [--name NAME], logout, whoami |
Sign in, sign out, show who you are. |
aria link [--workspace NAME] |
Choose the project this repository deploys to. |
aria init [--no-mcp] [--reconnect] |
Install the Aria skill, update AGENTS.md, connect MCP. |
aria mcp add --agent AGENT |
Add Aria to claude-code, codex, gemini-cli, antigravity, cursor or other. Options: --app wsp_…, --can LIST, --no-browser, --in-app. |
aria deploy [SERVICE] [--wait] |
Apply aria.yaml, or deploy one service. |
aria status |
List services with their status and addresses. |
aria check |
Check every service, database, migration, Supabase part and domain. Exits 1 if anything fails. |
aria logs [SERVICE] [--follow] [--lines N] |
Show recent output. N is 1 to 2000, default 200. |
aria open [SERVICE] |
Open the service’s web address. |
aria env ls |
List variables, their sources and whether they are set. |
aria env add NAME [--service SVC] [--stdin] |
Set a value with hidden input. |
aria env import FILE [--yes] [--no-deploy] |
Send a .env file’s values to Aria. Prints names only. |
aria env rm NAME [--service SVC] |
Remove a value you set. |
aria env pull [--file F] [--service SVC] |
Write values to a local file, after you approve it in Aria. |
aria db url [--database NAME] [--ttl MIN] [--read-only] [--owner] |
A temporary database login, after you approve it. |
aria db migrate FILE [--database NAME] [--name N] |
Run a SQL file once, after you approve it. |
Options on every command:
| Option | What it does |
|---|---|
--workspace NAME |
The project to act on. The default is the repository’s link. |
--api URL |
The Aria API to talk to. The default is the repository’s link, then the one you installed from. |
--json |
Machine-readable output. |
-h, --help |
Show help. |
-v, --version |
Show the version. |
What does deploying look like?
aria deploy --waitThis applies aria.yaml to the whole project and follows each step until it finishes. Without --wait it prints an operation id and returns. If aria.yaml changed since the last deploy, aria status tells you. Once the app is live, pushing to GitHub deploys the services your commit touched.
aria deploy web
aria logs web --followWhat waits for my approval?
Some commands ask for your approval in the Aria app, and wait until you give it: aria env pull, aria db url and aria db migrate. They reveal secrets or change data, and an agent can drive a terminal, so a typed confirmation in the terminal is not enough. Secret values are typed by a person: aria env add refuses to run without a person at the keyboard unless you pass --stdin.
How do agents use the CLI?
Add --json to get output a program can read. aria check --json exits 1 when something fails, which makes it easy to use in a loop that fixes things. aria env import prints names, never values, so it is safe for an agent to run with your approval.
What are the exit codes?
0 means success. 1 means a failure, including aria check finding a failing check. 2 means a usage error, such as a missing argument.