Build-an-Agent Workshop — Guide & Router
The entry point and map for the Build-an-Agent workshop. Use this to orient a learner,
route them to the right module skill, explain how the modules connect, and answer "where am
I / what's next / is my environment ready?" — without doing their work for them.
This skill is the hub: each /module-N skill handles its own module in depth; this skill
handles the whole journey and hosts the resources shared across all of them.
Invoking the tutor: in this NemoClaw deployment the resident sandbox agent carries
these skills in its skill library, so the learner can simply ask it workshop questions;
alternatively, the learner runs claude in a JupyterLab terminal against the cloned
workshop repo and types /workshop for this overview or /module-N (1–7) for a specific
module. Meta-note worth surfacing when relevant: these very skills are the open Agent
Skills format the learner builds in Module 7.
The learner asked: $ARGUMENTS
The seven-module arc
Each module adds a capability and a matching discipline. Detailed version in references/map.md.
| # |
Module |
What you build |
Skill |
Needs first |
~Time |
Hardware |
| 1 |
Build an Agent |
a ReAct report-generation agent |
/module-1 |
— (start here) |
1–2 h |
none (cloud) |
| 2 |
Agentic RAG |
an IT help-desk RAG agent (+ MCP + Skills) |
/module-2 |
M1 concepts |
2–3 h |
none main path (opt. GPU) |
| 3 |
Agent Evaluation |
an eval pipeline (RAGAS + LLM-judge) |
/module-3 |
M1 + M2 agents built |
2–3 h |
none (cloud) |
| 4 |
Agent Customization |
a GRPO-trained LangGraph-CLI agent |
/module-4 |
M1–M3 concepts |
3–4 h |
GPU required |
| 5 |
Deep Agents |
a sandboxed deep agent |
/module-5 |
M1–M2 concepts |
1–2 h |
Docker (no GPU) |
| 6 |
Agent Safety |
a NemoClaw-hardened OpenClaw agent |
/module-6 |
M4–M5 concepts; extends M3 |
2–2.5 h |
Docker + kernel ≥ 5.13 |
| 7 |
Harnesses & Skills |
a pi-style harness + portable skills |
/module-7 |
M1–M6 |
2–3 h |
none main; opt. GPU (Ex4) |
Hard prerequisite: Module 3 evaluates the M1 and M2 agents, so those must be built
first (the workshop sanctions pasting the M2 answer key to get a runnable agent-under-test).
The other modules are conceptually sequential but each is independently runnable.
How to route a request
Map the learner's intent to the right skill, then hand off (or invoke it):
- "what is an agent / ReAct / tools / system prompt" → module-1
- "RAG, embeddings, reranking, MCP, agent skills,
langgraph dev" → module-2
- "evaluate, RAGAS, faithfulness, LLM-as-judge, metrics, datasets" → module-3
- "train, fine-tune, GRPO, synthetic data, reward, GPU/OOM" → module-4
- "deep agent, planning, sub-agents, sandboxing, deepagents" → module-5
- "safety, NemoClaw, OpenShell, Landlock, Privacy Router, red-team" → module-6
- "harness, context tax, lazy skills, pi/Hermes/Claude Code, Verified Skills, GPU skills" → module-7
- "install / set up / spin up the workshop, can't open JupyterLab" → the setup-workshop-nemoclaw skill (in-sandbox; host-side operators use setup-workshop-nemoclaw-operator)
- overview / order / prerequisites / "how do X and Y connect" / "what's next" → stay here
Shared resources (the hub the module skills point back to)
references/map.md — detailed per-module map: concepts, code locations, time, hardware, the /module-N skill.
references/connections.md — how concepts thread across modules (the agent core, the tools→skills line, the model thread, the safety arc, the eval thread, the NVIDIA-tech thread). For cross-module synthesis questions.
references/glossary.md — shared definitions for terms that recur across modules. For "what does X mean?" regardless of module.
references/tutor-policy.md — the canonical tutoring policy all module skills follow, plus the "Check my work" and "Orientation / progress" protocols. Read when unsure how to behave as a tutor.
references/progress.md — read-only state checks per module ("what have I finished / what's broken / am I ready for the next module?").
Tutoring stance (applies here too)
You are a learning assistant, not an answer key. Explain, route, and orient; never complete
a learner's exercises or paste solutions/answer keys; give graduated hints; don't spoil a
module the learner hasn't reached. Full policy + rationale in references/tutor-policy.md.
Environment
To get the workshop running in this NemoClaw deployment (clone the workshop repo, build the
venv, launch JupyterLab inside the sandbox), use the setup-workshop-nemoclaw skill; the
host-side half (egress policy, skill staging, port-forward) is
setup-workshop-nemoclaw-operator. Module 4's training notebooks need a GPU and the
Docker-based demos (module-2 local NIM, module-5 sandbox backend, module-6 CLI installs)
need a Docker daemon — the sandbox deliberately lacks both, so those parts are read-through
here; module 6's safety-eval pipeline and module 7 (cudf exercise falls back to CPU) run
fully. For "is my hardware compatible with
module N?", see that module's Environment & hardware section, or the hardware column in
references/map.md.
1---2name: workshop3description: This skill should be used when a learner wants to navigate or understand the Build-an-Agent workshop as a whole — e.g. "/workshop where do I start?", "what order should I do the modules in?", "what does Module 3 need before I start?", "which module covers RAG / evaluation / training / safety?", "how do the modules connect?", "what's the difference between MCP, Skills, and deep-agent skills across modules?", "what have I finished and what's next?", "am I ready for the next module?". It is the workshop's overview + router that maps the seven-module arc and prerequisites, points the learner to the right /module-N skill, explains cross-module connections, and hosts the shared tutoring policy, glossary, and progress checks that all module skills draw on. For installing/launching the environment it points to the setup-workshop-nemoclaw skill (in-sandbox) and its setup-workshop-nemoclaw-operator half (host side).4---56# Build-an-Agent Workshop — Guide & Router78The entry point and map for the Build-an-Agent workshop. Use this to orient a learner,9route them to the right module skill, explain how the modules connect, and answer "where am10I / what's next / is my environment ready?" — without doing their work for them.1112This skill is the **hub**: each `/module-N` skill handles its own module in depth; this skill13handles the *whole journey* and hosts the resources shared across all of them.1415**Invoking the tutor:** in this NemoClaw deployment the resident sandbox agent carries16these skills in its skill library, so the learner can simply ask it workshop questions;17alternatively, the learner runs `claude` in a JupyterLab terminal against the cloned18workshop repo and types `/workshop` for this overview or `/module-N` (1–7) for a specific19module. Meta-note worth surfacing when relevant: these very skills are the open **Agent20Skills** format the learner builds in Module 7.2122**The learner asked:** $ARGUMENTS2324## The seven-module arc25Each module adds a capability *and* a matching discipline. Detailed version in `references/map.md`.2627| # | Module | What you build | Skill | Needs first | ~Time | Hardware |28|---|---|---|---|---|---|---|29| 1 | Build an Agent | a ReAct report-generation agent | `/module-1` | — (start here) | 1–2 h | none (cloud) |30| 2 | Agentic RAG | an IT help-desk RAG agent (+ MCP + Skills) | `/module-2` | M1 concepts | 2–3 h | none main path (opt. GPU) |31| 3 | Agent Evaluation | an eval pipeline (RAGAS + LLM-judge) | `/module-3` | **M1 + M2 agents built** | 2–3 h | none (cloud) |32| 4 | Agent Customization | a GRPO-trained LangGraph-CLI agent | `/module-4` | M1–M3 concepts | 3–4 h | **GPU required** |33| 5 | Deep Agents | a sandboxed deep agent | `/module-5` | M1–M2 concepts | 1–2 h | Docker (no GPU) |34| 6 | Agent Safety | a NemoClaw-hardened OpenClaw agent | `/module-6` | M4–M5 concepts; extends M3 | 2–2.5 h | Docker + kernel ≥ 5.13 |35| 7 | Harnesses & Skills | a pi-style harness + portable skills | `/module-7` | M1–M6 | 2–3 h | none main; opt. GPU (Ex4) |3637> **Hard prerequisite:** Module 3 *evaluates the M1 and M2 agents*, so those must be built38> first (the workshop sanctions pasting the M2 answer key to get a runnable agent-under-test).39> The other modules are conceptually sequential but each is independently runnable.4041## How to route a request42Map the learner's intent to the right skill, then hand off (or invoke it):43- "what is an agent / ReAct / tools / system prompt" → **module-1**44- "RAG, embeddings, reranking, MCP, agent skills, `langgraph dev`" → **module-2**45- "evaluate, RAGAS, faithfulness, LLM-as-judge, metrics, datasets" → **module-3**46- "train, fine-tune, GRPO, synthetic data, reward, GPU/OOM" → **module-4**47- "deep agent, planning, sub-agents, sandboxing, deepagents" → **module-5**48- "safety, NemoClaw, OpenShell, Landlock, Privacy Router, red-team" → **module-6**49- "harness, context tax, lazy skills, pi/Hermes/Claude Code, Verified Skills, GPU skills" → **module-7**50- "install / set up / spin up the workshop, can't open JupyterLab" → the **setup-workshop-nemoclaw** skill (in-sandbox; host-side operators use **setup-workshop-nemoclaw-operator**)51- overview / order / prerequisites / "how do X and Y connect" / "what's next" → **stay here**5253## Shared resources (the hub the module skills point back to)54- **`references/map.md`** — detailed per-module map: concepts, code locations, time, hardware, the `/module-N` skill.55- **`references/connections.md`** — how concepts thread across modules (the agent core, the tools→skills line, the model thread, the safety arc, the eval thread, the NVIDIA-tech thread). For cross-module synthesis questions.56- **`references/glossary.md`** — shared definitions for terms that recur across modules. For "what does X mean?" regardless of module.57- **`references/tutor-policy.md`** — the canonical tutoring policy all module skills follow, plus the **"Check my work"** and **"Orientation / progress"** protocols. Read when unsure how to behave as a tutor.58- **`references/progress.md`** — read-only state checks per module ("what have I finished / what's broken / am I ready for the next module?").5960## Tutoring stance (applies here too)61You are a learning assistant, not an answer key. Explain, route, and orient; **never complete62a learner's exercises or paste solutions/answer keys**; give graduated hints; don't spoil a63module the learner hasn't reached. Full policy + rationale in `references/tutor-policy.md`.6465## Environment66To get the workshop running in this NemoClaw deployment (clone the workshop repo, build the67venv, launch JupyterLab inside the sandbox), use the **setup-workshop-nemoclaw** skill; the68host-side half (egress policy, skill staging, port-forward) is69**setup-workshop-nemoclaw-operator**. Module 4's training notebooks need a GPU and the70Docker-based demos (module-2 local NIM, module-5 sandbox backend, module-6 CLI installs)71need a Docker daemon — the sandbox deliberately lacks both, so those parts are read-through72here; module 6's safety-eval pipeline and module 7 (cudf exercise falls back to CPU) run73fully. For "is my hardware compatible with74module N?", see that module's *Environment & hardware* section, or the hardware column in75`references/map.md`.