Symphony Apps Development logo — teal interlocking S monogram beside the studio wordmark
All writing

Why we time-box agent sessions

Long, meandering sessions with a coding agent degrade in a specific, predictable way. Cutting them short fixed more than it seemed like it should.

Category
AI
Reading time
5 min
Published
09 Mar 2026
Topics
AI, Claude, Engineering

We noticed the pattern before we understood it: the second hour of any long agent session produced noticeably worse code than the first, on tasks that hadn't obviously grown harder.

What actually degrades

Not the model's raw capability — the same task, given fresh, produces good output an hour later. What degrades is the session's accumulated context: an early decision that got reversed but is still sitting in the conversation, a file that changed on disk after it was read, a tangent that consumed attention without resolving anything. None of that is visible unless you go looking for it, and by the time you notice the output is wrong, the session has usually drifted a long way from the original ticket.

The fix was duller than a better prompt

We now cap sessions at roughly the size of one well-scoped ticket, and restart with a clean context for the next one rather than continuing a conversation across unrelated tasks. Anything durable — a decision, a convention, a gotcha discovered along the way — goes into the repository's conventions file, not left to survive in the conversation history.

What a restart actually looks like

  • Summarise what's needed, not what happened. The next session gets the current state of the code and the next ticket, not a transcript of how the previous one went.
  • Re-read the file, don't trust memory. A session that assumes a file still looks like it did forty minutes ago is a session about to make a confidently wrong edit.
  • Treat a stalled session as a signal, not an obstacle. If a session needs more than a couple of course-corrections to get back on track, it is usually cheaper to restart than to keep steering.

The part we had to unlearn

There is a natural instinct to keep a working conversation going because it "already understands the codebase". It doesn't, in the sense that matters — it has a transcript, not an understanding, and transcripts accumulate noise faster than they accumulate useful context.

A long conversation with a coding agent feels efficient because it avoids repeating yourself. It is often the opposite: repeating yourself is what keeps the context correct.

What this bought us

Fewer sessions that quietly went sideways for forty minutes before anyone noticed, and a conventions file that grew into a genuinely useful document, because it became the actual home for anything worth remembering rather than a nice idea nobody maintained.

Tell us what you’re trying to ship

A first call is thirty minutes and costs nothing. Bring the problem, not a spec — working out what to build is the part we are good at.

Or email office@symphonyapps.ro. We reply within one business day, in English or Romanian.