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.
A cat clone with syntax highlighting, line numbers, and Git integration - a modern replacement for cat.
$ npx skills add penpot/penpot --skill bat-cat -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install penpot/penpot bat-cat --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/penpot/penpot.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/bat-cat .claude/skills/bat-cat && 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 "bat-cat" agent skill from https://github.com/penpot/penpot/tree/develop/.agents/skills/bat-cat into .claude/skills/bat-cat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bat-cat", 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/penpot/penpot/tree/develop/.agents/skills/bat-catType 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 penpot/penpot --skill bat-cat -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install penpot/penpot bat-cat --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/penpot/penpot.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/bat-cat .agents/skills/bat-cat && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "bat-cat" agent skill from https://github.com/penpot/penpot/tree/develop/.agents/skills/bat-cat into .agents/skills/bat-cat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bat-cat", 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 penpot/penpot --skill bat-cat -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install penpot/penpot bat-cat --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/penpot/penpot.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/bat-cat .cursor/skills/bat-cat && 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 "bat-cat" agent skill from https://github.com/penpot/penpot/tree/develop/.agents/skills/bat-cat into .cursor/skills/bat-cat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bat-cat", 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/penpot/penpot.git --path .agents/skills/bat-cat--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 penpot/penpot --skill bat-cat -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install penpot/penpot bat-cat --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/penpot/penpot.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/bat-cat .gemini/skills/bat-cat && 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 "bat-cat" agent skill from https://github.com/penpot/penpot/tree/develop/.agents/skills/bat-cat into .gemini/skills/bat-cat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bat-cat", 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 penpot/penpot bat-catInstalls 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 penpot/penpot --skill bat-cat -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/penpot/penpot.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/bat-cat .github/skills/bat-cat && 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 "bat-cat" agent skill from https://github.com/penpot/penpot/tree/develop/.agents/skills/bat-cat into .github/skills/bat-cat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bat-cat", 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 penpot/penpot --skill bat-cat -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install penpot/penpot bat-cat --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/penpot/penpot.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/bat-cat .opencode/skills/bat-cat && 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 "bat-cat" agent skill from https://github.com/penpot/penpot/tree/develop/.agents/skills/bat-cat into .opencode/skills/bat-cat/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bat-cat", 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.
bat-catA cat clone with syntax highlighting, line numbers, and Git integration - a modern replacement for cat.
Bat Cat is an agent skill from penpot/penpot. A cat clone with syntax highlighting, line numbers, and Git integration - a modern replacement for cat.
Its SKILL.md is about 1.1k 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 Git workflow. It works with Git. The repository describes itself as: Penpot: The open-source design platform for Product teams that need scalable collaboration. The licence is MPL-2.0.
Read from SKILL.md and the folder at commit fc8a126. 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.
Shell commands in SKILL.md call:
rgFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
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.
Bat Cat loads about 1.1k tokens when it runs. Until then it costs about 28 tokens; SKILL.md has 202 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 penpot/penpot at commit fc8a126, republished under its MPL-2.0 licence (© penpot). 202 words, ~1,057 tokens.
.claude/skills/bat-cat/SKILL.md (or your agent's skills folder).cat with syntax highlighting, line numbers, and Git integration.
cat: syntax highlighting, line numbers, git-side indicators.# View file with syntax highlighting
bat README.md
# Multiple files
bat file1.js file2.py
# With line numbers (default)
bat script.sh
# Without line numbers
bat -p script.sh# Plain mode (like cat)
bat -p file.txt
# Show non-printable characters
bat -A file.txt
# Squeeze blank lines
bat -s file.txt
# Paging (auto for large files)
bat --paging=always file.txt
bat --paging=never file.txt# Auto-detect from extension
bat script.py
# Force specific language
bat -l javascript config.txt
# Show all languages
bat --list-languages# List available themes
bat --list-themes
# Use specific theme
bat --theme="Monokai Extended" file.py
# Set default theme in config
# ~/.config/bat/config: --theme="Dracula"# Show specific lines
bat -r 10:20 file.txt
# From line to end
bat -r 100: file.txt
# Start to specific line
bat -r :50 file.txt
# Multiple ranges
bat -r 1:10 -r 50:60 file.txt# Show Git modifications (added/removed/modified lines)
bat --diff file.txt
# Show decorations (Git + file header)
bat --decorations=always file.txt# Output raw (no styling)
bat --style=plain file.txt
# Customize style
bat --style=numbers,changes file.txt
# Available styles: auto, full, plain, changes, header, grid, numbers, snip
bat --style=header,grid,numbers file.txtQuick file preview:
bat file.jsonView logs with syntax highlighting:
bat error.logCompare files visually:
bat --diff file1.txt
bat file2.txtPreview before editing:
bat config.yaml && vim config.yamlCat replacement in pipes:
bat -p file.txt | grep "pattern"View specific function:
bat -r 45:67 script.py # If function is on lines 45-67As pager for man pages:
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
man grepWith ripgrep:
rg "pattern" -l | xargs batWith fzf:
fzf --preview 'bat --color=always --style=numbers {}'With diff:
diff -u file1 file2 | bat -l diffCreate ~/.config/bat/config for defaults:
# Set theme
--theme="Dracula"
# Show line numbers, Git modifications and file header, but no grid
--style="numbers,changes,header"
# Use italic text on terminal
--italic-text=always
# Add custom mapping
--map-syntax "*.conf:INI"-p for plain mode when piping--paging=never when output is used programmaticallybat caches parsed files for faster subsequent accessalias cat='bat -p' for drop-in cat replacementexport PAGER="bat"batcat instead of bat~/.config/bat/syntaxes/bat --paging=never or plain cat-p / --plain: Plain mode (no line numbers/decorations)-n / --number: Only show line numbers-A / --show-all: Show non-printable characters-l / --language: Set language for syntax highlighting-r / --line-range: Only show specific line range(s)GitHub: https://github.com/sharkdp/bat
Man page: man bat
Customization: https://github.com/sharkdp/bat#customization
© penpot, MPL-2.0. 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 .agents/skills/bat-cat of penpot/penpot.
Open the folder on GitHubat commit fc8a126
We found 3 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in penpot/penpot, which our catalogue first saw on October 7, 2026.
Bat Cat 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 |
|---|---|---|---|---|---|---|
| Bat Cat this skillpenpot/penpot | 61k | 2 repos | ~1.1k | Automated safety check: Pass | MPL-2.0 | |
| Finishing a Development Branchobra/superpowers | 296k | 5 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Code Design Rationale Investigatorcursor/plugins | 10k | 9 repos | ~2.6k | Automated safety check: Pass | None | |
| Contributor-First PR MergeHKUDS/OpenHarness | 16k | 1 repos | ~847 | Automated safety check: Pass | MIT | |
| Migrate Internal Package into GhostTryGhost/Ghost | 55k | — | ~3.8k | Automated safety check: Pass | MIT | |
| Create Pull Requestcline/cline | 70k | 1 repos | ~1.6k | Automated safety check: Pass | Apache-2.0 |
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.
cursor/plugins
Digs into why code is shaped the way it is by checking git history, pull requests and connected tools in parallel, then reporting a cited read on the tradeoffs.
HKUDS/OpenHarness
Merges external GitHub pull requests while keeping the original author credited, and fixes conflicts after the merge instead of rewriting the contribution.
TryGhost/Ghost
Moves a package from another TryGhost repository into Ghost as an internal workspace package while keeping its Git history, with checkpoints for the steps that need an administrator.
cline/cline
Opens a GitHub pull request from your current branch with the gh CLI, after reviewing the commits and diff and gathering the details the PR needs.
tailcallhq/forgecode
Resolves Git merge conflicts with a plan-first workflow that keeps both sides' intent, regenerates lock files and backs up deleted-but-modified files.
penpot/penpot
Hardens code against vulnerabilities. An agent skill from penpot/penpot.
penpot/penpot
PR flow — open a new PR for the current task branch (validates base branch, commits, issue and push state) or update an existing PR's title or description to match Penpot conventions.
penpot/penpot
Run local CI-style checks with ./scripts/ci (lint, tests, format) per monorepo module.
penpot/penpot
Write or rewrite text in ASD-STE100 Simplified Technical English.
penpot/penpot
Code review criteria — the five review axes, core principles, severity format, and verdict for reviewing code changes.
penpot/penpot
Stage, review, and commit files following Penpot commit conventions.
Works with
Categories
A cat clone with syntax highlighting, line numbers, and Git integration - a modern replacement for cat. Bat Cat is an agent skill from penpot/penpot. A cat clone with syntax highlighting, line numbers, and Git integration - a modern replacement for cat.
Bat Cat fits situations like: tasks that involve Git workflow.
Run `npx skills add penpot/penpot --skill bat-cat -a claude-code`. Or copy the skill folder (.agents/skills/bat-cat in penpot/penpot) into .claude/skills/bat-cat in your project. Claude Code loads it when a task matches its description.
Run `npx skills add penpot/penpot --skill bat-cat -a codex`. Or copy the skill folder (.agents/skills/bat-cat in penpot/penpot) into .agents/skills/bat-cat 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 penpot/penpot --skill bat-cat -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/bat-cat, .gemini/skills/bat-cat, .github/skills/bat-cat and .opencode/skills/bat-cat in your project.
Going by SKILL.md and its folder, Bat Cat needs the command-line tools its instructions call (rg).
SKILL.md names 1 domain. As links in the text: github.com. 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.
Bat Cat is published under the MPL-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.2k 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 Bat Cat: Finishing a Development Branch (obra/superpowers, 296k stars), Code Design Rationale Investigator (cursor/plugins, 10k stars), Contributor-First PR Merge (HKUDS/OpenHarness, 16k stars) and Migrate Internal Package into Ghost (TryGhost/Ghost, 55k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
penpot (a GitHub organization) maintains it in penpot/penpot, which has 60,770 GitHub stars. The repository holds 24 skills in this directory. The repository was last updated on October 7, 2026.
Source: penpot/penpot on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.