00 — STATEFUL AI
A company of one, with the leverage of a team of agents.
Stateful is a local-first AI work server for a company of one.
You drop a directional idea into Slack. A team of persistent, role-specialized agents picks it up — they scope it, plan it, carry the code through pull request and review, and report back as a single Founder Brief. State lives as plain files in a repo you own: runs, tasks, decisions, and approved memory you can read and grep. Agents propose; you approve with a 👍. Local-first, provider-agnostic, and dogfooded — the work server is built by itself. The honest version of an autonomous company: real work, owned state, a human at every irreversible gate.
- human-gated
- $0 by default
- state you own
- improves itself
01 — WHO WE ARE
Your agents live in Slack. Their memory lives in your repo.
Persistent roles, a readable trail, founder-owned state.
Most AI tools feel like rented attention — a chat that's gone the moment you close the tab. Stateful is the opposite. The agents are persistent roles, not sessions: each is a folder of config — identity, channels, permissions, memory scope. Everything they do leaves a trail you can read.
State isn't trapped behind a vendor or buried in a vector database; it's plain files in a git
repo — runs/, events/, tasks/,
memory/approved/, agents/ — that you own and can inspect.
Models are swappable backends (Claude Code and Codex subscriptions, a local GPU, optional hosted APIs); by default it runs on subscriptions plus local GPU, so there's no metered API spend. The north star isn't growth or metrics. It's taste: build genuinely cool things worth having exist.
02 — HOW IT WORKS
Scope → plan → build → review. You hold the gate.
Not a diagram. The actual loop, in the actual product language.
01 SCOPE
Find the wedge and the non-goals — the smallest product that proves the thesis.
🎯 product_strategist
02 PLAN
Design against the real repo, local-first, inspectable, no dead ends.
🏗️ infra_architect
03 BUILD
Break it into small, testable increments; the coder writes real code on a branch.
🛠️ engineering_lead
04 REVIEW
A local prepass plus a Codex pass read the diff; the Skeptic flags overclaims; the CoS synthesizes.
🔴🧭 skeptic + chief_of_staff
state you own · the repo
runs/ # every pass, as markdown events/ # one JSON record per pass tasks/ # proposed → approved → done decisions/ # the why, written down memory/approved/ # human-gated, readable by all agents/ chief_of_staff/ agent.yaml instructions.md
agents/chief_of_staff/agent.yaml
id: chief_of_staff display_name: Chief of Staff emoji: "🧭" autonomy_level: propose # it proposes; you decide memory: scope: company private_write: true forbidden_actions: - approve company memory - spend money - merge without the founder # agent = a folder, not code. # add a teammate = add a folder.
An idea becomes a development stream that runs four stages and pauses at a milestone to wait for you. What it does today, stated plainly: it can carry a scoped change through plan, PR, and review, and prepare it for a founder-approved merge — or adopt an existing repo and work inside it.
Memory, tasks, and decisions are file-based and human-gated. No auto-commit, no shadow archive. The gate is the feature, not the limitation.
03 — MEET THE TEAM
Meet the team.
Six roles, led by the Chief of Staff. Agents are config, not code — a folder is a team member.
Each agent is a real role with a real spec in the repo — identity, voice, channels, permissions, and the things it is explicitly forbidden to do on its own. Every one operates at the same autonomy level: it proposes, you decide. Adding a teammate is adding a folder; the team grows the same way. There's bench depth too — a Release Engineer that drafts release notes but never cuts a release, a Narrative Designer and Game Designer in the gaming pack, a set of analyst reviewers — but these six are the core of how the company runs.
-
Chief of Staff
chief_of_staff
Keeps the company operating and synthesizes the Founder Brief; owns self-improvement
leads the team
Keeps Stateful operating with focus, cadence, and clear next actions, so one founder moves with the leverage of a small team. Synthesizes every multi-agent run into a single Founder Brief, and carries a standing mandate to improve the company itself — recording friction quietly and only escalating to a proposal when it recurs or clearly earns it. -
Product Strategist
product_strategist
Finds the wedge — the smallest product that proves the biggest thesis
Shapes Stateful into a coherent product with a clear wedge, MVP scope, and differentiation. Always asks “what is the smallest product that proves the biggest thesis?” — starting from user pain, not architecture, and making the non-goals explicit.
-
Infra Architect
infra_architect
Designs the local-first, provider-agnostic architecture
Designs a local-first, provider-agnostic architecture that starts simple, stays inspectable, and avoids dead ends. Prefers boring, inspectable systems over clever abstractions, and treats Slack, Linear, GitHub, and Notion as swappable adapters — never the source of truth.
-
Engineering Lead
engineering_lead
Breaks strategy into small, testable, buildable increments
Turns product and architecture direction into small, buildable increments with clear tasks, acceptance criteria, and tests. Biases toward the smallest useful slice and working prototypes over abstract platform work — every task testable, every scope shippable.
-
Skeptic / Red Team
skeptic_red_team
Stress-tests assumptions; prevents overbuilding and overclaiming
Challenges assumptions, identifies failure modes, and prevents Stateful from overbuilding, overclaiming, or mistaking excitement for evidence. Direct but constructive; always asks what evidence would change the founder's mind, and separates “interesting” from “useful.”
-
Memory Curator
memory_curator
Decides what becomes durable, permissioned memory — not noise
Decides which context should become durable, structured, permissioned memory so future agents reason better without turning conversations into a noisy archive. Proposes source-linked candidate memories; never commits them — memory is founder-approved by design.
agents are config, not code — a folder is a team member.
04 — THE WRITING
The story behind the system.
From the founder
“I Built a Company of AI Employees” — the first-person account of building and running an agent-operated company of one, documenting the real build, including the loop where the work server improves itself.
This site is the what. The Substack is the why — the first-person account of building and running a company-of-one operated by AI agents, documenting the real build as it happens, including the dogfooding loop where the work server improves itself. If the page made you curious how this actually feels to run, start there.
Read the founder's story →