Desktop app
R35 2.5.0
Released August 23, 2026 · stable
Checking this version against the R35 service…
This version is no longer available to download.
Older installers are retired as new versions ship. Get the current version — it includes everything this release had.
Download the current versionWhat's new
- New
- Your office has a chat room. Everybody in the office is in it from the day they join, every message says who said it and when, and you can drop a file in the way you would in any other chat — it is kept in our own storage, and the link you click is made for you at the moment you click it.
- Tag anybody with @ — a colleague, an AI teammate, or the office's Brain — and they are actually told. You pick a colleague or a teammate out of the room rather than typing their name, and tagging one of your AI employees now wakes it: it reads what it was tagged on and answers in the channel. When a tag cannot reach somebody, the message says why instead of sitting there looking exactly like one that went right — and sometimes the why is that nothing went wrong at all: a colleague has taken the conversation over, or the same tag arrived twice. Reading either of those as "she did not reply" would be wrong about a person, not just about the product.
- Every due-diligence fee this office owes is on one page. Which property, how much, how long the seller has been waiting, who let the money go and on what footing, whether a buyer is covering any of it, and the note the approver left for whoever sends it. Until now the only way to see a fee was to already know which lead it was sitting on.
- A person has to approve a due-diligence fee before anybody is asked to pay it. Your employee raises it and it waits — for the manager that employee reports to, or an owner or admin of the office — who writes down why the money should go out, confirms they tried to talk the seller down first, and leaves a note for whoever sends it. Sending it back is not a dead end: the fee, the days and the payee stay on the record and your employee can go and re-trade. The review happens in that employee's own thread, where the conversation that produced the fee is, with a button through to the property itself.
- You can change who an AI employee reports to after you have hired them. It is a handover and never a removal, so an employee is never left with nobody to go to — and one that somehow has nobody shows up on Needs you until somebody takes them on.
- Nobody can be moved out, removed or switched off — and no office can be closed — while an AI employee still reports to them. Instead of being stopped you get the employees by name and the colleagues who could take each one on, right there on the screen — one each, or the whole desk to one person — and the handover happens as they leave. Closing an office offers head office, because everybody in that office is leaving in the same breath.
- Search what your office has said, from the room itself. The magnifier in the channel header — or ⌘F, the way every chat app you already use does it — looks through this channel or everywhere you can see, and clicking a result opens that message in place instead of making you scroll back to it. It looks through the live rooms, and when nothing matches it says which channels it looked in and how far back it went — so "nothing matched" can never quietly mean "we only looked in one room", or in one year. Nothing reaches your results that did not match the words you typed — meaning is used to order what matched, never to let in something that did not.
- Tick the reply that settled a thread. It carries a badge from then on, so the next person reading back does not have to work out which message was the answer — and it is what comes up when somebody searches the same question weeks later. A thread with nothing ticked is not marked unanswered: plenty of conversations never had a question in them.
- Your AI employees look something up before they ask. An employee can search the office channel — including conversations nobody ever tagged it in — so when you tag it, its answer can already carry what the room settled last month instead of asking the same question again. A search never crosses into another office or another firm, and an employee only ever reads a conversation it is genuinely part of.
- Every AI employee has a thread of its own. It belongs to the teammate rather than to whoever manages them, so handing an employee over seats the new manager in the same conversation — they scroll up and read everything said before they arrived instead of starting in an empty room. A teammate nobody manages still has a thread, and it says the seat is empty rather than sitting there looking quiet.
- Your employees' questions arrive in their own thread, and answering there starts them working again. When a teammate needs a person it stops, asks in its thread and tags whoever manages it; your reply closes the question and the work picks up where it left off. A question somebody is genuinely stopped on says so by name — "Alexis Ford is stopped until you answer this" — and sits above everything else, because a person is what that work is waiting on.
- A caller who asks for a real person reaches that employee's own manager first. Whoever the teammate reports to is the first number tried, on the phone that person verified. Where that cannot happen, Needs you says which of the three things is actually wrong — no manager named, a manager with no phone in the book, or a phone nobody has verified — rather than counting them together as one problem.
- The dock tells you how many things need you while you are somewhere else. Only the things that genuinely need a person, never the advisory ones, and it does not clear itself because the check failed — "we could not look" is not "nothing is waiting". On Windows it is a small picture on the taskbar button and stops counting at 9+, where two digits would be a smudge; a screen reader still hears the real figure.
- You choose who answers for a new AI teammate while you are creating it. The field sits beside the AI manager it escalates to first and opens on you, so the usual case is one glance — but the choice is visible now instead of being made quietly on your behalf and found out later.
- There is a Treasury seat now, so whoever sends the money does not have to be an owner. You pick it like any other role when you invite somebody or change what they are, and it is on every plan — a firm on Foundation no longer has to hand the job to an owner. A treasurer reads everything a viewer reads and can mark a due-diligence fee paid; it changes nothing else — no team management, no settings, no billing. The seat does not carry approval: a fee is approved by the raising employee's own manager, or by an owner or admin of the office, and whoever approved it may also mark it paid, so there is no second person to wait for. Your AI employees can see what is waiting to be paid and can never pay it.
- Each January the chat from two years back moves to a Chat archive in Settings — the room always holds this year and last year, and nothing is deleted. For the thirty days before a year moves, the room itself says so and names what is going and when, so anybody reading it that month sees the notice before anything moves. An office owner or an admin can search the archive, as far as their own access reaches: a teammate's private thread is still only open to the people in it. And a search of the room that finds nothing names the archive and who can reach it, instead of letting an empty answer read like the whole story.
- Improved
- When a price lands outside the usual range, the explanation names the actual reason. It used to say a cost line might be missing no matter what had happened — including on an assignment, where the lines it was pointing at are left out on purpose because we never take title.
- The buyer's closing costs are the buyer's, and the offer explanation now says so. It read as though those costs come out of what the seller is offered; they go on top of what the buyer pays and are settled with the attorney.
- A lot we cannot put a price on tells you what is wrong with the property first. No legal access, a title problem, or county records that disagree now come ahead of anything about our own setup — and nothing invites you to type in a value for ground nobody can reach.
- A deal check now looks at whether a buyer's price has an assignment fee beside it. The two are one fact — a price with no fee next to it is half an answer — and the check used to say that point had not been looked at, however you ran it. Ask the Brain to check a deal, or let the overnight sweep do it, and the same question is asked either way.
- A check that could not run no longer reads as all clear, and a fee nobody has entered shows as missing rather than as a settled nothing.
- A question your employee asked that nobody answered now chases you. The overdue sweep was writing a line into a log nobody reads and counting it as though somebody had been told.
- The record of who agreed to what keeps itself in order. Consent you were given, roles you granted, offers decided and anything exported are written into a log filed by month, and the filing now happens on its own — so the record is still whole years from now, which is exactly when it is the only thing that can say what was agreed.
- The escalations tab has left the AI employees page, and the links that pointed at it now say where it went. Questions live in each teammate's own thread — and the old link names both places to look, the chat and Needs you for the ones still open, instead of quietly landing you on the roster with no way to know anything had gone wrong.
- Reading back through a long thread got easier. A year turns over with a marker rather than leaving you to work it out from a date, a thread that has been archived says so at any width — before you type into it rather than after — and read-aloud stops when you leave the page instead of talking to a screen nobody is looking at.
- If a picture can't be saved, you're now told. When somebody texts you a photo and it can't be stored, their message still arrives and still gets answered — and the missing attachment shows up on Needs you, so you can ask them to email it instead of never knowing it was there.
- A teammate you hired but never switched on now says so. New AI employees start switched off — that is the last step of hiring them — so tagging one and getting nothing back used to leave you with no way to tell whether it was broken or simply not started. Needs you names them now, says nothing is wrong, and goes the moment you switch them on.
- Fixed
- An AI employee you switched off carried on working. Only the regular check read the switch, so an incoming text, an email, a voicemail, a signed contract or a task falling due all woke it anyway — you would flip the switch and watch it keep texting a seller. Anything that arrives for a switched-off employee is now held and put in front of you on Needs you, with what came in and how long it has been waiting.
- Somebody deactivated from your team page left their leads still assigned to them. The leads went quiet, nobody was told, and the same person leaving through the office screen had their book released properly — one door remembered and the other did not.
- Removing somebody from a firm set up in the last few weeks failed, with a message saying the office was not part of the firm — about the firm itself.
- Work your employee was doing could vanish. When the AI provider timed out the job was given up on, the employee still showed as working, and the same dead job was picked up and sent to the same provider over and over at your cost. It now waits out an outage and tries again, and if it is genuinely given up on, you are told.
- Longer answers never arrived at all. Anything the model took more than a minute to produce timed out, which on a slower, more thorough model was most real work.
- Your notifications list sat still while new ones were arriving. It only refreshed when you marked something as read.
- A question your employee raised that ended without an answer could get stuck somewhere you would never see it, waiting for ever instead of being handed up to you.
- Somebody on a role you composed yourself could ask the Brain for something and be told it could not, because their role was being looked up in the wrong letter case.
- Texts and emails from real people were being turned away and silently dropped. A reply to one of your AI employees, or a seller's text, could be refused at the door with no record kept and nothing on any screen — and the one log line that did exist often named the wrong cause. Every inbound channel now keeps the refusal, says what actually went wrong, and puts the broken channel on Needs you until a message gets through again.
- When something you type is refused, you see the reason instead of "request validation failed". Every refusal in the console said that — a name nobody in the room answers to, a file type that is not accepted — because the sentence the server sent was being read from the wrong place and thrown away. You get the server's own words now: "Nobody here is called @dav. Did you mean @dave?"
System requirements
- macOS
- Requires macOS 11 (Big Sur) or later
- Windows
- Requires Windows 10 (64-bit) or later
A newer version is available. Get the latest release →
