Skip to main content


These are the flags/commands under buck2 clean and their --help output:

buck clean

Delete generated files and caches.

The command also kills the buck2 daemon.

Usage: buck2-release clean [OPTIONS]

Performs a dry-run and prints the paths that would be removed.

--stale [<DURATION>]
Delete artifacts from buck-out older than 1 week or older than
the specified duration, without killing the daemon

Only considers tracked artifacts for cleanup.

`buck-out` can contain untracked artifacts for different reasons: - Outputs from aborted
actions - State getting deleted (e.g., new buckversion that changes the on-disk state
format) - Writing to `buck-out` without being expected by Buck

--modifier <VALUE>
This option is not used

-h, --help
Print help (see a summary with '-h')

Buckconfig Options:
List of config options

--config-file <PATH>
List of config file paths

--fake-host <HOST>
[possible values: default, linux, macos, windows]

--fake-arch <ARCH>
[possible values: default, aarch64, x8664]

--fake-xcode-version <VERSION-BUILD>
Value must be formatted as: version-build (e.g., 14.3.0-14C18 or 14.1-14B47b)

Re-uses any `--config` values (inline or via modefiles) if there's a previous command,
otherwise the flag is ignored.

If there is a previous command and `--reuse-current-config` is set, then the old config is
used, ignoring any overrides.

If there is no previous command but the flag was set, then the flag is ignored, the
command behaves as if the flag was not set at all.

Used for exiting a concurrent command when a different state is detected

--preemptible <PREEMPTIBLE>
Used to configure when this command could be preempted by another command

[possible values: never, always, ondifferentstate]

Starlark Options:
Disable runtime type checking in Starlark interpreter.

This option is not stable, and can be used only locally to diagnose evaluation performance

Record or show target call stacks.

Starlark call stacks will be included in duplicate targets error.

If a command outputs targets (like `targets` command), starlark call stacks will be
printed after the targets.

Console Options:
--console <super|simple|...>
Which console to use for this command

[default: auto]
[possible values: simple, simplenotty, simpletty, super, auto, none]

--ui <UI>...
Configure additional superconsole ui components.

Accepts a comma-separated list of superconsole components to add. Possible values are:

dice - shows information about evaluated dice nodes debugevents - shows information about
the flow of events from buckd

These components can be turned on/off interactively. Press 'h' for help when superconsole
is active.

Possible values:
- dice
- debugevents
- io: I/O panel
- re: RE panel

Disable console interactions


Event Log Options:
--event-log <PATH>
Write events to this log file

--write-build-id <PATH>
Write command invocation id into this file

--unstable-write-invocation-record <PATH>
Write the invocation record (as JSON) to this path. No guarantees whatsoever are made
regarding the stability of the format

Universal Options:
-v, --verbose <VERBOSITY>
How verbose buck should be while logging.

Values: 0 = Quiet, errors only; 1 = Show status. Default; 2 = more info about errors; 3 =
more info about everything; 4 = more info about everything + stderr;

It can be combined with specific log items (stderr, full_failed_command, commands,
actions, status, stats, success) to fine-tune the verbosity of the log. Example usage

[default: 1]

--oncall <ONCALL>
The oncall executing this command

--client-metadata <CLIENT_METADATA>
Metadata key-value pairs to inject into Buck2's logging. Client metadata must be of the
form `key=value`, where `key` is a snake_case identifier, and will be sent to backend