bim · windows · per-user · offline

Revit, PDF, and site-data automation for Claude Code, Cursor, and Codex.

bim lives on your Windows PC. You describe the work to your AI assistant — export a drawing set, bulk-edit parameters, look up a flood zone, shrink a PDF — and it runs the commands and reports back. You never open a terminal.

Works with Claude Code, Cursor, Codex, and any tool with a terminal — no MCP server needed. Supports Revit 2024, 2025, and 2026.

How it works →  ·  Browse the drivers →  ·  See the workflows →

bim is a program your AI assistant runs on your Windows PC to do real work in your apps and files — Revit, PDFs, Excel, Google Sheets, site data, images, Rhino, SketchUp, Blender, and energy simulation. It installs per-user in one line, no admin rights and no account. After install, nothing leaves your machine unless you ask it to.

How it works

1
Tell your AI assistant to install bim.

Paste the prompt below into any AI coding tool that can run shell commands. It handles the download, verification, and PATH setup — no decisions required from you.

2
Describe the work.

"Pull the flood zone for our project site and write it to a spreadsheet." "Bulk-set the Assembly Code parameter on all structural walls from this Excel file." "Shrink this PDF sheet set before I send it to the client." Plain language is fine.

3
Your assistant runs bim and reports back.

It calls the right driver, shows you the result as structured data, and asks what's next. If something needs your attention first — Revit not open, file in the wrong place — it tells you exactly what to do.

A flood-zone lookup piped straight into a spreadsheet.

For your AI assistant

bim is built to be installed and driven by an agent. Paste this into Claude Code, Cursor, or Codex — it self-installs, then orients from bim describe --json.

paste into your AI coding tool
Install bim-cli on this Windows machine and then use it.
Step 1 — install. Run this exactly:
  powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "iwr -useb https://bimcli.com/install.ps1 | iex"
The installer is per-user (no admin), idempotent, and prints `BIM_INSTALLED_OK <version> <path>` as its final line on success.
Step 2 — refresh PATH in your current session:
  bash:  export PATH="$PATH:$LOCALAPPDATA/bim-cli"
  pwsh:  $env:Path += ";$env:LOCALAPPDATA\bim-cli"
Step 3 — orient:
  bim doctor --json     # environment readiness; each failed check has a fix field
  bim describe --json   # full driver/verb/arg schema; each driver has a docs URL
Fetch the docs URL for any driver you plan to use before issuing commands.
Calling convention: `bim <format> <verb> [args]`. stdout is JSON, stderr is human.
Error envelope: `{"ok":false,"error":{"kind":"...","message":"...","hint":"..."}}`.
Exit codes: 0 ok · 1 generic · 2 usage · 3 not-found · 4 permission · 5 conflict.
After describe + doctor, summarize what's installed and wait for my task.

Agents can read the full reference at /llms.txt, and each driver's own /…/llms.txt.

Drivers

One driver per app or data source, all under bim <format> <verb>. See all drivers →

Workflows

Task-focused guides with copy-paste prompts and exact commands. See all workflows →

Run Revit headless from a terminal
bim revit status + exec — no keyboard, no mouse, no Revit window in focus
requires Revit
Export a Revit schedule to Excel
bim revit schedule export | bim excel write
active
Bulk-edit Revit parameters from a spreadsheet
bim revit exec + param set — read and write parameters across element sets
requires Revit
Inject a flood zone into Revit parameters
bim site flood lookup | bim revit param set — no web map required
active

Pipe compositions

Every command reads stdin and writes stdout as JSON. Drivers compose with standard pipes.

bim revit export --all-sheets --bim --output output/
bim pdf marked drawings.pdf | bim pdf viewer drawings.pdf
bim pdf info drawings.pdf && bim pdf optimize drawings.pdf
bim revit schedule export "Door Schedule" | bim excel write doors.xlsx
bim excel read params.xlsx | bim revit param set --by Mark
bim pdf marked drawings.pdf | bim excel write takeoff.xlsx --pivot category
bim revit warnings list | bim excel write audit.xlsx
bim site flood lookup --address "..." --geocode | bim revit param set --by Mark
bim revit schedule export Sheets | bim google sheets append --spreadsheet <id> --with-header
bim revit warnings list | bim google sheets append --spreadsheet <id> --with-header
bim google docs read --doc <id> | bim revit param set --by Mark

Environment

no cloud · no admin rights · no account · per-user install · read the install script ↗ · uninstall in one line