Professional CLI work
Claude Code with Claude models is my usual work setup. HERDR keeps sessions and tasks visible while I move between implementation and review.
Claude Code · cmux · HERDR
Full-stack software developer
AI-assisted engineering
I start with the product question: who needs this, what should change, and what could go wrong? Agents help me investigate, implement, and review. I remain responsible for the decisions and the result.
My workflow adapts Matt Pocock’s agent skills to the size of the change. Explore the source skills ↗
Question the user need, inspect the codebase, and challenge assumptions. Research or prototype when an answer is not yet clear.
Agreed decisions and constraintsRecord the resolved behavior, boundaries, and acceptance criteria. Preserve the reasoning without restarting discovery.
A durable specificationSplit larger work into small vertical slices across the relevant layers, with dependencies and a way to verify each result.
Verifiable end-to-end tasksGive agents bounded tasks and focused context. Build incrementally with tests, type checks, runtime feedback, and direct inspection.
Reviewable changes and checksCheck engineering standards and requirement fidelity separately. Review the findings, exercise the result, and iterate before acceptance.
Reviewed implementationReview, refine, repeat. Findings inform the next pass.
This is a working loop, not a documentation ceremony. A small fix may need only a clear decision and acceptance criteria; larger changes deserve a spec and tickets. Research and prototypes help when the answer is still uncertain.
Planning and verification happen throughout. I approve what is committed or released and check the deployed result; shipping is not an unattended agent decision.
cmux is my daily terminal workspace. HERDR keeps CLI agents, tasks, and sessions organized in one place. I default to a lightweight terminal setup and switch to desktop tools when the task benefits from broader app or computer interaction.
Claude Code with Claude models is my usual work setup. HERDR keeps sessions and tasks visible while I move between implementation and review.
Claude Code · cmux · HERDR
Pi Agent runs OpenAI/Codex models for my personal projects, with GPT-6 Astra as my current daily driver. Pi provides the agent harness; OpenAI provides the model.
Pi Agent · cmux · HERDR
I use the Codex app, Claude Code on desktop, and Claude’s Cowork for tasks involving other apps, files, or supported computer interactions. I choose the environment and permissions for the task, rather than treating every chat as computer access.
Codex · Claude Code · Claude · Cowork
Public projects show the engineering practices and product decisions I value. These artifacts are not a claim that every change followed the same agent workflow.
Relay
Relay’s public documentation identifies RSVP, queue, expense, and permission rules alongside repeatable quality commands. The decisions and checks are more useful evidence than a claim about how quickly code was generated.
Roleway
Roleway’s agent prepares internal changes for explicit approval. Its public documentation describes access controls and end-to-end checks. This is AI product functionality, distinct from the coding agents I use to develop it.
I adapt shared skills and custom instructions across agents. They make recurring tasks consistent without replacing product questions or learning through the work.
grillingChallenge assumptions, inspect the codebase, and resolve product ambiguity through questions.
researchCheck primary sources and record the findings that inform a decision.
prototypeExplore uncertain interfaces, behavior, and technical approaches with disposable work.
domain-modelingKeep domain terminology and important architectural decisions explicit.
codebase-designDefine clear module boundaries and testing seams.
tddUse red-green-refactor where the agreed testing seam supports it.
diagnosing-bugsReproduce a failure, investigate the cause, and verify the fix.
code-reviewReview engineering standards and fidelity to the originating issue or specification.
resolving-merge-conflictsResolve conflicts without silently discarding intended behavior.
impeccableShape, audit, and refine interface behavior and presentation.
frontend-designMake intentional visual decisions for new and existing interfaces.
web-design-guidelinesCheck accessibility, interaction, and web-interface practices.
vercel-react-best-practicesReview React and Next.js performance patterns.
writing-for-agentsMaintain agent instructions and custom skills for recurring work.
agent-browserExercise browser flows, inspect interfaces, and capture verification evidence.
wizardGuide human-only setup and configuration steps explicitly.
The model, agent harness, and workspace serve different purposes. I choose each for the context rather than treating one setup as universal.
Professional work
My usual model family for professional development with Claude Code. I choose the model and interface to suit the task.
Model information ↗Personal-project daily driver
My current daily driver for personal projects. Pi Agent is my lightweight CLI harness for OpenAI/Codex models; I also use the Codex app and ChatGPT as the task requires.
Model information ↗Question assumptions, compare approaches, and learn enough to make an informed product or engineering decision.
ChatGPT · Claude
Navigate the code, use assistance where useful, and inspect changes directly in context.
Cursor · VS Code · GitHub Copilot
Dictate prompts, questions, and notes with Wispr Flow. It is an input layer, not the agent making the decisions.
Wispr Flow
Use Termius for remote terminal access to my Mac and HERDR workspace. I also continue supported Claude and Codex sessions through their native remote features; terminal access and remote-agent control are different tools.
Termius · HERDR · Claude Code · Codex