Skip to content

pi-jev (TheoOliveira)

Pi extension for Jev-based tool routing, skill discovery, typed judgments and optional model, thinking, guard and compaction modes.

Agent skillbetaMIT

Overview

pi-jev (TheoOliveira) brings semantic tool routing and typed decisions to the Pi coding agent. jev_find_tools searches registered inactive tools and additively activates only those needed for the prompt; jev_find_skill matches the most relevant SKILL.md with scope-aware matching; jev_evaluate lets the agent run Choice, Noul and Score judgments directly. A /jev test command has the active model design a question schema for a free-form prompt and then Jev evaluates it.

Several opt-in modes are available: automatic tool and skill routing before every prompt; automatic model selection among fast, balanced, reasoning, long-context or vision models, with prefix-aware cache cost as tie-breaker; reasoning-level adjustment without changing the model; a tool-call guard that detects hallucinated calls and enhances failed results; and Jev-assisted compaction with Pi's normal compaction as fallback. It also supports subagent orchestration with a typed jev agent and a jev-gate CLI that checks a diff or output against criteria and exits 0 or 1. Custom endpoints such as laya-serve are supported. MIT licensed.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich inactive tools are needed for this prompt?—
ChoiceWhich skill fits this task?—
ChoiceWhich model class fits (fast, balanced, reasoning, long-context, vision)?fast · balanced · reasoning · long-context · vision
Yes / noDoes this output meet the gate criteria?pass · fail

How it works

  1. Enable desired modes via flags or /jev commands.
  2. Before a prompt, route tools, skills, model or thinking as configured.
  3. Agent can call jev_evaluate for ad hoc judgments.
  4. Use jev-gate in subagent workflows to pass or fail outputs.

Strengths

  • Many features, all opt-in.
  • Works with local Jev-compatible servers.
  • Cache-aware model choice.

Caveats

  • Many modes increase configuration complexity.
  • Requires a TypeSafe key or compatible endpoint.

Getting started

Install the extension into Pi, set TYPESAFE_API_KEY (or PI_JEV_BASE_URL for a local server), and enable modes with /jev.

At a glance

Type
Agent skill
Status
beta
Language
TypeScript
Runtime
Pi extension, CLI
Has code
yes
License
MIT

Use cases and integrations

How curated lists describe it

  • Coding agents: semantic tool routing and typed System One decisions for the Pi coding agent.

    yibie/awesome-jev
  • Helps Pi Agents find tools and skills for a task, with structured evaluation and optional history filtering.

    logicrw/awesome-jev-projects
  • Semantic tool routing and typed System One decisions for the Pi coding agent…

    wh000wh000/awesome-jev-live
  • Semantic tool routing and typed System One decisions for the Pi coding agent using TypeSafe Jev.

    hellogumbo/awesome-jev
  • Semantic tool routing and skill discovery for the Pi coding agent: Jev picks which inactive tools to activate for the prompt at hand.

    MrJev/awesome-jev

Frequently asked questions

Are the automatic modes on by default?

No, all automatic modes are opt-in.

Can I use a local model?

Yes, point PI_JEV_BASE_URL or TYPESAFE_BASE_URL at a compatible server such as laya-serve.

What is jev-gate?

A CLI that checks a diff or output against criteria and exits 0 on pass or 1 on fail.

Related projects

  • Fourteen opt-in Claude Code and Codex skills where Jev makes one bounded choice: which skill, model, test, file or next step.

    ProjectbetaPython
  • 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
  • Orchestrator that probes which coding agents are installed and logged in, then has Jev pick the best one for a task.

    Agent skillbetaPython
  • Claude Code plugin that asks Jev before each turn for reasoning effort, subagent model, strategy and skill, with a decision log.

    Agent skillbetaTypeScript
  • Router that puts models, subagents, skills, MCP tools and CLIs in one candidate set and asks Jev one Choice about which handles the step.

    MCP serverbetaTypeScript
  • Pi extension that strips the inlined skill list and asks Jev which single skill, if any, to load per turn.

    Agent skillbetaTypeScript