Guide

Agentic engineering: build with AI agents and stay on top of the work

Agentic engineering is the way of working in which AI agents write the code and you direct them: with clear briefs, criteria you can check, and a decision at the end. This guide explains how it differs from vibe coding, shows an agentic coding workflow with Claude Code, Codex, Cursor, and Gemini CLI, and points out where the friction shows up day to day.

What is agentic engineering?

A coding agent is more than a chat that suggests code snippets. It works directly in your project folder: it reads files, searches the code, runs tests, changes several files, and checks the result itself. Agentic coding describes what the agent does. Agentic engineering describes the discipline around it: how you write briefs, make results verifiable, and keep the responsibility.

The term has a well-known godfather. In February 2025, Andrej Karpathy, a co-founder of OpenAI, coined “vibe coding” for a way of programming where you fully give in to the vibes and forget that the code even exists. Collins named it its Word of the Year for 2025. A year later, in February 2026, Karpathy called “agentic engineering” his preferred term for the professional version: agentic, because most of the time you no longer write the code yourself but direct and supervise agents; engineering, because there is skill and experience in it.

Agentic engineering vs. vibe coding: the difference

Both use the same tools. The difference lies in how much you define up front and how thoroughly you check afterward.

AspectVibe codingAgentic engineering
BriefA prompt in the chatSpec with goal, requirements, and acceptance criteria
CheckingTrying whether it runsTests, build, review of the diff
CodeOften not readReviewed; responsibility stays with the human
MemoryThe chat historyFiles: AGENTS.md, specs, tasks
FitsPrototypes, small personal tools, experimentsProducts, client projects, anything with users and data

Vibe coding isn’t a mistake; it’s a tool for the right moment. Many vibe coders switch to engineering the moment the experiment turns into something other people use.

You direct: brief, review, decision

With agentic engineering, your work shifts. You type less code and do three things more thoroughly:

  • Brief: You describe what should be built and how to tell when it’s done. The more precise the brief, the fewer rounds of corrections.
  • Review: You read the diff, look at the test results, and try the result. An agent stops when the work looks done; only a review shows whether it is.
  • Decision: Merge or rework, next task or change of course. These decisions stay with you.

Work loop

From brief to decision

Amber stands for you, cyan for the agent.

  1. Human

    Brief

    You describe the goal, the requirements, and how to tell when it’s done.

    • Spec with acceptance criteria
    • Do, Draft, or Ask
  2. AI

    Implementation

    The agent plans, changes code in its own branch, and runs tests and the build.

    • Branch ai/course-page
    • npm test · npm run build
  3. AI

    Handback

    It reports what it did, with evidence. Anything only you can do, it creates as a task for you.

    • Handed back for review
    • For you: Register API access
  4. Human

    Review and decision

    You check the diff and the result against the criteria, then accept or request changes. You decide on the merge.

    • Accept
    • Request Changes: comment

Change requests and replies go back to the agent until the criteria are met.

Typical friction when you work with coding agents every day

If you work with agents daily, you know these spots:

  • Open items disappear in the chat history. At the end of a session, three things are left over. A few days later, they’re buried under new messages or closed along with the session.
  • Tasks for you hide in long answers. The agent needs an API key, a DNS record, or an approval in the App Store and mentions it in the fourth paragraph of its summary.
  • Several sessions, several projects. One window runs the course page, a second a bug fix, a third some research. Only you know which state lives where.
  • Full context windows. Long sessions make agents worse, which is why Anthropic recommends starting fresh with /clear between unrelated tasks. Anything that isn’t in a file is then gone for the agent.

The remedies have one thing in common: the state of the work belongs in files, not in the chat.

In practice: Claude Code workflows that hold up

Tasks as files instead of chat history

Create every task as a file the agent can read and change: with a title, status, owner, and a log. Then every new session starts with “Work through your open tasks,” and the agent finds everything it needs, even after /clear or in a different tool. At the end of a session, the brief is: “Create tasks for the open items.”

Specs with acceptance criteria

For anything bigger than a one-liner, you write a spec: goal, requirements, and acceptance criteria you can check off. In its Claude Code best practices, Anthropic advises letting the agent ask questions and write a spec first for larger features, then starting the implementation in a fresh session. Good specs name the files involved, say what is out of scope, and end with a check that shows everything works.

Set the level of autonomy: do, draft, ask

Not every task tolerates the same freedom. The agent may simply update a dependency. Copy for the home page it should prepare as a draft that you sign off on. For a database migration, it should ask first. Decide this per task, not once for everything.

Handbacks instead of summaries

When the agent is done, it shouldn’t just reply; it should hand the task back: for review, with a note on what it did and where the result is, or with a question if something is missing. Anything only you can do, it creates as a separate task for you.

Review with evidence

Ask for evidence instead of claims: the test output, the command it ran, a screenshot. Give the agent something it can check itself, such as tests or a build. For larger changes, Claude Code’s plan mode (Shift+Tab) helps: the agent reads and plans before it changes anything. And a second look in a fresh context, for example from a subagent, finds gaps the agent overlooks in its own code. It does code tasks in its own branch; you decide on the merge.

AGENTS.md and CLAUDE.md: the manual for your agent

Every session starts without any memory of the last one. What the agent needs to know about your project therefore goes into a file it reads at the start. AGENTS.md is an open format for this, a kind of README for agents, now stewarded by the Agentic AI Foundation under the Linux Foundation. Codex, Cursor, and many other tools read it. Claude Code reads CLAUDE.md and falls back to AGENTS.md when there is no CLAUDE.md; with @AGENTS.md, you include one in the other. Gemini CLI reads GEMINI.md; the file name can be changed.

# AGENTS.md

## Commands
- Tests: npm test
- Before finishing: npm run lint && npm run typecheck

## Rules
- Work in your own branch, never on main.
- No push and no deploy without approval.
- New dependencies only after asking.

## Tasks
Tasks live in TandemLoop, linked as ./tandemloop.
Read ./tandemloop/AGENTS.md first. Anything only I can do
(access, approvals, decisions), create there as a task for me.

Keep the file short. For CLAUDE.md, Anthropic recommends fewer than 200 lines and only what the agent can’t read from the code itself. If it repeats a mistake, the rule belongs in the file; if it has long been following a rule, you can take it out.

Tools: Claude Code, Codex, Cursor, Gemini CLI

ToolVendorRuns inReads
Claude CodeAnthropicTerminal, editor, desktop appCLAUDE.md, AGENTS.md as a fallback
CodexOpenAITerminal, editor, desktop appAGENTS.md
CursorAnysphereIts own editor, terminalAGENTS.md and its own rules
Gemini CLIGoogleTerminalGEMINI.md, configurable to AGENTS.md

Which tool you choose matters less than how you work. If instructions, specs, and tasks live in files, you can switch agents, and the new one picks up from the same state.

How TandemLoop supports agentic engineering

TandemLoop is a to-do app for Mac, iPad, and iPhone in which you and your agent share the same tasks. They live as text files in your iCloud Drive; your agent reads and writes them directly and follows a manual that TandemLoop provides. No plugin or API is needed.

Several agents and sessions read the same folder and see the same state. Only one should write at a time; otherwise, syncing through iCloud can create conflicting copies. The page A to-do app for working with AI agents shows the whole workflow; the guide Claude Code and Obsidian describes what the same setup looks like in an Obsidian vault.

Beyond the code, TandemLoop is a full to-do app with an Inbox, projects, due dates, and custom views. If you follow the GTD method, let the agent pre-sort the Inbox and prepare the weekly review.

In the app

Spec and handback in one place

TaskOnline course
Write script for lesson 2For Review · due Fri, Oct 23AI

For ReviewScript with 1,380 words, exercise at the end. Result: Script-Lesson-2.md. Please check the opening.

SpecReady for Agent

Goal

Narration for lesson 2, “Handing Off Tasks the Right Way,” about ten minutes.

Requirements

  • Structure as in the course outline
  • Speak to the learner directly, one everyday example

Acceptance criteria

  • 1,500 words at most
  • Exercise at the end

Frequently asked questions

What is agentic engineering?

Agentic engineering means building software with AI agents such as Claude Code, Codex, Cursor, or Gemini CLI, which read code, run commands, and change files. You no longer write the code yourself; you give the brief, check the results, and make the decisions. The “engineering” stands for the care around it: specs, tests, review, and clear rules for the agent.

What is the difference between agentic engineering and vibe coding?

With vibe coding, you let the AI do its thing and mostly check whether the result runs; you often don’t read the code. With agentic engineering, the same agent works, but with a spec, acceptance criteria, tests, and review. Responsibility for the result stays with you. Vibe coding fits prototypes; agentic engineering fits software that has users and needs maintenance.

Is vibe coding real programming?

It produces real, working code, but nobody understands or checks it. For a prototype or a tool only you use, that’s fine. As soon as other people use the software, it handles data, or you keep developing it for months, you need the way of working that agentic engineering describes.

Which vibe coding tools are there?

Common choices are coding agents in the terminal and editor, such as Claude Code from Anthropic, Codex from OpenAI, Cursor, and Gemini CLI from Google. There are also browser-based app builders that generate a finished application from a description. For agentic engineering, the agents that work directly in your project folder are the best fit.

What goes into an AGENTS.md?

Everything an agent needs to know about your project that it can’t read from the code itself: commands for tests and the build, rules for branches and commits, what it may only do after asking, and where tasks live. Keep the file short; long instructions are followed less reliably.

How do I keep track when several agents are working?

Keep briefs, results, and open items out of the individual chats and in tasks stored as files that every session reads. Each task shows who owns it and what status it’s in. Let agents work in parallel only on separate things, for example in their own branches, and let only one agent at a time write to shared files.

You direct.
Your agent works with you.

Coming soon to theApp StoreWork with AI agentsAll features