TREXE(1)

πŸ“¦
version 1.4.16 Β· 2 versions
, in ubuntu stonking

okay bestie, welcome to trexe β€” she's a User Commands girly, section 1 of the manual, and she's lowkey about to rearrange your whole workflow. No cap. πŸ’–

πŸŽ€ NAME πŸŽ€

trexe β€” that's it. That's the name. It's giving "I said what I said", and honestly? Iconic. She's trexe, she does trexe things, periodt. ✨

πŸ’… SYNOPSIS πŸ’…

trexe

right?? no args, no flags, just vibes. You summon her, then you hand her options one by one like little gifts and she eats every single time. πŸ’…


✨ DESCRIPTION ✨

okay so here's the tea, bestie πŸ“ β€” every single one of these is [optional] (except --help, she's the exception, she's the moment), and there is so much here. Do not skip any of it, I'm telling you the whole thing, all of it, character for character, because gatekeeping flags is not the energy we're bringing into this group chat. 🫢

🌈 the ones that apply to ALL the services 🌈

  • --help β€” displays the usage and exits. Baby's first flag, and she's perfect. πŸŽ€
  • --version β€” prints the version information and exits. [optional] πŸ’œ
  • --remote β€” the URL for all the services. [optional]
  • --instance β€” the instance for all the services. [optional]
  • --server-cert β€” the server TLS certificate for all the services, PEM-encoded. [optional]
  • --client-key β€” the client private TLS key far all the services, PEM-encoded. Yes she literally wrote "far". We are not fixing it. It's part of her charm now. [optional] 😭
  • --client-cert β€” the client TLS certificate for all the services, PEM-encoded. [optional]
  • --access-token β€” the authentication token for all the services (JWT, OAuth token, you name it), and it gets included as an HTTP Authorization bearer token. [optional]
  • --token-reload-interval β€” the default access token refresh timeout. [optional]
  • --googleapi-auth β€” use GoogleAPIAuth for all the services. [optional]
  • --credential-helper β€” the credential helper executable for all the services. [optional]
  • --retry-limit β€” retry limit for gRPC errors for all the services. [optional]
  • --retry-delay β€” retry delay for gRPC errors for all the services. [optional]
  • --retry-on-code β€” the gRPC status code(s), as string(s), to retry on for all the services, e.g. 'UNKNOWN', 'INTERNAL'. [optional]
  • --request-timeout β€” the timeout for gRPC requests for all the services (set it to 0 to disable the timeout). [optional]
  • --min-throughput β€” the minimum throughput for gRPC requests for all the services, in bytes per seconds. The value may be suffixed with K, M, G or T. [optional]
  • --keepalive-time β€” the gRPC keepalive pings period for all the services (set it to 0 to disable keepalive pings). [optional]
  • --load-balancing-policy β€” the gRPC load balancing policy for all the services, and the valid options are 'round_robin' and 'grpclb'. [optional]

🧚 the CAS girlies 🧚

  • --cas-remote β€” the URL for the CAS service. [optional]
  • --cas-instance β€” the name of the CAS instance. [optional]
  • --cas-server-cert β€” the server TLS certificate for CAS, PEM-encoded. [optional]
  • --cas-client-key β€” the client private TLS key for CAS, PEM-encoded. [optional]
  • --cas-client-cert β€” the client TLS certificate for CAS, PEM-encoded. [optional]
  • --cas-access-token β€” the authentication token for CAS (JWT, OAuth token etc), and it will be included as an HTTP Authorization bearer token. [optional]
  • --cas-token-reload-interval β€” the access token refresh timeout for the CAS service. [optional]
  • --cas-googleapi-auth β€” use GoogleAPIAuth for the CAS service. [optional]
  • --cas-credential-helper β€” the credential helper executable for the CAS service. [optional]
  • --cas-retry-limit β€” the retry limit for gRPC errors for the CAS service. [optional]
  • --cas-retry-delay β€” the retry delay for gRPC errors for the CAS service. [optional]
  • --cas-retry-on-code β€” the gRPC status code(s), as string(s), to retry on for the CAS service, e.g., 'UNKNOWN', 'INTERNAL'. [optional]
  • --cas-request-timeout β€” the timeout for gRPC requests for the CAS service (set it to 0 to disable the timeout). [optional]
  • --cas-min-throughput β€” the minimum throughput for gRPC requests for the CAS service, in bytes per seconds. The value may be suffixed with K, M, G or T. [optional]
  • --cas-keepalive-time β€” the gRPC keepalive pings period for the CAS service (set it to 0 to disable keepalive pings). [optional]
  • --cas-load-balancing-policy β€” the gRPC load balancing policy for the CAS service, valid options are 'round_robin' and 'grpclb'. [optional]

πŸ¦‹ ActionCache, my beloved πŸ¦‹

  • --ac-remote β€” the URL for the ActionCache service. [optional]
  • --ac-instance β€” the name of the ActionCache instance. [optional]
  • --ac-server-cert β€” the server TLS certificate for ActionCache, PEM-encoded. [optional]
  • --ac-client-key β€” the client private TLS key for ActionCache, PEM-encoded. [optional]
  • --ac-client-cert β€” the client TLS certificate for ActionCache, PEM-encoded. [optional]
  • --ac-access-token β€” the authentication token for ActionCache (JWT, OAuth token etc), and it will be included as an HTTP Authorization bearer token. [optional]
  • --ac-token-reload-interval β€” the access token refresh timeout for the ActionCache service. [optional]
  • --ac-googleapi-auth β€” use GoogleAPIAuth for the ActionCache service. [optional]
  • --ac-credential-helper β€” the credential helper executable for the ActionCache service. [optional]
  • --ac-retry-limit β€” the retry limit for gRPC errors for the ActionCache service. [optional]
  • --ac-retry-delay β€” the retry delay for gRPC errors for the ActionCache service. [optional]
  • --ac-retry-on-code β€” the gRPC status code(s), as string(s), to retry on for the ActionCache service, e.g., 'UNKNOWN', 'INTERNAL'. [optional]
  • --ac-request-timeout β€” the timeout for gRPC requests for the ActionCache service (set it to 0 to disable the timeout). [optional]
  • --ac-min-throughput β€” the minimum throughput for gRPC requests for the ActionCache service, in bytes per seconds. The value may be suffixed with K, M, G or T. [optional]
  • --ac-keepalive-time β€” the gRPC keepalive pings period for the ActionCache service (set it to 0 to disable keepalive pings). [optional]
  • --ac-load-balancing-policy β€” the gRPC load balancing policy for the ActionCache service, valid options are 'round_robin' and 'grpclb'. [optional]

πŸ”₯ Execution, she runs things (literally) πŸ”₯

  • --exec-remote β€” the URL for the Execution service. [optional]
  • --exec-instance β€” the name of the Execution instance. [optional]
  • --exec-server-cert β€” the server TLS certificate for Execution, PEM-encoded. [optional]
  • --exec-client-key β€” the client private TLS key for Execution, PEM-encoded. [optional]
  • --exec-client-cert β€” the client TLS certificate for Execution, PEM-encoded. [optional]
  • --exec-access-token β€” the authentication token for Execution (JWT, OAuth token etc), and it will be included as an HTTP Authorization bearer token. [optional]
  • --exec-token-reload-interval β€” the access token refresh timeout for the Execution service. [optional]
  • --exec-googleapi-auth β€” use GoogleAPIAuth for the Execution service. [optional]
  • --exec-credential-helper β€” the credential helper executable for the Execution service. [optional]
  • --exec-retry-limit β€” the retry limit for gRPC errors for the Execution service. [optional]
  • --exec-retry-delay β€” the retry delay for gRPC errors for the Execution service. [optional]
  • --exec-retry-on-code β€” the gRPC status code(s), as string(s), to retry on for the Execution service, e.g., 'UNKNOWN', 'INTERNAL'. [optional]
  • --exec-request-timeout β€” the timeout for gRPC requests for the Execution service (set it to 0 to disable the timeout). [optional]
  • --exec-min-throughput β€” the minimum throughput for gRPC requests for the Execution service, in bytes per seconds. The value may be suffixed with K, M, G or T. [optional]
  • --exec-keepalive-time β€” the gRPC keepalive pings period for the Execution service (set it to 0 to disable keepalive pings). [optional]
  • --exec-load-balancing-policy β€” the gRPC load balancing policy for the Execution service, valid options are 'round_robin' and 'grpclb'. [optional]

🌸 LogStream, she's the narrator 🌸

  • --logstream-remote β€” the URL for the LogStream service. [optional]
  • --logstream-instance β€” the name of the LogStream instance. [optional]
  • --logstream-server-cert β€” the server TLS certificate for LogStream, PEM-encoded. [optional]
  • --logstream-client-key β€” the client private TLS key for LogStream, PEM-encoded. [optional]
  • --logstream-client-cert β€” the client TLS certificate for LogStream, PEM-encoded. [optional]
  • --logstream-access-token β€” the authentication token for LogStream (JWT, OAuth token etc), and it will be included as an HTTP Authorization bearer token. [optional]
  • --logstream-token-reload-interval β€” the access token refresh timeout for the LogStream service. [optional]
  • --logstream-googleapi-auth β€” use GoogleAPIAuth for the LogStream service. [optional]
  • --logstream-credential-helper β€” the credential helper executable for the LogStream service. [optional]
  • --logstream-retry-limit β€” the retry limit for gRPC errors for the LogStream service. [optional]
  • --logstream-retry-delay β€” the retry delay for gRPC errors for the LogStream service. [optional]
  • --logstream-retry-on-code β€” the gRPC status code(s), as string(s), to retry on for the LogStream service, e.g., 'UNKNOWN', 'INTERNAL'. [optional]
  • --logstream-request-timeout β€” the timeout for gRPC requests for the LogStream service (set it to 0 to disable the timeout). [optional]
  • --logstream-min-throughput β€” the minimum throughput for gRPC requests for the LogStream service, in bytes per seconds. The value may be suffixed with K, M, G or T. [optional]
  • --logstream-keepalive-time β€” the gRPC keepalive pings period for the LogStream service (set it to 0 to disable keepalive pings). [optional]
  • --logstream-load-balancing-policy β€” the gRPC load balancing policy for the LogStream service, valid options are 'round_robin' and 'grpclb'. [optional]

πŸ‘‘ the config + actual-doing-stuff era πŸ‘‘

  • --config-file β€” a config file to specify all the options in TOML. [optional]
  • --d β€” Download completed action outputs to this path. Leave empty for no download. [optional]
  • --digest-function β€” set a custom digest function. Supported functions: SHA512, SHA384, SHA256, SHA1, MD5. [optional, default = "SHA256"]
  • --working-dir β€” path to the working directory. [optional]
  • --input-root-digest β€” input root digest for the Action. [optional]
  • --input-path β€” input path for the Action. --input-path=<path> for each input. Use local-path:remote-path[:PROPERTIES] to map an input to a specific path remotely, with optional properties. PROPERTIES is a comma-separated list of 'ro', 'rw', 'unix_mode', 'mtime'. [optional]
  • --output-path β€” the output path to capture. --output-path=<path> for each output. [optional]
  • --output-node-properties β€” a list of keys that indicate what additional file attributes should be captured β€” --output-node-properties=<name> for each property. [optional]
  • --stdout-file β€” the filepath to store stdout. [optional]
  • --stderr-file β€” the filepath to store stderr. [optional]
  • --platform-properties β€” the platform requirements for the execution environment β€” --platform-properties=<key>=<value>,<key>=... for each property. [optional]
  • --environment β€” [Deprecated] use --env instead, she's the glow-up. [optional]
  • --env β€” the environment variables to set in the running program's environment. To specify multiple ones, use --env=K1=V1 --env=K2=V2 .... [optional]
  • --exec-timeout β€” how long an Action gets to vibe before the execution gets killed. That's the timeout, bestie, it's giving "you have until the timer runs out" πŸ’€ --exec-timeout=<seconds> [optional]
  • --priority β€” the priority (aka the relative importance) of this action. A priority of 0 means the default priority, so if you write 0 you're saying "no thoughts, just default". --priority=<priority> [optional]
  • --skip-cache-lookup β€” flag saying the server should not check the cache when executing an action. Like, don't even look. πŸ™ˆ [optional]
  • --do-not-cache β€” flag saying ActionResults should not be cached, and duplicate Action executions will not be merged. No storing, no merging, we move independent ✨ [optional]
  • --follow-symlinks β€” follow symlinks when building input trees. If you enable it, each input cannot be circular (so no ouroboros behaviour, bestie, that's a no πŸŒ€). Enabled by default. [optional]
  • --do-not-follow-symlinks β€” do not follow symlinks. The opposite vibe, the icon of boundaries. [optional]
  • --correlated-invocations-id β€” an identifier that ties multiple tool invocations together. Example from the page: runs of foo_test, bar_test and baz_test on a post-submit of a given patch. Friend group, but for invocations 🫢 --correlated-invocations-id=<str> [optional]
  • --tool-invocation-id β€” an identifier that ties multiple actions together into one final result. Example: multiple actions are required to build and run foo_test. It's the group chat that ends in one group project. --tool-invocation-id=<str> [optional]
  • --action-mnemonic β€” a brief description of the kind of action, like CppCompile or GoLink. A little name tag for your action πŸŽ€ --action-mnemonic=<str> [optional]
  • --target-id β€” an identifier for the target which produced the action that trexe will send. --target-id=<str> [optional]
  • --configuration-id β€” an identifier for the configuration in which the target was built, so you can tell apart, e.g. different sets of host tools or different target platforms. The "which fit was I wearing" of build configs πŸ’… --configuration-id=<str> [optional]
  • --tool-name β€” an extra string to append to the tool-name (trexe) that gets sent in the metadata. Useful when you want to add more info about the invocation, e.x. python to indicate python was used --tool-name=<str> [optional]
  • --tool-version β€” an extra string to append to the tool-version (e.x. 0.0.1) sent in the metadata. Useful for extra info about the invocation, e.x. 2.3.4 to append 2.3.4 (version of a package named in tool-name) to the tool-version metadata --tool-version=<str> [optional]
  • --locality-hint β€” a hint to the scheduler about the locality of the execution. It's used to schedule the execution on a worker that's close to the data of a previous execution. Heads up though: this only works if the remote scheduler is BuildGrid. [optional]
  • --salt β€” an optional value to place the Action into a separate cache namespace from other instances having the same field contents. Seasoning your cache πŸ§‚ --salt=<str> [optional]
  • --wait β€” flag saying trexe should block until execution is complete. This is the default behavior if --operation is not set. Sit tight, bestie ⏳ [optional]
  • --no-wait β€” flag saying trexe should not block until execution is complete. If --operation is not set, this causes trexe to exit with code 0 on successful job submission and write the operation id to stdout in plaintext (e.g. app-cr/6283a9c6-85b2-4b03-92bd). If --operation is set, this causes trexe to exit with a non-zero code. And per the page, this is also the default if --operation is not set. [optional]
ok so the page says --wait is the default when --operation isn't set and that --no-wait is the default when --operation isn't set. The doc really does say both, bestie, I'm just the messenger πŸ‘€ no cap.
  • --operation β€” operation ID to look up and download outputs from (into the specified directory) if -d is set. [optional]
  • --cancel β€” cancels the specified operation. Requires --operation. Can't cancel what you didn't name, periodt. [optional]
  • --result-metadata-file β€” the metadata of trexe execution in JSON gets written into this file πŸ“ [optional]
  • --action-result-json β€” the full action result in JSON gets written into this file. Full send, all of it ✨ [optional]
  • --cache-only β€” if it's not already cached, execute the action in a local BuildBox runner and cache the result. Cache first, ask questions later πŸ’Ύ [optional]
  • --buildbox-run β€” runner command for local execution. [optional]
  • --runner-arg β€” arguments to pass to buildbox-run for local execution. This can be useful if the buildbox-run implementation you're using supports non-standard options β€” so, extra toppings for your runner πŸ“ [optional]
  • --log-progress β€” enables progress logging [optional] [optional]
not it saying [optional] twice 😭 the page is so committed to how optional this is. It's iconic, honestly.
  • --stream-logs β€” enables live streaming of the remote command's stdout/stderr to the local stdout/stderr. It's giving front-row seats 🍿 [optional]
  • --use-localcas β€” use the LocalCAS API for CAS requests. This requires connecting to buildbox-casd. [optional]
  • --localcas-skip-upload β€” skip uploading to the remote CAS when using the LocalCAS API. Heads up: this has no effect if --use-localcas isn't set. [optional]
  • --num-digest-threads β€” the number of threads to hash files to digests. Default=min(hardware-concurrency,16) β€” so your CPU core count, but never more than 16. [optional]
  • --num-io-threads β€” the number of threads for proxy CAS instances to upload or download blobs from/to remote CAS. For now, only upload is parallelized. Default=min(hardware-concurrency*2,32) β€” double your cores, capped at 32. [optional]
  • --log-level β€” log level, and your options are debug, error, info, trace, warning. [optional, default = "error"]
  • --verbose β€” sets the log level to 'debug'. The "tell me everything" button πŸ” [optional]
  • Command to remote β€” POSITIONAL [optional]
  • --metrics-mode β€” Metrics Mode: --metrics-mode=MODE. Options for MODE are:
    • udp://<hostname>:<port>
    • file:///path/to/file
    • stderr [optional]
  • --metrics-publish-interval β€” metrics publishing interval πŸ“Š [optional]
  • --metrics-prefix β€” prefix of metric names, so all your metrics are tagged with a cute little family name 🏷️ [optional]

and that's the whole flag buffet, bestie β€” you ate πŸ’… this page is trexe version 1.4.16, from August 2026, living in section TREXE(1). go forth and invoke responsibly, mwah πŸ«ΆπŸ’–βœ¨

πŸ“¦ where this page comes from