rbx-configs is a lightweight CLI for downloading, editing, and publishing Roblox Universe Configs (feature flags/experiments) via the official Universe Configs Web API. It helps teams keep configs in version control, batch-update flags safely, and manage drafts.
- Download: Export all universe configs to a local JSON file.
- Upload: Read a local JSON and update only changed flags.
- Draft control: Discard or publish staged changes.
If the crate is published to crates.io, you can install with:
cargo install rbx-configsYou need Rust (stable) and Cargo.
- From source (in this repo):
cargo build --release
# Binary at target/release/rbx-configsrbx-configs calls Roblox APIs that require the .ROBLOSECURITY cookie.
- Preferred: if
RBX_COOKIEis not set, rbx-configs will attempt to read your Roblox cookie via therbx_cookiehelper. - Fallback: set the
RBX_COOKIEenvironment variable to your cookie value.
Windows PowerShell example:
$env:RBX_COOKIE = "<your .ROBLOSECURITY value>"All commands require a universe id (-u, --universe-id). You may also specify a file path (-f, --file) which defaults to config.json.
Place -u and -f before the subcommand (e.g., download, upload, draft).
Export the current universe configs to a local file.
rbx-configs -u 123456 -f config.json downloadOutput file format:
{
"FeatureA": {
"description": "Enables feature A",
"value": true
},
"ExperimentBucket": {
"description": "Bucket size",
"value": 10
}
}Read a local JSON and apply only changes (new or updated flags). Existing flags with identical values are ignored.
rbx-configs -u 123456 -f config.json uploadDiscard or publish staged changes explicitly.
# Discard staged changes
rbx-configs -u 123456 draft discard
# Publish staged changes
rbx-configs -u 123456 draft publishThe local JSON uses a simple map keyed by flag name:
description: optional stringvalue: any valid JSON value (string,number,boolean, orarray)
Example with nested value:
{
"CompositeFlag": {
"description": "A array JSON payload",
"value": ["1", "2", "3", "4", "..."]
}
}- Set
RUST_LOGto control verbosity (defaults torbx_config=debugin debug builds,rbx_config=infoin release):
RUST_LOG=rbx_config=debug rbx-configs -u 123456 download- Optional: a
.envfile is loaded if present forRBX_COOKIEor other environment variables.
- 403 Forbidden / CSRF errors: Ensure
RBX_COOKIEis valid and not expired; try re‑setting it. - Rate limit: The client backs off automatically; you may need to wait.
- Invalid config JSON: rbx-configs will log parse errors—verify your file conforms to the schema above.
rbx-configs was developed by @Bear
This project is licensed under the MIT License - see the LICENSE file for details.