#341 by GitHub stars

backnotprop/pstack

Use pstack with claude, codex, pi - Skills and principles for rigorous AI-assisted engineering

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

automations/benny/skills/reproduce-and-fix-issues/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

automations/benny/skills/setup-benny/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

automations/benny/skills/triage-issue-reports/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/architect/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/arena/SKILL.md

Week of Nov 2, 2026 · +4 / −4 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

- 17 3. Pick the runners. Use the `arena runners` line in the pstack settings file (`~/.cursor/rules/pstack-models.mdc` in Cursor, `~/.claude/rules/pstack-models.md` in Claude Code, `~/.agents/pstack-models.md` in other harnesses). If the file or that line is missing, default to one each on `claude-opus-5-5-xhigh` and `grok-4.7-xhigh-fast`. An `auto` or `inherit-parent` entry in this line or the cross-judge line means the parent model, so omit `model` for it. If your subagent tool rejects a configured entry, run that seat on its family's default and say so. Families go by prefix: `claude-*`, and `grok-*` with `cursor-grok-*` and `composer-*`. A refused `composer-*` entry runs on `grok-4.7-xhigh-fast`. With no family match, use `claude-opus-5-5-xhigh`. If it rejects a default, use the closest valid slug of the same family from its error message or your harness's model list. Spawn more runners when the arena covers multiple design directions. Use the same model N times when the work is generation-bound rather than judgment-sensitive. Pick each subagent's reasoning level and fast or standard speed for the job, per the Subagents section of the **poteto-mode** skill.
+ 17 3. Pick the runners. Use the `arena runners` line in the pstack settings file (`~/.cursor/rules/pstack-models.mdc` in Cursor, `~/.claude/rules/pstack-models.md` in Claude Code, `~/.agents/pstack-models.md` in other harnesses). If the file or that line is missing, default to one each on `claude-opus-5-5-xhigh` and `grok-4.7-xhigh-fast`. An `auto` or `inherit-parent` entry in this line means the parent model, so omit `model` for it. If your subagent tool rejects a configured entry, run that seat on its family's default and say so. Families go by prefix: `claude-*`, and `grok-*` with `cursor-grok-*` and `composer-*`. A refused `composer-*` entry runs on `grok-4.7-xhigh-fast`. If the family has no default, or your subagent tool rejects that default, use the closest valid slug of the same family from its error message or your harness's model list, or drop the seat and say so when there is none. If dropped seats leave fewer than two runners, add runners until there are two, or one when the line has one entry. Run each added runner on a remaining runner's model, or omit `model` so it runs on the parent model when none remain, and say so. Spawn more runners when the arena covers multiple design directions. Use the same model N times when the work is generation-bound rather than judgment-sensitive. Pick each subagent's reasoning level and fast or standard speed for the job, per the Subagents section of the **poteto-mode** skill.
- 28 After all Phase B candidates complete, choose one model from the `arena cross-judge pool` line in the pstack settings file. If the file or that line is missing, choose from `claude-opus-5-5-xhigh` and `grok-4.7-xhigh-fast`. Prefer a different model family from the parent's. Spawn one readonly judge subagent on that model. It sees the rubric and the candidates by path label, scores each criterion, and recommends a base with rationale. It runs in parallel with your reading in Phase D. Don't spawn it while candidates are still writing.
+ 28 After all Phase B candidates complete, choose one model from the `arena cross-judge pool` line in the pstack settings file. If the file or that line is missing, choose from `claude-opus-5-5-xhigh` and `grok-4.7-xhigh-fast`. Spawn one readonly judge subagent. The judge is never from the parent's family, as Phase A step 3 defines families. Try only the entries from another family, in pool order. An `auto` or `inherit-parent` entry is the parent model, so it never judges. With the default pool, a Claude parent gets `grok-4.7-xhigh-fast`. A parent from any other family gets `claude-opus-5-5-xhigh` first. If your subagent tool rejects an entry, use a valid slug of the same model at the closest level or speed from the error message or your harness's model list, or move to the next entry when there is none. If no entry from another family runs, try the default pool's entries from another family the same way. If none of those runs, skip the judge, pick the base alone in Phase D, and say so. If you do not know the parent's model, try the pool's real slugs in pool order and say that the family check did not run. The judge sees the rubric and the candidates by path label, scores each criterion, and recommends a base with rationale. It runs in parallel with your reading in Phase D. Don't spawn it while candidates are still writing.
- 32 Read every candidate end to end before picking. Score each against the rubric criterion by criterion, not on holistic feel, and compare with the cross-judge. Agreement on the base confirms the pick. Disagreement means one of you is biased or the rubric was ambiguous. Read both rationales before deciding.
+ 32 Read every candidate end to end before picking. Score each against the rubric criterion by criterion, not on holistic feel, and compare with the cross-judge when Phase C ran one. Agreement on the base confirms the pick. Disagreement means one of you is biased or the rubric was ambiguous. Read both rationales before deciding.
- 48 One synthesized artifact, with a short synthesis note alongside naming the base and why, the cross-judge's verdict, each graft with its source candidate, what was rejected and why, any convergence or dropouts, and the verification result.
+ 48 One synthesized artifact, with a short synthesis note alongside naming the base and why, the cross-judge's verdict or that Phase C skipped the judge, each graft with its source candidate, what was rejected and why, any convergence or dropouts, and the verification result.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/automate-me/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/benchmark-checklist/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/blast-radius/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/bro/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/correct/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/create-formal-verification-skill/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/create-verification-skill/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/figure-it-out/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/how/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/in-your-own-words/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/interrogate/SKILL.md

Week of Nov 2, 2026 · +14 / −59 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

- 3 description: "Use for \"interrogate\", \"adversarial review\", \"multi-model review\", \"challenge this\", \"stress test this code\", \"find blind spots\", or \"tear this apart\". Multiple LLM reviewers challenge changes from independent angles."
+ 3 description: "Use for \"interrogate\", \"adversarial review\", \"multi-model review\", \"challenge this\", \"stress test this code\", \"find blind spots\", or \"tear this apart\". Adversaries try to break a change or design, and only findings proven by a run survive."
- 9 Spawn one reviewer per configured model to adversarially review code changes. The adversarial signal comes from model diversity, not assigned personas. The deliverable is a synthesized verdict. Do NOT auto-apply changes.
+ 9 Adversaries try to break a change or a design. A finding survives only when a run proves it. Report the findings. Do not apply fixes.
- 11 ## Step 1, Scope
+ 11 ## Frame
- 13 Identify what to review from context:
+ 13 The scope is what the user names. Otherwise it is the branch diff from its merge base with the base branch, through the working tree. State the intent with the **in-your-own-words** skill, from the user's message, the commits, and the PR description. Ask the user when the intent is unclear.
- 15 - If the user points at specific files or a diff, use that.
- 16 - If on a feature branch, run `git diff main...HEAD` (or the appropriate base branch) for the full changeset.
- 17 - If the user's message references recent work, gather the relevant files.
+ 15 ## Fan out
- 19 Package the diff or file contents with any surrounding context files the reviewers need to understand the code.
+ 17 Run Phase A steps 3 and 4 and Phase B of the **arena** skill, with four changes. Read the `interrogate reviewers` line in place of `arena runners`. Copy the scope's uncommitted changes into each worktree. Spawn each adversary as a general-purpose subagent (`generalPurpose` in Cursor). In place of the arena task and rationale, give each adversary the scope, the intent, and this brief:
- 21 ## Step 2, Intent
+ 19 > Break this change. Prove each finding with a run against the real code, such as a failing test, a repro script, or command output that shows the wrong behavior. For a design or plan, run a prototype or probe the current tree. Keep repros in your own worktree. Report each finding with a title, the exact command, the output it printed, and the output the intent requires. Leave out anything you did not run. That covers style, naming, structure, and risks that need a future change to matter. No findings is a valid result.
- 23 Before spawning reviewers, state the intent in one clear paragraph from the user's message, commit messages, the PR description if one exists, and the code. If you're unsure about the intent, ask the user before proceeding.
+ 21 ## Verify
- 25 ## Step 3, Spawn Reviewers
+ 23 Verify each finding per arena Phase F by rerunning its command. Keep a finding when the output shows the failure and the failure breaks the intent. Drop the rest. Merge findings that share a root cause.
- 27 Launch all reviewers in a single message with the Task tool, one per entry on the `interrogate reviewers` line in the pstack settings file (`~/.cursor/rules/pstack-models.mdc` in Cursor, `~/.claude/rules/pstack-models.md` in Claude Code, `~/.agents/pstack-models.md` in other harnesses), labeled Reviewer A, B, and so on to match the entry count. If the file or that line is missing, use the table defaults.
+ 25 Skip arena Phases C, D, and E. Adversaries find different failures, so the verdict keeps every verified finding, not one adversary's list.
- 29 **Other harnesses.** The spawns in this skill use Cursor's `Task` tool. In another harness, use its subagent tool: `Agent` in Claude Code (`subagent_type: general-purpose`), `task` in OpenCode (`subagent_type: general`), `spawn_agent` in Codex. Keep the prompt and the model. Drop parameters your tool doesn't have. If your harness has no subagent tool, as in Pi without an extension, run each reviewer yourself, one after another.
+ 27 ## Output
- 31 | Subagent | Default model |
- 32 |----------|---------------|
- 33 | Reviewer A | `claude-opus-5-5-xhigh` |
- 34 | Reviewer B | `grok-4.7-xhigh-fast` |
- 35 
- 36 Each reviewer gets `subagent_type: generalPurpose`, `readonly: true`, and `model` set to its configured entry, or its table default when there is no configured line. Omit `model` for an `auto` or `inherit-parent` entry, so that reviewer runs on the parent model.
- 37 
- 38 If your subagent tool rejects a configured entry, run that reviewer on its family's table default and say so. Families go by prefix: `claude-*`, and `grok-*` with `cursor-grok-*` and `composer-*`. A refused `composer-*` entry runs on Reviewer B's default. With no family match, use Reviewer A's default. If it rejects a table default, spawn with the closest equivalent from the valid slugs in its error message or your harness's model list (prefer the same family and reasoning tier), and open a separate PR to update the default table. Do not block the review on the slug issue. Never treat an alias entry as a rejected slug or apply either fallback to it.
- 39 
- 40 Read `references/reviewer-prompt.md` and fill in the same template for every reviewer with the stated intent, the diff or file contents, the rubric from `references/rubric.md`, and the code-quality lens from `references/code-quality-review.md`. Pick each subagent's reasoning level and fast or standard speed for the job, per the Subagents section of the **poteto-mode** skill.
- 41 
- 42 ## Step 4, Synthesize
- 43 
- 44 As results come back, build a unified picture. Parse every reviewer's findings. Merge findings that describe the same issue differently, and note which models raised each one. Findings two or more models raised independently are the highest signal. Read a lone model's finding, but weight it accordingly. Note disagreements. If one model flags something and another explicitly says the opposite, that is context for the verdict.
- 45 
- 46 ## Step 5, Lead Judgment
- 47 
- 48 You are the lead reviewer, a pragmatic senior engineer, not a neutral aggregator. Read `references/lead-judgment.md` for the full framework. Put every finding in one of four buckets, with the model(s) that raised it and a one-line rationale.
- 49 
- 50 - **Act on**. Real issues affecting correctness, security, or maintainability given the actual goals. They would block a real PR.
- 51 - **Consider**. Legitimate, but you're not sure they outweigh the cost of addressing them now. Worth the user's attention.
- 52 - **Noted**. Technically valid but not actionable. Context-dependent, premature optimization, or low-impact at this stage.
- 53 - **Dismissed**. Wrong, nitpicky, or missing context, with a brief reason.
- 54 
- 55 ## Output Format
- 56 
- 57 ### Intent
- 58 > [The stated intent paragraph from Step 2]
- 59 
- 60 ### Reviewers
- 61 - Reviewer [label]: [model name], [N findings] (one bullet per reviewer)
- 62 
- 63 ### Act On
- 64 [Each: description, which models raised it, why it matters.]
- 65 
- 66 ### Consider
- 67 [Each: description, which models raised it, the tradeoff.]
- 68 
- 69 ### Noted
- 70 [Brief list.]
- 71 
- 72 ### Dismissed
- 73 [Each with a brief rationale.]
- 74 
- 75 ### Agreement Map
- 76 [Where models agreed and diverged, and what that pattern tells us.]
+ 29 - **Intent**: the restatement.
+ 30 - **Findings**: for each verified finding, the command, its output, how it breaks the intent, and the adversaries that found it. Say "no verified findings" when none survive.
+ 31 - **Dropped**: for each adversary, the count of dropped findings and why.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/ketchup/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/ketchup-video/SKILL.md

Week of Nov 2, 2026 · +9 / −3 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

- 3 description: "Catch the user up like /ketchup, with a short silent video of slides for what happened and the waiting calls as text under it. Use for /ketchup-video."
+ 3 description: "Catch the user up like /ketchup, with a short subtitled video of slides for what happened and the waiting calls as text under it. Use for /ketchup-video."
- 9 Follow [`/ketchup`](../ketchup/SKILL.md), but show what happened in a short silent video instead of its summary and visuals. Its window starts at the last message the user wrote before `/ketchup-video`, not before any earlier `/ketchup`. Writing and rendering the video, outside the repo, is the one exception to its read-only rule. The reply is ketchup's opening sentence, the embedded video, one line naming any work left that you can do yourself, and the action items. When the video shows a call's options, call each option by the name the video gives it. If the render fails, say so in one line and give only the calls.
+ 9 Follow [`/ketchup`](../ketchup/SKILL.md), but show what happened in a short subtitled video instead of its summary and visuals. Its window starts at the last message the user wrote before `/ketchup-video`, not before any earlier `/ketchup`. Writing and rendering the video, outside the repo, is the one exception to its read-only rule. The reply is ketchup's opening sentence, the embedded video, one line naming any work left that you can do yourself, and the action items. When the video shows a call's options, call each option by the name the video gives it. If the render fails, say so in one line and give only the calls.
+ 21 ## Subtitles
+ 22 
+ 23 Give each slide one short subtitle line, about ten words, that says its point the way you would tell the user, from only what that slide shows. Say what the picture means rather than read out its labels. Put the subtitle in a strip below the slide, the same height on every slide and empty except for the subtitle, so it never covers the slide. Set it small, but readable when the video plays at chat size.
+ 24 
- 23 Render one silent landscape video, such as an mp4, with motion between slides. Every frame is the slide itself, edge to edge. Make the frames from the slides, never by recording a screen. Hold each slide long enough to read its words, at least one second for each three words it adds. Words inside a screenshot do not count. Before you embed the video, look at one frame from each slide in the rendered file, and count the words it adds against its hold in that file. Fix any slide you cannot read in that time, render again, and check again.
+ 27 Render one silent landscape video, such as an mp4, with motion between slides. Every frame is the slide itself, edge to edge, above its subtitle strip. Make the frames from the slides, never by recording a screen, and burn each subtitle into its slide's frames so it stays on screen for the slide's whole hold. The hold is the time a slide is fully on screen, not counting the motion into or out of it. Hold each slide long enough to read the words it adds, at least one second for each three words. A slide adds its subtitle and each word that was not on the slide before it, including a label it changes. The first slide adds all its words. Words inside a screenshot do not count.
+ 28 
+ 29 Before you embed the video, check the rendered file. Look at one frame from each slide at chat size, and check that its subtitle is readable and covers nothing. Measure each hold by matching the file's frames to the slide, not with a still-frame detector, which counts the faint ends of a fade as still. Count the words each slide adds against its measured hold. Fix any slide you cannot read in that time, render again, and check again.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/maintain-formal-verification-skill/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/maintain-verification-skill/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/make-bot-ui/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/no-comments/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/poteto-help/SKILL.md

Week of Nov 2, 2026 · +2 / −2 lines

Before Network or broad shell → After Network or broad shell

37d989cabf31 → 6c75f4e67546

- 76 | Catch up like `/ketchup`, in a short silent video of slides, with the waiting calls as text under it | [`/ketchup-video`](../ketchup-video/SKILL.md) |
+ 76 | Catch up like `/ketchup`, in a short subtitled video of slides, with the waiting calls as text under it | [`/ketchup-video`](../ketchup-video/SKILL.md) |
- 128 - "full autopilot on this queue" runs Autopilot-full. "stack them, don't ship" runs Autopilot-stack.
+ 128 - "full autopilot on this queue" runs Autopilot-full. "autopilot, don't merge" runs Autopilot-stack.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/poteto-mode/SKILL.md

Week of Nov 2, 2026 · +5 / −4 lines

Before Network or broad shell → After Network or broad shell

37d989cabf31 → 6c75f4e67546

+ 19 - Your first message on a task → tell the user, in your own words, their goal, the problem they are solving, and, if the task ships a change, the smallest change you expect to meet it. Don't wait for confirmation. If the evidence rules out the change the user asked for, show it and stop. Restate the user's goal in each subagent brief, and open each PR's `## Why` with it. Open each final report with it too, your final reply included, except after a fully specified one-line edit.
- 70 - **Explain the Number.** Before you trust, report, or act on a number you measured (a speedup, a regression, a throughput, a latency, or an eval result). Find what limits it, and rule out that it measured something other than the work you think.
+ 71 - **Explain the Number.** Apply before you measure, and before you trust, report, or act on a number you measured (a speedup, a regression, a throughput, a latency, or an eval result). Find what limits it, and rule out that it measured something other than the work you think.
- 95 **Defaults for every `Task` call.** `run_in_background: true`, agent mode (readonly strips MCP), file pointers not inlined context, explicit model per role (configurable via `/setup-pstack`. Defaults `grok-4.7-xhigh-fast` for code, `claude-opus-5-5-xhigh` for prose and judgment). Code delegates tier by difficulty. The hardest changes (cross-cutting design, gnarly concurrency, subtle algorithms) go to your strongest judgment model (`claude-opus-5-5-xhigh`), whether the task needs judgment on vague intent or is a precisely specified sequence of steps to execute to the letter. Trivial mechanical edits go to your fast code model. Per-role lines in the `/setup-pstack` rule override these defaults and the model choices in the routed skills (`how`, `why`, `arena`, `swarm`, `architect`, `interrogate`, `reflect`). A role with no line keeps its default, and a role line of `inherit-parent` or `auto` runs that role on the parent chat model (omit Task `model`). Each code playbook's configured model comes from its line (`feature, refactoring`, `bug-fix`, `perf-issue`, or `hillclimb`), and the hardest changes read `hardest tasks`. Prose and judgment read `judgment and prose`.
+ 96 **Defaults for every `Task` call.** `run_in_background: true` (a steer or resume of a running agent too, because a foreground call holds your turn while other reports wait), agent mode (readonly strips MCP), file pointers not inlined context, explicit model per role (configurable via `/setup-pstack`. Defaults `grok-4.7-xhigh-fast` for code, `claude-opus-5-5-xhigh` for prose and judgment). Code delegates tier by difficulty. The hardest changes (cross-cutting design, gnarly concurrency, subtle algorithms) go to your strongest judgment model (`claude-opus-5-5-xhigh`), whether the task needs judgment on vague intent or is a precisely specified sequence of steps to execute to the letter. Trivial mechanical edits go to your fast code model. Per-role lines in the `/setup-pstack` rule override these defaults and the model choices in the routed skills (`how`, `why`, `arena`, `swarm`, `architect`, `interrogate`, `reflect`). A role with no line keeps its default, and a role line of `inherit-parent` or `auto` runs that role on the parent chat model (omit Task `model`). Each code playbook's configured model comes from its line (`feature, refactoring`, `bug-fix`, `perf-issue`, or `hillclimb`), and the hardest changes read `hardest tasks`. Prose and judgment read `judgment and prose`.
- 97 **Match the model to the job.** Before each spawn, start from the role's line or default and pick the reasoning level and speed the job needs. The `/setup-pstack` budget sets each role's starting level, xhigh by default. Raise it one step, up to max, for the hardest or subtlest work. Lower it one step for judgment and two or more steps for routine work. Use fast mode only when the job is urgent, meaning CI or trunk is red or a person is blocked on the result right now. Otherwise use standard speed, the same slug without `-fast`. Verification is the exception and stays on the `swarm workers` model and speed (`grok-4.7-xhigh-fast` by default). Change only the effort level and whether the slug is fast, and keep the family the role names, so a diverse panel stays diverse. If the family has no slug at that level and speed, use its nearest slug. A role on `auto` or `inherit-parent` stays on the parent model. If your subagent tool rejects the adjusted slug, do not try another adjusted slug. Use the role's line or default and say so.
+ 98 **Match the model to the job.** Before each spawn, start from the role's line or default and pick the reasoning level and speed the job needs. The `/setup-pstack` budget sets each role's starting level, xhigh by default. Raise it one step, up to max, for the hardest or subtlest work. Lower it one step for judgment and two or more steps for routine work. Use fast mode only when the job is urgent, meaning CI or trunk is red or a person is blocked on the result right now. Otherwise use standard speed, the same slug without `-fast`. Verification is the exception and stays on the `swarm workers` model and speed (`grok-4.7-xhigh-fast` by default). Change only the effort level and whether the slug is fast, and keep the family the role names, so a diverse panel stays diverse. If the family has no slug at that level and speed, use its nearest slug. A role on `auto` or `inherit-parent` stays on the parent model. If your subagent tool rejects the adjusted slug, do not try another adjusted slug. Use the role's line or default and say so. If it rejects that too, continue with the calling skill's fallback. A slug counts as rejected once a subagent tool error says that the model is not valid, or leaves the slug out of its list of valid slugs. Never pass a rejected slug, and skip any fallback whose slug is already rejected. When the calling skill has no fallback, use the closest valid slug of the role's family from the error's list of valid slugs or your harness's model list, or omit `model` so the subagent runs on the parent model when the list has none. When the calling skill's fallback runs out of slugs without saying what to do next, omit `model` too. Say so in both cases.
- 156 - **Autopilot-stack.** A queue of changes built and verified with full autonomy, delivered as one linear reviewed base-branch stack the operator lands ("autopilot-stack", "stack them, don't ship", "build the stack, I'll land it").
+ 157 - **Autopilot-stack.** Autopilot-full without the merge. A queue of PRs built and verified with full autonomy, then handed to the operator to land. A PR stacks only on a PR it builds on ("autopilot-stack", "autopilot, don't merge", "stack them, don't ship", "build the stack, I'll land it").

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-attack-the-premise/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-boundary-discipline/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-build-the-lever/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-encode-lessons-in-structure/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-exhaust-the-design-space/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-experience-first/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-explain-the-number/SKILL.md

Week of Nov 2, 2026 · +3 / −2 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

- 3 description: "Apply before you trust, report, or act on a number you measured: a speedup, a regression, a throughput, a latency, or an eval result. Find what limits it, and rule out that it measured something other than the work you think."
+ 3 description: "Apply before you measure, and before you trust, report, or act on a number you measured: a speedup, a regression, a throughput, a latency, or an eval result. Find what limits it, and rule out that it measured something other than the work you think."
+ 9 - **Write the decision before you run.** Name the result that would change a decision, and the noise floor. Stop when the run-to-run spread is larger than the effect.
- 15 You skipped this when the evidence behind a number has no run count, no spread, or no named limiter, or when the time saved is larger than the time the changed piece took.
+ 16 You skipped this when a run started without the result that would change a decision, when the evidence behind a number has no run count, no spread, or no named limiter, or when the time saved is larger than the time the changed piece took.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-fix-root-causes/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-foundational-thinking/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-guard-the-context-window/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-laziness-protocol/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-make-operations-idempotent/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-migrate-callers-then-delete-legacy-apis/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-minimize-reader-load/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-model-the-domain/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-never-block-on-the-human/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-outcome-oriented-execution/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-prove-it-works/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-redesign-from-first-principles/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-separate-before-serializing-shared-state/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-sequence-verifiable-units/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-subtract-before-you-add/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-test-behavior-not-implementation/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/principle-type-system-discipline/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/recall/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/reflect/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/setup-pstack/SKILL.md

Week of Nov 2, 2026 · +1 / −1 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

- 37 **(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.
+ 37 **(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 runs one judge. It tries only values from a family other than the parent's, in list order, so order it by preference. An `inherit-parent` or `auto` value never judges. `swarm workers` is the default model for every worker unless a race or comparison assigns another model per arm.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/sharpen/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/show-me-your-work/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/statechart/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/swarm/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/tdd/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/teach/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/technical-writing/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/typescript-best-practices/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/unslop/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

skills/why/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Network or broad shell

37d989cabf31 → 6c75f4e67546

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 37d989cabf31

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 6c75f4e67546c2ddbf9634734c1e3ebbea34861a

3.7kGitHub stars
483stars in 7 days
61skills in this repository
34commits in 30 days

Heat

8.5
  • Star growth, last 7 daysAhead of 99% of tracked repositories
  • Star growth, last 24 hoursAhead of 99% of tracked repositories
  • Rank movement, last 7 daysAhead of 96% of tracked repositories
  • Commits, last 30 daysAhead of 88% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Aug 2, 2026Nov 6, 20263,708

Individual skills in this repository

How it works

reproduce-and-fix-issues

When your agent uses it

Reproduce triaged Slack bugs through a configured app-control adapter, verify existing fixes, and open a bounded draft pull request only after before-and-after proof. Use only from the configured Benny repro automation.

What it loads into context

Frontmatter

58 tokens

Always available to the agent

SKILL.md

2,953 tokens

When the skill is activated

Reference documents

2,970 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Hard safety rules
  2. 1. Freeze source coordinates
  3. 2. Wait for the triage contract
  4. 3. Apply ownership and fix-artifact gates
  5. 4. Open an optional operations thread
  6. 5. Load and check the control adapter
  7. 6. Study the report
  8. 7. Reproduce
  9. 8. Capture and review evidence
  10. 9. Report the repro outcome
  11. 10. Verify an existing fix
  12. 11. Qualify a bounded fix
  13. 12. Root-cause and implement
  14. 13. Prove the fix
  15. 14. Open a draft pull request
  16. 15. Follow-ups and cleanup

Files

  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • SKILL.mdcore14,238 bytes
  • references/control-adapter.mddoc5,517 bytes
  • references/feature-map.example.mddoc5,646 bytes
  • references/verify-existing-fix.mddoc3,149 bytes
Read SKILL.md

# Reproduce and fix issues

Wait for a trusted triage marker in the source thread. Reproduce the exact symptom through the target app's real UI. Verify an existing fix when one exists. Attempt a bounded fix only after a confirmed repro.

Load the external Benny configuration supplied by the automation. If the config, required actions, control adapter, or completed feature map is missing, fail closed.

## Hard safety rules

- Freeze the source channel and root thread coordinates before doing any work.
- Never post a root message in the source channel.
- Preflight the source parent before every source-thread post.
- The coordinator is the only Slack poster.
- Delegated analysis workers are read-only and return findings or media notes.
- A fix-phase code worker may edit only when its environment provably excludes Slack credentials and every Slack write action. Otherwise the coordinator edits.
View the complete source on GitHub

Skills included

  • reproduce-and-fix-issues
  • setup-benny
  • triage-issue-reports
  • architect
  • arena
  • automate-me
  • benchmark-checklist
  • blast-radius
  • bro
  • correct
  • create-formal-verification-skill
  • create-verification-skill
  • figure-it-out
  • how
  • in-your-own-words
  • interrogate
  • ketchup
  • ketchup-video
  • maintain-formal-verification-skill
  • maintain-verification-skill
  • make-bot-ui
  • no-comments
  • poteto-help
  • poteto-mode
  • principle-attack-the-premise
  • principle-boundary-discipline
  • principle-build-the-lever
  • principle-encode-lessons-in-structure
  • principle-exhaust-the-design-space
  • principle-experience-first
  • principle-explain-the-number
  • principle-fix-root-causes
  • principle-foundational-thinking
  • principle-guard-the-context-window
  • principle-laziness-protocol
  • principle-make-operations-idempotent
  • principle-migrate-callers-then-delete-legacy-apis
  • principle-minimize-reader-load
  • principle-model-the-domain
  • principle-never-block-on-the-human
  • principle-outcome-oriented-execution
  • principle-prove-it-works
  • principle-redesign-from-first-principles
  • principle-separate-before-serializing-shared-state
  • principle-sequence-verifiable-units
  • principle-subtract-before-you-add
  • principle-test-behavior-not-implementation
  • principle-type-system-discipline
  • recall
  • reflect
  • setup-pstack
  • sharpen
  • show-me-your-work
  • statechart
  • swarm
  • tdd
  • teach
  • technical-writing
  • typescript-best-practices
  • unslop
  • why

Repository facts

License
MIT
Created
May 27, 2026
Last pushed
Nov 5, 2026
Forks
261
Open issues
1
Project activity
Active

Rank over the last 12 weeks

Now #341 · best #341 · up 252 in 30 days

  1. #362 on Nov 1
  2. #356 on Nov 2
  3. #354 on Nov 3
  4. #351 on Nov 4
  5. #342 on Nov 5
  6. #341 since Nov 6
74 earlier periods
  1. #882 on Aug 2
  2. #928 on Aug 13
  3. #919 on Aug 18
  4. #915 on Aug 19
  5. #896 on Aug 20
  6. #907 on Aug 21
  7. #853 on Aug 22
  8. #907 on Aug 23
  9. #919 on Aug 24
  10. #927 on Aug 25
  11. #907 on Aug 26
  12. #915 on Aug 27
  13. #950 on Aug 28
  14. #868 on Aug 29
  15. #871 on Aug 30
  16. #920 on Aug 31
  17. #954 on Sep 1
  18. #920 on Sep 2
  19. #926 on Sep 3
  20. #889 on Sep 4
  21. #867 on Sep 5
  22. #904 on Sep 6
  23. #929 on Sep 7
  24. #941 on Sep 8
  25. #927 on Sep 9
  26. #923 on Sep 10
  27. #888 on Sep 11
  28. #886 on Sep 12
  29. #885 on Sep 13
  30. #923 on Sep 14
  31. #910 on Sep 15
  32. #922 on Sep 16
  33. #916 on Sep 17
  34. #903 on Sep 18
  35. #877 on Sep 19
  36. #894 on Sep 20
  37. #914 on Sep 21
  38. #932 on Sep 22
  39. #920 on Sep 23
  40. #881 on Sep 24
  41. #826 on Sep 25
  42. #840 on Sep 26
  43. #844 on Sep 27
  44. #864 on Sep 28
  45. #882 on Sep 29
  46. #825 on Sep 30
  47. #760 on Oct 1
  48. #750 on Oct 2
  49. #688 on Oct 3
  50. #681 on Oct 4
  51. #646 on Oct 5
  52. #618 on Oct 6
  53. #593 on Oct 7
  54. #585 on Oct 8
  55. #556 on Oct 9
  56. #532 on Oct 10
  57. #522 from Oct 11 to Oct 12
  58. #502 on Oct 13
  59. #495 on Oct 14
  60. #477 on Oct 15
  61. #471 on Oct 16
  62. #449 on Oct 17
  63. #443 on Oct 18
  64. #441 on Oct 19
  65. #436 on Oct 20
  66. #428 on Oct 21
  67. #416 on Oct 22
  68. #408 on Oct 23
  69. #394 on Oct 24
  70. #410 on Oct 25
  71. #386 on Oct 28
  72. #380 on Oct 29
  73. #370 on Oct 30
  74. #367 on Oct 31

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 3, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 117 notes
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • automations/benny/skills/reproduce-and-fix-issues/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 152 signals by file

README.md

  • Network accessline 4
    <p align="center">   <a href="https://github.com/cursor/plugins/tree/main/pstack">
  • Network accessline 5
    <a href="https://github.com/cursor/plugins/tree/main/pstack">
  • Network accessline 17
    <p align="center">   <a href="https://github.com/backnotprop/plannotator"><picture>
  • Network accessline 18
    <a href="https://github.com/backnotprop/plannotator"><picture>
  • Network accessline 20
    <img src="mirror-assets/sponsor-plannotator-light.svg" width="48%" alt="Sponsored by Plannotator">   </picture></a>   <a href="https://plannotator.ai/inbox/"><picture>
  • Network accessline 21
    </picture></a>   <a href="https://plannotator.ai/inbox/"><picture>     <source media="(prefers-color-scheme: dark)" srcset="mirror-assets/sponsor-inbox-dark.svg">
  • Network accessline 22
    <a href="https://plannotator.ai/inbox/"><picture>
  • Network accessline 28
    <p align="center">   Poteto's Bro Skill was created by me, <a href="https://github.com/backnotprop/bro">backnotprop/bro</a>
  • Network accessline 29
    Poteto's Bro Skill was created by me, <a href="https://github.com/backnotprop/bro">backnotprop/bro</a>
  • Network accessline 34
    pstack is a folder of plain [Agent Skills](https://agentskills.io) (`skills/<name>/SKILL.md`). You don't need [Cursor](https://github.com/cursor/plugins/tree/main/pstack). The [`skills` CLI](https://skills.sh) installs them into Claude Code
  • Network accessline 74
    - `no-comments` keeps a comment about an outside rule (a dependency, platform, or protocol) when it can't check the rule, and marks it for review instead of deleting it. A rejected review no longer stops the whole run. ([#14](https://github
  • Network accessline 81
    [See Pstack Blog](https://x.com/poteto/article/2094457600259842065?lang=en)
  • Network accessline 83
    i'm [poteto](https://x.com/poteto). i'm not a president or ceo, but i've worked with millions of lines of code at Meta, Netflix, and Cursor. i'm also on the react core team where i help build and maintain react compiler.
  • Network accessline 112
    claude code installs a generated copy of pstack, including this readme and the guide, from [`harness/pstack/`](https://github.com/cursor/plugins/tree/main/harness/pstack) at the repository root. after you change pstack, run `node scripts/ge
  • Network accessline 186
    to keep [`/poteto-mode`](./skills/poteto-mode/SKILL.md) on across turns, pick it from the `/` menu and press option+enter (mac) or alt+enter (windows) instead of enter. that makes it a [custom mode](https://cursor.com/docs/skills#using-a-sk

automations/benny/skills/reproduce-and-fix-issues/SKILL.md

  • Network accessline 69
    [benny:bug] [benny:bug] tracker=https://tracker.example/issue/123
  • Network accessline 70
    [benny:bug] tracker=https://tracker.example/issue/123
  • Network accessline 71
    [benny:performance] [benny:performance] tracker=https://tracker.example/issue/123 [benny:other]
  • Network accessline 72
    [benny:performance] tracker=https://tracker.example/issue/123
  • Network accessline 291
    - Open a draft pull request. Never merge or deploy from this workflow. - Link the configured tracker issue using the tracker's supported pull request syntax. - Use the configured public URL form, normally `https://github.com/{owner}/{repo}/
  • Network accessline 292
    - Link the configured tracker issue using the tracker's supported pull request syntax. - Use the configured public URL form, normally `https://github.com/{owner}/{repo}/pull/{number}`. - Include the repro steps, root cause, test result, bef
  • Network accessline 293
    - Use the configured public URL form, normally `https://github.com/{owner}/{repo}/pull/{number}`.

automations/benny/skills/triage-issue-reports/SKILL.md

  • Network accessline 217
    [benny:bug] [benny:bug] tracker=https://tracker.example/issue/123
  • Network accessline 218
    [benny:bug] tracker=https://tracker.example/issue/123
  • Network accessline 219
    [benny:performance] [benny:performance] tracker=https://tracker.example/issue/123 [benny:other]
  • Network accessline 220
    [benny:performance] tracker=https://tracker.example/issue/123

automations/benny/templates/configuration.example.yaml

  • Network accessline 20
    repository:   url: "https://github.com/example-org/example-repo"
  • Network accessline 21
    url: "https://github.com/example-org/example-repo"
  • Network accessline 22
    default_branch: "main"   pull_request_action: "configured-draft-pull-request-action"   pull_request_url_format: "https://github.com/{owner}/{repo}/pull/{number}"
  • Network accessline 23
    pull_request_action: "configured-draft-pull-request-action"   pull_request_url_format: "https://github.com/{owner}/{repo}/pull/{number}"   draft_only: true
  • Network accessline 24
    pull_request_url_format: "https://github.com/{owner}/{repo}/pull/{number}"

docs/guide/01-setup.md

  • Network accessline 64
    From here you can type normal follow-ups. To keep `/poteto-mode` on for the whole chat, pick it from the `/` menu with Option+Enter (Mac) or Alt+Enter (Windows) instead of Enter. That makes it a [Custom Mode](https://cursor.com/docs/skills#

docs/guide/02-poteto-mode.md

  • Network accessline 107
    If you run several agents against one repository on one computer, they will fight over the working tree, the ports, and the build output. The cleanest isolation is a [cloud subagent](https://cursor.com/docs/subagents#cloud-subagents). Each 

docs/guide/07-overnight.md

  • Network accessline 96
    A [Cursor Project](https://cursor.com/blog/projects) gives one coordinator agent a persistent thread. The coordinator doesn't write code. It directs subagents, which run in the cloud by default, so the work continues when your laptop is clo

docs/harness/claude-code.md

  • Network accessline 53
    | `~/.cursor/plugins/`, `.cursor-plugin/plugin.json` | `~/.claude/plugins/`, `.claude-plugin/plugin.json` | | `.cursor/rules/*.mdc`, always-applied rules | `CLAUDE.md`, or `AGENTS.md` when no `CLAUDE.md` exists. Claude Code never reads `.md
  • Network accessline 54
    | `.cursor/rules/*.mdc`, always-applied rules | `CLAUDE.md`, or `AGENTS.md` when no `CLAUDE.md` exists. Claude Code never reads `.mdc` files. The model rule is the exception. See Models. | | `https://github.com/cursor/plugins/blob/main/psta
  • Network accessline 55
    | `https://github.com/cursor/plugins/blob/main/pstack/<path>` | `<pstack>/<path>` when that file exists. The plugin ships the skills, `docs/guide/`, and `README.md`. Read the local copy and never fetch it. Give the user the URL when they ne

skills/create-verification-skill/references/feature-map-example/README.md

  • Network accessline 7
    - Launch Notes at `http://127.0.0.1:4173` with a disposable data directory.

skills/create-verification-skill/references/feature-map-example/create-note.md

  • Network accessline 22
    - Notes is healthy at `http://127.0.0.1:4173`.

skills/create-verification-skill/references/feature-map-example/search.md

  • Network accessline 24
    - Notes is healthy at `http://127.0.0.1:4173`.

skills/make-bot-ui/SKILL.md

  • Network accessline 37
    The URL looks like `https://api2.cursor.sh/automations/webhook/<id>` with no query string. Copy the URL from the routine. Do not guess the id.
  • Network accessline 37
    The URL looks like `https://api2.cursor.sh/automations/webhook/<id>` with no query string. Copy the URL from the routine. Do not guess the id.
  • Dangerous shell operationline 89
    curl -fsSL https://tailscale.com/install.sh | sudo sh
  • Dangerous shell operationline 89
    curl -fsSL https://tailscale.com/install.sh | sudo sh
  • Network accessline 89
    curl -fsSL https://tailscale.com/install.sh | sudo sh
  • Network accessline 89
    curl -fsSL https://tailscale.com/install.sh | sudo sh
  • Dangerous shell operationline 95
    sudo tailscale up --hostname=<short-name> --accept-dns=false --ssh=false
  • Dangerous shell operationline 95
    sudo tailscale up --hostname=<short-name> --accept-dns=false --ssh=false

skills/poteto-help/SKILL.md

  • Network accessline 13
    This file maps questions to the skills and guide pages that hold the answers. Those files own the details. Read the file you route to before you quote it, and trust it when it disagrees with this map. The links here point into the installed
  • Network accessline 60
    Link [Cursor's skills docs](https://cursor.com/docs/skills) when this comes up. Mid-chat, "new task" makes the mode match a fresh playbook. `/poteto-mode` already uses `poteto-agent` for the subagents its playbook steps spawn. To get the sa

skills/poteto-mode/SKILL.md

  • Network accessline 128
    Every playbook ends with a reply written this way, PR link as `https://github.com/<owner>/<repo>/pull/<number>`. Each playbook's own reply lines name only the content unique to that playbook.
  • Network accessline 128
    Every playbook ends with a reply written this way, PR link as `https://github.com/<owner>/<repo>/pull/<number>`. Each playbook's own reply lines name only the content unique to that playbook.

skills/poteto-mode/playbooks/worktree-cleanup.md

  • Dangerous shell operationline 7
    5. Prune the confirmed set. Per path, `git worktree remove --force <path>`. If the dir survives on ignored build artifacts, `rm -rf` it, then `git worktree prune`. Branch refs survive, so no commits are lost. Confirm with `df -h /` and re-l

skills/poteto-mode/scripts/bootstrap.ts

  • Executable scriptline 1
    Executable file

skills/poteto-mode/scripts/check-plan.mjs

  • Executable scriptline 1
    #!/usr/bin/env node

skills/poteto-mode/scripts/check-plan.test.ts

  • Executable scriptline 1
    Executable file

skills/poteto-mode/scripts/package.json

  • Executable scriptline 1
    Executable file

skills/poteto-mode/scripts/watch-pr/cli.test.ts

  • Executable scriptline 1
    Executable file
  • Network accessline 149
    expect(rendered).toContain("| PR | CI | Review | Merge |");     expect(rendered).toContain(       "| [#1](https://github.com/owner/repo/pull/1) | \u2014 | \u2014 | ✅ merged |"
  • Network accessline 150
    expect(rendered).toContain(       "| [#1](https://github.com/owner/repo/pull/1) | \u2014 | \u2014 | ✅ merged |"     );
  • Network accessline 151
    "| [#1](https://github.com/owner/repo/pull/1) | \u2014 | \u2014 | ✅ merged |"

skills/poteto-mode/scripts/watch-pr/cli.ts

  • Executable scriptline 1
    Executable file

skills/poteto-mode/scripts/watch-pr/fakes.test-helper.ts

  • Executable scriptline 1
    Executable file

skills/poteto-mode/scripts/watch-pr/github.test.ts

  • Executable scriptline 1
    Executable file

skills/poteto-mode/scripts/watch-pr/github.ts

  • Executable scriptline 1
    Executable file
  • Network accessline 165
    let normalized = value.trim();   if (normalized.startsWith("git@github.com:"))     normalized = `https://github.com/${normalized.slice(15)}`;
  • Network accessline 166
    if (normalized.startsWith("git@github.com:"))     normalized = `https://github.com/${normalized.slice(15)}`;   if (normalized.startsWith("ssh://git@github.com/"))
  • Network accessline 167
    normalized = `https://github.com/${normalized.slice(15)}`;
  • Network accessline 168
    if (normalized.startsWith("ssh://git@github.com/"))     normalized = `https://github.com/${normalized.slice(21)}`;   try {
  • Network accessline 169
    normalized = `https://github.com/${normalized.slice(21)}`;

skills/poteto-mode/scripts/watch-pr/policy.test.ts

  • Executable scriptline 1
    Executable file

skills/poteto-mode/scripts/watch-pr/policy.ts

  • Executable scriptline 1
    Executable file

skills/poteto-mode/scripts/watch-pr/render.ts

  • Executable scriptline 1
    Executable file
  • Network accessline 46
    const lines = ["| PR | CI | Review | Merge |", "| --- | --- | --- | --- |"];   for (const row of rows) {     const url = `https://github.com/${row.context.owner}/${row.context.repo}/pull/${row.context.number}`;
  • Network accessline 47
    for (const row of rows) {     const url = `https://github.com/${row.context.owner}/${row.context.repo}/pull/${row.context.number}`;     lines.push(
  • Network accessline 48
    const url = `https://github.com/${row.context.owner}/${row.context.repo}/pull/${row.context.number}`;

skills/poteto-mode/scripts/watch-pr/types.compile.ts

  • Executable scriptline 1
    Executable file

skills/poteto-mode/scripts/watch-pr/types.ts

  • Executable scriptline 1
    Executable file

skills/poteto-mode/scripts/watch-pr/watch-pr

  • Executable scriptline 1
    #!/usr/bin/env bun

skills/poteto-mode/scripts/worktree-audit.sh

  • Executable scriptline 1
    #!/usr/bin/env bash
  • Dangerous shell operationline 144
    rm -f "$prs"

skills/show-me-your-work/scripts/log.sh

  • Executable scriptline 1
    #!/usr/bin/env bash

skills/statechart/references/render.md

  • Network accessline 3
    Render each `.mmd` file that you show with the npm package `pele@1.9.0`, and give the user the SVG. Install Pele once, outside the repo. Write each SVG next to its `.mmd` file, with the same name. The API is at https://pele.run/api. Pass `{
  • Network accessline 7
    Pele ignores Mermaid `theme` and `themeVariables`. Set its `--pele-*` CSS variables on `.pele`. https://pele.run/theming lists them. The command gives each state the color class of its group, such as `class sN teal`. It marks each bad state

skills/statechart/scripts/backends/cfg.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/backends/mermaid.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/backends/plain-text.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/backends/report.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/frontends/config.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/frontends/dot.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/frontends/marks.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/frontends/messages.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/frontends/spec.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/frontends/trace.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/frontends/value.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/frontends/verdict.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/frontends/view.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/ir.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/package.json

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/passes/annotate.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/passes/label.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/passes/lift.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/passes/loop-check.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/passes/paths.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/passes/reach.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/passes/region-check.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/passes/regions.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/pipeline.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/run.ts

  • Executable scriptline 1
    Executable file
  • Network accessline 67
    const TLC_TOOL =   "http:tla2tools[url=https://github.com/tlaplus/tlaplus/releases/download/v1.7.4/tla2tools.jar,checksum=sha256:936a262061c914694dfd669a543be24573c45d5aa0ff20a8b96b23d01e050e88]@1.7.4";
  • Network accessline 68
    "http:tla2tools[url=https://github.com/tlaplus/tlaplus/releases/download/v1.7.4/tla2tools.jar,checksum=sha256:936a262061c914694dfd669a543be24573c45d5aa0ff20a8b96b23d01e050e88]@1.7.4";

skills/statechart/scripts/statechart

  • Executable scriptline 1
    #!/bin/sh

skills/statechart/scripts/statechart.ts

  • Executable scriptline 1
    #!/usr/bin/env node
  • Dangerous shell operationline 120
    'while read -r line; do :; done; kill -s KILL -- "-$1"; rm -rf -- "$2" "$3"',

skills/statechart/scripts/test/chart.test.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/cli.test.ts

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 1292
    'CONSTANT RM = {"INVARIANT (*", "\\\\* r2"}\nSPECIFICATION TPSpec\nINVARIANT TPTypeOK TCConsistent\n',
  • Dangerous shell operationline 1298
    assert.match(r.configs.ChartRun, /^CONSTANT RM = .*"INVARIANT \(\*".*"\\\\\* r2"/m);

skills/statechart/scripts/test/config-fuzz.test.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/corpus.test.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/corpus/CounterView/view.mjs

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/corpus/Login/view.mjs

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/corpus/LoginGuarded/view.mjs

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/corpus/LoginParallel/view.mjs

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/corpus/MediaPlayer/verdict-2.out

  • Network accessline 30
    @!@!@ENDMSG 2185 @!@!@ @!@!@STARTMSG 2284:3 @!@!@ Declaring state or action constraints during liveness checking is dangerous: Please read section 14.3.5 on page 247 of Specifying Systems (https://lamport.azurewebsites.net/tla/book.html) an
  • Network accessline 31
    @!@!@STARTMSG 2284:3 @!@!@ Declaring state or action constraints during liveness checking is dangerous: Please read section 14.3.5 on page 247 of Specifying Systems (https://lamport.azurewebsites.net/tla/book.html) and optionally the discus
  • Network accessline 32
    Declaring state or action constraints during liveness checking is dangerous: Please read section 14.3.5 on page 247 of Specifying Systems (https://lamport.azurewebsites.net/tla/book.html) and optionally the discussion at https://discuss.tla

skills/statechart/scripts/test/corpus/MediaPlayer/view.mjs

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/corpus/MediaPlayerFixed/view.mjs

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/corpus/MediaPlayerProps/view.mjs

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/corpus/TwoPhase/TwoPhase.cfg

  • Dangerous shell operationline 1
    CONSTANT RM = {r1, r2}

skills/statechart/scripts/test/corpus/TwoPhase/TwoPhase.tla

  • Dangerous shell operationline 9
    Messages == [type : {"Prepared"}, rm : RM] \cup [type : {"Commit", "Abort"}]
  • Dangerous shell operationline 12
    /\ rmState \in [RM -> {"working", "prepared", "committed", "aborted"}]
  • Dangerous shell operationline 65
    \/ \E r \in RM :
  • Dangerous shell operationline 73
    \A r1, r2 \in RM : ~ /\ rmState[r1] = "aborted"

skills/statechart/scripts/test/corpus/TwoPhase/view.mjs

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/corpus/TwoPhaseFixed/TwoPhaseFixed.cfg

  • Dangerous shell operationline 1
    CONSTANT RM = {r1, r2}

skills/statechart/scripts/test/corpus/TwoPhaseFixed/TwoPhaseFixed.tla

  • Dangerous shell operationline 9
    Messages == [type : {"Prepared"}, rm : RM] \cup [type : {"Commit", "Abort"}]
  • Dangerous shell operationline 12
    /\ rmState \in [RM -> {"working", "prepared", "committed", "aborted"}]
  • Dangerous shell operationline 65
    \/ \E r \in RM :
  • Dangerous shell operationline 73
    \A r1, r2 \in RM : ~ /\ rmState[r1] = "aborted"

skills/statechart/scripts/test/corpus/TwoPhaseFixed/view.mjs

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/differential.test.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/java.ts

  • Executable scriptline 1
    #!/usr/bin/env node

skills/statechart/scripts/test/labels.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/messages.test.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/pipeline.test.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/plain-tlc.test.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/render.test.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/tlc-out.test.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/test/tlc.ts

  • Executable scriptline 1
    Executable file

skills/statechart/scripts/worker.ts

  • Executable scriptline 1
    Executable file

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Combined signals: 1 fact
Signal confidence: 134 facts

and 84 more

Works with

  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

Add this badge to your README

It updates every night and links to this page.

backnotprop/pstack: #341 on hotskills, 3.7k stars

[![backnotprop/pstack on hotskills](https://hotskills.dev/badge/backnotprop-pstack.svg)](https://hotskills.dev/skill/backnotprop-pstack/)