My Agentic Engineering Stack: Interfaces, Subscriptions, and the Skills That Actually Matter
ByGilad Dor Levi
A practical synthesis for working with AI coding agents - vendor-agnostic interfaces, smart subscription stacking, choosing the right harness, and the skills that actually move the needle.

I've spent a lot of hours over the past year refining how I actually work with AI coding agents day to day — not which model is best this week, but the surrounding system: interface, subscriptions, harnesses, and the small set of skills that make the difference between agents that occasionally help and agents that carry real workload. After digging into how some of the most serious practitioners in this space structure their own setups, here's the synthesis I've settled into.
The Interface Problem
The biggest mistake I see is picking an interface that locks you into one vendor's models. Tools built around a single provider are fine, but they cap you: you can't use a Claude subscription's value inside a GPT-only app, or vice versa, and in 2026 that's real money left on the table.
What actually matters in an interface:
- Model- and subscription-agnostic: run Claude, GPT, Grok, and open-weight models side by side, using whichever subscription already covers each one
- Visible agent state: at a glance, which agents are working, idle, blocked, or done, because once you're running more than two or three agents in parallel, tracking this manually stops being realistic
- Built-in git worktree support, so parallel agents don't fight over the same branch
- The ability to preset or queue the next message before an agent finishes its current step A terminal multiplexer (tmux-style) works fine for a handful of agents, but it breaks down past a certain count: the interface becomes the bottleneck, not the models.
Getting Real Value From Subscriptions
The choice between a subscription and API billing depends on workload, quotas, supported tools and automation requirements. A subscription does not necessarily include API credit or authorize every third-party interface. Check official Codex plans and limits and Claude Code cost documentation before choosing. Neither route is always cheaper.
Before adding another subscription, list the tasks you actually run, check what your current plan permits, measure usage and limits over a working week, then compare total cost. Generic budget amounts are not a price quote or a promise of access to a particular model.
Cloud Agents Are Coming, and Lock-In Is the Real Cost
Cloud-hosted agents, as opposed to agents running locally on your machine, are clearly where the industry is heading. Running agents locally caps you: your machine can only handle a handful of parallel agents before resource contention becomes a problem, sessions die when you close your laptop or lose internet, and there's no real isolation between agents sharing one filesystem.
The catch with most vendor cloud-agent products is ecosystem lock-in. Setting one up properly — secrets, environment variables, integrations — takes real hours, and once it's done, migrating away is expensive and painful. You're also handing a vendor your code, your context, and your usage patterns, whether or not they train on it.
The Alternative: Your Own Small Server
The lower-lock-in version of the same idea is straightforward: rent a small VPS, install a lightweight session manager built for agents (something that keeps sessions alive independent of your laptop and tracks agent state), and connect over SSH from anywhere. This gets you most of the benefit of a managed cloud-agent platform — persistent sessions, always-on availability, no local resource limits — without handing a vendor your entire workflow.
The genuinely useful part of this approach is that you don't need deep server or DevOps knowledge to set it up. A coding agent with shell access can provision the environment for you: install the runtime, Node, Python, Git, whatever your stack needs, just by describing what you want in plain language and letting it run the commands. Once the first agent is running on a fresh server, using that agent to install and configure additional tools on the same machine is trivial.
Choosing the Right Harness for the Job
Not every task needs the same kind of agent:
- For simple, well-scoped work, a minimal harness with a small, fixed toolset is often faster and more predictable than a heavier one
- For day-to-day work across many different models, a harness that lets you switch models freely (as long as your subscriptions cover them) and preset follow-up messages is worth the setup
- For tasks where you genuinely don't know the right approach yet, a self-improving harness — one that builds and refines its own skills as it works — is worth the extra overhead. For clearly-scoped work, stick with a standard harness instead; you don't want it inventing new patterns when you already know exactly what you want built
- For repetitive, well-understood tasks, a standard coding-agent harness launched through a short shell alias (skip retyping long permission flags every time) is the efficient default
Skills Worth Having
A handful of reusable "skills" — structured, reusable instructions an agent loads for a specific kind of task — do more for real productivity than picking the newest model:
- A layered code-review skill. Instead of running one review pass, have two independent models review the same change and merge their findings into a single, deduplicated list. Different models catch different classes of mistakes, and merging avoids paying to read two separate, overlapping reports.
- A decision-first planning skill. Before implementation starts on anything nontrivial, have the agent surface the handful of real architectural choices as explicit options for you to pick, instead of letting it silently default to something you might regret later. Models are strong at implementation, not at taste or judgment; that call should stay yours.
- A dedicated research and scraping skill, separate from an agent's built-in web search. Built-in search in most harnesses is basic and gets blocked easily on sites like GitHub or social platforms; a proper research skill handles broader lookups, contact discovery, and structured web research reliably.
- A pre-tool-call guardrail hook. Before ever running an agent in a fully autonomous, permission-skipping mode, put a hook in place that blocks destructive shell patterns outright — recursive deletes, dangerous git or GitHub CLI operations, anything that reads from a credential or password manager — before they execute. This is worth setting up once and forgetting about.
- A merge/push lock for parallel agents. Once you're running many agents against the same repository in parallel, you eventually get two or three trying to merge and push at once. A simple system-level lock, ensuring only one agent's branch goes through verify → push → CI → deploy at a time, prevents that from turning into a mess.
- Architecture decision records. A dedicated folder documenting why a project is built the way it is, and the state of the project when that decision was made, so future agents (and future you) don't have to reconstruct that reasoning from scratch or from buried chat history.
Operating Principles That Matter More Than Any Single Tool
- Match the model to the task. Use your strongest reasoning model for planning and for genuinely hard bugs, a cheaper and faster model for everyday work, and whatever's currently best for the specific domain (design, data, and so on) for that domain. This only comes from actually testing models yourself rather than trusting what circulates online; when a major new model ships, it's worth setting aside real time to test it directly on your own workflows.
- Review deliberately, not reflexively. Run a full multi-model review on medium-to-large changes, not on every small tweak, and do it once. Chaining review after review after review doesn't converge; review models will keep finding something to flag even in a codebase that's already fine.
- Stay in control of sub-agent delegation. Many harnesses default to a cheap, weak model for anything delegated to a sub-agent. If code quality matters to you, decide explicitly which model runs sub-agent work instead of accepting the default.
- Use git worktrees once you actually need them. Skip them for small, single-branch projects; they're unnecessary overhead. Once you're running many agents in parallel on a larger codebase, they stop being optional — without isolated working copies, parallel agents will overwrite each other's changes.
- Give agents read-only access to production data once you have real usage, and never write access. Being able to ask an agent to analyze real usage patterns — popular features, common errors, churn signals — directly against a read-only database replica is one of the highest-leverage things you can set up, and one mistake with write access is enough to regret permanently.
- Push back on runaway test generation. Some models default to adding tests aggressively, including on projects where it makes little sense. You often need to explicitly instruct a model not to add tests to land at a sane amount, since even with that instruction it tends to add some anyway.
- Speak instead of typing when you can. Most people speak two to four times faster than they type. A voice-transcription tool for prompting is a small setup cost with a real, compounding speed return.
The Takeaway
None of this is about chasing the newest model. It's a system: an interface that doesn't lock you into one vendor, subscriptions used deliberately instead of raw API billing, a harness picked for the actual task instead of habit, a small set of reusable skills that catch real mistakes, and a handful of operating rules that keep you — not the model — making the decisions that matter. That combination is what actually compounds over time.
Before running agents in parallel
Choose a non-sensitive trial task, set permission boundaries and review the result before merging. The official git worktree documentation explains separate working directories; these do not replace tests, coordination or release approval. Model access and savings must be checked against your own workflow.
Continue the workflow
Before connecting an agent to data and tools, use the Zero Trust guide to AI agent security to plan permissions, secret isolation and human controls.
Keep reading

ArticleAI
Harness Engineering: The Next Phase After Prompt and Context Engineering
From prompt engineering, through context engineering, to harness engineering - the story of how AI system building actually evolved.

GuideAI
AI marketing skills: a practical guide for Claude, ChatGPT and Codex
My guide to the Marketing Skills library: choose skills, install them in Claude and OpenAI environments, and build a marketing workflow with 9 prompts and factual checks.

GuideAI
find-skills for Claude Code: how to find, vet and install Skills
I ran find-skills and its CLI on my machine: how to install it, how to search, what to check before installing a Skill, and what the install counts really show.
Follow us
TikTok · X · Instagram · Telegram
Ready to automate?
Let’s build a system that works for you — not the other way around.
