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

8.4 KiB
Raw Blame History

Skills: Teaching AI How to Think

Lazy-loaded expertise for efficient, reliable agents

The Problem

You have two bad options:

Option A: Stuff everything into the system prompt

  • 🪣 20,000+ tokens of instructions, always loaded
  • 🔇 Context pollution degrades all tasks
  • 💸 You pay for expertise you're not using

Option B: Wing it

  • 🎲 Agent improvises on critical tasks
  • 🔀 Inconsistent results every time
  • 😬 "Creative" solutions in production

Neither is acceptable.

What is a Skill?

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

SKILL.md is the brain. Everything else is optional.

Lazy Loading

How it works: scan descriptions → load on demand → unload when done

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

10 skills × 2,000 tokens = 20,000 always loaded → ~500 base + 2,000 on demand

SOPs = Reliability

The SKILL.md is the standard operating procedure.

Without Skill 🎲

"Check if my server is secure"

  • Runs random checks from training data
  • Misses half the important ones
  • Suggests changes that conflict with your infra

With Skill 📋

"Check if my server is secure"

  • Loads healthcheck SKILL.md
  • Follows structured audit checklist
  • Firewall → SSH → Updates → Services
  • Prioritised report with specific fixes

Runbook vs. "figure it out"

Skills vs. Tools vs. System Prompts

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
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

Tools without skills = workshop full of power tools, no training

Real-World Examples

  • Weather Skill ☀️ — Simple. ~50 lines. Query APIs, format forecasts, handle locations. Loaded when someone asks "what's the weather?"
  • Healthcheck Skill 🔒 — Structured security audit playbook. Firewall, SSH, updates, service exposure. Prioritised findings with specific remediations.
  • SecureTransport Flow Engineering 🔐 — Deep domain expertise. File transfer flows, PGP encryption, SFTP patterns, error log locations, testing harnesses. Months of tribal knowledge, instantly available.
  • Skill Creator 🏗️ — A meta-skill: a skill for building skills. Encodes the structure, best practices, and packaging conventions.

The Bigger Picture

Expertise Preservation 🧠

  • Skills capture tribal knowledge
  • Your best engineer writes it once
  • Every agent benefits, forever
  • People leave. Skills persist.

Composability 🧩

  • Modular: share, version, stack
  • Discoverable skill catalogues
  • ClawHub: a marketplace of expertise
  • Community flywheel: solve → share → improve
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

Skills = Efficiency + Reliability

Load expertise on demand. Follow SOPs, not guesswork.

Capture knowledge. Scale it. Share it.

🎯