Skip to content

2 min read

pip-skill: build an AI skill from a package's real signatures

  • ai
  • developer-tools
  • case-study

When a coding assistant calls a library it only half-remembers, it guesses: invented function names, arguments in the wrong order, parameters that never existed. pip-skill removes the guessing by reading the package that is actually installed and writing a skill from its real signatures.

One command

uvx pip-skill convert requests --install

That is the whole loop. No install step, and the skill bundle lands in ~/.claude/plugins/requests/ where the assistant can call requests with correct types on the next session. It targets Claude Code, Cursor, Windsurf, OpenCode, and MCP servers from the same command.

How it works

It walks the installed package with inspect.signature and reads the types straight from the code. No docs scraping, no API key, no model in the loop, so it runs offline and is deterministic. The names in the generated skill are the names the library exports, because they are read, not predicted.

Does it actually help

Measured, not asserted. In a nine-package blind eval (May 2026), the test items were re-authored from each package’s own docs without looking at the generated skill, so the eval measures real lift rather than a teach-to-the-test loop. Adding the skill lifted task accuracy by about 20 points with Sonnet and 22 points with Haiku.

One thing to know

convert imports the target package, which means its top-level code runs and every submodule gets walked. Only convert packages you would already trust enough to pip install. The trust model is spelled out in the README.

Repo: github.com/xmpuspus/pip-skill. On PyPI: pip install pip-skill.