sergio stack: skills for Claude Code and Codex that drive a repo to done, review and investigate in parallel, and ship it.
Claude Code plugin
/plugin marketplace add GeiserX/sstack
/plugin install sstack@sstack
On Claude Code 2.1.275 or later, /plugin install sstack --marketplace GeiserX/sstack does both in one step. Plugin skills are namespaced, so you call them as /sstack:file-pr, /sstack:full-loop and so on.
npx skills
npx skills add GeiserX/sstack
Symlinks with the installer
git clone https://github.com/GeiserX/sstack && cd sstack && scripts/install.sh
Name skills to link only those (scripts/install.sh file-pr revive). Anything already installed under the same name is moved to ~/.claude/skills-backups/ first. The sergio-loop Stop hook needs --hooks, which links the runtime into ~/.claude/hooks and prints the settings.json entries to add.
Codex
scripts/install.sh --codex
This links codex/skills/ into ~/.agents/skills/. Call a skill as $<name>. The Stop hook is Claude Code only, so in Codex a loop runs one pass per call.
Pick one route for Claude Code. With both the plugin and the symlinks, every skill shows up twice.
| Skill | Say | What it does |
|---|---|---|
full-loop |
/full-loop <goal> |
Runs sergio-loop until nothing is pending, then refine-loop at a falling theta. |
sergio-loop |
/sergio-loop <goal> |
A durable goal loop: one small slice at a time, goals and evidence in docs/, resumable state in .omc/sergio-loop/. |
refine-loop |
"keep improving this repo" | Small, behaviour-preserving improvements ranked by ROI = Impact × Confidence ÷ Effort, each checked by a fresh reviewer. |
docs-loop |
"audit the docs" | Checks documentation against the default branch: dry run, staged edits, or one pull request per repo. Never merges. |
| Skill | Say | What it does |
|---|---|---|
investigate |
/investigate <bug> |
Independent hypothesis agents take a failure from reproduction to root cause, and fix it only when asked. |
research |
/research <question> |
Parallel specialists gather evidence from the code, its history and primary sources, then a ranked, cited answer. |
review-code |
/review-code |
Audits a whole codebase in bounded waves and publishes every verified finding by severity. |
tidy-repo |
/tidy-repo |
Sweeps an established repo without changing what it does: audit, delete, restructure, refresh the living docs, and leave guards that keep it clean. |
review-pr |
"review PR 42" | Three review lenses, one fixer and one adversarial verifier per pull request, then merge or close. |
implement |
/implement <change> |
The smallest complete change, with independent parts split across agents that own separate files. |
| Skill | Say | What it does |
|---|---|---|
kb-research |
/kb-research <question> |
Answers from your team's own record through one adapter file, every claim cited. |
kb-review |
/kb-review <PR> |
Reviews a pull request the way your reviewers do, grounded in past decisions. Reports only. |
| Skill | Say | What it does |
|---|---|---|
file-pr |
"open a PR" | A ready pull request whose title says why and whose body opens with the problem. |
github-video-embed |
"make the video play in the README" | Gets a video onto GitHub as an attachment, so it plays inline in a doc or pull request. |
grow-my-repo |
/grow-my-repo |
Plans where an open-source repo gets listed and does the submissions an agent may do. |
submit-awesome |
/submit-awesome |
One entry per awesome list, by each list's own rules. |
| Skill | Say | What it does |
|---|---|---|
readable |
"make this readable" | Cuts AI writing tropes and rebuilds the sentences at 80% of ASD-STE100, with every fact and link kept. |
verified-reply |
"draft a reply to this" | A reply you send as yourself, every claim checked against a live source first. |
eli5 |
"eli5" | Explains work or a system in plain words with real names. |
help-decide |
"help me decide" | Lays a decision out so one word answers it. |
| Skill | Say | What it does |
|---|---|---|
revive |
"continue" after a limit or crash | Brings cut-off work back where it really stopped, checking the world before every write. |
None of them treats a stored goal as permission to merge, publish or deploy.
full-looprunssergio-loopto done, thenrefine-loop.review-codehands any finding that would change behaviour tosergio-looporinvestigateinstead of fixing it.file-pr,verified-reply,review-pr,kb-review,docs-loop,tidy-repo,grow-my-repoandsubmit-awesomerun their text throughreadablebefore it goes out.file-pruses thegithub-video-embedrecipe when a UI change needs a recording in the pull request.docs-loop,refine-loop,sergio-loopandfull-loopshare the loop contract inshared/loop-contract.md; the validator checks that every loop carries the same copy.
The skills here are generic on purpose. Put your own policy (which branches, which reviewers, which words to avoid) in your CLAUDE.md or AGENTS.md, never in the skill, so updates stay a clean pull.
- akou ships
akou(record a call and ask about it while it runs) andakou-vocab(teach it the names a recording should spell right). - unsent ships
unsent-context, which fills in the context of the prompts you sent.
vendor/ keeps skills written by other people as pinned snapshots with their licences:
- pstack by Lauren Tan (MIT), 52 skills such as
unslop,blast-radiusandshow-me-your-work. Upstream installs it with/plugin install pstack@cursor-plugins. Sources and local changes: vendor/pstack/PROVENANCE.md. writing-for-agentsfrom Matt Pocock's skills (MIT): vendor/mattpocock-skills/PROVENANCE.md.frontend-designfrom Anthropic's skills (Apache-2.0): vendor/anthropic-skills/PROVENANCE.md.
Neither the plugin nor npx skills installs anything from vendor/. Link the ones you want by hand.
The full documentation is at https://geiserx.github.io/sstack/: getting started, usage, development and related projects.