Robots that drive systems with no API, and a panel to command them
A platform to schedule and follow robots on Windows workstations across many clients, and robots that read tax documents without missing a cent.
- Python
- FastAPI
- PostgreSQL
- WebSocket
- React
- pdfplumber
The problem
Dozens of automations operated government portals and desktop accounting software for many companies, and the workstations accept no inbound connections.
Started by hand
Nobody could see what ran, when, or whether it worked.
One mouse, two robots
Robots that drive the mouse and keyboard cannot run in parallel.
A misread amount
A misread amount becomes a wrong e-mail.
How it works
Outbound connection
The workstation's agent opens a WebSocket to the panel. No port is opened at the client.
The database is the truth
An order is never lost to a disconnect, and each workstation has its own queue, one robot at a time.
A robot contract
JSON config, JSON Lines events and exit codes, including "needs a person".
Whose turn it is
Every failure points to the robot, the client or the external system, which is only blamed with proof.
Three reads
In the PDF, each value is found by label and position, and the amount that decides sending is read in three places.
Signed packages
Machine identity from a key pair, and agent self-updates that roll back on their own.
Outcome
Robots that were started by hand now run on schedule with live logs and an audit trail, and mismatches become explained follow-ups instead of wrong e-mails.