
setup-pstack
Configure which models pstack uses per role and at what reasoning budget. Detects your available models and writes an always-applied rule that overrides the skill defaults. Use for /setup-pstack, "configure pstack models", "pstack budget", or changing pstack's model choices.
- Installs
- 5.5K
- Last 24h
- +252
- Trending rank
- #1077
- Security
- Pass
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/backnotprop/pstack --skill setup-pstack- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads setup-pstack automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
Security audits
Independent scans of the skill's instructions and bundled files.
SKILL.md
The instructions your agent reads when the skill is triggered.
Setup pstack
Write pstack's model settings, one model per role:
- Cursor:
~/.cursor/rules/pstack-models.mdc, an always-applied rule. - Claude Code:
~/.claude/rules/pstack-models.md. Claude Code loads every file in~/.claude/rules/into each new session. - Every other harness (Codex, Pi, OpenCode, and others):
~/.agents/pstack-models.md. These harnesses don't load it on their own, so pstack skills read this file when they pick a model.
"The settings file" below means the file for your harness. In Claude Code, if that file is missing, read ~/.agents/pstack-models.md instead, where older versions of this skill wrote it.
Steps
1. Detect available models
Enumerate the model slugs you can pass to a subagent in this session (Cursor Task, Claude Code Agent, OpenCode task, Codex spawn_agent). That is the dependable source. If your harness also has a command that lists the user's models, prefer it for completeness (for example opencode models or pi --list-models). If you cannot detect any, ask the user to paste the slugs they have access to. Never write a real slug you have not confirmed is available. The aliases inherit-parent and auto are always valid even though they are not detected slugs.
2. Load current state
The default role-to-model mapping is the rule shape shown in step 5 below. If the settings file already exists, read it and treat its # budget line and its role values as the current choices. Otherwise start from those defaults. A line whose role is not in step 5, such as how critics, is from a retired role. Drop it.
3. Budget, map, and confirm
(a) Ask for a budget. Prefer your structured-question tool (AskQuestion in Cursor, AskUserQuestion in Claude Code, question in OpenCode) over free text. Offer these four options with these exact labels, and name the current budget when the rule records one. With no rule, say that large matches the skill defaults.
unlimited — max reasoninglarge — xhigh reasoningmedium — high reasoningsmall — medium reasoning
(b) Apply it. Build the working table from the skill defaults, and on a re-run keep any role you changed by family, list, or alias (inherit-parent, auto). unlimited, large, medium, and small set the effort token of every real slug, panel entries included, to max, xhigh, high, or medium. The effort token is the last token, or the one before a trailing fast, on the ladder max > xhigh > high > medium > low. If the result is not a detected slug, use the same family's detected slug with the highest effort at or below the target, else mark the role as needing a choice. inherit-parent and auto do not change. So unlimited turns claude-opus-5-5-xhigh into claude-opus-5-5-max. Grok slugs top out at xhigh, so under unlimited the fallback puts Grok at xhigh and keeps grok-4.7-xhigh-fast as it is. large keeps both defaults. small turns them into claude-opus-5-5-medium and grok-4.7-medium-fast.
(c) Show the roles and confirm. Show every role with its model, marking any real slug not in the detected set as needing a choice. Also list each line step 2 dropped. Ask whether to accept as-is or change specific roles, offering the detected models plus inherit-parent and auto (both mean: this role runs on the parent chat model, which is how Auto users stay on Auto) as the options. Prefer your structured-question tool over free text. For panel roles (arena runners, architect runners, interrogate reviewers) the value is a list, and one subagent runs per entry, alias entries included, so the list length sets the count. arena cross-judge pool is also a list, but Arena selects one value from it whose model family differs from the parent's when possible. swarm workers is the default model for every worker unless a race or comparison assigns another model per arm.
4. Validate
Every real slug written must be in the detected set. inherit-parent and auto always pass. If a chosen real slug is not available, stop and ask again.
5. Write the rule
Write the settings file with a # budget line with the chosen label and its target effort, and one line per role, using the same labels poteto-mode uses. In Cursor, include the frontmatter below with alwaysApply: true. In other harnesses, write the settings file without the frontmatter (start at the first # line). Overwrite the whole file so re-runs stay idempotent. Shape:
---
description: pstack per-role model choices (overrides skill defaults)
alwaysApply: true
---
# pstack model configuration. One line per role. Delete a line to fall back to the skill default.
# `inherit-parent` or `auto` as a value: the role runs on the parent chat model (omit the subagent `model`). Alias entries in a panel list still count toward its fan-out.
# budget: large (xhigh)
feature, refactoring: grok-4.7-xhigh-fast
bug-fix: grok-4.7-xhigh-fast
perf-issue: grok-4.7-xhigh-fast
hillclimb: grok-4.7-xhigh-fast
judgment and prose: claude-opus-5-5-xhigh
hardest tasks: claude-opus-5-5-xhigh
how explorer: grok-4.7-xhigh-fast
how explainer: claude-opus-5-5-xhigh
why investigators: grok-4.7-xhigh-fast
why synthesizer: claude-opus-5-5-xhigh
reflect tooling: grok-4.7-xhigh-fast
reflect judgment, divergent, synthesizer: claude-opus-5-5-xhigh
arena runners: claude-opus-5-5-xhigh, grok-4.7-xhigh-fast
arena cross-judge pool: claude-opus-5-5-xhigh, grok-4.7-xhigh-fast
swarm workers: grok-4.7-xhigh-fast
architect runners: claude-opus-5-5-xhigh, grok-4.7-xhigh-fast
interrogate reviewers: claude-opus-5-5-xhigh, grok-4.7-xhigh-fast
6. Confirm
Tell the user which file was written. In Cursor and Claude Code, it applies to new sessions. In other harnesses, pstack skills read ~/.agents/pstack-models.md when they pick a model. Re-running this skill updates it.
7. Offer a verification skill (optional)
Check whether the project has a way to drive the real app for proof (a verify-* skill, or an existing harness). If not, offer once: "want a project-local verification skill, so agents can drive the app the way a user does and prove changes work? I can generate one with /create-verification-skill." On yes, invoke /create-verification-skill (resolves wherever pstack is installed: workspace, user, or plugin). On no, move on without pushing.
8. Offer a formal verification skill (optional)
Check whether the project already has a formal verification skill (a project skill that runs a model checker, a proof, or another verifier against the code). If not, offer once: "want a formal verification skill, so agents can prove a key property of your code holds in every case in scope, not only the cases tests reach? I can generate one with /create-formal-verification-skill." On yes, invoke /create-formal-verification-skill (resolves wherever pstack is installed: workspace, user, or plugin). On no, move on without pushing.
FAQ
What does the setup-pstack skill do?
Configure which models pstack uses per role and at what reasoning budget. Detects your available models and writes an always-applied rule that overrides the skill defaults. Use for /setup-pstack, "configure pstack models", "pstack budget", or changing pstack's model choices.
How do I install setup-pstack?
Run npx skills add https://github.com/backnotprop/pstack --skill setup-pstack in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/setup-pstack/ (personal) or .claude/skills/setup-pstack/ (project).
Which AI agents can use setup-pstack?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is setup-pstack safe to install?
Security partners have reviewed it: Gen Agent Trust Hub passed; Socket passed; Snyk passed. As with any skill, read the SKILL.md and bundled scripts before installing.
Who maintains setup-pstack?
It is published by backnotprop in backnotprop/pstack. It has 5,530 recorded installs.
More from backnotprop/pstack
how
backnotprop/pstack
Use for "how does X work", code walkthroughs before changing something, and placement / ownership / layering questions ("where should this live", "which package owns this", "is this the right layer"). Explains subsystem architecture, runtime flow, onboarding mental models. Use why for motivation.
principle-fix-root-causes
backnotprop/pstack
Apply when debugging. Trace each symptom back to the first place the system went wrong and fix it there. A guard is a fix only when the state it handles is legitimate.
why
backnotprop/pstack
Use for 'why does X work this way', 'why we picked Y', design rationale, regressions, postmortems, or data-backed thresholds. Discovers available MCPs and queries each evidence category (source control, issue tracker, long-form docs, real-time chat, infrastructure observability, error tracking, product analytics warehouse) in parallel, then returns a cited read on decisions and tradeoffs. Use how for runtime behavior.
technical-writing
backnotprop/pstack
Layered technical-writing standard: Diátaxis structure, Google developer style sentences, STE instruction rules, Global English syntax. Use for /technical-writing or when writing or reviewing docs, RFCs, readmes, PR descriptions, or commit messages.
arena
backnotprop/pstack
Spawn N parallel candidates at the same task, pick a base, graft the strongest parts of the losers into it. Use for /arena, 'arena this', 'throw it in the arena', or when one attempt at a non-trivial artifact would lock in the wrong shape.
Popular other skills
hyperframes-cli
heygen-com/hyperframes
The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.
triage
mattpocock/skills
Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.
ask-matt
mattpocock/skills
Ask which skill or flow fits your situation. A router over the skills in this repo.
to-questionnaire
mattpocock/skills
Turn a decision you can't fully answer into a questionnaire for someone else to fill in.
loop-me
mattpocock/skills
Grill me about specs for the workflows I want to build, within this workspace.