CAM docs Guided tour Roadmap Apply for beta
CAM · Command-line Assisted Management

Run the whole shop from one line.

CAM is the CAD-style command line docked to the bottom of every billWright screen. Press Ctrl K and it slides up: type to navigate, create a record, run an action, or ask a question and read the answer right there — no menus, no page loads. This page documents how it behaves and every command it knows today.

Idle: a thin hint bar that expands on focus Summon: Ctrl K anywhere Four kinds: Go · Create · Action · Query
This page has a live command line.

It’s docked at the bottom edge right now, running on the same mock data as the app. Try it.

Ctrl + K to focus it
01

Anatomy of the bar.

When focused, the strip goes crisp and the suggestion list opens upward, so it never hides the screen you’re working on. Every row carries an icon, a label with your typed fragment highlighted, an inline group tag, and a primary alias on the right.

Enter run  ·  Tab complete  ·  ↑↓ move  ·  Esc close
1

Prompt glyph

A mono › that turns green the moment the bar is active.

2

Group tag

Go (blue), Create (green), Action (amber), Query (neutral) — or an entity type for records.

3

Match highlight

The fragment you typed is bolded inside each result label.

4

Alias

The shortest thing you can type to reach that command, shown right-aligned in mono.

02

The six states.

CAM is the same component in every situation — it just changes state as you type. Here are all six, rendered live from the mock dataset.

Idle

A faint, docked strip. Ambient and out of the way until you summon it with Ctrl K.

Record results

Search hits sit in the same list as commands — jobs, clients, invoices, quotes, expenses, employees — each with a secondary line.

Argument prompt & rejected value

A command that needs input shows a prompt label (“Amount:”) with collected args as chips above. It reads like a prompt, not a form.
If a value fails validation, the strip turns red with an inline reason — nothing is saved.

Inline answer

Query commands render the result in the strip — a title, a big value, detail rows, and an optional “open full view” link. No navigation.

Loading · empty · error

Loading — skeleton rows while search resolves.
Empty — no command or record matched.
Error — search unreachable; Enter retries.
03

Command reference.

Every command CAM knows in v1.0.14, grouped by kind. Type any label or alias; the closest match is pre-selected, so most commands are two or three keystrokes plus Enter.

Go

Jump to any screen.

Dashboard
dashboard · home
Invoices
invoices · inv
Expenses & receipts
expenses · exp
Clients
clients
Crew schedule
schedule · calendar
Create

Draft a new record.

Invoice prompts for a client
invoice · bill
Quote
quote · estimate
Expense vendor → amount → category
expense · receipt
Client
client · customer
Action

Do something, now.

Approve pending timesheets
approve
Mark invoice paid
paid · mark paid
Export this month to CSV
export · csv
Query

Ask, answer inline.

Outstanding receivables “what am I owed?”
outstanding · owed
Crew hours this week
hours
Cash position
cash · balance
Records, too

Anything that isn’t a command is a record search: start typing a job, client, invoice number, quote, expense vendor, or crew member and CAM interleaves the matches into the same list. Hit Enter to open it.

04

Keyboard flow.

CAM is built to be driven without the mouse. The whole loop — summon, type, choose, run — lives on the keyboard.

Ctrl / + K Summon & focus the bar
Move through results
Tab Complete the selected command
Enter Run it (or run the next arg)
Esc Close back to idle
Stays open for chaining

After a command runs, the bar stays put so you can fire the next one — approve timesheets, then create an invoice, then check what you’re owed — without ever reaching for the menu.

05

Where CAM is headed.

CAM is designed as the spine the rest of billWright hangs off. As new engines ship, they register their own commands — here’s the honest near-term plan, and what the commands will look like.

Next up

Payroll commands

When payroll lands, approved hours become a pay run you can trigger from the bar — right after you approve the week’s timesheets.

run payroll — week of Jun 1
Next up

CAM on mobile

Today the bar hides below 720px. A summon button is coming so the field crew and owners on a phone get the same command line.

tap ⌘ to summon
On the horizon

Report & export commands

Pull a profit-by-job, a cash-flow read, or a full CSV export straight from the bar — no AI, just a deterministic command that runs the report and hands you the file.

export books — this quarter
On the horizon

Saved & chained commands

Pin the commands you run every Friday into one keystroke — approve the week, generate invoices, export the books.

friday close — 3 steps
No AI in the command line

CAM is a deterministic command engine — it matches what you type to a fixed set of commands and records, with no AI anywhere in the loop. Every command either navigates, drafts, or answers, and anything that touches money or clients shows you what it’ll do and waits for your Enter. The only place billWright uses AI is opt-in receipt parsing — never here.