CLI reference
Commands
Authenticate with the stored API key (or MEMPROBE_API_KEY). Add --json to most commands for machine-readable output.
memprobe analyze <file>
Size summary for an ELF: Flash/RAM totals and the biggest sections and symbols. Saves a build to your history.
| Option | Meaning |
|---|---|
| --project <name> | Save the build under a project. |
| --top <n> | How many top symbols to print (default 10). |
| --json | Print raw JSON instead of a table. |
memprobe check <file>
The CI gate. Compares the build against the flash/RAM budgets in memprobe.toml and exits non-zero if any are exceeded.
memprobe diff <old> <new>
Size change between two builds, with per-symbol deltas.
| Option | Meaning |
|---|---|
| --format markdown | Output formatted for a PR comment. |
| --fail-on <rule> | Exit non-zero if flash/RAM grows past a threshold. |
| --top <n> | How many symbol changes to show (default 15). |
memprobe account
Show your plan and this month's usage: analyses used, builds, and projects.
memprobe init
Scaffold a memprobe.toml with flash/RAM budgets to use with check.
memprobe config set / show
config set stores your key (and optional --server); config show prints the current (masked) config.
Exit codes
| Code | Meaning |
|---|---|
| 0 | Success. For check and diff --fail-on, all budgets passed. |
| 1 | A budget or threshold was exceeded, or an error occurred (bad file, auth, quota, network). |
So check is drop-in for a CI step: a non-zero exit fails the job.
Privacy
The CLI extracts only the section and symbol table locally and sends that metadata. Your compiled binary, source, and any other file contents never leave your machine. The metadata is the same information readelf -S and nm print.