Radical
Reference

CLI commands and flags

The radical executable and native target selection.

The radical executable runs in the app directory and resolves that directory's Vite config. The CLI has three public subcommands.

radical android

Resolves the current config and generates .radical/android. In bundled mode, builds the UI before generation. Without --generate-only, builds with Gradle, installs the debug APK, and launches it with adb.

FlagTypeDefault
--generate-onlyBooleanfalse. Generates without building or launching the native app. Bundled UI still builds.
--targetStringEmpty. An adb serial or installed AVD name.
Android target ruleBehavior
No --targetConnected emulator first, then another connected device; otherwise prompt for an installed AVD
AVD nameCan start that AVD
Boot readiness120-second timeout
adb lifecycleDoes not restart shared adb server

The SDK path resolves from ANDROID_HOME, then ANDROID_SDK_ROOT. Otherwise adb and emulator resolve through PATH.

radical ios

Resolves the config and generates .radical/ios. In bundled mode, builds the UI before generation. Without --generate-only, builds a Debug simulator app with xcodebuild, installs it through simctl, and launches it.

FlagTypeDefault
--generate-onlyBooleanfalse. Generates without building or launching the native app. Bundled UI still builds.
--targetStringEmpty. A simulator UDID.
iOS target ruleBehavior
No --targetBooted available iPhone simulator, then first available iPhone
Physical iOS deviceNot selected by CLI
Build hostmacOS with Xcode

radical typegen

Resolves Vite config in build mode and writes .radical/plugins.d.ts. Does not build the UI, generate native projects, or launch a device. Has no Radical-specific flags.

Framework flags and failures

The Effect CLI supplies these global flags on every command. The executable passes the package manifest version to Command.run. Release builds stamp that version before bundling.

FlagValues and behavior
--help, -hPrints command usage.
--version, -vPrints version information.
--wizardStarts interactive wizard mode for a command.
--completionsPrints a completion script for bash, zsh, fish, powershell, sh, or pwsh.
--log-levelMinimum log level: all, trace, debug, info, warn, warning, error, fatal, or none.

The global flag list matches radical --help and radical android --help.

Native generation requires the Radical Vite plugin. Remote generation requires a configured origin or a recorded dev-server URL. The generated metadata lives in .radical/native.json.

Failure tagMeaning
InvalidConfigInvalid config, identity, or generated contributions.
InvalidPluginInvalid manifest, unavailable dependency, or Vite resolution failure.
PluginDependencyConflictEnabled manifests have incompatible dependency requirements.
AndroidDeviceUnavailableNo connected device or installed AVD matches.
AndroidBootTimeoutThe selected target does not finish booting within the timeout.
IosSimulatorUnavailableNo available iPhone simulator exists for automatic selection.
ShellCommandErrorA native tool command fails.
InvalidAsset or AssetGenerationFailedInvalid source image or image-generation failure.

Source: CLI definitions.

On this page