Finishing a Development Branch
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
ALWAYS invoke this skill when the user asks what to do next, what is left, or what is blocked - "what's next", "what now", "what should we work on", "anything I can do" - in any language.
$ npx skills add kharmanskyi/open-steps --skill os-whats-next -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install kharmanskyi/open-steps os-whats-next --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/kharmanskyi/open-steps.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/os-whats-next .claude/skills/os-whats-next && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "os-whats-next" agent skill from https://github.com/kharmanskyi/open-steps/tree/main/skills/os-whats-next into .claude/skills/os-whats-next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "os-whats-next", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/kharmanskyi/open-steps/tree/main/skills/os-whats-nextType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add kharmanskyi/open-steps --skill os-whats-next -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install kharmanskyi/open-steps os-whats-next --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kharmanskyi/open-steps.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/os-whats-next .agents/skills/os-whats-next && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "os-whats-next" agent skill from https://github.com/kharmanskyi/open-steps/tree/main/skills/os-whats-next into .agents/skills/os-whats-next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "os-whats-next", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add kharmanskyi/open-steps --skill os-whats-next -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install kharmanskyi/open-steps os-whats-next --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kharmanskyi/open-steps.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/os-whats-next .cursor/skills/os-whats-next && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "os-whats-next" agent skill from https://github.com/kharmanskyi/open-steps/tree/main/skills/os-whats-next into .cursor/skills/os-whats-next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "os-whats-next", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/kharmanskyi/open-steps.git --path skills/os-whats-next--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add kharmanskyi/open-steps --skill os-whats-next -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install kharmanskyi/open-steps os-whats-next --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kharmanskyi/open-steps.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/os-whats-next .gemini/skills/os-whats-next && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "os-whats-next" agent skill from https://github.com/kharmanskyi/open-steps/tree/main/skills/os-whats-next into .gemini/skills/os-whats-next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "os-whats-next", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install kharmanskyi/open-steps os-whats-nextInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add kharmanskyi/open-steps --skill os-whats-next -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/kharmanskyi/open-steps.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/os-whats-next .github/skills/os-whats-next && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "os-whats-next" agent skill from https://github.com/kharmanskyi/open-steps/tree/main/skills/os-whats-next into .github/skills/os-whats-next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "os-whats-next", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add kharmanskyi/open-steps --skill os-whats-next -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install kharmanskyi/open-steps os-whats-next --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kharmanskyi/open-steps.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/os-whats-next .opencode/skills/os-whats-next && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "os-whats-next" agent skill from https://github.com/kharmanskyi/open-steps/tree/main/skills/os-whats-next into .opencode/skills/os-whats-next/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "os-whats-next", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
os-whats-nextALWAYS invoke this skill when the user asks what to do next, what is left, or what is blocked - "what's next", "what now", "what should we work on", "anything I can do" - in any language.
Os Whats Next is an agent skill from kharmanskyi/open-steps. ALWAYS invoke this skill when the user asks what to do next, what is left, or what is blocked - "what's next", "what now", "what should we work on", "anything I can do" - in any language. This skill picks the next piece of work; when the user asks HOW to do a thing or says they do not understand what to do, that is os-step-by-step. Reads the last report, local changes, open pull requests and always the backlog. First finishes what is finished: verified-ready pull requests merge in the same pass. Then sorts the…
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/01-end-of-day.md`).
It sits in Development, covering Pull requests. The repository describes itself as: Plain-language agent skills for Claude Code, Codex, Cursor and Gemini CLI: honest session reports, straight verdicts, steps you can follow. MIT. The licence is MIT.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 4fa744b. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
Read(~/.claude/open-steps/**)Bash(gh pr list *)Bash(gh pr view *)Bash(gh pr checks *)Bash(gh pr checks)Bash(gh pr diff *)Bash(gh pr diff)Bash(gh pr merge *)From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
ghbashFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Os Whats Next loads about 1.9k tokens when it runs, and up to ~2.5k if it reads all its reference files. Until then it costs about 168 tokens; SKILL.md has 1,034 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from kharmanskyi/open-steps at commit 4fa744b, republished under its MIT licence (© kharmanskyi). 1,034 words, ~1,901 tokens.
.claude/skills/os-whats-next/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Answer "what do we do now" with the next move, not a map. The user does not
need the dependency graph - they need what got finished, what to take next,
and why, in plain words. This skill decides; os-step-by-step walks the user
through their part; os-done-or-not reports what came of it.
Write in the language the user speaks in this session, detected from the conversation. Commands, file names and identifiers stay English.
Triggers: the description above, plus a session just ended wanting a next move.
Stop as soon as you can answer.
The last report - ~/.claude/open-steps/reports/<project>/latest.md:
a handover written for exactly this moment.
Local state - uncommitted changes, unpushed commits, current branch.
Open pull requests - one call:
gh pr list --json number,title,mergeStateStatus,reviewDecision,isDraft.
The backlog - always. The issue tracker when one is already connected
(never authenticate or install one), otherwise task files in the repo:
BIG-PICTURE.md, PLAN.md, TODO.md, docs/plan*. Next work comes from
the backlog, not from imagination. No backlog anywhere → say so.
Where os-big-picture keeps that file, only the "What is next" section
is the backlog. The feature table above it is an inventory, and a row
that has not changed in months is a finished feature, not a task. Reading
work out of it is inventing work, which rule 4 below forbids. A row under
"Worth retiring" is a real candidate, but it is a decision to put to the
user, never a task to start.
That file carries its own age: a measured date at the top and a date beside
every stage. Never take a number out of it. Take only the "What is next"
list, the "Worth retiring" rows, and each Stage with the date beside it.
Before you put a "Worth retiring" row to the user, measure it again. From the project root, run
bash <this skill's folder>/../os-big-picture/scripts/census.sh .. The .
is the project, not the skill folder. If the script is missing or does not
run, say so and call that row "not checked". When the stage dates are
months behind the newest commit, say how old they are. Dates that stopped
moving mean the reports stopped, not that the work did.
Say which sources you did not read: an unread source is not an empty source.
A pull request with green checks and an approval is not a decision - it is
unfinished business. Verify it through os-check-work's accept rules and
merge it in this same pass. Two things stop the merge: a failed claim, and a
task instruction that merges happen on command only - an orchestrator may own
the merge. Report it as done, never as a question.
| List | Belongs there when |
|---|---|
| I can do this alone | everything needed is at hand: no decision, no secret, no approval, no device |
| Needs you | a decision, an approval, a secret, a purchase, or a device only the user has |
Blocked work gets no section of its own. Fold it into the reasoning, in plain words - "X waits on an outside check; I watch it" - the user trusts the recommendation, not the graph.
<Lead: one sentence on where things stand - including what this pass merged.>
**I can do alone:** <up to three items, five words of why each>
**Needs you:** <up to three items, one line each - or drop the list>
**Next I take: <the one task> - <plain words: what it closes or unblocks>.**
<One line: what was not checked.>When a quick small win and a big item are both real candidates, offer the choice through your tool's question picker where it has one (in Claude Code, AskUserQuestion). Give two to four options, the recommended one first and marked. Where there is no picker, write the same question and options as plain text, the recommended one first and marked. On the pick, prepare the launch: a prompt complete enough to paste or a command complete enough to run, and one line saying what comes out. Never run it yourself.
Before offering to start several, prove they will not collide - all three:
| Check | They collide when |
|---|---|
| Same files | both touch the same files, module, or migration sequence |
| Same shared resource | one working copy, branch, database, container project, port |
| One feeds the other | the second needs the first one's output |
Any check failing → one at a time, saying which failed. All passing → say so. Never claim parallel safety you did not verify - "I did not check" is honest; a collision discovered mid-run is not. Where the project isolates parallel work - a working copy per task, separate container projects or ports - name that as the precondition instead of assuming it.
os-step-by-step, never explained inline.© kharmanskyi, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in skills/os-whats-next of kharmanskyi/open-steps.
Open the folder on GitHubat commit 4fa744b
Os Whats Next next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Os Whats Next this skillkharmanskyi/open-steps | 1.3k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Finishing a Development Branchobra/superpowers | 297k | 5 repos | ~1.9k | Automated safety check: Pass | MIT | |
| PR Babysitteropeninterpreter/openinterpreter | 69k | 3 repos | ~4.2k | Automated safety check: Pass | Apache-2.0 | |
| Check PRonyx-dot-app/onyx | 32k | 2 repos | ~2.3k | Automated safety check: Pass | MIT | |
| PR Design DocOpenHands/OpenHands | 91k | — | ~2.4k | Automated safety check: Pass | MIT | |
| WooCommerce Code Reviewwoocommerce/woocommerce | 11k | 3 repos | ~1.1k | Automated safety check: Pass | Custom licence |
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
openinterpreter/openinterpreter
Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.
onyx-dot-app/onyx
Checks a GitHub, GitLab, or Perforce (p4) pull request (or merge request, or shelved changelist) for unresolved review comments, failing status checks, and incomplete PR descriptions.
OpenHands/OpenHands
For a non-trivial pull request, write a self-contained HTML design doc under the temporary .pr/ directory and link a visibility-appropriate preview in the PR description, so maintainers grasp the…
woocommerce/woocommerce
Reviews WooCommerce code changes against the project's standards, flagging backend PHP architecture, naming, documentation, data integrity and testing violations.
payloadcms/payload
A skill your agent uses when a Payload pull request needs a concise visual walkthrough for reviewers.
kharmanskyi/open-steps
ALWAYS invoke this skill when the user asks where the project as a whole stands - "where are we", "what's the big picture", "what have we built", "what is in this project", "map the project", "what…
kharmanskyi/open-steps
ALWAYS invoke this skill before asking the user any technical question or offering options, and whenever they ask to be asked in plain words - "ask simple", "ask me simply", "ask me in plain words"…
kharmanskyi/open-steps
ALWAYS invoke this skill when the user asks about work done outside this session - "check work", "check the others", "check other sessions" - or to accept one: "the session is done, check it", "can…
kharmanskyi/open-steps
ALWAYS invoke this skill when work wraps up or the user asks how it went - "done or not", "are we done", "what happened", "report", "what's the status of this ticket" - in any language, and when a…
kharmanskyi/open-steps
ALWAYS invoke this skill when the user asks for simpler or shorter about something said or written - "say it simply", "what does this mean", "I don't understand your answer", "too long", "wait…
kharmanskyi/open-steps
ALWAYS invoke this skill when you need the user to act - run a command, paste a secret, click, approve - and whenever they ask how to do something or say they do not know what to do: "step by step"…
Categories
ALWAYS invoke this skill when the user asks what to do next, what is left, or what is blocked - "what's next", "what now", "what should we work on", "anything I can do" - in any language. Os Whats Next is an agent skill from kharmanskyi/open-steps. ALWAYS invoke this skill when the user asks what to do next, what is left, or what is blocked - "what's next", "what now", "what should we work on", "anything I can do" - in any language.
Os Whats Next fits situations like: asks what to do next; what is blocked - whats next; what should we work on; anything I can do - in any language.
Run `npx skills add kharmanskyi/open-steps --skill os-whats-next -a claude-code`. Or copy the skill folder (skills/os-whats-next in kharmanskyi/open-steps) into .claude/skills/os-whats-next in your project. Claude Code loads it when a task matches its description.
Run `npx skills add kharmanskyi/open-steps --skill os-whats-next -a codex`. Or copy the skill folder (skills/os-whats-next in kharmanskyi/open-steps) into .agents/skills/os-whats-next in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add kharmanskyi/open-steps --skill os-whats-next -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/os-whats-next, .gemini/skills/os-whats-next, .github/skills/os-whats-next and .opencode/skills/os-whats-next in your project.
Going by SKILL.md and its folder, Os Whats Next needs the command-line tools its instructions call (gh and bash). Its frontmatter pre-approves these tools: Read(~/.claude/open-steps/**), Bash(gh pr list *), Bash(gh pr view *), Bash(gh pr checks *), Bash(gh pr checks), Bash(gh pr diff *), Bash(gh pr diff), Bash(gh pr merge *).
SKILL.md contains no URLs. Its commands use gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Os Whats Next is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 638 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Os Whats Next: Finishing a Development Branch (obra/superpowers, 297k stars), PR Babysitter (openinterpreter/openinterpreter, 69k stars), Check PR (onyx-dot-app/onyx, 32k stars) and PR Design Doc (OpenHands/OpenHands, 91k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
kharmanskyi (a GitHub user) maintains it in kharmanskyi/open-steps, which has 1,279 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 5, 2026.
Source: kharmanskyi/open-steps on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.