Free preview · no account needed
What a Coding Agent Is
A coding agent is an AI assistant that works inside a code repository: it reads and edits files, runs commands and checks its work by running the code. Claude Code, Codex, Cursor and GitHub Copilot are the common ones.
Running the code is what sets it apart from a chat assistant. A chat assistant hands you code to paste and try; a coding agent runs it, reads the error and tries again, so it can take a change much further before you look.
What it doesn't take over is the judgement around the change: what to build, whether the result is right, and whether it ships. AI-Native Engineering is about how engineers and teams work when agents do most of the typing and people still answer for the code.
Where you'll work
Every exercise in AI-Native Engineering runs on Shelf, a tiny lending tool for a small library: one Python file, its tests and seven open issues. It's synthetic, so you can paste any of it into any tool.
Download Shelf
Download these files into a new folder named shelf.
- The code: books, loans, overdue loans and search.
- The tests: four tests that pass.
- The README: what Shelf is and how to run the tests.
- The open issues: seven small issues the exercises use.
- The ignore file: keeps
.envand caches out of Git.
In that folder, run git init, git add ., git commit -m "Shelf", then python3 -m unittest. Expected: OK after four tests.
Pick one coding agent
Any one of these works for every exercise:
- Claude Code — in the terminal:
npm install -g @anthropic-ai/claude-code, then runclaudein theshelffolder. Needs a Claude Pro or Max plan, or an API key. - Codex — in the terminal:
npm install -g @openai/codex, then runcodexin the folder. Needs a ChatGPT plan or an API key. - Cursor — download the editor from cursor.com and open the folder.
- GitHub Copilot — in VS Code, install the GitHub Copilot extension and use agent mode in Copilot Chat.
The two terminal agents need Node.js for npm.