기억상실 치료사와 함께하는 소프트웨어 구축: 재개 가능한 하룻밤 빌드 루프에 대한 메모

작성자

카테고리:

← 피드로
DEV Community · Meela Dheeraj · 2026-06-16 개발(SW)
Cover image for Building software with an amnesiac agent: notes on a resumable overnight build loop

Meela Dheeraj

I wanted to see how far an autonomous coding agent could get unattended. The constraint that makes this hard isn’t code generation — it’s that each session starts with zero memory of the last. So the design problem is state, not prompting.

Setup

  • A cron-scheduled task fires hourly, 11pm–7am (~8 runs).
  • Each run is a fresh agent session. No shared context, no carryover.
  • State lives entirely on disk: the working tree, the git history, and two files — BUILD_SPEC.md (the immutable goal/architecture) and PROGRESS.md (an append-only decision + status log).

The run loop
Every session does the same thing:

  1. Read BUILD_SPEC.md, then PROGRESS.md, then git log –oneline.
  2. Reconstruct “where are we” from the files themselves (the code is the source of truth, not the narrative).
  3. Do one unit of work.
  4. Commit. Append to PROGRESS.md: what changed, why (chosen X over Y because Z), and the exact next step.

Commit granularity = checkpoint granularity. Worst case on an interrupted session is losing one unit, and the next run re-derives it. The “why” lines matter as much as the diffs — without them a later session re-litigates settled decisions.

Guardrails
The agent was allowed to build, test, and commit locally. It was explicitly not allowed to deploy, push to a remote, or touch secrets — those get written into PROGRESS.md as “needs human” items instead. This boundary is what makes unattended runs safe to leave alone.

What came out
A working full-stack monorepo: a pure TS scheduling engine (with property tests), multi-tenant auth, a Drizzle/Postgres schema, server-side re-validation, and publish/share/export flows. Across the runs it cleared its own stale git lock, and one session caught and fixed an off-by-one in a labeling layer that spanned five files.

The takeaway
The leverage wasn’t the model writing code. It was designing a process where progress is durable across total context loss — externalize state, checkpoint constantly, log decisions not just actions, and fence off irreversible operations.

Repo/stack details in comments. Curious how others are handling agent state across sessions — file-based like this, or something more structured?

원문에서 계속 ↗

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다