Build log/2026-11-04·4 min read

260 AI Sessions in One Week: I Taught My AI to Ask Before It Changes Anything

手机上弹出一张待批准的卡片,旁边放着放大镜和日志文件

Last Friday night, a card popped up on my phone: "One of the marketing data sources keeps timing out. It's fired the same alert 47 times. I'd suggest adding timeout retries. Approve?"

I hit approve. A few minutes later it came back: done.

That card comes from the thing I spent most of this week on: a "manager agent" that looks after all my projects. This post covers what I built with AI over the last 7 days, what worked, and where I got burned.

1. The manager agent: AI can investigate, but it has to ask before changing anything

I'm a one-person team running a dozen-plus projects: my personal site, a daily briefing, MakanCloud (my restaurant SaaS), a Xiaohongshu content pipeline, and a handful of internal tools. Every one of them runs scheduled jobs, and something is always throwing errors somewhere.

I used to dig through the logs myself. Here's how it works now:

  • When something breaks, the manager sends a sub-agent to do a read-only diagnosis. It isn't allowed to touch a single file.
  • Once it's done, the root cause and proposed fix get packaged into a card and sent to my phone.
  • Nothing happens until I tap "Approve". If I tap "Skip", it reschedules or shelves the fix, whichever I asked for.

This week it worked through a whole string of issues: the site's publish checkout couldn't sync, the local image-generation job crashed, the OS killed the market-monitoring service, and a marketing blog post got blocked from publishing.

It doesn't always go smoothly. One fix ran for 30 minutes and got killed by the timeout. The agent that picked it up started with a read-only check of what was already done, then finished only the remaining work instead of starting over. I wrote that rule in on purpose, because redoing work is the easiest way to break things that were already right.

My main takeaway: getting AI to execute isn't the hard part anymore. Drawing the boundaries is. A human has to decide which actions can run on their own and which ones have to stop and wait for a person, and those decisions need to be written down as rules.

2. The invoice checker: a full bilingual overhaul done by AI

The invoice checker is a reconciliation tool I built for restaurants. You snap a photo of a supplier invoice, it compares the invoice against your price list and gives you a report of the differences.

This week I had AI do two things:

  1. Chinese/English language switching. That covers more than the buttons. Server errors, self-check descriptions and the exported Excel files (sheet names, headers, file names) all have to switch too. My only instruction was "after switching, everything switches with it." The AI listed out everything that needed to change and added English assertion tests on top.
  2. Store renaming. When you create a new reconciliation batch, you can pick an existing store name from a dropdown, and after a rename the history automatically moves under the new name. The AI flagged two edge cases without being asked. First, if the target name already has a batch for the same supplier in the same month, the rename is rejected instead of being auto-merged. Second, a rename that only changes capitalization has to be done in two steps on a Mac, because the filesystem is case-insensitive.

I almost certainly wouldn't have thought of that second one.

3. The opportunity radar and the content pipeline: the other side of automation

I built an "opportunity radar" where AI searches for partnership opportunities every day, drafts outreach messages and runs a weekly review. After a week, the review's conclusion was blunt: outreach is stuck at "pending confirmation." The AI drafted plenty of messages. I just never got around to hitting send. Automation can multiply your output, and it also shows exactly where you're procrastinating.

On the content side, the Xiaohongshu pipeline hit a few specific problems:

  • The voiceover read "AI" as the Chinese word "爱" ("love").
  • The video had popping noises at 0:20 and 0:24, and the picture shook slightly.
  • A note I'd already approved didn't go out on schedule.

The fix process was the same every time: find the root cause, fix it, then turn the fix into a template. For the note that didn't go out, I chose to reschedule it instead of letting the AI post it on the spot, because there are checks in the publishing flow that shouldn't be skipped.

MakanCloud's marketing content also goes through a "fact gate." Any claim without a source, like a store count someone made up or a customer name we don't have permission to use, gets blocked. This week it caught 5 social posts, and each one only went out after the copy was fixed.

Wrapping up

This week added up to 260+ sessions and 100+ commits. Looking back, the most valuable part wasn't any of the features. It was three rules:

  • Keep diagnosis and changes separate, and get a human to approve every change.
  • After an interruption, check where things stand first and only finish what's left.
  • Don't publish anything you can't source.

If you're also using AI to run your own projects, I'd love to hear what rules you've set for it. Drop a comment. Next week I'll share more on how the manager agent is coming along.