The DEEP Build Kit · Card 19
Make an Agent
Turn your spec and checks into the job description and test for a small agent that does one job for you, the teacher: a spec checker, and at Level 3 a read-only red-line checker. Write them today; build the agent after the session. Built on Anthropic's and Google's current advice.
For: Level 2 ▲ and Level 3 ■ when every check passes (stretch card S11), and anyone after the session
Card 19 · Stretch card S11 (Level 2 ▲ Orange and Level 3 ■ Black) · Sprint 2 (2:15–2:35), once every check passes, then after the session
An agent is an AI that uses tools in a loop: it gathers what it needs, acts, checks its work and goes again. Anthropic calls the loop "gather context -> take action -> verify work -> repeat"; Google calls it "Think, then Act, then Observe." Both companies publish advice on building one, and most of it is advice you followed in this session.
In the session, you write two things: the agent's job description and its test. You build the agent after the session. An agent is a tool that calls AI, and every tool built in the session makes no AI calls and uses no keys (card 01). Stop at 2:30 to fill in your station card (card 15).
You have already done the hard part
| Their advice | Where you did it in the session |
|---|---|
| Write the job description first. "Define the role before you create the agent." (Anthropic) | Your outcome canvas and spec (cards 02 and 03) |
| Write the tests before the instructions. "Create evaluations BEFORE writing extensive documentation." (Anthropic) | Your three success checks, written before you built |
| A good test gets the same verdict from anyone. "A good task is one where two domain experts would independently reach the same pass/fail verdict." (Anthropic) | The two-teachers test (card 03) |
| Don't let it mark its own work. "Separating the agent doing the work from the agent judging it proves to be a strong lever." (Anthropic) | Your test partner (card 05) |
| Limit what it can do. "Agent powers must have limitations." (Google) | Your red lines |
| A person approves the risky steps. For critical actions, "the system should require explicit human confirmation before proceeding." (Google) | You decide what students see |
First: do you need an agent?
Anthropic's first advice is to find "the simplest solution possible", which "might mean not building agentic systems at all." Google says "AI assistants and bots are better suited for simpler tasks and interactions." For most jobs a teacher repeats, the simplest thing that works is one set of instructions you can use again. Build that first. If it does the job, stop there.
In the session: the job description and the test
The agent is a spec checker. One job, for you, never for students (rule 2). It reads a spec, checks it against cards 03 and 08, and lists what is missing. It never builds the tool or rewrites your spec, so its job stays small enough for you to check.
Strictly, this is not an agent yet: it follows your steps rather than choosing its own. That is the right place to start. The Level 3 red-line checker below is a true agent: it decides what to read, and has only the tools it needs to read it.
1. The job description (copy, then adapt)
You check specs for small classroom tools that teachers build with AI. You never build the tool, and you never rewrite my spec.
When I give you a spec:
1. If it contains a student's name or any personal detail, or would have students type a name or other personal details, say so first, and tell me to remove it.
2. Check it has the ten sections of the Build Kit template: learning goal; who uses it and where they go wrong now; learning move; how students reach it with no login; what it must do; what it must never do; acceptance criteria; test cases, including one where a correct answer must be accepted; non-goals; open questions. Sections 1, 3, 5, 6 and 7, with three test cases, are the minimum; list any other gaps as "for later".
3. Read each success check and test case. Would two teachers running it reach the same pass or fail? If not, say what makes it vague.
4. Check the red lines are there: it asks for no names or personal information; it saves nothing, or, for a Remember build, stores progress in this browser only, never what students type, with a Clear button; it calls no AI service or other website; no timers, points or leaderboards that do not serve the goal.
5. Check what happens after two wrong tries on a question: it says "Ask your teacher" or shows a worked example.
Reply with a numbered list of what is missing, vague or breaks a red line, most important first, one line each. If nothing is missing, say so in one line. Do not suggest new features.
2. The test (write it now, run it once the agent is built)
- Make a copy of your spec and plant one problem in it: add "students type their full name to start".
- Give the agent the copy. Pass: it names the problem first.
- Give it your real spec in two new chats. Pass: the most important gap is the same both times.
- Level 3: save a copy of
index.htmlastest-copy.htmland addfetch('https://example.com')to it. Type:Use the red-line-checker agent on test-copy.html.Then delete the copy. Pass: it reports the fetch, with its line number.
Read every line of its replies. Anthropic's advice on agents: "Read the transcripts!"
S11 is done in the session when your job description is adapted to your spec, and your test is written: the copy with its planted problem, and what counts as a pass.
After the session: build it at your level
Level 2 ▲ Orange: a Claude project
Any Claude account works; a Free account can have up to five projects.
- In Claude, open Projects (claude.ai/projects), then + New Project. Name it
Spec checker. - Click Set project instructions, paste the job description above, then Save instructions. Claude's help centre: "Claude will use these instructions for all the chats within the project."
- Optional: click + and add cards 03 and 08 as files, so it checks against the kit itself.
- Start a chat in the project and paste your spec. Then run your test.
Buttons move: trust your screen. No Claude account? Paste the job description at the start of a new chat in any AI chat tool, then your spec.
Level 3 ■ Black: a skill and a read-only subagent in Claude Code
In your project folder, in Claude Code:
- The spec checker, as a skill. Type:
Make a project skill in .claude/skills/spec-check/SKILL.md. Its description: "Checks a classroom tool spec against the Build Kit before building." Its instructions: [paste the job description above].Run it with/spec-check. Claude Code's docs say skills "follow the Agent Skills open standard, which works across multiple AI tools." - The red-line checker, as a subagent. It is a separate judge that can read your files but not change them. Type:
Create a project subagent in .claude/agents/red-line-checker.md. Give it only the tools Read, Grep and Glob. Its job: read the HTML file I name (index.html if I name none) and report, with line numbers, anything that sends to or loads from the internet (fetch, external scripts, fonts or images), stores anything (localStorage, cookies), or asks for a name. It never edits files.Then:Use the red-line-checker agent on index.html.A subagent "runs in its own context window with a custom system prompt, specific tool access, and independent permissions" (Claude Code's docs). - It does not replace the offline test (card 05). Run that too. If they disagree, inspect the finding with a helper before sharing. A conditional network call can be missed by an offline run. After a repair, rerun the code review and the normal and error checks.
Using Codex? In Codex, put instructions in an AGENTS.md file. Make a new folder for the checker, so its instructions stay out of your build. Save the job description there as AGENTS.md, add a copy of your spec, and start Codex in that folder.
Keep it safe
- For you, not students. Rule 2 stands: students never use the agent.
- No student data in, ever. Anthropic: "using identifiable student information requires authorization from the school or district."
- Read, don't act. Both checkers only read and report. Anthropic: "An agent with read-only DB access, for instance, can be deployed far more broadly than one that writes to prod."
- Don't connect it or schedule it yet. Anthropic's advice for tasks that run on their own: "Don't schedule tasks that access sensitive files, send messages on your behalf, make purchases, or take other actions that are difficult to undo." An agent that logs in to email or other accounts, or touches student records, is Step 5, Connect, on card 18: school IT and data-protection sign-off first.
- What it reads can steer it. An agent that reads web pages or other people's files can be steered by instructions hidden in them (prompt injection). Anthropic calls this "far from a solved problem", and recommends installing skills only from trusted sources.
Going further
- Your next skill is the job you repeat every week. Claude Code's docs: "Create a skill when you keep pasting the same instructions, checklist, or multi-step procedure into chat."
- Make it a Claude skill. Skills are on the Free, Pro, Max, Team and Enterprise plans and need code execution switched on: on your own plan, in Settings, then Capabilities; on a Team or Enterprise account, the owner controls them. Claude's skill-creator "asks about your workflow, generates the folder structure, formats the SKILL.md file, and bundles the resources you need."
- Google's route, in code: the Agent Development Kit (ADK). It needs Python 3.10 or later on your computer. Then
pip install google-adk,adk create my_agent, put a Gemini API key from Google AI Studio in the project's.envfile, and runadk web. Never upload.env: before your first commit, add a line.envto a.gitignorefile, so Git leaves it out. An API key never goes in any page or repository, or any file you share or upload (card 18). - Read more:
- Anthropic, Building effective agents and Demystifying evals for AI agents.
- Google, A developer's guide to production-ready AI agents.
DEEP Education Network · Build with AI · Two rules: no student names or data anywhere; nothing student-facing calls AI.