# Command line

`humanform-cli` is the Mac command-line tool shipped inside the Humanform app. It reads the same on-device Atlas grids as the app. It does not call a Humanform server.

On a Mac, open **Settings → Command Line**. That screen shows the tool path, reveals it in Finder, and copies an install command that links it as `humanform-cli` in your home `bin` folder. Add `$HOME/bin` to `PATH` if Terminal cannot find the name. The binary is named `humanform-cli` so it does not collide with the app on a case-insensitive disk.

```
humanform-cli predict <measurement> [options]
humanform-cli measurements [--query <text>]
humanform-cli packs
humanform-cli fit --limit <measurement,lower,upper> [options]
humanform-cli population <measurement> --min <mm> --max <mm> [options]
humanform-cli accommodate --pack <preset> --target <percent> [options]
humanform-cli mcp
humanform-cli --version
```

## Predict

```
humanform-cli predict stature --country US --gender male --age 30 --percentile 50
humanform-cli predict popliteal -c DE -a 40 -p 5 --plain
```

| Option | Meaning |
| --- | --- |
| `-c`, `--country` | Country name or code. Default is the app preference, otherwise `US`. |
| `-g`, `--gender` | `male`, `female`, or `everyone`. Default is `everyone`. |
| `-a`, `--age` | Age from 1 to 88. Default is 35. |
| `--age-min`, `--age-max` | Edges of a census-weighted age band. |
| `-p`, `--percentile` | Percentile from 1 to 99. Default is 50. |
| `--unit` | `mm`, `cm`, or `in`. Default is `mm`. |
| `--json` | Print a JSON object. |
| `--plain` | Print only the number. |

Measurement names can be catalog ids, such as `PoplitealHeight`, or everyday names, such as `popliteal`. [Measurements](https://docs.humanform.app/measurements) lists the catalog. [Countries](https://docs.humanform.app/countries) lists the codes.

## Catalog

`measurements` lists the catalog. Add `--query` to search a name or synonym. `packs` lists Humanform presets: `workstation`, `standingReach`, `cockpit`, and `apparel`. Presets are measurement sets, not standards certificates.

## Fit, population, and accommodate

These three commands require [Humanform Pro](https://docs.humanform.app/pro).

`fit` reports the share of one age, or a census-weighted age band, that meets every limit at once. Repeat `--limit` with a measurement and a lower and upper bound in millimetres.

`population` draws a census-weighted sample for one measurement and reports how many sampled people fall between `--min` and `--max`. `--seed` defaults to 1. `--agents` defaults to 250.

`accommodate` solves millimetre limits so a target percent of people fit. Pass `--pack`, repeat `--measurement`, or use both. `--target` defaults to 90 and accepts 1 through 99.

A single age is not census-weighted. An age band is.
