Skip to content

pi-jev-skill-picker

Pi extension that removes the skill catalogue from the system prompt and adds a skill_search tool where Jev rates each skill 0-2.

Agent skillbeta

Overview

pi-jev-skill-picker keeps Pi's Agent Skills catalogue out of model requests and replaces it with a ranking tool backed by Jev. Skills stay loaded, so /skill:name still works, but before each turn the extension strips the generated catalogue from the system prompt and gives the model tools to pull skills in on demand. skill_search takes a plain-language task description, rates every enabled skill and returns the full SKILL.md of those that apply.

Each skill is its own Score question with three levels: unrelated, adjacent, or directly applicable; Jev judges each skill independently so no keyword prefilter can drop one. Code applies a floor, sorts and loads winners. On a 137-skill catalogue, the README reports the catalogue was about 19,000 tokens (87% of the system prompt), and stripping it saved 84.6-87.9% per request, while one skill_search cost about 38,600 Jev input tokens or $0.0016. Without a key or on failures it falls back to lexical matching and says so.

What the decision model decides

TypeQuestionAnswers
ScoreHow applicable is this skill to the task?0 unrelated · 1 adjacent · 2 directly applicable

How it works

  1. Strip the skill catalogue from the system prompt.
  2. Model calls skill_search with a task description.
  3. Jev scores every enabled skill independently.
  4. Load skills above the floor; fall back to lexical matching on failure.

Strengths

  • Large per-request token savings with many skills.
  • Independent judgment per skill.
  • Graceful lexical fallback.

Caveats

  • Model must remember to call skill_search.
  • Each search sends all skill descriptions to Jev.

Getting started

Install the extension into Pi and set your TypeSafe key.

At a glance

Type
Agent skill
Status
beta
Language
TypeScript
Runtime
Pi extension
Has code
yes

Use cases and integrations

How curated lists describe it

  • Coding agents: ranks the Pi agent's installed skills against the current task with Jev before any of them run.

    yibie/awesome-jev
  • Rank Pi Agent Skills for the current task with TypeSafe Jev.

    hellogumbo/awesome-jev
  • Takes Pi's generated skill catalogue out of the system prompt and puts a ranking tool in its place, so skills are pulled in on demand instead of carried in every request.

    MrJev/awesome-jev

Frequently asked questions

How much does it save?

About 85-88% of per-request prompt tokens on a 137-skill catalogue, per the README.

How are skills ranked?

Each skill gets a 0-2 Score question judged independently.

What if Jev is unavailable?

It falls back to lexical matching and returns metadata instead of loaded instructions.

Related projects

  • JS and Python library that selects and prunes agent tools and MCP schemas, using offline vector search or Jev with calibrated probabilities.

    MCP serverbetaTypeScript, Python
  • Hooks for Claude Code, Codex and pi that use Jev to suggest a skill each turn, plus a rule gate for subagent model routing.

    HookbetaJavaScript
  • Per-prompt capability router for coding agents that picks at most one installed skill, MCP server, subagent or command via Jev, or none.

    MCP serverbetaTypeScript
  • MIT plugin and local MCP server that hands an agent's closed questions to Jev or local Laya, with policy gates and receipts.

    Agent skillproductionPython
  • Claude Code and Codex skill that routes a task to one of 27 specialist roles, with an optional Jev engine for catalog selection.

    ProjectbetaPython
  • Claude Code hook that decides which agent or skill should handle a request using YAML rulebooks plus one Jev Choice with confidence bands.

    HookbetaPython