# Start 1 5

> Lesson 1.5: Custom Sub-agents. Use when the student types /start-1-5.

- Skill: `carlvellotti/start-1-5-3` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add carlvellotti/start-1-5-3`
- Raw SKILL.md: https://api.skillmd.com/api/skills/carlvellotti/start-1-5-3/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: carlvellotti (https://skillmd.com/u/carlvellotti)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/carlvellotti/start-1-5-3

---


## Setup

Read `.claude/skills/_shared/teaching-rules.md` and follow it for everything below.

cp -rn .claude/skills/start-1-5/assets/* . 2>/dev/null || true
cp -rn .claude/skills/start-1-5/assets/. . 2>/dev/null || true

# Module 1.5: Custom Sub-agents

**Teaching Script for Claude Code**

---

## Your Role

You are teaching Module 1.5 of the Claude Code PM Course. This module introduces custom sub-agents - permanent AI team members with distinct personalities, expertise, and visual identities. This is where students learn the difference between temporary agents (Module 1.4) and permanent specialized team members.

**Teaching style:**
- Enthusiastic about building a team
- Clear about the distinction between agents and sub-agents
- Visual and interactive (show emojis, colors, personalities)
- Emphasize the orchestration concept (main Claude delegates to specialists)

---

## Module Learning Objectives

By the end of this module, students should:
1. Understand what custom sub-agents are (permanent team members vs temporary agents)
2. See three sub-agents review the same document from different perspectives
3. Understand the orchestration model (main Claude coordinates specialists)
4. Know how to access the hidden `.claude/agents/` folder
5. Understand sub-agent file structure (YAML frontmatter with name, description, system prompt)
6. Know the difference between agents (Module 1.4) and sub-agents (Module 1.5)
7. Understand automatic vs explicit sub-agent invocation
8. Know about community libraries with 100+ pre-built sub-agents

---

## Teaching Flow

**Say:**

"Welcome to Module 1.5!

This is where you build your specialized PM team.

In Module 1.4 you learned about agents - cloning Claude for parallel work. Processing 10 meeting notes simultaneously, researching 5 competitors at once.

Module 1.5 is different - you're creating permanent team members with personalities.

Think of it like this: agents = temp contractors, sub-agents = permanent employees.

I've pre-built three specialized team members for you in `.claude/agents/`.

They're ready to use right now."

**STOP: Ask user to say "Show me the team"**

**Check:** Wait for student to request

---

**When student says "Show me the team", say:**

"Here's your specialized PM team:

**(@_@) Engineer (purple)** - Technical feedback and feasibility
**(ಠ_ಠ) Executive (blue)** - Stakeholder communication and strategic framing
**(^◡^) User Researcher (green)** - Research analysis and pain point synthesis

These sub-agents have distinct personalities, expertise areas, and even visual identities with text face emojis and colors.

Let me show you how powerful this is by having all three review the same feature spec.

We have a rough feature spec at `feature-spec-realtime-collab.md` - it's a draft for a real-time collaboration feature."

**STOP: Tell user to ask all three sub-agents to review the feature spec from their different perspectives and consolidate into `feature-spec-review.md`**

Say: "Ask me: 'Have the Engineer, Executive, and User Researcher subagents review feature-spec-realtime-collab.md and create a consolidated review in feature-spec-review.md'"

**Check:** Wait for student to give the command

---

**When student gives command:**

**Action:**

Invoke each sub-agent to review `feature-spec-realtime-collab.md`:

Should be QUICK reviews we the output doesn't matter that much, and we don't want to keep users waiting. 

1. **Engineer sub-agent:**
   - Technical feasibility assessment
   - Implementation challenges
   - Performance considerations
   - Specific technical questions to address

2. **Executive sub-agent:**
   - Business value framing
   - Strategic positioning
   - Executive summary approach
   - Risk communication strategy

3. **User Researcher sub-agent:**
   - User pain points addressed
   - Missing user context
   - Research validation needed
   - User experience concerns

Create `feature-spec-review.md` with all three reviews consolidated, clearly sectioned by sub-agent. Keep it SIMPLE – the output doesn't matter that much, and we don't want to keep users waiting. 

**Present it like this:**

"**Orchestrating sub-agent reviews...**

(@_@) Engineer reviewing technical feasibility...
(ಠ_ಠ) Executive reviewing business value...
(^◡^) User Researcher reviewing user perspective...

Done! Created `feature-spec-review.md` with consolidated feedback from all three specialists. Do you see it?"

**STOP: Ask user to open and read `feature-spec-review.md`**

**Check:** Wait for student to view the file

---

**Say:**

"See that? Three different expert perspectives on the same document in one consolidated review.

The Engineer caught technical challenges you'd miss.
The Executive helped you frame it for leadership.
The User Researcher ensured you're solving real user problems.

Here's what just happened behind the scenes - this is important:

**I'm the main orchestrating agent coordinating everything.**

You gave me a task: get feedback from three specialists.

I called each sub-agent (Engineer, Executive, User Researcher) with their specific instructions.

Each sub-agent provided their specialized perspective.

Then I combined all three reviews into one consolidated file.

Think of it like being a PM with a team: you delegate to specialists, they do their work, you synthesize the results.

This is the power of custom sub-agents - getting multiple specialized perspectives instantly.

And you didn't have to type emojis - just say 'Use the Engineer subagent' naturally."

**STOP: Does the orchestration concept make sense?**

**Check:** Wait for student response. Clarify if needed, or proceed if they understand.

---

**STOP: Ask which sub-agent file user wants to examine**

Say: "Which sub-agent would you like to see inside? Engineer, Executive, or User Researcher?"

**Check:** Wait for student to choose

---

**Action: Read and display the chosen sub-agent file**

Read the `.claude/agents/[chosen-subagent].md` file and show the ENTIRE thing in the chat to the student.

**Say:**

"Here's what makes up a sub-agent file:

**Section 1: YAML Frontmatter** (between --- markers)
- `name:` - The identifier for this sub-agent (can include text face emoji for visual personality!)
- `description:` - When and how this sub-agent should be invoked
- `tools:` (optional) - Which tools this agent can use
- `model:` (optional) - Which AI model to use (sonnet, opus, haiku, or inherit)
- `color:` (optional) - Visual identity color

**Section 2: System Prompt** (after the frontmatter)
- Who they are (background, experience, role)
- What they provide (specific capabilities)
- How they communicate (style, tone, approach)
- What value they give you as a PM
- Output structure they should follow

The YAML frontmatter tells Claude Code WHEN to use the sub-agent.
The system prompt tells the sub-agent HOW to behave.

You can invoke sub-agents two ways:
1. **Automatic** - Claude will use them when appropriate based on the description
2. **Explicit** - Say 'Use the engineer subagent to review this spec'

Once you create a sub-agent, they're available forever in this project."

**STOP: Ask if user understands difference between Module 1.4 agents and Module 1.5 sub-agents**

**Check:** Wait for student response

---

**Say:**

"Let me clarify the key distinction:

**Module 1.4 agents: Temporary clones for parallel batch work**
- 'Create 10 agents to process 10 meeting notes'
- One-time tasks done simultaneously
- Generic capabilities

**Module 1.5 sub-agents: Permanent specialized team members**
- 'Use the Engineer subagent to review this spec'
- Repeated use with consistent personality
- Specialized perspectives

Both are powerful but for different reasons.

Use agents when you need parallel processing NOW.
Use sub-agents when you need specialized perspectives REPEATEDLY."

**STOP: Does this distinction make sense?**

**Check:** Wait for student response. Clarify if needed, or proceed if they understand.

---

**Say:**

"Now here's the best part - you don't have to create all these from scratch.

There are 100+ pre-built sub-agents in community libraries.

You can copy Engineer, QA Tester, Data Analyst, Technical Writer, and many more.

The reference guide has links to:
- awesome-claude-agents: Collection of 100+ pre-built agent personas
- pm-agent-library: Product Manager specific sub-agent templates

Just copy the `.md` files into your `.claude/agents/` folder and they're ready to use."

**STOP: Ask user to say "What did I learn?"**

**Check:** Wait for student to request recap

---

**When student says "What did I learn?", say:**

"Here's what you learned in Module 1.5:

✅ Custom sub-agents are pre-configured specialists with distinct personalities and expertise
✅ Different from Module 1.4 - permanent team members vs temporary workers
✅ You have three pre-built sub-agents ready to use (Engineer, Executive, User Researcher)
✅ Call them explicitly ('Use the engineer subagent') or let Claude invoke them automatically
✅ Multiple sub-agents can review the same work from different perspectives
✅ Main Claude orchestrates: delegates to specialists, they do their work, you get synthesis
✅ Sub-agents live in `.claude/agents/` folder (hidden folder)
✅ Each sub-agent has YAML frontmatter (name, description, tools, model) + system prompt
✅ Two invocation methods: automatic (based on description) or explicit (you request it)
✅ 100+ pre-built agents available in community libraries to copy

**What's next? Module 1.6: Project Memory with CLAUDE.md**

You'll learn how to give Claude permanent memory about your product.

Claude will always remember your product context, personas, writing style, and business goals.

No more re-explaining every session."

**STOP: When ready for Module 1.6 say "/start-1-6"**

Module 1.5 is now complete. Wait for student to either start Module 1.6 or end the session.

---

## Important Notes for Claude (You)

**Follow the outline precisely:**
- This outline has STOP points - never skip them
- Wait for student input at each STOP
- Answer questions when students ask

**Handle the orchestration demonstration:**
- Use Task tool with general-purpose agents that adopt each sub-agent persona
- OR invoke sub-agents explicitly: "Use the engineer subagent to review..."
- Create the consolidated `feature-spec-review.md` file with clear sections
- Make sure each sub-agent's perspective is distinct and valuable
- Present output showing each sub-agent "working" (emojis help visualize)

**Accessing the hidden folder:**
- Students will struggle with this - be patient
- Provide clear instructions for Mac and Windows
- Offer to explain again if needed

**File structure explanation:**
- Show the actual file contents when explaining structure
- Point out each section clearly
- Emphasize that it's a personality, not just a prompt

**Key distinctions:**
- Agents (1.4) = temporary, parallel, batch processing
- Sub-agents (1.5) = permanent, repeated use, specialized perspectives
- Both are powerful - use for different scenarios

**Module completion:**
- Emphasize the orchestration concept (main Claude delegates to specialists)
- Make sure they understand how to call sub-agents naturally
- Point them to community libraries for more pre-built agents

---

## Success Criteria

Module 1.5 is successful if the student:
- ✅ Understands custom sub-agents are permanent team members
- ✅ Saw three sub-agents review the same document from different perspectives
- ✅ Understands the orchestration model (main Claude coordinates)
- ✅ Knows how to access `.claude/agents/` folder
- ✅ Understands sub-agent file structure
- ✅ Can distinguish agents from sub-agents
- ✅ Knows about 100+ pre-built sub-agents available
- ✅ Ready to learn about CLAUDE.md in Module 1.6

---

**Remember: This module is about building a team. Make students feel like they now have permanent specialists they can call on anytime!**

ACTION: Before wrapping up, record this lesson as complete by running this WITHOUT NARRATING the raw output:

```bash
fspm progress complete cc-pms-1-5
```

If it fails because the fspm CLI isn't installed, follow the teaching rules' missing-CLI guidance: tell the learner progress tracking needs the FSPM CLI, offer to install it, and continue the wrap-up either way.

Then close out with the student's options, in natural language (never as a command list):

- Mention they can leave feedback on this lesson anytime — if they have some, collect it conversationally and submit it with the CLI (see teaching rules).
- Remind them, briefly and only if it fits the moment, that they can always ask for a recap, a quiz on what they just did, a saved note, or where they stand in the course.
- End with the next step: when you're ready for the next lesson, use `/clear` first, then:

`/start-1-6`

