Changelog
A record of building in the open
Ask Me Less has changed every day since launch. This page records, month by month, each significant change and each problem we ran into: why we changed it, what changed, and what came of it. Problems and changes alike are written as they happened, without polish and without deletions. Where an entry says “you”, it means us: the people who use this tool every day.
Only confirmed entries appear here; some changes are added once their effect has been verified.
October 2026
Change
Six improvements shipped, bottlenecks now visible at a glance
Six improvements shipped at once: a pipeline flow chart shows where work piles up; agreed tasks now live in one list with a weekly review; session handovers no longer lose in-flight work; a watchdog protects the machine within seconds when resource usage spikes; run approvals now pin the script version and refuse if it changes afterwards.
Change
First batch of stabilization fixes is live
During the three fix-only days, the first seven fixes went live at once: stop after repeated errors, two agents no longer grab the same card, “agent at work” shows only when something is really happening, a fallback when a timed reminder fails, and machine status on the first screen. It was the first release through the fixed script, and it took one minute.
Change
A nudge the moment something changes
The server now quietly notifies your devices the moment a card changes, paving the way for “always fresh when you open it”. Previously the app had to ask every 30 seconds whether anything was new.
Problem
Asked “which go public?”, buttons said “looks fine”
A review card linked to a page full of instructions meant for agents, with buttons that didn't match the question — and the local checker saw nothing wrong. You called it out on the spot. Pages are now designed around “what will you tap”, and checks share one rulebook.
Change
Recurring tasks can finally be registered
The confirmation card for registering a recurring task kept being rejected for a formatting issue, so the task silently never got registered. That's fixed. The same release quiets repeated alerts and explicitly forbids agents from assembling requests with secrets in them.
Problem
Built, but nobody ran the acceptance check
The push feature was live and the app updated, yet the “send a test notification to verify” task sat unactivated — it was pinned to a specific build number and needed a manual trigger. After you asked repeatedly, the test was sent and passed on the spot.
Change
Answer terminal prompts from your phone
Multiple-choice questions and permission prompts from the terminal can now be answered on your phone, with the answer flowing back to the terminal. The same release fixes usage readings, which no longer show a stale high number after a quota reset.
Change
You answer, it acts right away
Cards you answer for the patrol agent are now handled on the spot instead of waiting a day, and the patrol reports when its own data sources fail. When a merge you approved is blocked by a local safety rule, you get a confirm-to-run card so the approval isn't wasted.
Problem
An alert card written in agent jargon
An “overdue and unattended” alert had a title of truncated internal codes and half an English word, and a body pointing to local logs and a button that didn't exist. Rewritten in plain language, with a new rule: machine-generated cards must pass the same card-quality check.
Problem
“The agent will keep merging” — then 21 idle laps
When an auto-merge failed, the system just noted “retry next round” as the trunk moved on — so it never succeeded, while the card still said “the agent will continue”. Now it catches up first, and after three failures it raises an alert instead of spinning silently.
Problem
The condition came four minutes too late
You had just ruled “before merging, state what this feature replaces” — four minutes after it had already merged. It was fully reverted that night at your choice, and only re-released after the conditions were met. New features must now declare “what I replace” before entering the queue.
Change
Working agents now run inside fences
Agents that act on your behalf now see only an explicit allow-list of environment, with network access isolated. What you've approved is no longer bounced by keyword matching. Failed auto-merges escalate instead of spinning silently, and anything needing you becomes a question card.
Change
The changelog page is live
This page is new on the site. It records every significant change and every problem we hit, month by month, in both Chinese and English.
Change
One shared check before anything goes out
The pre-send check now runs the exact same rules as the server, so “fine locally, rejected live” no longer happens. This removes a whole class of cards whose buttons didn't match the question.
Change
Second batch of fixes goes live
The second batch of fix-only changes went live together: agent permissions cut to the minimum, scheduled tasks settle independently, a “confirmed to run” claim that doesn't match reality is rejected outright, and executions are isolated from one another. Released via the fixed script, verified in three places.
Change
Answered but unclaimed, and you can see it
A card you answered that nobody has picked up yet is labeled that way on the home page, with who should pick it up and roughly when. It is no longer shown as “in progress.”
Change
Follow-ups on time
When an agent says “I’ll remind you later,” it must register a timed task on the spot, and the card appears automatically when the time comes. Promises that exist only in text get flagged.
Change
Decided but not done, at a glance
The home page now always has two panels: things you decided that nobody carried out, and whether each machine’s disk, memory and background tasks are healthy.
Decision
Pause first: three days of fixes only
The code grew almost sevenfold in four days, and problems kept coming back. We decided that for three days only fixes and removals get merged, nothing new, and each merge gets its version number decided beforehand.
Decision
Releases need someone watching
We decided that deploying and checking the live version use one fixed script, run in a session someone is watching, instead of being left to unattended background sessions.
Problem
One card, a whole day of errors
The dispatcher, the always-on agent that hands out work, kept failing on the same card and retrying it for nearly 20 hours. The “stop after repeated errors” safeguard hadn’t been written yet. It is now live, and is one of the conditions for opening up automatic execution.
Problem
Over a thousand tests, yet a real rejection slipped through
The confirmation card for registering a recurring task kept being rejected live, so the task was never registered — local checks and server validation were written separately, and no test had ever pushed a real card. After the fix, pre-checks match the server exactly.
Problem
After a reset, it still showed “almost used up”
After a one-time quota reset, the page insisted usage was still near the cap — a caching rule assumed readings only ever rise, shutting out the real new reading forever. Now only verified fresh readings win, and the page shows how old the number is.
Problem
A helper tool copied a secret into the logs
A small command-line helper echoed its arguments verbatim, so when an agent put a secret in the arguments, it landed in local logs — it never left the machine. Fixed on one machine, missed on the other, and recurred a week later. Lesson: a tool living in several places must be fixed in all of them.
Problem
Answered on the phone; the terminal kept waiting
You answered a terminal prompt on the phone, but the terminal waited on, oblivious — so it was answered twice, and the report credited the wrong side. Now both ends wait together, first answer wins, and every scenario was tested live.
Problem
You answered; it acted 20 hours later
The patrol agent claimed your answered card but only processed it in a once-a-day sweep — one cleanup card waited 20 hours. Broken data sources were silently logged. Now answers are handled on the spot, and failing data sources raise a report.
Problem
Answered, then nobody picked it up for 90 minutes
In the morning you answered a batch of items, nobody picked them up for an hour and a half, and the home page didn’t show it. Now cards nobody has picked up are labeled as such.
Numbers
The cost of hand-overs
In one day, sessions automatically passed their work to a fresh session 27 times; the longest chain ran five sessions over about 3.7 hours. Some of these sessions had actions blocked by safety checks, yet still ended marked as normal. This showed that hand-overs were triggered too early and the end-of-session check was too loose.
Problem
Handed-off work was asked again, then lost
Something you had already agreed to was asked again, and the session that took it over ended marked “waiting” and the work was dropped. Now anything approved within a session isn’t asked again, and before a hand-over ends it must check that no work was dropped.
Numbers
Four days in numbers
In the four days after launch, the code grew from about 6,000 lines to about 40,000. Of 96 problems logged, 61 were old problems coming back. New problems stayed between 10 and 19 per 100 commits: no worse, but not coming down yet either.
Change
Closed means closed
When an agent decides a card is no longer needed, the card really disappears instead of staying around with its buttons. If you mark something done but note a concern, the agent must read it before closing.
Decision
Work an agent can’t do goes to another agent first
Work an agent couldn’t do used to become your to-do. We decided it will first stay in the agent queue for another agent to try. Anything that spends money, goes public or can’t be undone still comes to you. Three safeguards must be in place first.
Change
Confirm, and the agent runs it
Things you used to do by copying a command into a terminal now take one confirm. An agent runs the command on the chosen machine and reports back.
Problem
“Just confirm,” but no button
A card said “confirm and it runs,” but had no button. The root cause: the code that draws buttons and the code that writes the card text didn’t know about each other. The fix makes both follow the same check.
Change
“Agent at work” must be true
The home page shows “agent at work” only when there is real activity. A card whose session has already ended is no longer shown as being handled.
Change
The website goes live
The website went live in Chinese and English with three pages: home, pricing and playbook. You can leave your email to join the waitlist. The privacy note was written up before email sign-up opened.
Problem
A temp worker wandered into the main hall
A review agent was supposed to experiment in a temporary copy, but when the copy failed to be created it kept going and ran a merge in the main repository. Reverted within two minutes, no damage. All task briefs now state: work only in your own copy.
Change
Fewer interruptions: receipts and auto-close
Things agents can decide on their own are no longer asked of you; you get one receipt a day instead. Cards you already handled in a terminal close themselves. Reviews you asked for have a checklist that shows progress.
Problem
“On it,” with nobody on it
An agent replied “I’ll fix it right away,” but no session was actually working on it. The root cause: the promise existed only in text. Now every promise must be registered as a to-do with someone responsible for it.
Problem
Your answer went to the wrong place
An answered card counted as delivered as soon as some other agent “saw” it, so the agent actually doing the work never got it. Now it only counts as received by the agent that asked, or by an agent that explicitly claims it.
Problem
The queue stalled for seven hours, unnoticed
Reviewed changes sat in a queue for seven hours — never merged, never released, no alert — because merging depended on a single session that had stopped. Since then the queue is a structured list, and an hourly patrol watches for “queued but not merged, merged but not live”.
Change
Answers delivered in seconds
A role whose only job is watching the inbox: as soon as you answer, it delivers the answer to the working session within seconds.
Problem
An endpoint nearly burned through the free tier
A nightly review found the list endpoint had exceeded its limit 256 times that day, with database reads nearing the daily cap — every request returned 90 days of cards. The costliest part was fixed that day, roughly halving reads; deeper changes are queued.
Problem
Told once, still the wrong window
You had just said “stay out of my private windows”, yet an agent's browser tab still opened in one — the constraint lived only in a prompt, with no enforceable check. Since then, agents don't get browser access by default.
Change
Inbox lanes
The home page now splits into three: waiting on you, waiting for an agent to check, and agents at work. When you say you ran a command, an agent checks it; if it didn’t work, it comes back to you instead of counting as done.
Problem
One keypress — but which card did it answer?
A full-screen quick-answer feature was caught in review: a double-click could answer the next card, and “no” could be read as “yes”. After the fix, shortcuts only accept structured options and refuse when unsure. The feature didn't pass, so it never shipped.
Problem
Deploy cards that made you retry
Two deploy cards had the wrong steps or didn’t check the login first, so you retried several times for nothing. Now an agent gets a command working itself first, and stops to check its own work after two failures.
Problem
Browser automation went offline
The browser extension the agents use was disconnected for about four hours. No data was lost. The recovery steps are now written down.
Change
Answer cards from your phone
New cards reach your phone even when the app is closed. Long-press on the lock screen to answer, no computer needed. Push notifications are connected; how reliably they arrive is still being checked.
Change
Handed-off work is on record
When an agent says “someone else will do this,” it must record what the work is, what counts as done, and the deadline. The always-on agent that hands out work goes by that record, not by a passing promise.
Problem
A scan reached into the archive
The first version of a scanning feature swept archived old repositories into a local preview — nothing left the machine. Caught in review and fixed the same day: archive directories are now excluded by default, with regression tests.
Problem
It said “log in”; it was the network
Following the instructions, you hit a “please log in” error — the real cause was a restored session missing its network route, nothing to do with login. Fixed the same day, with a new rule: verify the environment before asking a person to act.
Problem
A test froze a development machine
A test process used up all the memory, and the whole machine froze until it was force-restarted. Since then every stress test must have a timeout and a memory limit, and machine health readings were added.
Problem
The ten-minute limit nobody knew about
During unattended continuation, background tasks hit a default waiting limit nobody knew about and were killed mid-way — three tasks interrupted. Once found, the limit was uniformly disabled and everything was rerun to completion.
Problem
A resident agent stopped without a sound
The dispatcher, the always-on agent that hands out work, kept failing after its login expired, and nobody noticed for hours. Now an hourly check looks for anyone who hasn’t reported in, and an expired login raises a card.
Problem
Auto-run agents had too much access
Agents started automatically to carry out work were given the whole set of credentials, far more than they needed. One could have been used to approve cards on your behalf. An independent review caught it soon after release; the riskiest credential was removed that same night, and nothing was misused. Access is being cut down, and automatic execution stays off until that’s done.
Change
Someone picks up every answer: the dispatcher
Once you answer a card, an always-on dispatcher takes it and hands out the work. It no longer depends on whether the agent that asked is still around.
Change
Automatic checks on how cards are written
The buttons depend on the type of question. Every card lets you leave a note, mark it up or attach an image. A card that isn’t written well enough is sent back to the agent to rewrite before it goes out.
Change
Answers return to the session that asked
Every card remembers which session and which machine asked it. Your answer goes back there, so you don’t have to repeat yourself.
Problem
Attack yourself before launch
Before a handoff tool launched, two rounds of adversarial review found 23 issues that could leak secrets or inject forged data. All were fixed and tests quadrupled before release. Those two gates are now standard for every new feature.
Decision
Every failed instruction gets written down
From day one, every time following an agent’s instructions went wrong, it got a line in a log. We regularly count which kinds happen most, what the root cause is, and how the product can prevent them. This page grew out of that log.
Change
Ask Me Less goes live
Anything an agent needs you to decide becomes a card. You answer one card at a time in your inbox, and the answer goes back to the agent automatically. The first versions of the API, card format and storage were settled the same day.
Change
Answers can carry conditions
You can answer “yes, but do this first,” or set a rule that applies from then on. Things you only need to know about became read-and-close notes, so you no longer have to choose.