Methodology · 2026-04-19

Five Layers for a Replicable AI-Assisted Build Session

A parallel-agent build session shipped four independent work-streams in one night — a reusable UI scaffold, a data-generation and lens toolkit, a mathematically non-trivial core library, and an agent-to-agent substrate. No merge conflicts, no silent clobbers, no scope drift. What made that possible wasn't speed or cleverness. It was a pattern. This is the blueprint.

Memory-first context Parallel-agent orchestration Skills · Routines · Scripts

What made the session smooth

IngredientWhat it did
Memory as durable substrate19 project-memory files auto-loaded at session start — no re-explaining context.
Typed artifactsproject_, user_, feedback_, reference_ split; easy for a future session to navigate.
Plan-before-build disciplineEvery phase committed a plan document before code.
Kickoff prompts as self-contained capsulesBuilders needed no clarification — paste and run.
Status files as async commsBuilders and orchestrator coordinated without interrupting each other.
Gate patterns with explicit signals[DESIGN-READY][DESIGN-ACK][BLOCKED][COMPLETE]. Unambiguous state.
Question + rec + reasonEvery decision point landed with a default if the human skipped.
Territory disciplineParallel agents and spontaneous side-agents never collided destructively.
Re-read before commitMulti-session-concurrent edits caught before they silently clobbered.
Phase disciplineRefine → plan → build, sequential and explicit.

Pattern: dense context plus clear signals plus disciplined discipline plus a bias toward committing artifacts to git over keeping state in conversation.

Layer 1 — The three context tiers

Knowing where each piece of information lives is the highest-leverage decision for session smoothness.

TierDurationLives inWhat belongs here
User tier Across every project ~/.claude/.../memory/user_*.md, style-level feedback_*.md Who you are, how you work, non-negotiable preferences.
Project tier Across every session in one project memory/project_*.md, reference_*.md, project-level feedback_*.md, CLAUDE.md, ADRs Project identity, stack commitments, math substrate, pattern library, ADR lineage.
Session tier One work session docs/phase*-plan.md, status files, kickoff prompts, transient todos The current phase's plan, open gates, in-flight work, status signals.

Rule of thumb: if the same statement will be true across three future sessions, it belongs in the user or project tier. Session-tier content dies with the phase and should be allowed to die.

Layer 2 — The bootstrap protocol

The first 30 minutes of a new project is where most collaboration quality is decided.

What the human must provide

Eight items, minimum viable kickoff kit:

  1. One-sentence project intent. Every other decision threads through this.
  2. Primary user profile. Drives UX tradeoffs and voice.
  3. Source material. Documents, links, reference projects to read.
  4. Hard stack commitments. Things that will not be relitigated.
  5. Collaboration preferences. Phase discipline, writing style, authority to capture.
  6. Time horizon. A twelve-month goal is not a four-hour block and should not be treated as one.
  7. Anti-patterns. Where previous projects went wrong.
  8. Success definition. What "this worked" looks like — measurable and qualitative.

What the AI finds for itself

Nothing below should cost the human a keystroke:

What the AI asks about (with rec and reason)

Only when inference would be risky:

Everything findable in memory, docs, code, or git is the AI's job. Not the human's.

The decision flowchart

if user-provided OR memory-covered         →  proceed autonomously
elif researchable via tools                →  research, report, proceed
elif reversible and low-risk               →  propose with rec, execute unless stopped
elif ambiguous OR irreversible             →  ask with rec and reason
elif in-flight collaboration               →  status file; re-read before commit
elif violates a frozen item                →  STOP, ask
elif touches another stream's territory    →  STOP, status file, wait

This flowchart runs on every turn. Externalizing it as durable guidance keeps it stable across sessions.

Layer 3 — The collaboration loop

Who talks to whom

┌─────────────┐
│   HUMAN     │  ← decisions, green lights, corrections, new intent
└──────┬──────┘
       │ chat
       ▼
┌────────────────────────────────────────┐
│  ORCHESTRATOR (main session)           │
│  planning, research, merge authority   │
└──┬──────┬──────┬──────┬────────────────┘
   │      │      │      │    (status files = async comms channel)
   ▼      ▼      ▼      ▼
 ┌────┐┌────┐┌────┐┌────┐
 │ A  ││ B  ││ C  ││ D  │  ← builders, one stream each, each in a worktree
 └────┘└────┘└────┘└────┘

The gate-signal alphabet

A durable vocabulary every builder and orchestrator inherits:

SignalWriterReaderMeaning
[RESEARCH-DONE]builderorchestratorI've read everything; here's my plan shape.
[DESIGN-READY]builderorchestratorDesign note posted; review before I code.
[UNBLOCK-X]orchestratorbuilderYou can proceed with X.
[DESIGN-ACK]orchestratorbuilderDesign approved; code away.
[BLOCKED: reason]builderorchestratorI need input; halting.
[NEEDS-HUMAN]orchestratorhumanThis is above my pay grade.
[COMPLETE] <sha>builderorchestratorDone; ready to merge.
[MERGED]orchestratorhumanLanded on main.

Cadence

Ambient awareness — when the desktop helps

The redesigned Claude Code desktop (parallel sessions in a sidebar, auto-worktree per session, integrated terminal and editor) provides ambient awareness of every active stream's live state without polling. This complements — does not replace — status files. Status files remain the durable, git-tracked audit trail; the sidebar is the live ambient view. Both layers are needed: durability and immediacy serve different purposes, and only the durable layer survives a session restart.

Layer 4 — The automation boundary

Not everything should be automated. Routine administrative work is a good candidate. Judgment about transitions, merges, and scope is not.

Four surfaces, not one

MechanismBest forExamples
Cowork desktop sessions
parallel sessions in a sidebar, auto-worktree-per-session, integrated terminal + editor, phone-pairing via Dispatch
Operator-amplification — running the orchestrator and N parallel builders in one window with native worktree isolation; mobile ack via Dispatch A four-stream parallel build, all visible in one sidebar; ack a [DESIGN-READY] from your phone while away from the keyboard
Skills
on-demand procedures the AI triggers from chat
Interactive setups, filesystem writes, local interview loops setup-new-project, phase-kickoff-templater, local pre-event ritual
Routines
scheduled or event-triggered cloud workflows
Periodic digests, PR-triggered reviews, nightly merge-ready checks Status-digest every 20 min during active build; design-ack on stream-branch push; nightly merge-ready check
Shell scripts
deterministic local commands
Build, test, smoke traces, environment checks shakedown.ps1, smoke-trace.ps1, OTel-collector launch

Cowork sessions are the closest layer to the human — they are amplification, not automation. Skills are interactive but procedural. Routines are headless and scheduled. Scripts are deterministic and synchronous. Each layer has a different latency, a different audience, and a different recovery posture when something goes wrong.

The boundary that matters: Routines run in the cloud against the repository and connectors, so they cannot touch the local desktop's filesystem or start a native app. Skills, scripts, and Cowork sessions all stay local for everything that does.

First three Routines worth shipping

  1. Status digest. Scheduled every 20 minutes during active build. Reads every stream's status file and its branch tip, builds a color-coded state table, posts it as a comment on a pinned issue. Replaces the human poll-and-ask loop with ambient awareness.
  2. Design-note review. Triggered on push to a stream branch when the status file flips to [DESIGN-READY]. Reads the design note against the kickoff prompt and relevant memory, produces a clean [DESIGN-ACK] commit or opens a review PR when changes are needed.
  3. Merge-ready check. Scheduled nightly or triggered by an issue comment. Walks each stream branch for a [COMPLETE] marker, verifies build and tests, opens a merge PR with the standard merge-message template. Merge stays a human click.

First three Skills worth shipping

  1. Setup new project. Interview-driven scaffold that writes the starter CLAUDE.md, MEMORY.md, first ADR, and initial implementation plan.
  2. Scaffold parallel streams. Creates worktrees, generates kickoff prompts from a template, seeds status files, outputs the tab-open commands.
  3. Local pre-event prep. Wraps shakedown, local launch, and pre-event backup as a single ritual.

Layer 5 — Where the human is always in the loop

Some decisions will never be delegated. Naming them explicitly prevents the automation layer from creeping into territory it shouldn't have.

Decision typeWhy it stays with the human
Phase transitions (refine → plan → build)Core discipline; non-delegable.
Gate validation (did the live trial pass?)Verbal and qualitative judgment.
Merge-to-main authorityFinal integration gate.
Stack commitmentsIdentity is intentionally built; drift not allowed.
Anti-pattern enforcementRooted in values, not logic.
Social framing decisionsDomain expertise is the moat.
Scope creep red-linesOnly the human knows the twelve-month trajectory.
What to throw awayPart of the iteration pattern; only the human knows when feel is settled.

What the AI does not ask the human again once memory captures it: stack preferences, writing style, phase-discipline interpretation, anti-pattern list, reference-project boundaries, transition language. Asking again is a memory failure, not a politeness.

What this unlocks for the next project

The blueprint isn't specific to one domain. It describes the shape of a disciplined AI-assisted build: dense context, clear signals, discipline that shows up as committed files rather than unreliable memory, automation at the boundaries rather than in the center. The human keeps judgment; the AI keeps pace.

The first test of the pattern was a spatial-temporal modeling platform with four parallel streams that shipped clean. The second test will be whether this document alone — without the conversation that produced it — is enough to run the pattern again.

If you're starting from scratch, the order is: build the memory tier first, write the kickoff protocol second, establish the gate alphabet third, decide the automation boundary last. Anything out of that order tends to collapse.


Derek Ciula is an enterprise architect, technical mentor, and AI integration specialist. Steppe Integrations helps teams build durable AI-assisted engineering workflows. This article is adapted from a 2026-04-19 session retrospective that produced the working pattern described.