Thanks for helping improve grok-cli. This project aims to keep the CLI predictable for humans, scripts, and agent skills, so contributions should preserve stable command behavior and JSON output contracts.
Requirements:
- Rust toolchain from
rust-toolchain.toml - A C toolchain supported by Rust
Run the local checks:
cargo fmt --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --lockedFor a release build:
cargo build --release --locked- Keep public commands flat and script-friendly.
- Add or update tests for every new capability, parameter, validation rule, or output field.
- Preserve existing stable JSON fields such as
data.image,data.video,data.file_path, anddata.transcript. - Update
docs/commands/*.mdfor every user-facing CLI change. - Avoid committing local auth state, media outputs, logs, or files under
.tmp/.
- The change has focused scope and a clear explanation.
- Relevant unit and command-level tests are included.
cargo fmt --check,cargo clippy --all-targets --all-features -- -D warnings, andcargo test --lockedpass.- Documentation and samples are updated when behavior changes.
- No secrets, OAuth tokens, or local state files are included.
Please do not open public issues for suspected vulnerabilities. Follow SECURITY.md instead.