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.
Run a worktree's dev server on its own port and show the page to the user in their Shipyard app — start the app on $BERTHPORT, check it answers, and open it as a browser tab next to your terminal…
$ npx skills add sean-brydon/berthd --skill berth-preview -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install sean-brydon/berthd berth-preview --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/sean-brydon/berthd.git skills-src && mkdir -p .claude/skills && cp -r skills-src/internal/integrations/skills/berth-preview .claude/skills/berth-preview && 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 "berth-preview" agent skill from https://github.com/sean-brydon/berthd/tree/main/internal/integrations/skills/berth-preview into .claude/skills/berth-preview/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "berth-preview", 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/sean-brydon/berthd/tree/main/internal/integrations/skills/berth-previewType 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 sean-brydon/berthd --skill berth-preview -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install sean-brydon/berthd berth-preview --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sean-brydon/berthd.git skills-src && mkdir -p .agents/skills && cp -r skills-src/internal/integrations/skills/berth-preview .agents/skills/berth-preview && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "berth-preview" agent skill from https://github.com/sean-brydon/berthd/tree/main/internal/integrations/skills/berth-preview into .agents/skills/berth-preview/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "berth-preview", 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 sean-brydon/berthd --skill berth-preview -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install sean-brydon/berthd berth-preview --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sean-brydon/berthd.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/internal/integrations/skills/berth-preview .cursor/skills/berth-preview && 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 "berth-preview" agent skill from https://github.com/sean-brydon/berthd/tree/main/internal/integrations/skills/berth-preview into .cursor/skills/berth-preview/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "berth-preview", 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/sean-brydon/berthd.git --path internal/integrations/skills/berth-preview--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 sean-brydon/berthd --skill berth-preview -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install sean-brydon/berthd berth-preview --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sean-brydon/berthd.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/internal/integrations/skills/berth-preview .gemini/skills/berth-preview && 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 "berth-preview" agent skill from https://github.com/sean-brydon/berthd/tree/main/internal/integrations/skills/berth-preview into .gemini/skills/berth-preview/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "berth-preview", 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 sean-brydon/berthd berth-previewInstalls 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 sean-brydon/berthd --skill berth-preview -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/sean-brydon/berthd.git skills-src && mkdir -p .github/skills && cp -r skills-src/internal/integrations/skills/berth-preview .github/skills/berth-preview && 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 "berth-preview" agent skill from https://github.com/sean-brydon/berthd/tree/main/internal/integrations/skills/berth-preview into .github/skills/berth-preview/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "berth-preview", 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 sean-brydon/berthd --skill berth-preview -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install sean-brydon/berthd berth-preview --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sean-brydon/berthd.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/internal/integrations/skills/berth-preview .opencode/skills/berth-preview && 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 "berth-preview" agent skill from https://github.com/sean-brydon/berthd/tree/main/internal/integrations/skills/berth-preview into .opencode/skills/berth-preview/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "berth-preview", 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.
berth-previewRun a worktree's dev server on its own port and show the page to the user in their Shipyard app — start the app on $BERTHPORT, check it answers, and open it as a browser tab next to your terminal…
Berth Preview is an agent skill from sean-brydon/berthd. Run a worktree's dev server on its own port and show the page to the user in their Shipyard app — start the app on $BERTHPORT, check it answers, and open it as a browser tab next to your terminal with berthd preview. Use when you change UI or anything with a page, when the user asks to see, preview, open or check something in the browser, or when you want them to look at your work.
Its SKILL.md is about 550 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 worktrees. The repository describes itself as: Run coding agents on your dev boxes: worktrees, terminals, orchestration, kits and automations, with a desktop app. The licence is MIT.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit fc5b184. 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:
curlFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use curl, 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.
Berth Preview loads about 551 tokens when it runs. Until then it costs about 100 tokens; SKILL.md has 207 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 sean-brydon/berthd at commit fc5b184, republished under its MIT licence (© sean-brydon). 207 words, ~551 tokens.
.claude/skills/berth-preview/SKILL.md (or your agent's skills folder).Every worktree has its own ports ($BERTH_PORT, $BERTH_PORT_1, …). The
user's Shipyard app reaches whatever listens in that block at the worktree's own
address, e.g. http://fix-login.shop.devl.localhost:1377/. No forwarding or
tunnels are needed.
If the repository defines a service (see berthd service list $BERTH_LOCATION/$BERTH_WORKTREE_NAME), start it:
berthd service start "$BERTH_LOCATION/$BERTH_WORKTREE_NAME" webOtherwise start the dev server yourself in a terminal the user can see, bound to the worktree's port:
berthd session new "$BERTH_LOCATION/$BERTH_WORKTREE_NAME" -- pnpm dev --port $BERTH_PORTMost frameworks take a port flag (--port, -p) or read PORT. Listen on
127.0.0.1 or 0.0.0.0, not a fixed port like 3000, which another worktree
may already use.
curl -sf -o /dev/null -w '%{http_code}\n' http://127.0.0.1:$BERTH_PORT/
berthd services --json # the port should be listed under this worktreeIf it is not up, read the server's output (berthd session screen NAME or
berthd service log …) and fix that first.
berthd preview # this worktree's port, its home page
berthd preview $BERTH_PORT --path /account/ordersThis opens the page as a browser tab in the user's Shipyard app, in this
worktree's workspace, beside your terminal. It does nothing visible when the
app is closed, so also tell the user what to look at and where. From a laptop:
berth preview BOX/LOC/WORKTREE [PORT] [--path /x].
Do not use berthd share to show work: it makes the page public on the
internet. Only share when the user explicitly asks for a public link.
© sean-brydon, 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 internal/integrations/skills/berth-preview of sean-brydon/berthd.
Open the folder on GitHubat commit fc5b184
Berth Preview 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 |
|---|---|---|---|---|---|---|
| Berth Preview this skillsean-brydon/berthd | 286 | — | ~551 | Automated safety check: Pass | MIT | |
| Finishing a Development Branchobra/superpowers | 297k | 5 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Migrate Core Code to Submodulestinyhumansai/openhuman | 42k | — | ~2.6k | Automated safety check: Pass | GPL-3.0 | |
| Finishing A Development Branchfarm-fe/farm | 5.6k | 34 repos | ~1.8k | Automated safety check: Pass | MIT | |
| Git Worktree Cleanuplobehub/lobehub | 83k | — | ~2.8k | Automated safety check: Pass | Custom licence | |
| Keep Codex Fastvibeforge1111/keep-codex-fast | 1.6k | — | ~3.1k | Automated safety check: Pass | MIT |
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.
tinyhumansai/openhuman
Plans and carries out moving non-host-specific code and its tests from the OpenHuman core into vendored tiny submodule libraries, then releases the submodule and re-pins the host.
farm-fe/farm
A skill your agent uses when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting structured options for…
lobehub/lobehub
Audits stale Git worktrees and branches with a bundled script, classifies each one, and deletes only after you approve the exact candidates.
vibeforge1111/keep-codex-fast
A skill your agent uses when Codex feels slow or bloated, when local sessions/logs/worktrees/config have grown over time, or when a user wants safe maintenance for Codex Desktop/CLI state.
jamiepine/voicebox
Sorts a backlog of open pull requests into must-merge, candidate, superseded and deferred, writes a triage doc and works the merge loop before a release.
sean-brydon/berthd
Use berth to work across development boxes — list repos (locations) and their worktrees, make a worktree or a task (a worktree with an agent in it), start or read terminal sessions, find which port…
sean-brydon/berthd
Show the user data as a chart, table, diagram, notes or one small page in their Shipyard app instead of a wall of text — write a berth.chart JSON, a CSV, Mermaid, Markdown or a self-contained HTML…
sean-brydon/berthd
Use your worktree's own page in a headless browser on the box — open it, read a compact snapshot with @refs, click, fill, press keys, wait, take a screenshot to a file, read console errors, and set…
sean-brydon/berthd
Automate berth with hooks — run a command when something happens (an agent finishes or needs the user, a worktree is created or removed, a session starts) or gate an action with a before: hook that…
sean-brydon/berthd
Drive other coding agents through berth — prompt a running agent, wait for its turn to end, run a check in its worktree, loop until a check passes, hand work to a fresh agent in a new worktree, ask…
sean-brydon/berthd
Check what your change did to a web app's pages before you say you're done — berthd shots compare screenshots your worktree's dev server and the main checkout's at phone, tablet and desktop widths…
Categories
Run a worktree's dev server on its own port and show the page to the user in their Shipyard app — start the app on $BERTHPORT, check it answers, and open it as a browser tab next to your terminal…. Berth Preview is an agent skill from sean-brydon/berthd. Run a worktree's dev server on its own port and show the page to the user in their Shipyard app — start the app on $BERTHPORT, check it answers, and open it as a browser tab next to your terminal with berthd preview.
Berth Preview fits situations like: anything with a page; the user asks to see; check something in the browser; you want them to look at your work.
Run `npx skills add sean-brydon/berthd --skill berth-preview -a claude-code`. Or copy the skill folder (internal/integrations/skills/berth-preview in sean-brydon/berthd) into .claude/skills/berth-preview in your project. Claude Code loads it when a task matches its description.
Run `npx skills add sean-brydon/berthd --skill berth-preview -a codex`. Or copy the skill folder (internal/integrations/skills/berth-preview in sean-brydon/berthd) into .agents/skills/berth-preview 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 sean-brydon/berthd --skill berth-preview -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/berth-preview, .gemini/skills/berth-preview, .github/skills/berth-preview and .opencode/skills/berth-preview in your project.
Going by SKILL.md and its folder, Berth Preview needs the command-line tools its instructions call (curl).
SKILL.md contains no URLs. Its commands use curl, 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.
Berth Preview is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 551 tokens (SKILL.md is roughly 2.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 Berth Preview: Finishing a Development Branch (obra/superpowers, 297k stars), Migrate Core Code to Submodules (tinyhumansai/openhuman, 42k stars), Finishing A Development Branch (farm-fe/farm, 5.6k stars) and Git Worktree Cleanup (lobehub/lobehub, 83k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
sean-brydon (a GitHub user) maintains it in sean-brydon/berthd, which has 286 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 9, 2026.
Source: sean-brydon/berthd on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.