smith
⚠️ autopilot is on. 3 tickets landed while you were asleep. recommended action:

smith

a whole software company in one window.

staffed by agents. managed by you, or, honestly, not.

download for linux windows read the docs
voted best agent desk by the agents on the desk (n=6, all on payroll, none paid) · v0.2.28 · what's new
scroll. it started without you ↓
01 · the office

it's not a chatbot. it's an office.

every project gets a manager. the manager gets staff: a designer, a researcher, a planner, whoever you've hired. it hands them the jobs, they go off in their own side chats, and each one comes back with a report. you can watch them work. you don't have to.

the manager never reads the 4,000 lines of logs. it sends someone. that's why, three projects and forty runs later, it still remembers what you said on monday. delegation, but for context. management consultants hate this.

docs / desk / chats
managershop · keeps the plot, drafts the cards, asks you things14%
designermocks the new checkout on a screenshot of the old onewaits for your sign-off71%
researcherreads every payment provider's docs so nobody else has toworking58%
plannersplits "make search good" into four ticketsreported back33%
bars: how full each chat's head is. the manager's stays light because the reading happens elsewhere.
02 · the lines

build the assembly line you want.

a run is a line of nodes: plan, work, checks, review, gate, land. reorder them. bolt on a second reviewer. take the gate off entirely if you're feeling brave (78% of people are, probably). quick-fix, full build, batch and research ship in the box. everything after that is yours.

docs / work / templates
quick-fixworkchecksgateland
full buildplanworkchecksreviewgateland
researchclaudegrokcite-checkgate
yoursplanworkchecksreviewreview ×2landno gate · brave
03 · the checks

it can't google it. it can't fake it.

runs get no internet and can't run a single command. they edit files and that's it. your checks do the running, and they don't care how confident the model sounded. red goes straight back as the next instruction, and round it goes again before you hear a thing.

docs / config / checks
checks · round 10/3
unit-tests
lint
e2e
04 · the dial

or you can fafo.

hold its hand at every gate, or slide it to fafo and go to bed. five stops: launches · non-ui gates · ui gates · syncs · fafo. at fafo it approves anything with green checks and syncs as it goes. only a red check or an empty diff will stop it. it's very proud of this.

you'll know it's on: the edge of the window cycles colour, all the way round. it's been doing it since you got here. yeah. that.

docs / desk / autopilot
autopilot · a gate with a real question waits for youshop
launchesnon-ui gatesui gatessyncsfafo
will
won't
queue · these tickets · until 07:00
#12signup form: say which field is wrongwaits
#14orders page: filter by date rangewaits
#15emails: one receipt per order, not twowaits
#16search: typo-tolerant product nameswaits
drag to fafo ↑
05 · the warranty

the serious bit.

nothing lands on your main branch without passing your checks. when a gate is yours, it waits for you, as long as it takes. approve it, trim the scope, or send it back with a reason; the next pass reads that reason.

go on, press one. it's only a shop.

docs / work / gates
gate · reviewingshop · #12
signup form: say which field is wrong, not just 'invalid input'
review 0/5 checks 3/3 files 3 · +112/−18 to gate 14m
reviewgrading…
1✓each field shows its own error under it
2✓the message says what to fix: "email needs an @"
3✓typed values stay when the form is refused
4✓the first wrong field gets focus
5✓tests cover each field's error
ctrl+enter sends it back · esc cancels
← your call
06 · done

and then it's just done.

it rebases onto main, lands, and closes the ticket on its way out. the run board keeps every step, every check and every send-back, for the nosy.

docs / work / land-and-sync#land
3fa91c0signup: name the wrong field in each error
b81d4e2checkout: keep the basket on a declined card
09ce7a1orders: paging for long lists
#12signup form: say which field is wrong, not just 'invalid input'donenow

also in the box

assetsversioned folders of mocks and references. plug one into any run.work / assets →
memorytell the manager something once. it writes it down. it still knows next month.desk / memory-layers →
the boardevery run as a live graph: which node is thinking, what it said, where it got sent back.work / runs →
discordanswer its questions from the pub, on discord.config / desk-json →
your own roleswrite a role once (a persona, its skills, its model) and hire it into any side chat. no interview.desk / roles →

docs

changelog

v0.2.282026-10-30first release with a public site.

download v0.2.28