Roflow CLI

The Roflow CLI (roflow) is the terminal twin of the Roflow desktop app. It runs the same agent, signs in with the same Roblox account, uses the same managed models and billing, and drives the same Roblox Studio Bridge. What changes is the surface: a terminal instead of a chat panel.

Reach for it when you are already in a terminal — scripting a task, working over SSH, or you just prefer the keyboard.

Install

Windows (PowerShell):

irm https://roflow.co/install.ps1 | iex

macOS / Linux:

curl -fsSL https://roflow.co/install.sh | sh

The installer downloads the roflow binary for your platform, verifies it against SHA256SUMS, installs it under ~/.roflow/app, and adds it to your PATH. Open a new terminal afterwards so the updated PATH takes effect.

To update later:

roflow update self

First run

Open a saved place in Roblox Studio, then run roflow in a terminal.

roflow

On first run a Welcome Wizard walks you through:

  1. Sign in with Roblox — the same OAuth sign-in the desktop app uses.
  2. Entitlement check — confirms which plan you are on.
  3. Security notes — what the agent can and cannot touch.
  4. Studio Bridge plugin install — the wizard installs the companion plugin for you. Restart Studio if it asks you to, so Studio picks the plugin up.

You can re-run sign-in at any time from inside the CLI with /login roflow.

How it connects to Studio

The CLI resolves your open Studio place before the session starts, mirrors that place's contents into a hidden per-place workspace, and roots the agent there. The agent edits real scripts in that mirror, and edits round-trip back into Studio through the Bridge.

Studio stays the source of truth. You do not need a Rojo project or a checked-out folder — the CLI works against the place you already have open.

The status line at the bottom of the terminal shows the live Studio connection state, plus how much of your managed usage is left.

Interactive mode

Run roflow with no arguments and you get an interactive session:

$ roflow
> add a coin pickup system with a leaderboard stat
● Edit ServerScriptService/CoinService.luau
    …diff…
✔ task complete

Useful commands inside the session:

CommandWhat it does
/helpList every available command.
/tierPick an effort level — Low, Balanced, or High.
/login roflowSign in again, or switch accounts.

Effort tiers instead of model names

You do not pick raw model names. /tier chooses an effort level and Roflow maps it to the right model for the job:

  • Low — quick edits and questions; cheapest and fastest.
  • Balanced — the default; the right choice for most building.
  • High — hard problems worth spending more on.

/tier high sets it directly; /tier with no argument opens the picker.

One-shot tasks

Pass -p (print mode) with a prompt to run a single task and exit — useful in scripts:

roflow -p "review the coin service for Roblox anti-patterns"

For machine-readable output, add --mode json to get one JSON event per line:

roflow --mode json -p "list the scripts in ServerScriptService"

Sessions

Work is saved as sessions, so you can pick up where you left off:

FlagWhat it does
--continue, -cContinue the previous session.
--resume, -rChoose a session to resume from a list.
--name, -n <name>Give this session a display name.
--no-sessionDon't save this session at all.
roflow --continue "now add a shop for those coins"

Permissions and safety

The agent auto-accepts routine work inside its workspace so you are not clicking through prompts all day, with two hard edges that are always on:

  • Credentials are never readable. Files like auth.json and credentials.json, and the agent's own state directory, are denied outright — this holds even under --safe.
  • Anything outside the workspace asks first, and auto-denies when there is nobody to ask (a scripted run).

Want to approve everything by hand instead? Start with --safe:

roflow --safe

That confirms every mutating action — writes, edits, and terminal commands — even inside the workspace.

Your credentials live under ~/.roflow with restrictive permissions and are never logged or sent to the model. The Studio Bridge only listens on loopback (127.0.0.1), so nothing on your network can reach it.

Common flags

FlagWhat it does
-p, --printRun one task non-interactively and exit.
--mode jsonEmit JSON events, one per line, instead of formatted text.
--safeConfirm every mutating action.
-c, --continueContinue the previous session.
-r, --resumePick a session to resume.
--offlineSkip startup network calls.
--version, --helpThe usual.

Run roflow --help for the complete list.

Next Steps