Recipes / Money & bills
Any agentWorkflowMoney & bills

Let an agent do the bookkeeping while you approve

His agent works in Dougs, his French accounting app, through a CLI he built and open-sourced. It attaches receipts from Gmail, fixes VAT on foreign software and sorts transactions, and nothing is written until he approves the plan.

From Tom Eberle on X · Oct 2026

Setup timeOne afternoon for his first pass
CostFree (MIT) plus your agent plan
RunsEach month, and before you file VAT
NeedsA coding agent (Claude Code, Codex or Cursor), dougs-cli, Dougs account, Node.js 22.13+, Gmail (read-only)
Last updated2026-10-20

What the source did

  • His French accounting software, Dougs, had no public API, MCP or CLI. Before, his agents worked on the books through Python scripts and a browser session cookie that expired every few weeks.
  • Had one Opus agent build a CLI while a second agent reviewed every change: 245 tests and about 30 hours from idea to npm. He open-sourced it as dougs-cli (MIT).
  • Then pointed it at his real books. In one afternoon, uncategorised operations went from 183 to 4, 22 missing invoices were pulled from Gmail and attached, about 60 changes were written to Dougs, and 3 overdue VAT returns came to light.
  • VAT on foreign software: invoices from Meta ads, Claude, Google Cloud and Hostinger said reverse charge but had been booked with deductible French VAT. Before his VAT refund claim, the agent went through all 34 and fixed each one booked wrong.
  • Missing receipts: it reads the business inbox read-only, pulls the PDFs, matches each to its bank line by amount, date and vendor, and shows him the list before uploading anything.
  • Odd transactions (a subsidy tranche, money sent straight back, a foreign client's payment): it asks him once, books it, and writes the treatment down so next month it happens without asking.
  • Money questions like monthly spend on one tool, or which subscriptions to pause, get answered from the ledger with the operations behind the number.
  • Guardrails: nothing reaches Dougs until he approves the plan, months with a filed VAT return are never touched, every write is read back and checked, and the password only goes to Dougs. It doesn't file the VAT return or replace the accountant.
  • Heads-up: dougs-cli is unofficial and uses the same private interface as the Dougs web app, which can change. Its README says dougs doctor tells you when it has, and that nothing in it is tax advice.
“Nothing reaches Dougs until I approve the plan.”— Tom Eberle (@eberle_tom), X

Summary written by Agent Cookbook from the original post. See the original for the full context. How we source recipes

Our notes

What it takes
A coding agent that can run commands, a CLI or API for your accounting tool (his: dougs-cli for Dougs), and read-only access to the inbox where invoices land.
Where it breaks
The accounting app changing its private interface, and VAT edge cases the agent shouldn't settle on its own.
Human checkpoint
You approve every plan before anything is written, and you file the VAT return yourself.
Tools involved
A coding agent (Claude Code, Codex or Cursor), dougs-cli, Dougs account, Node.js 22.13+, Gmail (read-only)

✓ Verified Source link checked and still live. Notes by Thomas, editor. How we verify

Get their template

Made and published by Tom Eberle. Start here; it is their original, not ours.

Their prompt

From Tom Eberle (@eberle_tom) Their exact wording: the one-line ask from his Oct 14 post. Source ↗

Help me do my accounting with npm i -g dougs-cli and tell me what needs attention in my books.

Our adapted version

Ours Our version: the same jobs and rules Tom described, written for any accounting tool your agent can reach. Not his wording; his CLI and its skill are linked above. Fill in the [BRACKETS].

You do the legwork on my company's books. You never write anything until I approve the plan. CONNECTIONS - Accounting tool: [name], reached through [its CLI / API / MCP] - Business inbox: read-only, for invoices and receipts EACH MONTH, for [month]: 1. List what needs attention first: overdue VAT or tax returns, then missing receipts, uncategorised operations and VAT to check. 2. Receipts: find each missing invoice in my inbox, match it to its bank line by amount, date and vendor, and show me the matches before uploading. 3. VAT: check foreign software subscriptions. If the invoice says reverse charge but it was booked with deductible local VAT, propose the fix. 4. Anything unusual: ask me once how to book it, then write the rule down so next month it is automatic. 5. Give me one plan: every change with its reason. Apply it only after I say yes, then read each change back and confirm it. RULES - Never touch a month whose VAT return is already filed, or a closed year. - Don't file any return. I file, and my accountant has the final word. - If a number can't be backed by specific operations, say so instead of estimating.

Approval rule

🛡
The agent proposes a plan and waits. Nothing reaches the books until you approve it, months with a filed VAT return stay untouched, and you file the VAT return yourself. Sending, buying, posting, and deleting always need a human.

Set it up

  1. Install dougs-cli (Node.js 22.13 or newer) and run dougs login with your own Dougs credentials. If you use another accounting tool, check what CLI, API or MCP your agent can use instead.
  2. Ask your agent his one-line prompt, or to read the dougs skill and tell you what needs attention.
  3. Read the list it gives back. Start with overdue returns.
  4. Give it read-only access to the inbox where invoices land, then ask it to find and match the month's missing receipts.
  5. Review the plan line by line and approve it. Nothing is written before that.
  6. Have it check VAT on foreign subscriptions before any refund claim.
  7. Each time it asks how to book something unusual, answer once and let it write the rule down.
  8. Before filing, ask it to compare the VAT return with your books, then file it yourself.

Common failures

⚠
  • Agents working through a copied browser session cookie that expires every few weeks. A real CLI fixed that for him.
  • Foreign software invoices booked with deductible local VAT when they fall under reverse charge.
  • Uploading receipts before checking each match against its bank line.
  • Edits landing in months whose VAT return was already filed.
  • The accounting app changing its private interface without notice; the README's dougs doctor check is there for that.

Variations

  • A reply in the thread suggests exporting every write the agent made, with before and after values, as the working paper for a VAT refund review. The README says the CLI keeps a report of what changed.
  • Have it set rules so recurring subscriptions are always categorised the same way, applied each month after your OK (one of the jobs in the README).
  • No API for your own tool? He says in a reply that most painful UIs can become MCPs or CLIs; his was built by one agent and reviewed by another.

Get the 10 best agent setups. Free.

Plus new recipes every week. One email, no spam.

Unsubscribe anytime. Privacy

Related recipes

Same job: Money & bills

Also uses Cursor

In these guides: AI agents for small business →

Get their template ↗