@G-Schumacher44 / aug-conductor-wrkflw

conductor

structured agent workflow · for any project

GS Analytics monogram
Garrett Schumacher
GS Analytics · founder
garrettschumacher.com
01 / problem
01 — THE PROBLEM

Agents
forget.

×Every new session starts cold — no memory of prior work.
×No structured handoff between sessions or agents.
×No scheduling mechanism — "what comes next?"
×The human does meta-work that shouldn't be their job: re-explaining the project, re-orienting the agent, reconciling decisions made last session.
02 / pattern
02 — THE PATTERN

State lives in files, not in the model.

Without conductor

The agent re-discovers the project every session.
SESSION 1agent reads code, asks operator for context
SESSION 2cold start — same questions, different answers
SESSION 3no memory of what session 1 decided
SESSION 4scope drifts; operator re-explains
SESSION 5human becomes the memory layer

With conductor

State persists in the filesystem. Every session reads the same spine.
SESSION 1read spine → execute slice → write handoff
SESSION 2read handoff → execute next slice → handoff
SESSION 3read handoff → execute next slice → handoff
SESSION N
RESULTproject state independent of any one session
03 / loop
03 — THE LOOP

The Conductor loop.

01intent.md · operator defines
02slice executed · bounded work
03handoff written · current state
04Exact Next Steps · proposed
05operator reviews · approves or redirects
06queue advances · repeat

Every session does three things: read, execute, hand off.

No state lives in the agent's memory. Everything the next session needs is in the files — the intent, the queue, the active slice, and the last handoff.

The handoff is the schedule The agent proposes Exact Next Steps. The operator decides what gets promoted to the next slice spec. Agent proposes, operator approves, agent executes.
04 / slice
04 — ANATOMY

A slice is the atomic unit of work.

# conductor/slice-04-promotions-view.md

objective:
  Add fct_promotions view and a 9th
  explore to the gold_marts model.

out_of_scope:
  - field enrichment (slice-05)
  - backfill logic
  - join configuration

acceptance:
  - [ ] view file generated
  - [ ] dimensions match schema 1:1
  - [ ] count measure present
  - [ ] explore added to model
  - [ ] python3 scripts/validate.py passes

gate: python3 scripts/validate.py
status: active
01

Bounded scope.

One commit or PR. Completable in a single agent session.

02

Out-of-scope is explicit.

Scope drift is the default failure mode. Every slice names what it isn't.

03

Acceptance criteria are checkboxes.

Not "looks good" — measurable. The agent ticks them off as it goes.

04

Validation is the gate.

No handoff is written until validate.py passes. The validator is non-optional.

05 / scaffold
05 — THE SCAFFOLD

Drop into any repo. Fill intent.md.

conductor/
index.mdactive slice pointer + queue
master-plan-*.mdfull project scope & phases
slice-NN-*.mdbounded execution artifact
handoff-log.mdcurrent handoff only
handoff-archive.mdolder entries archived here
tracks.mdcross-repo dependencies
AGENTS.mdbehavioral rules (rename per CLI)
repo root/
intent.mdfill this in first
AGENTS.mdroot agent rules
scripts/
validate.pygovernance gate · zero deps

Twelve files. No service.

The entire workflow runs from the filesystem. No hosted backend, no database, no API. Lives in your repo, ships with your commits.

Drop-in adaptation.

Everything below conductor/ is identical regardless of domain — LookML, REST API, dbt pipeline, frontend app. The format doesn't change.

One sentence to start.

"Read AGENTS.md and execute the active slice."

06 / origins
06 — ORIGINS

Built on a Google pattern. Extended for the loop.

Foundation

Google Conductor

Released Dec 17, 2025 · Gemini CLI extension
Ballinger · Kornder · Aitbayev
  • conductor/ as filesystem context store
  • Tracks with spec.md, plan.md, metadata.json
  • Slash commands for session-independent context
  • The "filesystem-as-state" idea traces further back to Anthropic's CLAUDE.md convention
This repo extends it

aug-conductor-wrkflw

Slice-based execution model
Garrett Schumacher · 2026
  • Slice-based execution replaces single spec+plan
  • Exact Next Steps replaces open-ended proposals
  • Multi-agent — Codex / Claude / Gemini, one scaffold
  • validate.py governance gate · stdlib only
  • Cross-repo tracks coordinate without merging codebases
  • Zero external dependencies — no hosted service, no database
07 / proof
07 — IN PRODUCTION

Real repos. Real numbers.

489
commits
110
merged PRs
60/60
CI green
3 wks
1 operator

Three repos. Three stacks. One Conductor scaffold governing all of them — same slice format, same handoff loop, same validator. Different codebases, same workflow.

Repo
Stack
Commits · PRs
workspace-partner
TypeScript
202 commits · 50 PRs
hecate
Swift
138 commits · 24 PRs
tuning-factory
TS + SQL
149 commits · 36 PRs
08 / demo 01
Demo 01 · Greenfield

Bootstrap a project from zero session context.

main · DEMO.md · ~5 min
1

Orient.

Agent reads project/AGENTS.mdintent.mdconductor/index.md → active slice spec. That's it.

2

Branch.

Cuts feat/slice-01-lookml-bootstrap from main. Every commit lands on this branch.

3

Generate.

Reads 8 table schemas from demo/schema/gold_marts.md. Writes 8 .view.lkml files — one commit per view.

4

Model.

Generates models/gold_marts.model.lkml with 8 explores. No joins — facts are independently aggregated.

5

Validate & hand off.

Runs python3 scripts/validate.py — required gate. Marks slice stable, advances the queue, writes handoff with Exact Next Steps.

$ git checkout main
$ # Prompt: "Read DEMO.md and execute it."

── agent session ──────────────────────
reading   conductor/index.md
reading   slice-01-initial-bootstrap.md
reading   demo/schema/gold_marts.md  # 8 tables

 generated  fct_finance_revenue.view.lkml
 generated  fct_sales_operations.view.lkml
 generated  fct_customer_segments.view.lkml
 generated  fct_product_profitability.view.lkml
 generated  fct_marketing_attribution.view.lkml
 generated  fct_shipping_analysis.view.lkml
 generated  fct_cart_abandonment.view.lkml
 generated  fct_daily_dashboard.view.lkml
 generated  models/gold_marts.model.lkml

$ python3 scripts/validate.py
  All checks passed.

handoff   slice-01 → stable
next      Exact Next Steps written
09 / demo 02
Demo 02 · Pair programming

Agent proposes. Operator approves. Agent executes.

demo-2-start · DEMO2.md · ~8 min

A new business requirement arrives. The data team has provisioned fct_promotions. Two phases — one autonomous, one collaborative — both governed by the same spine.

Phase 1 — Autonomous

~3 min · no human
Reads slice-04 spec from the spine
Generates fct_promotions.view.lkml — schema-faithful
Adds ninth explore to gold_marts.model.lkml
Validates and writes handoff with Exact Next Steps for slice-05

Phase 2 — Collaborative

~5 min · operator in IDE
Reads Exact Next Steps from Phase 1 handoff
Drafts slice-05 spec (view enrichment scope)
Commits draft, stops. Operator reviews diff live
On approval — agent picks up and executes
## Slice 04 — Promotions View

Date:    2026-05-24
Commit:  a3f9c21
Status:  stable

Files Changed
  + project/views/fct_promotions.view.lkml
  ~ project/models/gold_marts.model.lkml  # 9 explores

Validation
  scripts/validate.py: 12 passed | 0 warnings | 0 failed

Exact Next Steps     # ← scheduling mechanism
  1. Enrich fct_promotions — typed measures
     (sum for revenue_attributed, cost;
      average for roas, discount_value)
  2. Add dimension_group for start_date, end_date
  3. Add value_format_name for financial measures
  4. Add group_label for field picker organization
  5. Consider hidden: yes on promotion_id

Blockers
  None
10 / demo 03
Demo 03 · Automated maintenance

A nightly cron job orients from the spine alone.

demo-3-start · DEMO3.md · ~2 min
Codex app scheduled taskcron · 0 6 * * 1 · Monday 06:00 · no human present
1

Cold orient.

Zero session context. Agent reads intent.md, conductor/index.md, latest handoff, and the maintenance slice.

2

Read-only investigation.

Runs validate.py. Checks the queue. Reads blockers from the last handoff. Does not auto-fix.

3

Write the status entry.

Records pass/warn/fail counts, queue state, and open blockers. Commits with chore(maintenance):. Exits.

status
● clean
status
● degraded
## Maintenance Check — 2026-05-25

Date:    2026-05-25
Commit:  8b2e44a
Type:    automated-maintenance

Status
  ● clean

Validation
  scripts/validate.py:
  12 passed | 0 warnings | 0 failed

Queue State
  Slices: 5 total — 5 STABLE, 0 ACTIVE, 0 QUEUED

Open Blockers
  None

Next Run
  Cron-driven — operator sets schedule.
  No action required.
11 / validator
08 — THE VALIDATOR

Format and commits verified before every handoff. Diff review closes the loop.

Every handoff passes through scripts/validate.py. Stdlib only · zero deps · CI-safe.

Core checks · domain-agnostic

  • Spine structure present (index.md, handoff-log.md)
  • Handoff has Commit: and Exact Next Steps sections
  • Commit hash in handoff exists in git (git cat-file -e)
  • All acceptance criteria checked — unchecked items block handoff
  • CI workflow stub is present
  • Git branch state is sane (no uncommitted spine edits)

Domain extension · demo/scripts/validate_lookml.py

  • manifest.lkml + project_name present
  • View blocks, dimensions, and at least one measure
  • Model file has connection + explore blocks
$ python3 scripts/validate.py

  ── conductor spine ──────────────────
    conductor/index.md present
    conductor/handoff-log.md present
    handoff has Commit:
    handoff has Exact Next Steps
    active slice: none — all slices stable
    CI workflow stub
    Git branch: feat/slice-04-promotions

  ── lookml extension ─────────────────
    manifest.lkml + project_name
    9 view files · all baseline-valid
    gold_marts.model.lkml · 9 explores

  ─────────────────────────────────────
  All checks passed.

  12 passed | 0 warnings | 0 failed
stdlib only · zero deps · CI-safe · extensible · non-optional
close / run it
CLOSE — TAKE IT HOME

Run a demo.

Clone the repo, check out a branch, paste one sentence into your agent. Fifteen minutes to see the loop end to end — on your machine, with your CLI of choice.

Demo 01 · Greenfield git checkout main
>Read DEMO.md and execute it.
Demo 02 · Pair programming git checkout demo-2-start
>Read DEMO2.md and execute it.
Demo 03 · Automated maintenance git checkout demo-3-start
>Read DEMO3.md and execute it.
The repo
github.com/G-Schumacher44/aug-conductor-wrkflw
License MIT · zero deps
Questions?
garrettschumacher.com
me@garrettschumacher.com
/in/garrett-schumacher