Files
ai-presentations/03-skills/presentation.md
2026-02-25 22:15:21 +00:00

378 lines
8.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!-- column_layout: [1, 8, 1] -->
<!-- column: 0 -->
<!-- column: 1 -->
<!-- jump_to_middle -->
<!-- alignment: center -->
<!-- font_size: 5 -->
Skills: Teaching AI How to Think
<!-- font_size: 2 -->
Lazy-loaded expertise for efficient, reliable agents
<!-- no_footer -->
<!-- speaker_note: Title slide. Core message: skills make agents both smarter AND cheaper to run. -->
<!-- end_slide -->
<!-- column_layout: [1, 3, 1] -->
<!-- column: 1 -->
<!-- alignment: center -->
<!-- font_size: 4 -->
The Problem
===
<!-- reset_layout -->
<!-- font_size: 2 -->
<!-- alignment: left -->
<!-- new_line -->
<!-- pause -->
You have two bad options:
<!-- pause -->
<!-- new_line -->
**Option A: Stuff everything into the system prompt**
<!-- new_line -->
<!-- pause -->
- 🪣 20,000+ tokens of instructions, always loaded
- 🔇 Context pollution degrades *all* tasks
- 💸 You pay for expertise you're not using
<!-- pause -->
<!-- new_line -->
**Option B: Wing it**
<!-- new_line -->
<!-- pause -->
- 🎲 Agent improvises on critical tasks
- 🔀 Inconsistent results every time
- 😬 "Creative" solutions in production
<!-- pause -->
<!-- new_line -->
<!-- alignment: center -->
<!-- font_size: 2 -->
Neither is acceptable.
===
<!-- speaker_note: Set up the tension. Everyone building agents hits this wall. -->
<!-- no_footer -->
<!-- end_slide -->
<!-- font_size: 4 -->
What is a Skill?
===
<!-- font_size: 2 -->
<!-- pause -->
```mermaid +render +width:100%
graph TD
S["🎯 Skill"] --> MD["📋 SKILL.md<br/>Instructions, rules, edge cases"]
S --> SC["⚙️ scripts/<br/>Helper scripts"]
S --> TM["📄 templates/<br/>Output templates"]
S --> AS["📦 assets/<br/>Supporting files"]
style MD fill:#4a9eff,stroke:#333,color:#fff
style S fill:#ff6b6b,stroke:#333,color:#fff
style SC fill:#51cf66,stroke:#333,color:#fff
style TM fill:#51cf66,stroke:#333,color:#fff
style AS fill:#51cf66,stroke:#333,color:#fff
```
<!-- pause -->
<!-- new_line -->
<!-- alignment: center -->
**SKILL.md is the brain. Everything else is optional.**
<!-- speaker_note: The SKILL.md IS the SOP. Scripts and templates are scaffolding. -->
<!-- no_footer -->
<!-- end_slide -->
<!-- font_size: 4 -->
Lazy Loading
===
<!-- font_size: 2 -->
<!-- alignment: center -->
<!-- pause -->
How it works: scan descriptions → load on demand → unload when done
<!-- pause -->
<!-- new_line -->
```mermaid +render +width:100%
graph LR
subgraph BEFORE["❌ Without Skills"]
direction TB
BP["System Prompt<br/>20,000+ tokens"]
BP --> W1["Weather SOPs"]
BP --> W2["Security SOPs"]
BP --> W3["Deploy SOPs"]
BP --> W4["Testing SOPs"]
BP --> W5["... everything else"]
end
subgraph AFTER["✅ With Skills"]
direction TB
AP["System Prompt<br/>~500 tokens<br/>(descriptions only)"]
AP -->|"task matches"| L1["Load: Weather<br/>+2,000 tokens"]
end
style BEFORE fill:#ffcccc,stroke:#cc0000
style AFTER fill:#ccffcc,stroke:#00cc00
style BP fill:#ff6b6b,stroke:#333,color:#fff
style AP fill:#51cf66,stroke:#333,color:#fff
style L1 fill:#4a9eff,stroke:#333,color:#fff
```
<!-- pause -->
<!-- new_line -->
**10 skills × 2,000 tokens = 20,000 always loaded → ~500 base + 2,000 on demand**
<!-- speaker_note: This is the efficiency win. 10x reduction in baseline context. Analogy: a pro doesn't carry every manual — they know which shelf to reach for. -->
<!-- no_footer -->
<!-- end_slide -->
<!-- font_size: 4 -->
SOPs = Reliability
===
<!-- font_size: 2 -->
<!-- pause -->
The SKILL.md **is** the standard operating procedure.
<!-- pause -->
<!-- new_line -->
<!-- column_layout: [1, 1] -->
<!-- column: 0 -->
<!-- font_size: 2 -->
**Without Skill** 🎲
<!-- new_line -->
> "Check if my server is secure"
<!-- new_line -->
- Runs random checks from training data
- Misses half the important ones
- Suggests changes that conflict with your infra
<!-- pause -->
<!-- column: 1 -->
<!-- font_size: 2 -->
**With Skill** 📋
<!-- new_line -->
> "Check if my server is secure"
<!-- new_line -->
- Loads healthcheck SKILL.md
- Follows structured audit checklist
- Firewall → SSH → Updates → Services
- Prioritised report with specific fixes
<!-- reset_layout -->
<!-- pause -->
<!-- new_line -->
<!-- alignment: center -->
<!-- font_size: 2 -->
**Runbook vs. "figure it out"**
<!-- speaker_note: This is the reliability win. Same request, wildly different outcomes. Like giving a junior engineer a runbook vs saying figure it out. -->
<!-- no_footer -->
<!-- end_slide -->
<!-- font_size: 4 -->
Skills vs. Tools vs. System Prompts
===
<!-- font_size: 2 -->
<!-- pause -->
<!-- new_line -->
| Layer | Answers | Example |
|---|---|---|
| **Tools** | What *can* I do? | Read files, search web, send messages |
| **System Prompt** | Who *am* I? | Helpful, concise, safety-conscious |
| **Skills** | *How* do I do X well? | Step-by-step server security audit |
<!-- pause -->
<!-- new_line -->
```mermaid +render +width:100%
graph LR
T["🔧 Tools<br/>Capability"] --> A["🤖 Agent"]
SP["🧠 System Prompt<br/>Identity"] --> A
SK["🎯 Skills<br/>Expertise"] --> A
style T fill:#ff6b6b,stroke:#333,color:#fff
style SP fill:#ffd93d,stroke:#333,color:#000
style SK fill:#4a9eff,stroke:#333,color:#fff
style A fill:#51cf66,stroke:#333,color:#fff
```
<!-- pause -->
<!-- new_line -->
<!-- alignment: center -->
Tools without skills = workshop full of power tools, no training
<!-- speaker_note: All three layers are needed. Tools are hands, prompts are personality, skills are expertise. -->
<!-- no_footer -->
<!-- end_slide -->
<!-- font_size: 4 -->
Real-World Examples
===
<!-- font_size: 2 -->
<!-- incremental_lists: true -->
<!-- new_line -->
* **Weather Skill** ☀️ — Simple. ~50 lines. Query APIs, format forecasts, handle locations. Loaded when someone asks "what's the weather?"
<!-- new_line -->
* **Healthcheck Skill** 🔒 — Structured security audit playbook. Firewall, SSH, updates, service exposure. Prioritised findings with specific remediations.
<!-- new_line -->
* **SecureTransport Flow Engineering** 🔐 — Deep domain expertise. File transfer flows, PGP encryption, SFTP patterns, error log locations, testing harnesses. Months of tribal knowledge, instantly available.
<!-- new_line -->
* **Skill Creator** 🏗️ — A meta-skill: a skill for *building skills*. Encodes the structure, best practices, and packaging conventions.
<!-- speaker_note: Range from trivial to deeply complex. The ST skill is a great example of tribal knowledge capture. -->
<!-- no_footer -->
<!-- end_slide -->
<!-- font_size: 4 -->
The Bigger Picture
===
<!-- font_size: 2 -->
<!-- pause -->
<!-- new_line -->
<!-- column_layout: [1, 1] -->
<!-- column: 0 -->
**Expertise Preservation** 🧠
<!-- new_line -->
<!-- incremental_lists: true -->
- Skills capture tribal knowledge
- Your best engineer writes it once
- Every agent benefits, forever
- People leave. Skills persist.
<!-- pause -->
<!-- column: 1 -->
**Composability** 🧩
<!-- new_line -->
<!-- incremental_lists: true -->
- Modular: share, version, stack
- Discoverable skill catalogues
- ClawHub: a marketplace of expertise
- Community flywheel: solve → share → improve
<!-- reset_layout -->
<!-- pause -->
<!-- new_line -->
```mermaid +render +width:100%
graph LR
E["👩‍💻 Expert writes skill"] --> P["📦 Published to ClawHub"]
P --> U["🤖 Agents everywhere use it"]
U --> F["🔄 Community improves it"]
F --> P
style E fill:#ff6b6b,stroke:#333,color:#fff
style P fill:#4a9eff,stroke:#333,color:#fff
style U fill:#51cf66,stroke:#333,color:#fff
style F fill:#ffd93d,stroke:#333,color:#000
```
<!-- speaker_note: This is the strategic argument. Skills aren't just operational convenience — they're knowledge management that actually works. -->
<!-- no_footer -->
<!-- end_slide -->
<!-- column_layout: [1, 8, 1] -->
<!-- column: 0 -->
<!-- column: 1 -->
<!-- jump_to_middle -->
<!-- alignment: center -->
<!-- font_size: 3 -->
Skills = Efficiency + Reliability
<!-- new_line -->
<!-- font_size: 2 -->
Load expertise on demand. Follow SOPs, not guesswork.
Capture knowledge. Scale it. Share it.
<!-- new_line -->
<!-- font_size: 2 -->
🎯
<!-- no_footer -->
<!-- speaker_note: Closing. The question isn't whether your agents need skills — it's what expertise you'd encode first. -->
<!-- end_slide -->