Tutto.Praxis · talking deck
Praxis: built from Anthropic's Introduction to Agent Skills

Teach Claude Code
something once. It
remembers when
it matters.

Six ideas, one per screen. Each is a thing to point at while you explain. The drama is in the watching, so take the silences.

01
Tutto.The shape of the course
Where we're going

The whole course on one screen

Four moves: grasp the idea, build one, place it among the other tools and share it, then fix it when it misbehaves.

What it is

  1. 1 What a skill is

Build one

  1. 2 Your first skill
  2. 3 Config & multi-file

Fit & ship

  1. 4 Skills vs other tools
  2. 5 Sharing skills

Fix it

  1. 6 Troubleshooting
02
Tutto.Lesson 1 · What it is
Lesson 1: if you take one thing away

If you keep explaining it, write it down once

A skill is a folder of instructions. Claude holds only its one-line description until your request matches, then it loads the rest.

your request "write a PR description" matches The description what it does + when to use it always in Claude's context then loads Full instructions steps · scripts · examples loaded only now Unlike CLAUDE.md, which loads every conversation, and slash commands, which you type, a skill activates itself.

Personal skills (~/.claude/skills) follow you across every project; project skills (.claude/skills) ship in the repo for the whole team. The rule of thumb: if you find yourself repeating an instruction, that's a skill waiting to be written.

03
Tutto.Lesson 2 · Build one
Lesson 2

Build one: folder, file, restart

Create a directory, write SKILL.md, restart. Claude loads every skill's name and description at startup, then matches your request to them.

Folder one per skill SKILL.md name · description + instructions Restart loads at startup Listed ready to match Same name? Highest priority wins. Enterprise managed · highest Personal ~/.claude/skills Project .claude in repo Plugins installed · lowest

Claude loads only names and descriptions at startup, then asks you to confirm before pulling the full skill into context. If two skills share a name, priority decides, so keep names distinct.

04
Tutto.Lesson 3 · Build one
Lesson 3

Keep SKILL.md lean: split the rest out

Two fields are required, two optional. Past about 500 lines, move detail into supporting files Claude opens only when it needs them.

Loads when the skill activates Loaded only when referenced SKILL.md name: codebase-onboarding description: when to use it allowed-tools: Read, Grep… model: sonnet name + description required · the rest optional scripts/ run it: only the output costs context, not the source references/ extra docs, read only when the question comes up assets/ templates · images · data files

allowed-tools fences a skill (say Read, Grep, Glob, Bash only) for read-only or sensitive work. And tell Claude to run a script, not read it: the source never enters context, only the result does.

05
Tutto.Lesson 4 · Fit & ship
Lesson 4

Five tools, five jobs

Skills load on demand when your request matches. The other four solve different problems. Pick by when each one fires.

Each fires at a different moment: combine them, don't force everything into one. CLAUDE.md always loaded every conversation Skills on a match task knowledge Subagents you delegate isolated context Hooks on an event file save · tool call MCP you connect external tools

Reach for a skill when knowledge should apply automatically the moment the topic comes up. CLAUDE.md is always-on standards; subagents isolate delegated work; hooks fire on events; MCP brings in outside tools. Most setups use several at once.

06
Tutto.Lesson 5 · Fit & ship
Lesson 5

Three ways to share: widest reach last

Commit to the repo for your team, publish a plugin for the community, or push enterprise-managed settings for the whole organisation.

Commit to the repo .claude/skills → your team, on clone Ship a plugin marketplace install → the community Enterprise managed admin deploys org-wide → highest priority for must-have standards narrow reach widest reach

One gotcha: subagents start with a clean context, so they don't inherit your skills. List them in a custom agent's skills: field. Built-in agents (Explore, Plan, Verify) can't use skills at all.

07
Tutto.Lesson 6 · Fix it
Lesson 6

When it breaks, it's one of five things

Run the validator first. Then match the symptom to its fix. Most "won't trigger" problems are just the description.

Run the skills validator first: it catches structure before you debug logic. Symptom Fix Not triggering improve the description; add phrases you'd really type Not loading named dir · file named exactly SKILL.md · valid YAML Wrong skill used make the descriptions more distinct Being shadowed priority clash: rename, or ask your admin Runtime error deps installed · chmod +x scripts · forward slashes

Test the exact phrases you'd type ("why is this slow", "make this faster") and add any that fail to the description. That single fix solves most triggering problems. Run claude --debug to see loading errors by name.

08
Tutto.Praxis
The whole thing, in one line

Write it once.
Describe it well.
Let Claude load it
when it fits.

A folder and a SKILL.md turn a repeated instruction into automatic, shareable expertise: built lean, placed among the other tools, fixed by its description.

tutto.one/praxis · daniel@tutto.one

09
← → or space · F11 fullscreen