shane logsdon · pi + claude code
Skills on disk.
Descriptions on demand.
Both harnesses put installed skills and their descriptions into the model’s context. With hundreds of skills installed, that catalog is a fixed cost on every turn. This package leaves the skills on disk and makes them searchable instead.
Set it upthe problem
cost per turnPi and Claude Code both put a catalog of installed skills into the model’s context. Each entry is a name plus a description, and the catalog is rebuilt on every request. Nothing about it changes between turns; it is simply there, every time, ahead of the work.
Deferred Skill Catalog keeps the skills on disk where they already are. What changes is where the descriptions live: out of the prompt, behind two tools the model calls when it needs them.
what it does
two tools, one listingsearch_skills- Answers “which skill fills a PDF form?” with at most 8 matches, each naming the skill, its trimmed description, and how to load it.
list_skills- Pages through the full inventory, 20 per page by default and 30 at most.
- Human listing
/skills [query] [page=N]in Pi, and/deferred-skill-catalog:skills [query] [page=N]in Claude Code.
It works with any skill directory: skills written for one harness and used
from another, plain repositories that aren't packages, and any directory
listed in roots.
The two harnesses defer differently. Pi replaces its
<available_skills> block with a short pointer to the tools,
so its deferral is automatic. Claude Code has no hook that can rewrite its
system prompt, so descriptions are dropped by its own
skillListingBudgetFraction setting and served back by an MCP
server bundled with the plugin. In Claude Code the skill names stay in
the prompt; only descriptions are removed.
status
0.2.1Version 0.2.1, MIT licensed, installable as a Pi package and as a Claude Code plugin from its Git repository. The two harnesses are not symmetric, and this site keeps that distinction: Pi's deferral is part of the package, while Claude Code's depends on a setting you turn on in its own configuration.
This site publishes no benchmark, percentage, or savings figure. The source README records one measurement taken on one machine; that measurement has not been reproduced here, and a single machine is not a promise about yours.
where to go
005 entries-
Getting started
Separate Pi and Claude Code setup, the deferral settings, the fixed limits, and a search example.
-
Source on GitHub
The package, the Pi extension, the Claude Code plugin, and the test suites.
-
Commented example config
Every key with its default, including the exclusion rules.
-
Pi
The harness where deferral is part of the package.
-
Claude Code
The harness where deferral is a setting you turn on.