pi-runner

Installation
SKILL.md

Pi Runner

Execute prompts through the Pi coding agent CLI (pi) in non-interactive print mode. Pi pins the provider and model per invocation — --provider openrouter --model vendor/model with credentials resolved from the provider's env var or Pi's own auth store — so there is no shared mutable provider state between runs, no lane isolation to manage, and no fallback chain to disable. It also serves the collection's named OpenRouter seats through --seat.

Named seats

--seat Pinned model Envelope
kimi moonshotai/kimi-k3 runner=kimi, effective_runner=pi, effective_provider=moonshotai
glm z-ai/glm-5.3-flash runner=glm, effective_provider=z-ai
qwen qwen/qwen3.8-max runner=qwen, effective_provider=qwen
gemma google/gemma-4-31b-it runner=gemma, effective_provider=google

--seat pins the seat's model and labels the envelope with the seat name; an explicit --model still wins, so a seat can be tried against a newer id without editing the table. The pins live in PI_SEATS in scripts/run_pi.py, mirrored by shared/references/model-roster.md and the seat table in shared/scripts/discover_runners.py — change all three together. A missing pi CLI or key reports status: seat_unavailable for the named seat; there is no fallback to another seat.

Default Provider

  • openrouter — credentials from OPENROUTER_API_KEY (or Pi's auth store via an interactive /login). Override with --provider; Pi ships built-in catalogs for 15+ providers.
  • Model ids absent from Pi's bundled catalog are passed through to the provider unchanged — a newer OpenRouter id than Pi's release knows about still works.
Installs
13
GitHub Stars
2
First Seen
Aug 16, 2026
pi-runner — robsonrung/rar-skills