AI agents vs workflows
AI - Code

My Agentic Development Workflow (as of July 2026)

AI agents vs workflows
Dark Knight Rises Console at Warner Bros Studios , Hollywood( Batman’s agentic setup)

The AI toolset is changing fast, and my workflow is ever evolving like a side character in Lost. I’m starting to snapshot this now so I can look back on it (in maybe 2 weeks at the rate things are evolving?) in terms of how ridiculous it was to think this was optimal. Writing this post, I realized it’s a bit of a ball of thread strung together. My work setup is a whole other deal with more model sprawl but this is my personal setup below.

It’s a stack of tools I’ve noticed most people’s workflows have to do various things and mine is no different. Data movement is to be cautious about and I have local models running on my M4 and thats the direction I sense we are all going after. A factor that can definitely be streamlined is the propensity to test new models as the frontier labs put them out – those posts on LinkedIn stating ‘HeRe’s 5 nEw tHinGs FaBle CAn dO’ trigger FOMO and make you constantly tweak model selections.

Current setup

  • Hermes (Nous) is the main coordination layer. Handles daily todos, cron jobs, web research, note-taking in Obsidian, and delegates out to coding agents when needed. Switch out models here via openrouter as required.
  • Cursor as the daily driver for anything that lives in a repo. I keep a few contexts open split by job: one for big features, one for debugging, one in agent mode for poking around OSS repos like Pi or Opencode. Background agents run tasks in parallel while I’m off doing something else. It’s wired into my MCP servers (VPS, hermes) so it can do more than write code, and I lean on subagents for parallel research and cleanup.
  • Another area I am trying to lean into is local. One setup that’s worked is Cursor pointing at an OpenAI-compatible endpoint served by a Pi.dev harness, which runs Qwen and Gemma on the M4 through llama.cpp. Pi.dev is for the planning and tool calls, Cursor is like the workbench where I edit and read diffs. It’s way slower than a frontier model, but ok price to pay for sensitive data that never leaves my M4 and the prompt cache stays warm between runs. I still need to research how to run GLM 5.2 locally which will be amazing. But frankly, the idea of working on my mac while it’s wheezing like it needs an inhaler is not appealing.
  • Claude Code / Codex / OpenCode when I want a raw terminal session instead of the IDE, usually for a one-off script or a quick throwaway task outside a project based on if I have any tokens available.
  • Obsidian vault as the running brain (influenced by Karpathy): daily todos, TOPICS.md, project notes, and anything I want to persist across sessions.
  • GitHub repo for config backup, auto-pushed a few times a week.
  • OpenRouter + kimi-k2.7-code as the default model when I’m talking directly to Hermes. I route heavier reasoning to a hosted model and keep the cheap local ones for classification and glue.
  • Claude mostly for audio engineering and logic control in the DAW. For generating mixes that I am not happy with, it’s a great tool that can act as a mixer/ producer and judge the sine curves on your mixes to add compression, reduce gain, increase channel gain etc.

Three layer cake

I tried living in a single tool but none of them fit every use case. Omnigent is meta-harness I’m enjoying exploring to migrate most of my workflows.

Hermes is where I think. I tried Open Claw for a bit but my fingers refused to type ‘openclaw gateway restart’ anymore after every release and the debugging that followed for broken jobs. Hermes is conversational, and it holds state across sessions through the Obsidian vault. Cursor is where I build, it’s fast and it has the whole repo in context. The terminal tools are for the tasks that don’t deserve a project at all.

Browser and CLI agents

Two non-IDE modes are Browser agents and CLI that I use.

Browser agents for anything that lives behind a page instead of an API. Playwright MCP handles the research runs, pulling docs, comparing pricing, reading changelogs, scraping a preset library, then dumping the summary back into Obsidian. The rule I’ve landed on: let it read the web but never let it act on the web unsupervised. Clicks that log in and submit forms consume way more tokens than I’ve wanted.

CLI agents for the throwaway work – a one-off migration script, a batch rename, a quick log grep across a VPS et. Claude Code, Codex, or OpenCode in a terminal, no project, no ceremony. The whole point is that the task is small enough that I can read the diff in one screen and either keep it or git checkout . and move on.

The split between the two is mostly about verification cost. If I can eyeball the result in seconds, I let the agent run loose. If a wrong step writes to disk or the network, I keep a hand on it.

Evals

For structured-output tasks I keep a small set of cases with a known-good schema and assert against it. Either the output validates and matches the fields I expect, or the run fails loudly via Telegram. This is usually a Hermes cron that re-runs the set nightly. Since these are personal projects, this suffices.

For the fuzzier stuff, I think I should be using an LLM judge but have not got around to it.

Where this is going

A year ago I was copy-pasting into a chat window or using Gemini free API for random usecases. Now the default is to describe the outcome, decide whether it’s a workflow or an agent, and let the right one take the first pass. The skill that’s actually changing is knowing which pass to trust and which to throw away.

The key skill for me is to ensure I’m thinking more not less to give the toolset the instructions it requires and for acceptable ROI on my time.

This may all be a travesty in 6 months.

Subscribe to posts

New posts on data, AI, and building things - straight to your inbox. No spam.

Subscribe

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.