Redo CLI
The Redo CLI lets people and AI coding assistants inspect, edit, preview, and publish a Redo site from the terminal.
Fast path for AI assistants
If you are an AI agent working in a repo, start by creating a local Redo workspace and reading the site map before editing anything.
redo login
redo init
redo whoami
redo info
redo pull
redo dev Then follow this loop for each change:
redo read page /
redo pull page /
# edit .redo/pages/<path>/ files
redo push page /
redo push block header # only when changing a shared block
redo screenshot --page / --full
redo publish / Agent rule of thumb
Read before writing, pull before editing, screenshot before publishing, and use --yes only in scripts where deletion or overwrite behavior is intentional.
How it works
The CLI is a bridge. One side is your Redo site. The other side is a local .redo folder.
You log in. You link a folder to a site. Then the CLI can pull page-owned files and shared blocks down to your computer. You edit those files. Page pushes only push page-owned files; shared blocks require an explicit block push.
Redo site
↓ pull
.redo folder
↓ edit
Redo site
↑ push Install
The CLI runs on Node. Install it from npm.
npm install -g @redopage/cli
redo --help
cms --help redo is the main command. cms is the same tool with a short name.
The main flow
Start with login. The browser asks you to approve the CLI. After that the CLI gets a token. The token lets it talk to Redo for you.
redo login Next link this folder to a site. The project config stores the org and site identity only.
redo init
redo whoami Now you can look around.
redo list pages
redo read page 1
redo info When you want to edit, pull files down. The files land in .redo/.
redo pull page 1
redo dev Edit the files. Then push them back. The push is the return trip.
redo push page 1 Publish when the site is ready.
redo publish 1 Common agent tasks
| Goal | Commands to try first |
|---|---|
| Understand the site | redo info, redo list pages, redo list blocks --global |
| Edit one page | redo pull page /about, edit .redo/pages/about/, redo push page /about |
| Check visual output | redo dev, redo screenshot --page /about --full |
| Capture a reference site | redo extract https://example.com, redo screenshot https://example.com --mobile |
| Update site profile | redo site update --name "New Name", redo site update --favicon ./favicon.png |
| Ship the change | redo publish /about, then screenshot the public page |
What lives in .redo
The .redo folder is the workbench. Its config file links the folder to one site without
storing a token. Page-owned blocks live with pages. Global/shared blocks live in .redo/blocks and push only when explicitly requested.
.redo/
config.json
pages/ page metadata, page SEO, page-owned blocks, page notes
blocks/ global/shared blocks
settings/ advanced raw settings
forms/
downloads/ Think of each page as a small box. The page has a JSON file. Its blocks sit next to it. This keeps edits easy to see.
Command groups
Login
Sign in and link a folder
Content
List, read, make, update, and delete content
Local Files
Pull files down and push edits back
Publish
Make draft work go live
Media
Upload files and take screenshots
AI
Give AI a clear map of the site
Safety notes
redo pull writes files in .redo. Save your work before you pull again.
redo delete asks before it deletes. In scripts you must pass --yes,
which makes destructive automation explicit.
Get help
The CLI can teach you from the terminal.
redo help
redo help topics
redo help quickstart
redo help publish