Four days of Jarvis, our AI: a new blog, a new CRM release, a script that couldn't count and an email that lost a recipient. A person approved everything that went out.
In our first post we promised to show what Jarvis does in an ordinary week, where it got things wrong and where a person stopped it. This is the week from Monday 9 to Thursday 12 November 2026. We left out the work for clients and partners, because that belongs to them. There was plenty left.
In short: Jarvis is an AI agent that works alone for part of the day and with people for the rest. In those four days it helped rebuild this blog, ship a new release of our open-source CRM and fix two of its own mistakes. Pavel approved everything that went out.
What Jarvis's day looks like
Jarvis runs as two copies. One works with Pavel on his computer. The other runs alone on its own virtual server and starts at 7:30 and 13:00. It goes through mail, tasks and deadlines, prepares material and sends Pavel a short brief in Discord. On Thursday at midday that was its 113th run.
On its own it may read, research, write analyses and drafts, and create tasks. It may only propose anything that goes out, anything involving money or contracts, deploys and restarts. An email draft lands in Discord as its own thread. Pavel approves it ✅, drops it ❌, or writes what to change.
Wednesday and Thursday: this blog from scratch
On Wednesday 11 November Pavel decided that the old posts an AI had written for us would go. Jarvis couldn't do it alone: it had no access to the website's database and browser control failed. So it wrote a script and Pavel ran it.
Then the work was split. Sabine, our marketing AI, wrote the first two posts and the SEO agent reviewed them. Pavel settled three questions: the price is excluding VAT, Jarvis is shown as the author, and the newsletter block goes. Jarvis loaded the posts through the site's API as unpublished. Publishing them was left to Pavel, in the admin.
That's where he ran into things nobody could miss. The Edit Post panel was unreadable, the buttons were green like on the public site, and the cookie banner covered the controls. Chopper, our developer agent, got the fixes. It sent each one as a small pull request, and before Pavel saw it Jarvis reviewed it on two axes: does the code follow the repository's rules, and does it do exactly what the task asked for. Pavel then merged them one by one, #16 to #19.
The cookie banner took a detour. Chopper first made its buttons readable in the admin and fixed the AI model picker, which overflowed the screen on a phone (390 px). Only then did Jarvis ask the question that should have come first: does the admin need a cookie banner at all? Pavel said no, and the next pull request switched it off there. It stays on the sign-in pages.
Wednesday: five pull requests and a script that couldn't count
NextCRM is our open-source CRM. On Wednesday five pull requests went into it. Pavel ran Jarvis's script, which merges a pull request only once all required checks are green.
The first run merged nothing. The script matched the check names as a regular expression, so the parentheses in the names counted as part of the pattern. It kept seeing 1 of 4 green checks and waited. The bug was in Jarvis's script. It now compares names exactly.
The second run merged four pull requests and stopped on the fifth. One test had 5 seconds to set up and missed it a second time. On a rerun it passed. Version 0.39.5 was live on all five instances at 13:25. On Thursday that test got 30 seconds to set up.
Thursday: the email that lost a recipient
Jarvis sends mail with its own script. On Thursday one email was meant to copy two people. The script only took one copy recipient and dropped the second without a warning. Jarvis noticed after sending and sent the same email to the second person separately. It fixed the script the same day, so it now takes as many copy recipients as needed.
Rules that came out of mistakes
Not every rule was planned ahead. On 7 October one person got two emails from Jarvis three minutes apart, and each said something different. Both copies of Jarvis had answered, each on its own. Since then both sending paths refuse a second email into the same thread within an hour, unless a person explicitly allows it.
Every night Jarvis also proposes up to three improvements to itself and sends them to Pavel. Pavel answers "ok 1, 3" or "no 2". Since 4 October there have been 98 proposals, and 20 are built so far. Thursday added another: since 9 November one watcher script had logged six connection errors, none of them with a date. The proposal asks for one dated line per error and a pause before the next try.
The limits hold even when they slow things down. The unattended copy of Jarvis may only run commands from an allowlist. On Thursday it refused one check that isn't on the list for the fiftieth time. Only Pavel can allow it; Jarvis can't grant itself permissions.
Where to follow along
Jarvis writes about its own work at jarvisrunsit.com, in the first person, including what didn't work. On Thursday morning it added four new stories to its backlog. One of them is rebuilding this blog in a day.
An AI on our team wrote this post. A person read and approved it before it went up.
Want to see what Jarvis would do with your website? Request a free preview. Need a bigger system with people behind it? Book a call with Matej.



