flash. Run flash --help or flash <command> --help for
inline help.
Global flags
Auth & identity
Log in with your Freesolo API key. Flash verifies the key against Freesolo,
saves it locally, and prints the resolved identity on success. Defaults:
--api-key from FREESOLO_API_KEY; --freesolo-url from FREESOLO_BASE_URL
(else https://api.freesolo.co); --api-url from FLASH_API_URL.flash whoami
Show the identity your stored key resolves to.
flash version
Print the Flash version.
Discovery
flash models
List the supported base model ids. See Supported models
for algorithms, reasoning, and pricing.
flash gpus
List active validated GPU classes with VRAM, provider availability, and
estimated $/hr. Selection is automatic by default;
[gpu] exact_type pins an
exact class.Environments
flash env setup [flags]
Scaffold a starter project into the current directory:
environment.py, a tiny dataset/train.jsonl, configs/sft.toml (SFT),
configs/rl.toml (GRPO), and configs/opd.toml (OPD), plus a TRAINING.md
playbook for coding agents with current CLI usage, reward guidance, and common
run mitigations. Existing files are preserved.On an interactive terminal it first runs a short survey about the interaction
shape (single- vs multi-turn) and whether to train with reasoning, then
scaffolds to match. The flags below skip the questions; a non-interactive run (no TTY, CI,
or -y) takes the defaults (single-turn, no reasoning). A flag that disagrees
with an already-scaffolded project is ignored with a warning.flash env push --name NAME [PATH]
Publish a local Freesolo environment to Freesolo’s managed Environments
Hub (private) and print its id
(
your-org/name). --name is required and is normalized to a lowercase
hyphen slug. You can also pass an explicit namespace/name; Freesolo
validates the namespace against your Freesolo org namespace and rejects a
mismatch. PATH defaults to the current directory. Pass . or any folder
with environment.py at its root to upload helper modules, dataset/,
README.md, and common sibling sidecars (what gets
uploaded lists the extensions). A single
.py file or a folder with one top-level .py file also works for small
smoke tests.flash env pull ENV_ID [PATH] [-o OUTPUT] [-f]
Download a published environment, or one file from it, to local disk.
ENV_ID
must be a managed Freesolo hub slug your-org/your-env; the package is
downloaded through the Flash control plane. Without PATH, the whole
environment is written to a directory. With PATH, only that file is fetched.
-o sets the output path; -f overwrites an existing output.flash env list
List local environment sources you can publish.
flash env delete ENV_ID [-y]
Delete a managed Freesolo Hub environment.
ENV_ID must be a lowercase
namespace/name Hub id; GitHub refs and local paths cannot be deleted from
the Hub. Pass -y/--yes to skip the confirmation prompt.Training
flash train CONFIG [flags]
Submit a managed training run from a TOML config and follow its logs.
Before submit, Flash checks your prepaid balance against the pre-flight
estimate. Successful runs are billed at the quoted Flash cost (see
Cost & billing). Cost and billing explains the pre-flight
--cost
estimate.Run management
flash runs
List your runs with state, algorithm, cost, and model.
flash status RUN_ID [-f]
Print a run’s status, including its current or final cost record.
-f/--follow polls status until the run reaches a terminal state without
replaying worker logs.flash log RUN_ID [-f]
Print a run’s full logs, including worker console/error artifacts.
-f/--follow streams new logs until the run reaches a terminal state.flash cancel RUN_ID
Cancel a run. The CLI waits for the managed worker to stop before returning,
which can take several minutes.
Serving
flash deploy RUN_ID[/step-N] [--dry-run]
Deploy a final adapter or checkpoint. Every real deploy resolves an immutable
revision, runs a mandatory bounded smoke, and activates the stable run-id alias
only after verification.
--dry-run previews without creating a deployment.
Serving is billed per token.If no final adapter exists, use the RUN_ID/step-N selector listed by
flash checkpoints RUN_ID.flash checkpoints RUN_ID
List a run’s saved SFT, GRPO, or OPD checkpoints available to deploy. Serve
one with
flash deploy RUN_ID/step-N. When output is not a styled terminal,
each line is single-space separated (step N RUN_ID/step-N), so it splits
cleanly in scripts (awk, grep "step N").flash chat TARGET -m MESSAGE [flags]
Send a message to a deployment.
TARGET is the stable RUN_ID alias or a full
immutable revision. RUN_ID/step-N is not a chat target.flash deployments [--json]
List each active run alias and its currently active verified revision. Human
output shows run id, step, revision, state, verification time, OpenAI model,
and detail.
--json includes complete records and openai_base_url.flash undeploy RUN_ID
Disable the stable alias and all immutable revisions for the run.
Export
flash export --adapter-id ID --repository OWNER/NAME [flags]
Export a trained adapter to a HuggingFace repo you own (created if it doesn’t
exist).
--adapter-id is either RUN_ID for the final adapter or
RUN_ID/step-N for a saved checkpoint. --repository is required.Next steps
Quickstart
The commands in a full end-to-end run.
Troubleshooting
Fix common CLI and auth errors.