The Dip after Drop Off
August 21, 2026 · 9 min read
Build log this week. The last one was about an app I built for my daughter.
My mornings start with a school drop-off. It's one of my favorite things I do, and I come back to my desk in a good mood. Then I'd open my laptop and lose it.
Five or six terminal windows, left open from the night before. Clicking through them trying to remember which directory each one was in, what project it belonged to, what I'd been trying to accomplish. Fifteen or twenty minutes of triage before I could think about the actual day.
The cost was never the minutes. It was starting behind. You can walk in knowing what you want to accomplish and still spend the first hour in cleanup mode instead of deciding mode. Then it's eleven, almost noon, and you haven't started.
What I built. On Monday I wrote two skills for Claude Code: kickoff-day and closeout-day.
They work across a whole workspace instead of one project. I keep six repositories in a single folder, and I built that structure deliberately so something could look at all of it at once. Closeout reads every repo's git activity for the day, reads the session transcripts, grades what happened against the goals I set that morning, and writes all of it to a dated file I call a daylog. Kickoff reads yesterday's daylog the next morning, checks it against what git says is actually true, tells me where the two disagree, and asks me what today is for.
Two rules matter. Kickoff is not allowed to change any code, because orientation that edits things is not orientation. And closeout lands the work before it writes anything down, so the log describes what happened rather than what I intended.
The obvious benefit showed up immediately, and it's the least interesting thing here: knowing a closeout was coming, I stopped leaving work half-open. That's a deadline I built for myself. Nothing about it is artificial intelligence.
Here's the part that is.
Twenty seconds. Tuesday at the end of the day I was closing out, and I said what I wanted for the next day. Roughly: I want the sourcing agent to handle all of our client request types, from the simple ones to the complex ones, and I want to work on how a result moves to the next step so the team can load it into a project in our order system.
That was it. A direction, not a problem. As far as I knew there was nothing standing in the way.
Twenty seconds later it had read the code and come back with something I did not know. The agent's brief required five fields before it would accept a request: client, event type, audience, quantity, and in-hands date. Miss any one and the request would not enqueue. Which meant the agent could only accept one shape of request, a planned client event with every detail already known.
The requests it was rejecting were the simple ones. "Something good for fifteen dollars, need it in two weeks." "Send me ideas." "Same as last year but cheaper." A straight reorder. I had asked for simple to complex, and the contract made simple impossible. That was the entire job, and I would have found it Wednesday morning, an hour in, after opening the file myself.
Then it found the second thing. Looking for how a result could become a real order, it went through the other repositories and turned up a working, tested function that already did it. Written a month earlier for the education catalog, a different product, for a different reason. Nobody had connected the two. It already had the hard parts solved, the ones you only learn by getting them wrong against a live API.
So Wednesday didn't start with my plan. It started with a correction to my plan, plus a solved problem I already owned and had forgotten about.
That's the difference between this and taking notes. After seven or eight hours you're going to miss things and forget things, and a notebook helps with that. But a notebook can only hold what you were present for. It can't tell you the assumption underneath tomorrow's plan is wrong, or that the thing you're about to build is sitting finished in a folder you weren't thinking about.
Two days later. A client account needed a status update. Its rep was out that week, and the person covering didn't know it well enough to give a full one, which is not a knock on them. Six purchase orders running at once across five vendors.
So I sat down with the same setup and asked it to dig. It read the order system, our shared supply chain inbox, and our own mirror of both.
Four of the six were clean. The other two were the point.
One had been marked Shipped in our system. Ten emails on that thread, and not one contained a tracking number, a ship notice, or a confirmation. The vendor had written two days earlier that pickup was happening tomorrow. Pickup day came and went with nothing. The status was aspirational, and the system was reporting it as fact.
The other had gone seventeen days without an update, with its in-hands date landing that same afternoon. Wrong-color hats had shipped, a substitute delivery driver had marked packages delivered that never arrived, and the replacement thread had gone quiet.
None of it was hidden. It was sitting in an inbox and a database, and finding it meant knowing to look. The old way of getting that answer was to interrupt four or five people and assemble it from what each of them happened to remember. The old way of getting your own context was to take everyone else's time away.
It also surfaced the thing I'd have missed completely: the rep handling the stuck order was out until Friday, and his auto-reply named the backup, who was already copied on the vendor thread. Somebody could push it that afternoon instead of waiting three days.
Same shape as the five fields. In both cases the expensive part wasn't finding the answer. It was not knowing there was a question. One of those cost me a morning. The other was a client's delivery date.
Before the next part, the question I'd want answered if I were reading this. The mailbox access is read-only: a Google service account scoped to gmail.readonly, pointed at named shared mailboxes, not anyone's personal mail. It can't send, reply, or delete, and the order system side is read-only too. Read-only is the part I won't move on. The question I haven't settled is whose mail a rep's own rundown should be allowed to see.
Because that's the next build. A start-your-day rundown for the team: every account with movement, the decisions waiting on you, the deadlines coming. Then the same thing at the end of the day. They'd still run their own day and make their own calls. They'd just stop paying a tax to find out what's happening inside their own accounts.
What it got wrong. It's not a to-do list, and I keep wanting it to be. One database migration has now been carried in three consecutive daylogs as still not applied. The system is perfectly happy to tell me the same thing every morning forever. It records; it doesn't nag, and it doesn't do.
Tuesday's log ran to two thousand words, twice the length of the others, because the day had two closeouts in it. I skimmed it. A log I don't read is a log that doesn't exist, and length is the failure mode I'm watching for.
And the thing keeping it honest is thinner than I'd like. Monday's closeout was about to record that a service had redeployed. The push went up; the health check still showed the old build six minutes later. What it wrote was "redeploy not observed," and it told the next morning's kickoff to go check. That only happened because I'd written a rule that verified claims get marked verified and everything else gets marked unverified. Delete that one line and it writes "deployed," I believe it, and I find out on Thursday.
Four days is four days. It has felt like one of the more productive weeks I've had in a while, and I'm aware that's a feeling, in a week I already wanted to go well. I'll write this again in three months and tell you whether it held, what I added, and what I got wrong.
This was also my daughter's first week at a new school. New building, new teacher, and with her Rett syndrome that's a lot of new at once. It was the week I most needed my mornings to hold, and they did. I got to drop her off, come back, and start on purpose instead of digging out.
That's the whole result, and it's smaller than a breakthrough. I had a good morning, every morning, and I stopped losing the back half of it.
P.S. Both skills are short, and they only work if you shape them to your own week. If you want them, reply and I'll send you mine.
Get new posts delivered to your inbox.
Read more posts →