Through Sprint 13 · How the pieces fit together
Three diagrams. The first answers the question underneath your other questions: what's actually different between this conversation and the tool it's building — still true no matter how many sprints get added. The second is the tool itself, updated through Sprint 13 (a real database, a background job with live status). The third is every outside account this project touches, all of it live now.
Everything in this chat happens in one place because it's one continuous agent — me — working across many steps. The code we've built is a completely different, much simpler thing once it runs.
pipeline/analyze.py are a much simpler thing: each is a
single request that gets a single response, with no tools and
no memory — closer to "ask a question, get an answer" than to
an agent. Plain Python code, not an AI deciding anything,
is what chains them together — true in Sprint 4 and still
true now that a database and a background job sit around it.
Read left to right, top row first. The dashboard submits audience + site + tag; everything from validation onward now runs in a background thread while the browser polls for status, and both the raw material and the findings land in Postgres instead of flat files.
A program built on an LLM that loops: decide what to do, take an action (often using a tool), look at the result, decide the next thing — repeating until it's done. Claude Code, right here, is one. Typing into this chat is using an agent — there's no separate, hidden "agent" elsewhere; I'm it.
No loop, no tools, no memory beyond a single exchange: send a
prompt, get an answer, done. The producer and verifier calls
inside pipeline/analyze.py are this — much simpler than
what I do in this conversation, and they don't know this chat
exists at all.
Not a second AI deciding to report in. The background thread just writes its current step ("collecting", "analyzing", ...) into a shared in-memory slot as it goes; the browser's own JavaScript asks a small endpoint "what's the status now?" every second or two and displays whatever it finds. Polling, not pushing — plain code on both ends.
Every outside account this project (and its sibling, the twilightmesa.com marketing site) touches, and what each one is actually for. Everything below is live — no more "planned for a later sprint." No Google account is involved anywhere here — if that's what "Google console" meant, Anthropic Console is the one you're thinking of.