A systems view
He treats the model as one component inside scheduling, memory, isolation, review, testing, and delivery controls.
A source-level analysis of Kun Chen's FirstMate
FirstMate is not a smarter chat window. It is an agent distribution that compiles conversation into durable files, isolated work, sparse signals, and a governed delivery path.
00 / The practitioner
Kun Chen is a former L8 engineer at Meta, Microsoft, and Atlassian who now publishes open-source agent tooling and long-form, end-to-end demonstrations of his working environment.
His value here is not celebrity or a claim to the one correct workflow. It is that his ideas are unusually inspectable: the repositories are public, the glue scripts are visible, and the videos show the system doing real work rather than stopping at prompting advice.

He treats the model as one component inside scheduling, memory, isolation, review, testing, and delivery controls.
FirstMate, treehouse, No Mistakes, and related utilities turn the thesis into code that can be read, run, challenged, and adapted.
As models become capable of more work, coordinating parallel workers and preserving trustworthy state matters more than adding another clever prompt.
Concise innovation summary
FirstMate compiles conversation into typed local files, gives each agent an isolated worktree and explicit lease, reports only sparse durable events, and hands implementation to fresh review and QA contexts. The innovation is the composition: replaceable agents operate inside traditional engineering controls while one liaison protects the human's attention.
01 / Prompt compiler
The key move is externalization. A request stops being transient conversation and becomes a chain of small, typed artifacts. Each file has a narrower job than "remember everything."
intake
FirstMate identifies the project, then chooses ship work, a read-only scout, or a persistent secondmate domain.
data/projects.mdmemory
The request becomes a backlog record. Dependencies, delivery posture, holds, and ownership stop living only in chat.
data/backlog.mdcontract
A task-specific brief replaces every placeholder with the objective, acceptance criteria, constraints, reporting protocol, and authority boundaries.
data/<task-id>/brief.mdruntime
treehouse or Orca provides a disposable worktree. A selected harness starts with the absolute brief path, never the entire captain conversation.
state/<task-id>.metasignal
Workers append sparse phase changes. The watcher turns them into durable wakes; current structured state remains authoritative.
state/<task-id>.statusquality
The worker or FirstMate invokes the configured delivery path. No Mistakes can rebase, review, test, document, lint, open the PR, and watch CI.
branch -> PR -> CIlearning
Scout findings land in a report. Project knowledge goes to project instructions. Preferences and operational learning go to their designated durable owners.
data/<task-id>/report.mdsafety
Teardown refuses to discard unlanded ship work. After proof, it returns the worktree, closes the endpoint, clears volatile state, and keeps the durable record.
fm-teardown.shBriefs are contracts. Status files are event logs. Meta files are runtime identity. Backlog is durable work state. FirstMate's design repeatedly prevents one artifact from impersonating another.
02 / Filesystem anatomy
firstmate/
├── AGENTS.md tracked operating contract
├── bin/ deterministic lifecycle commands
├── .agents/skills/ pull-based procedures
├── data/ durable private memory
│ ├── backlog.md
│ ├── captain.md
│ ├── learnings.md
│ └── <task-id>/brief.md
├── state/ volatile runtime coordination
│ ├── <task-id>.meta
│ ├── <task-id>.status
│ └── .wake-queue
├── config/ local policy and dispatch profiles
└── projects/ registered working clones
Instructions, scripts, and skills can evolve through ordinary engineering review.
Projects, preferences, backlog, learnings, briefs, and reports survive agent replacement without entering the public repo.
Endpoints, worktrees, wake events, and holds can be reconciled or retired without erasing the long-term record.
Existing project?
Choose a project name, delivery mode, and autonomy posture. FirstMate clones the repository under projects/<name> and adds the registry entry. no-mistakes and direct-PR projects need an origin remote; local-only may have none. Only the no-mistakes mode runs no-mistakes init and no-mistakes doctor.
03 / Context rot
Kun's answer to context rot is not a single summarizer. It is a hierarchy of authoritative external state plus bounded reconstruction.
Conversation, compacted summary, current reasoning
A compact listing and short status tails keep stale history from consuming the new context.
Preferences, project facts, fleet facts, task notes, and investigations have different destinations.
Bearings reads live structured state. It never treats an old status report or raw event tail as current truth.
Live backend inventory and durable files let a new FirstMate reconcile work that already exists.
A productive disagreement
Repeated compact-and-continue cycles can accumulate a distorted working story. Fit tasks into a sharp context, then start fresh.
Good server-side compaction extends a live liaison. FirstMate limits the risk because disk state, not the summary, owns fleet truth.
04 / On screen
Each frame links to the cited timestamp. Frames are reproduced for critical commentary and remain the property of their creators.
42:11 ↗Kun presents FirstMate after showing the individual tools. The design claim is integration: one conversational liaison over a fleet.
29:46 ↗No Mistakes turns a completed edit into a governed pipeline with review, test evidence, documentation, PR creation, and CI follow-through.
37:31 ↗treehouse leases isolated worktrees, so multiple agents can operate without colliding with the primary checkout.
36:31 ↗Herdr adds agent status to the terminal workspace model. Visibility becomes part of orchestration, not a separate dashboard.
49:11 ↗Kun favors OpenAI server-side compaction. FirstMate's disk state means the compacted conversation is a convenience layer, not the fleet database.
11:46 ↗Only stable, universal behavior belongs in the always-loaded instruction file. Project facts and procedures are routed elsewhere.
14:01 ↗Pocock's grill-me phase forces ambiguity into the open before the plan hardens. The specification records a design, rather than inventing one.
66:01 ↗Implementation, review, and human QA are separate loops. Fresh context matters because a tired implementer tends to defend its own work.
05 / The wider stack
Kun's tools target different bottlenecks. The gain comes from composing them into a path where output from one tool is the contract for the next.
orchestrate
One liaison decomposes requests, dispatches isolated workers, routes decisions, and keeps accepting work without making the human juggle agent sessions.
The shell-based runtime and state contracts are substantial infrastructure. It pays off only when parallel work is frequent enough.
isolate
Reusable worktree pools make isolation cheap, deterministic, and visible. Busy and idle leases replace hand-named folders and cleanup debt.
It adds another lifecycle to learn, and repository hygiene still matters.
verify
A fresh-context pipeline extracts intent, rebases, reviews, tests, documents, lints, opens the PR, and babysits CI. Its init step configures the local gate; doctor verifies that environment, authentication, and daemon are healthy.
Evidence is only as good as the acceptance criteria, tests, and risk model. It cannot supply product taste.
shape
Turns plans and UX proposals into inspectable HTML with annotations and decision controls. Humans react to a concrete artifact instead of a wall of prose.
A polished artifact can create false confidence if unresolved assumptions are hidden.
verify
Lets an agent keep iterating against a verifiable or trusted objective, with token, iteration, and stop limits.
The loop can optimize the wrong target if the objective is a weak proxy.
ergonomics
Wrappers such as gh-axi expose compact structured output and next-step help, reducing parsing errors and wasted context compared with human-oriented CLIs.
They create an opinionated compatibility layer that must track upstream tools.
observe
Surfaces harness status across workspaces, tabs, and panes. It makes a parallel fleet legible and is designed for cross-platform use.
FirstMate still treats tmux as the reference backend; alternative backends carry more integration risk.
observe
Durable sessions, keyboard-driven panes, and mature automation give FirstMate a dependable endpoint model.
Status is less agent-aware than Herdr and session choreography is still visible plumbing.
ergonomics
Keeps review, navigation, and repository state close to the keyboard. It makes the captain's beginning-and-end interventions fast.
The advantage depends on deep editor fluency.
shape
Voice makes it cheap to dump product context, corrections, and follow-up thoughts while FirstMate queues and routes them.
Faster input increases the need for classification, deduplication, and good briefs.
memory
Loads specialized instructions only when needed, keeping the always-on system prompt small.
Too many overlapping skills can confuse routing and degrade model performance.
reproduce
nix-darwin, home-manager, and centralized dotfiles make the whole agent workstation rebuildable instead of hand-configured.
The learning curve and configuration surface are significant.
06 / Chen × Pocock
Both reject the idea that more autonomous chat is enough. Pocock concentrates on shaping work and code. Chen adds the runtime that keeps many shaped units moving. Read the companion guide to Pocock's current workflow and Wayfinder ↗ See how Mycelium adds executable application contracts between planning and dispatch ↗
Research, prototype, then grill the human until there is shared understanding. Write a PRD only after the design is real.
FirstMate classifies a live request, records it in the backlog, and compiles a task brief with acceptance and authority rules.
Matt shapes the work unit. Kun operationalizes it.
Tiny system prompts, pull-based skills, fresh contexts per issue, and tasks sized to fit the model's smart zone.
Tiny global memory plus bounded startup digests, authoritative disk state, sparse events, stow, bearings, and server-side compaction.
Both distrust conversation as the sole memory. Matt resets aggressively; Kun also makes restarts routine.
Vertical tracer-bullet issues with explicit dependencies and a durable issue tracker.
Ship, scout, and secondmate units, parallel by default unless there is a real semantic dependency.
Matt emphasizes product slices. Kun adds runtime topology and routing.
Fresh worktree, TDD, red-green-refactor, then a fresh reviewer context.
Isolated leased worktree, selected harness/model, sparse steering, then a configurable delivery gate.
The same engineering instinct appears at different layers.
Humans must read, test, and impose taste. The code remains the battleground.
Human attention concentrates at requirements and final risk or quality decisions; routine middle work is delegated.
Kun optimizes attention allocation. Matt more strongly warns against losing code-level understanding.
Deep modules, small interfaces, strong feedback loops, and codebases that are easy for both people and agents to navigate.
A control plane with explicit state ownership, fail-closed guards, replaceable harnesses, and restart-proof supervision.
Matt designs the factory floor. Kun designs factory operations.
07 / Critical verdict
What is unusually strong
What can still go wrong
The deepest idea is not "use more agents." It is to give probabilistic workers the same things good engineering teams need: bounded briefs, isolated workspaces, explicit state, feedback loops, independent review, and clear authority.
08 / Adoption ladder
Small AGENTS.md, strong tests, lint, type checks, and a repeatable manual QA path.
Use issue-sized briefs, fresh contexts, isolated worktrees, and explicit acceptance evidence.
Add fresh-context review, interactive planning, and a delivery gate such as No Mistakes.
Adopt FirstMate when session juggling and state recovery are the real bottlenecks.