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.
Drive a live Rudu diff-review app session from the CLI. An agent skill from tanvesh01/rudu.
$ npx skills add tanvesh01/rudu --skill rudu -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install tanvesh01/rudu rudu --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/tanvesh01/rudu.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/rudu .claude/skills/rudu && 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 "rudu" agent skill from https://github.com/tanvesh01/rudu/tree/main/skills/rudu into .claude/skills/rudu/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rudu", 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/tanvesh01/rudu/tree/main/skills/ruduType 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 tanvesh01/rudu --skill rudu -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install tanvesh01/rudu rudu --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/tanvesh01/rudu.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/rudu .agents/skills/rudu && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "rudu" agent skill from https://github.com/tanvesh01/rudu/tree/main/skills/rudu into .agents/skills/rudu/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rudu", 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 tanvesh01/rudu --skill rudu -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install tanvesh01/rudu rudu --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/tanvesh01/rudu.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/rudu .cursor/skills/rudu && 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 "rudu" agent skill from https://github.com/tanvesh01/rudu/tree/main/skills/rudu into .cursor/skills/rudu/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rudu", 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/tanvesh01/rudu.git --path skills/rudu--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 tanvesh01/rudu --skill rudu -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install tanvesh01/rudu rudu --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/tanvesh01/rudu.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/rudu .gemini/skills/rudu && 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 "rudu" agent skill from https://github.com/tanvesh01/rudu/tree/main/skills/rudu into .gemini/skills/rudu/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rudu", 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 tanvesh01/rudu ruduInstalls 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 tanvesh01/rudu --skill rudu -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/tanvesh01/rudu.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/rudu .github/skills/rudu && 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 "rudu" agent skill from https://github.com/tanvesh01/rudu/tree/main/skills/rudu into .github/skills/rudu/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rudu", 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 tanvesh01/rudu --skill rudu -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install tanvesh01/rudu rudu --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/tanvesh01/rudu.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/rudu .opencode/skills/rudu && 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 "rudu" agent skill from https://github.com/tanvesh01/rudu/tree/main/skills/rudu into .opencode/skills/rudu/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rudu", 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.
ruduDrive a live Rudu diff-review app session from the CLI. An agent skill from tanvesh01/rudu.
Rudu is an agent skill from tanvesh01/rudu. Drive a live Rudu diff-review app session from the CLI. Open working-tree, commit, branch, patch, file, or pull-request diffs; inspect changes; steer the user's view; and manage local review notes and PR drafts.
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development, covering Pull requests. The repository describes itself as: Review PRs without losing your mind. The licence is MIT.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 3aa3988. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comFrom 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.
Rudu loads about 1.9k tokens when it runs. Until then it costs about 54 tokens; SKILL.md has 687 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 tanvesh01/rudu at commit 3aa3988, republished under its MIT licence (© tanvesh01). 687 words, ~1,917 tokens.
.claude/skills/rudu/SKILL.md (or your agent's skills folder).Rudu is a desktop diff-review app. The app window belongs to the user — never ask the user to click things for you. Use an open command to choose what Rudu displays, then rudu session * to inspect, navigate, and leave local notes.
rudu /path/to/repo # Working Tree Review
rudu diff main...HEAD # Selected Diff Review
rudu show HEAD # selected commit
rudu patch change.patch # patch file
rudu pr owner/repo#123 # Pull Request Review
rudu pr https://github.com/owner/repo/pull/123
rudu skill path # print this skill's installed pathOpen commands launch or focus the existing app. They return after Rudu accepts the request, not after the diff finishes rendering.
rudu session list returns persisted local checkouts, pull requests tracked in Rudu, and the current active target. With no selector, session commands use that active target. Use an explicit selector when needed:
--repo <path> working tree for that checkout
--pr <url|owner/repo#number> that tracked pull requestDo not pass both. For a Selected Diff Review, omit --repo; passing it intentionally selects the checkout's Working Tree Review.
rudu pr owner/repo#123
rudu session list
rudu session review
rudu session navigate --file src/app.ts --new-line 42
rudu session note add --author "Pi" --file src/app.ts --new-line 42 --body "Explain this edge case"
rudu session note list
rudu session note reply --author "Pi" --note NOTE_ID --body "Answer"
# Create a publishable draft only when GitHub feedback is intended:
rudu session comment draft --file src/app.ts --new-line 42 --body "Please handle this edge case"
# Only after the user explicitly asks to publish:
rudu session comment publishAll session output is JSON. Use --new-line for additions and --old-line for deletions; line numbers are 1-based.
Use Git's own revision syntax instead of inventing source flags:
rudu diff # unstaged + untracked
rudu diff --staged # staged
rudu diff HEAD # staged + unstaged + untracked
rudu show # latest commit
rudu show HEAD~1 # selected commit
rudu diff main...HEAD # merge-base/PR-style branch diff
rudu diff HEAD~3..HEAD -- src # range limited by pathspec
rudu diff before.ts after.ts # two files
rudu patch change.patch # patch file
some-command-producing-patch | rudu patch -These commands never mutate Git state. Review Notes on a Selected Diff Review are scoped to its exact source and resolved revision.
If a local review response contains relatedPullRequest, its current HEAD exactly matches a cached open PR. Keep reviewing the local target unless the user asks to switch; open the PR with rudu pr owner/repo#number when its GitHub context is needed. Absence means only that Rudu found no exact cached match.
rudu session review [--repo <path> | --pr <ref>] [--include-patch]Local responses include:
kind, checkoutId, branch, headSha, revision, files, relatedPullRequest?PR responses include:
kind, repo, number, headSha, summary, overview, checks, filesOverview or checks may have companion error fields while the diff remains usable. Add --include-patch only when raw unified diff is necessary; prefer local files when reviewing a checkout.
rudu session navigate [--repo <path> | --pr <ref>] \
--file <path> (--new-line <n> | --old-line <n>)Navigate before commenting so the user sees the code being discussed.
rudu session note add [--repo <path> | --pr <ref>] --author <name> --file <path> (--new-line <n> | --old-line <n>) --body <markdown>
rudu session note reply [--repo <path> | --pr <ref>] --author <name> --note <id> --body <markdown>
rudu session note delete [--repo <path> | --pr <ref>] --note <id> [--note <id> ...]
rudu session note delete [--repo <path> | --pr <ref>] --all
rudu session note list [--repo <path> | --pr <ref>] [--file <path>] [--type agent|user|all]
rudu session note promote [--repo <path> | --pr <ref>] --note <id>
rudu session comment draft [--repo <path> | --pr <ref>] --file <path> (--new-line <n> | --old-line <n>) --body <markdown>
rudu session comment delete [--repo <path> | --pr <ref>] --note <id> [--note <id> ...]
rudu session comment delete [--repo <path> | --pr <ref>] --all
rudu session comment list [--repo <path> | --pr <ref>] [--file <path>]
rudu session comment publish [--repo <path> | --pr <ref>]--author; pass the agent's stable display name.note promote copies a root private note into a publishable Comment Draft and preserves the note.{repo, number, headSha} and require an exact PR target.comment publish sends all root Comment Drafts as one comment-only GitHub review; local replies are not posted.comment list on a PR returns local commentDrafts and read-only githubThreads.note list output; GitHub threads are read-only.note delete --all deletes private notes for the exact selected target; list first.relatedPullRequest; invalid PR diff locations fail the whole publication and remain local.note reply, not note add, when answering a human's local note.--type user is the human-authored private-note channel; default is all private notes.review to understand the target.cleanupError.The diff view collapses unchanged regions. Notes on collapsed lines are invisible to the user — they count toward the file's comment badge but cannot be seen or interacted with.
Before adding a note or draft, use rudu session review --include-patch and check the @@ hunk headers to confirm the target line falls inside a rendered hunk. If the line you want to comment on is outside all hunks, either:
rudu <path> or rudu pr <ref>.rudu <path> first.rudu pr <ref> first.session review and use one of its file paths.© tanvesh01, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/rudu of tanvesh01/rudu.
Open the folder on GitHubat commit 3aa3988
Rudu 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 |
|---|---|---|---|---|---|---|
| Rudu this skilltanvesh01/rudu | 148 | — | ~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 | 90k | — | ~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.
tanvesh01/rudu
Clear this repo's local Rudu Tauri app state for first-run and onboarding verification.
Categories
Drive a live Rudu diff-review app session from the CLI. An agent skill from tanvesh01/rudu. Rudu is an agent skill from tanvesh01/rudu. Drive a live Rudu diff-review app session from the CLI.
Rudu fits situations like: tasks that involve Pull requests.
Run `npx skills add tanvesh01/rudu --skill rudu -a claude-code`. Or copy the skill folder (skills/rudu in tanvesh01/rudu) into .claude/skills/rudu in your project. Claude Code loads it when a task matches its description.
Run `npx skills add tanvesh01/rudu --skill rudu -a codex`. Or copy the skill folder (skills/rudu in tanvesh01/rudu) into .agents/skills/rudu 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 tanvesh01/rudu --skill rudu -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/rudu, .gemini/skills/rudu, .github/skills/rudu and .opencode/skills/rudu in your project.
SKILL.md names no scripts, command-line tools or credentials: Rudu is instructions for the agent only.
SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. 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.
Rudu 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.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Rudu: 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, 90k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
tanvesh01 (a GitHub user) maintains it in tanvesh01/rudu, which has 148 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 10, 2026.
Source: tanvesh01/rudu on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.