Free · MIT licensed · Built for 50-500 doors
Turn your month-end export into an owner update that answers the questions before the owner asks them, without touching your ledger or sending anything automatically.
New in version 1.1
Send one word after a run. Paste what comes back into the report page in your download. You get a finished report for the owner, in your firm’s colour, ready to save as a PDF and send the way you already do.


After the draft, send the word report. The agent hands back the same run as report data. No new figures and no new explanations.
Open owner-report.html from the download. It runs in your browser with no internet connection, so the owner’s data never leaves your computer.
Flags stay in a review panel that never prints. If a charge has no explanation, the report stays locked until the agent is rerun with one.

Screenshots show the report page rendering the fictional sample month from the download. Version 1.1 adds the report and an approved-owner check. Both are covered by two new tests in the repository, separate from the 159-run record below.
The problem
Your accounting software produces a correct statement. It does not produce an explanation, so somebody builds one by hand, and still takes the call.
We sorted a few months of these calls and they collapse into four questions. Here is what owners are actually asking, and what answers each one.
“Reports don’t break down the expenses by unit… owners aren’t able to tell what a management fee charge was for… we get calls from upset owners and our accounting department has to create reports outside of the software.”
Kendell A, President · AppFolio user · CapterraDoorLoop states there is no way to send an owner statement automatically.
Buildium confirms there is no feature for sending owner statements automatically.
Priced for portfolios far larger than 50 to 500 doors.
How it fits together
The agent never touches your owners and never touches your money. It prepares; you release.
The agent
Paste in one owner’s closed month. Get back four things.
Each expense gets a plain “what this was for”, taken only from the memo, vendor or work order.
If the export does not say, it writes NEEDS A HUMAN, it never guesses.
Re-adds every line against the stated total. That is the only sum it performs.
If they disagree, it stops. No draft at all.
Anything unusual this month is marked for a person to check.
It flags. It never explains a flag away.
The three questions this owner is most likely to ask, answered inside the update.
Fewer replies. Shorter calls.
Setup
No account to create, no integration, no API key, no developer. Each month you attach the export your software already produces and send one line. Nothing to copy, nothing to reformat.
What you download is a folder, not a link. The prompt, the fourteen rules it will not break, a per-owner config template, a prior-period template, the owner report page, and an offline script that re-adds your export independently. No model involved and nothing leaving your machine.
The safety case
This is the difference between a useful tool and a liability, and it is the one behaviour worth checking before you trust anything.
Restate, never recompute
It does not calculate the owner’s money. It restates what your accounting system already produced.
An agent that recomputes will eventually produce a total that is wrong and confident, and it will look exactly like one that is right.
Setup
About thirty minutes, start to finish. No developer needed.
One copy and paste. No install, no account to create with us.
Your fee basis, reserve policy, review threshold and sign-off. All clearly marked.
Synthetic statements built to break it. Two of them decide whether it is safe.
Compare its explanation to what you actually sent. Nothing leaves your building.
Time impact
An estimate, with the assumptions shown, so you can substitute your own and see whether it still holds.
Here is the arithmetic behind that, so you can substitute your own numbers and see whether it still holds.
| Owner statements a month | Typical book size | Hours saved |
|---|---|---|
| 50 | 100-150 doors | 8-17 |
| 100 | 200-300 doors | 17-33 |
| 200 | 400-600 doors | 33-67 |
An estimate, not a measurement. Based on a 15-25 minute manual baseline for writing and checking an owner-statement explanation, which is where the 40-60 hour figure comes from. Your actual saving depends on your current process, how many owners you have, and how much explaining your statements already do.
Safety
Three levels, each with a test you pass before you move up.
Everyone starts here. Your first three months, whatever the size of your book.
Where most shops should live permanently. You still read every word before it goes out, and it is already most of the saving.
Only above roughly 100 owner statements a month, and only once level one has been boring for a full quarter.
The full list ships inside the agent, not buried in documentation.
Evidence
Seven test cases, each run repeatedly in separate instances, so no run could copy another.
Fourteen adversarial test cases, each written to break a specific guard: books that do not tie out, a charge with no description, two owners in one export, an open month, and five separate attempts to hijack the agent through the data itself.
Every run was an independent instance with no memory of any other, so no run could copy another's answer. Graded by literal string match, not by a model judging its own work.
Version 1.1 added the owner report and an approved-owner check. Those two changes are covered by two new tests in the repository, not by the 159 runs above.
Run on Claude Opus 5, Sonnet 5 and Haiku 4.5. The guards held on all three, including the cheapest, which is the tier most people will actually use.
Who built this
Sokage is built by a team that designs AI agents for a living. 780+ agents shipped for 300+ companies.
The team includes property managers and people who run property management companies. Most of that work was in industries where a wrong number has consequences (finance, law, healthcare), which is why this agent restates rather than recomputes, stops rather than guesses, and ships with its failure log attached.
Run it against your own setup and tell us what you find. contact@sokage.com
Honesty
Every claim on this page, with the evidence sitting behind it.
On a book of around 200 owner statements, from a 15-25 minute manual baseline. The full arithmetic is shown above so you can substitute your own.
Fourteen test cases, each repeated in separate instances across three models. Every run passed.
The published sweep covers Claude models. Use the current setup guide and check your AI account's file and usage limits before starting.
The tested Claude models passed the recorded synthetic cases. Every real draft still needs a source check, including after a model update.
The published sweep checks prompt behaviour against fictional data. It is not evidence of time saved in a live property management firm. Start with the samples and review your own result.
Questions
No. It is a prompt you paste into Claude or ChatGPT. Nothing to install, no code to write.
It is designed for a single-owner, reconciled month-end export. Check the required fields and test your actual file, using our guide to preparing the export. The published synthetic sweep does not validate every vendor export.
The released setup guide lists the supported paths. The 159-run synthetic sweep covered Claude models only. Recheck the supplied samples when you change model or setup; previous passes do not guarantee a future output.
The agent runs inside your own AI account. Nothing comes to us and we never see your data. Start at read-only, against a month you have already closed and sent.
Nothing. It is MIT licensed. Take it, change it, keep it, use it commercially, with no obligation to us.
No, and it cannot. It drafts and a human releases. It also never moves money, never edits your ledger, and never recomputes a total your accounting system already produced.
We are building a library of these and we would like you to see the next one. That is the whole catch. The agent is yours either way.
Free, MIT licensed, yours to change. 159 test runs across three models, and it held on all of them. Running in about thirty minutes. The next one chases late rent, sign up and you get it first.
One email when a new agent ships. Nothing else, ever.
Where should we send it?
Three fields. You get the agent on the next screen, and a note when the following one ships.
It’s yours.
One file with everything in it. Three steps from here:
Prefer to browse the files first? View them on GitHub.
Start at level zero. Run it against a month you have already closed and sent, and compare. Then tell us where it broke: contact@sokage.com