# Setup Pstack

> Configure pstack model and reasoning profiles for Codex. Use when the user asks to set up pstack, change its budget, or route roles across GPT-5.6 Sol, Terra, Luna, or the parent model.

- Skill: `vaibtan/setup-pstack` (Agent Skill)
- Install (CLI): `npx skillmds@latest add vaibtan/setup-pstack`
- Raw SKILL.md: https://api.skillmd.com/api/skills/vaibtan/setup-pstack/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: Vaibtan (https://skillmd.com/u/vaibtan)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/vaibtan/setup-pstack

---


# Configure pstack models

Create or update `$CODEX_HOME/pstack-models.toml`. This file belongs to pstack and must not modify Codex's main `config.toml`.

## Workflow

1. Read the current file when it exists. Preserve custom role assignments unless the user asks to reset them.
2. Use the model availability exposed by the current Codex environment. Do not invent or probe unsupported model IDs.
3. Ask for a choice only when an unavailable model or a genuinely ambiguous budget changes the result. Otherwise use the defaults below.
4. Write the full file atomically so repeated runs converge to the same state.
5. Parse the resulting TOML and report its path, profiles, and role overrides.

## Default configuration

```toml
version = 1

[profiles.fast]
model = "gpt-5.6-luna"
reasoning_effort = "max"

[profiles.general]
model = "gpt-5.6-sol"
reasoning_effort = "medium"

[profiles.deep]
model = "gpt-5.6-sol"
reasoning_effort = "xhigh"

[roles]
mechanical = "fast"
feature = "general"
refactoring = "general"
bug_fix = "general"
performance = "general"
exploration = "general"
architecture = "deep"
synthesis = "deep"
review = "deep"
prose = "deep"

[panels]
arena = ["deep", "general", "fast"]
architect = ["deep", "general"]
interrogate = ["deep", "general", "fast"]
```

Profile values may instead be `inherit-parent`. When selected, omit both model and reasoning overrides for that role. Keep model and reasoning effort as separate values; combined Cursor-style slugs are invalid in Codex.

## Budgets

When the user names only a budget, keep the configured profile models and adjust reasoning effort:

- `small`: fast `low`, general `low`, deep `medium`.
- `medium`: fast `low`, general `medium`, deep `high`.
- `large`: fast `medium`, general `high`, deep `xhigh`.
- `unlimited`: fast `high`, general `xhigh`, deep `max`.

Validate each selected effort against the current model's supported values. Preserve a lower supported value rather than inventing a model alias.

After setup, mention `$create-verification-skill` only when the active repository lacks a real-surface verification path and that omission is relevant to the user's current work.

