setup-pstack
Skill1 starsChanged 38 days agoMITView on GitHub
Configure which models pstack uses per role and at what reasoning budget. Detects your authenticated models and writes a rule file that overrides the role defaults. Use for /setup-pstack, \"configure pstack models\", \"pstack budget\", or changing pstack's model choices.
25 other projects use a version of this, 12 of them edited.
Adopted by
Most recently taken up by
- paramcodes/skillsedited, first seen Nov 8, 2026
- creedants/pstack-t3their own version, first seen Nov 3, 2026
- dsebban/skillstheir own version, first seen Nov 1, 2026
- DarthJonathan/guac-skillstheir own version, first seen Nov 1, 2026
- anhermon/pstack-claudeedited, first seen Nov 1, 2026
- adjohn/pstackedited, first seen Oct 29, 2026
Used with
Projects with it also use poteto-help, make-bot-ui and 5 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
ianclearySkillpoteto-help
Guides users through pstack setup, /poteto-mode, and picking the skill, playbook, or principle for a task. Type /poteto-help with a question.
Also in 13 projects that use this
eryzerzSkillmake-bot-ui
Use when building a custom UI (page, dashboard, buttons) that should wake a Grok Bot over a webhook, when the user must provide a webhook sender key, or when exposing that UI on Tailscale.
Also in 15 projects that use this
tristanphvnSkillketchup-video
Catch the user up like /keel:ketchup, with a short silent video of slides for what happened and the waiting calls as text under it. Use for /keel:ketchup-video.
Also in 6 projects that use this
TheOnlyFusionCubeSkillstatechart
Draw what an app's user sees as a Mermaid statechart from a TLA+ model. States are gray if they work, red if still wrong, and green if fixed. Each bug TLC finds is a numbered path. Use for /statechart, \"show the PM the bug\", or to turn an agreed chart into a TLA+ skeleton.
Also in 8 projects that use this
TheOnlyFusionCubeSkillmaintain-formal-verification-skill
Bring a project's formal verification back in line with the code after the code changes: find the commits that touched verified code, update the model, harness, or properties to describe the code as it is now, rerun, and say whether each failure is drift in the verification or a bug in the code. Use for /maintain-formal-verification-skill, \"is the model still true to the code\", or after merges and refactors that touched verified code without rechecking it.
Also in 8 projects that use this
instructureSkillketchup
Rebuild context after /clear by analyzing uncommitted changes across Canvas LMS and all plugin repositories
Also in 9 projects that use this
Other versions25 projects use a version of this.
Word for word · 0
None found.
Edited · 12
- backnotprop/pstack★ 3.8k19% same
- mariusflorescu/pstack-t3★ 1320% same
- adjohn/pstack★ 920% same
- dhanji4U/skills★ 225% same
- EvanBatten/pstack-for-cc★ 214% same
- JoshueOsuna/pstack★ 227% same
- lengjingxu/pstack-for-codex★ 125% same
- ahmedbenaw/pstack★ 024% same
- ahmedgcompany-cyber/pstack-claude★ 022% same
- anhermon/pstack-claude★ 010% same
2 more not listed
Wrote their own version · 13
- dsebban/skills★ 71same name
- TheOnlyFusionCube/potetos-for-everyone★ 21same name
- creedants/pstack-t3★ 18same name
- kkgogogo17/pi-pstack★ 9same name
- 0xrsydn/pstack-pi★ 6same name
- bnema/pi-pstack★ 2same name
- jmporchet/pstack-hermes★ 2same name
- iancleary/skills★ 1same name
- azzz9/pi-pstack★ 0same name
- DarthJonathan/guac-skills★ 0same name
3 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository58 other files it gives its agents.
- architectSkill
- arenaSkill
- automate-meSkill
- benchmark-checklistSkill
- blast-radiusSkill
- browser-useSkill
- control-cliSkill
- control-uiSkill
- correctSkill
- create-verification-skillSkill
- cua-driverSkill
- deslopSkill
- figure-it-outSkill
- howSkill
- interrogateSkill
- maintain-verification-skillSkill
- no-commentsSkill
- poteto-modeSkill
- principle-attack-the-premiseSkill
- principle-boundary-disciplineSkill
- principle-build-the-leverSkill
- principle-encode-lessons-in-structureSkill
- principle-exhaust-the-design-spaceSkill
- principle-experience-firstSkill
- principle-explain-the-numberSkill
- principle-fix-root-causesSkill
- principle-foundational-thinkingSkill
- principle-guard-the-context-windowSkill
- principle-laziness-protocolSkill
- principle-make-operations-idempotentSkill
- principle-migrate-callers-then-delete-legacy-apisSkill
- principle-minimize-reader-loadSkill
- principle-model-the-domainSkill
- principle-never-block-on-the-humanSkill
- principle-outcome-oriented-executionSkill
- principle-prove-it-worksSkill
- principle-redesign-from-first-principlesSkill
- principle-separate-before-serializing-shared-stateSkill
- principle-sequence-verifiable-unitsSkill
- principle-small-door-big-roomSkill
- principle-subtract-before-you-addSkill
- principle-test-behavior-not-implementationSkill
- principle-tests-pay-rentSkill
- principle-type-system-disciplineSkill
- recallSkill
- reflectSkill
- show-me-your-workSkill
- stacked-prsSkill
- swarmSkill
- tddSkill
- teachSkill
- technical-writingSkill
- thermo-nuclear-code-quality-reviewSkill
- thermo-nuclear-reviewSkill
- thermosSkill
- typescript-best-practicesSkill
- unslopSkill
- whySkill
The file
We split this skill into the rules it gives an agent
3 rules. 0 are common, 0 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 25 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 8
Write pstack-models.md, the rule file that sets pstack's model per role.
- Very specific: line 20
Read .omp/rules/pstack-models.md and then ~/.omp/agent/rules/pstack-models.md with read.
- Very specific: line 39
Every concrete selector written must be in the detected set.
“Common” is measured: kept by at least 6 in 10 of the 25 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Setup pstack
Write pstack-models.md, the rule file that sets pstack's model per role. User scope is ~/.omp/agent/rules/pstack-models.md. Project scope is .omp/rules/pstack-models.md, and it wins over the user file.
Roles, kinds, and defaults live in references/roles.md. Defaults are omp role aliases (@slow, @smol, @task, @default), so pstack works on any provider with no config. This skill is only for overriding them.
Steps
1. Detect available models
Call the pstack_models tool with {list: true}. It returns the authenticated models with their family tokens. If the tool is absent, run omp models --json. If you can detect nothing, ask the user to paste the provider/model ids they have access to. Never write a concrete selector you have not confirmed is available. Role aliases (@slow, @smol, @task, @default, @plan) are always valid even though they are not detected models.
2. Load current state
Read .omp/rules/pstack-models.md and then ~/.omp/agent/rules/pstack-models.md with read. Treat the role lines and the # budget comment as the current choices. Otherwise start from the defaults in references/roles.md. A line whose role is not in that table is from a retired role. Drop it.
3. Scope, budget, map, and confirm
(a) Ask for scope with the ask tool when it is not obvious. Options are user (all projects) and project (this repo only). Default to user.
(b) Ask for a budget with the ask tool. Offer these four options with these exact labels, and name the current budget when the file records one.
unlimited (max)large (xhigh)medium (high)small (medium)
(c) Apply it. The budget maps to a thinking level suffix appended to every concrete selector: unlimited is :max, large is :xhigh, medium is :high, small is :medium. Replace any existing level suffix instead of stacking one. Role aliases are left alone, because they inherit their model and level from modelRoles in the user's config. On a re-run, keep any role the user changed by hand. If a model does not support the target level, use the highest level it supports at or below the target. So small turns anthropic/claude-x into anthropic/claude-x:medium, and leaves @slow as @slow.
(d) Show the roles and confirm. Show every role with its selector list, marking any concrete selector 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 the aliases as options. For panel roles (arena-runners, architect-runners, interrogate-reviewers) the value is a list, one subagent runs per entry, and aliases that resolve to the same model collapse. arena-cross-judge is also a list, but arena selects one entry 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. A panel is only a real panel when it spans 2+ model families, so when the user has one family, say so plainly.
4. Validate
Every concrete selector written must be in the detected set. Role aliases always pass. If a chosen selector is not available, stop and ask again. After writing, call pstack_models with {role: "<role>"} for a panel role and confirm unavailable is empty.
5. Write the rule file
Overwrite the whole file so re-runs stay idempotent. Lines use the shape role: selector[, selector...]. A selector is a role alias or provider/model[:level]. # lines are comments. Shape:
---
description: pstack per-role model choices (overrides role defaults)
alwaysApply: false
---
# pstack model configuration. One line per role: `role: selector[, selector...]`.
# Delete a line to restore that role's default (see the setup-pstack skill's references/roles.md).
# budget: large (xhigh)
code: anthropic/claude-x:xhigh
judgment: @slow
hardest: openai/gpt-x:xhigh
arena-runners: anthropic/claude-x:xhigh, openai/gpt-x:xhigh, google/gemini-x:xhigh
interrogate-reviewers: @slow, openai/gpt-x:xhighThe ids above are placeholders for the shape. Write only ids confirmed in step 1, and write only the roles that differ from the defaults. The extension reads this file directly, so alwaysApply: false is fine and the file does not fill context. Deleting a line restores that role's default. Deleting the file restores every default.
6. Confirm
Tell the user which file was written, which roles it overrides, and that it applies to new task spawns right away. Re-running this skill updates it.
7. Offer subagent isolation (optional)
Playbooks that fan out parallel writers (Autopilot-full, Autopilot-stack, Orchestrate, Hillclimb, Visual parity, swarm live lanes) pass isolated: true on task items. That field exists only when task.isolation.enabled is true, and it defaults to false. Read cfg://task.isolation.enabled. If it is already true, skip to the apply question below. Otherwise ask once with the ask tool whether to turn it on, and name the trade. Isolated writers get their own worktree, and with task.isolation.apply left at its default of true, OMP applies each successful run's changes to the current checkout on its own.
On yes, write cfg://task.isolation.enabled with content true. A cfg:// write needs the user's approval and only the top-level session may do it. If the write is refused or unanswered, do not retry. Show the user the line to add to ~/.omp/agent/config.yml (or .omp/config.yml for one project) instead:
task:
isolation:
enabled: trueA session-only write is not saved. Ask whether to keep it, and persist with write cfg://task.isolation.enabled/save with the same content. Then ask whether task.isolation.apply should be false, so worker changes are kept as patch or branch artifacts for review instead of landing in the checkout, and set it the same way. If the user declines isolation, say that the playbooks fall back to one worktree per writer created with /wt or git worktree add, or to one writer at a time.
8. 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 the create-verification-skill skill. On no, move on without pushing.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

