publish-branch
Push current branch to remote origin and generate PR title and description from branch name and commit history. Use when publishing a branch, creating a PR, pushing to remote, or preparing PR content. Triggers on publish branch, push branch, create PR, open pull request, push and PR.
Best use case
publish-branch is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Push current branch to remote origin and generate PR title and description from branch name and commit history. Use when publishing a branch, creating a PR, pushing to remote, or preparing PR content. Triggers on publish branch, push branch, create PR, open pull request, push and PR.
Teams using publish-branch should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/publish-branch/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How publish-branch Compares
| Feature / Agent | publish-branch | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Push current branch to remote origin and generate PR title and description from branch name and commit history. Use when publishing a branch, creating a PR, pushing to remote, or preparing PR content. Triggers on publish branch, push branch, create PR, open pull request, push and PR.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Publish Branch You are a **branch publishing agent** that pushes the current branch to the remote, analyzes commit history, and generates a properly formatted PR title and description ready for submission. ## When to Use - "Push this branch and create a PR" - "Publish my branch" - "Generate PR content" - When a feature branch is ready for review - After CI passes and code is ready to submit **Not for:** - Just committing changes (use conventional-commit) - Monitoring CI after push (use ci-watcher) - Reviewing existing PRs (use GitHub CLI directly) ## Context Aquarium component library: - **Language**: TypeScript (React + Ant Design + Storybook) - **Branch Naming**: `<type>/<description>-<TICKET>` (e.g., `feat/add-tooltip-MPD-59`) - **PR Size**: < 400 lines preferred - **Jira Instance**: rokt.atlassian.net ## The Process ### Step 1: Verify Clean State Check for uncommitted changes: ```bash git status ``` If there are uncommitted changes, invoke the conventional-commit agent first. ### Step 2: Push to Origin ```bash git push -u origin $(git rev-parse --abbrev-ref HEAD) ``` ### Step 3: Gather Repository Information ```bash git remote get-url origin git rev-parse --abbrev-ref HEAD ``` Parse the remote URL to extract org and repo name (handles SSH and HTTPS). ### Step 4: Analyze Changes Review commit history since branching from main: ```bash git --no-pager log main..$(git rev-parse --abbrev-ref HEAD) ``` Use `git --no-pager diff main...HEAD` for deeper analysis if needed. ### Step 5: Generate PR Title Parse the branch name following this convention: **Branch Format:** `<type>/<description>-<TICKET>` **Title Format:** `<type>: description` **Rules:** - Use conventional commit format for the title - **NO scopes in parentheses** — CI rejects `feat(scope):`, only `feat:` is valid - Generate concise description from commits and changes (not the branch name verbatim) - Keep title under 80 characters **Examples:** - `feat/add-tooltip-MPD-59` - `feat: add help icon tooltip pattern with RoktHelpCircle` - `fix/button-hover-state-MPD-100` - `fix: correct hover state color on disabled buttons` ### Step 6: Generate PR Description Use this template: ```markdown ## Summary [High-level overview of changes and context for reviewers] ## Jira Ticket [TICKET_ID](https://rokt.atlassian.net/browse/TICKET_ID) ## Test Plan [Testing approach and verification steps] - [ ] Tested locally - [ ] Unit tests pass - [ ] Integration tests pass (if applicable) ``` ### Step 7: Create PR ```bash gh pr create --title "<title>" --body "$(cat <<'EOF' <description> EOF )" ``` ## Constraints - **DO** generate PR title from branch name AND commit content (not branch name alone) - **DO** include Jira ticket link in the PR description - **DO** ask if the user tested locally before marking the checkbox - **DO** keep title under 80 characters - **DO NOT** push to main/master directly - **DO NOT** include test-only changes in the PR title/summary - **DO NOT** create the PR without showing the user the title and description first ## Output Format 1. **Push confirmation** with branch name and remote 2. **PR title** in a code block 3. **PR description** in a markdown code block 4. **PR link** after creation (or pre-filled compare URL if manual creation preferred)
Related Skills
skill-tour
Interactive guided tour of all available AI coding skills with live demos. Walks through headline capabilities, offers try-it-now demos, discovers repo-specific tools, and provides a cheat sheet reference. Triggers on what can you do, show skills, skill tour, available tools, capabilities, what skills.
pr
Create a pull request from the current branch. Triggers on create PR/open PR/make PR/submit PR/push PR/raise PR/open a pull request/create a pull request/ready to merge/branch is ready when the user wants to turn their current branch into a GitHub pull request with a well-structured description
pr-review-handler
Monitor PR review comments and automatically classify and address reviewer feedback including code changes, questions, and nits. Use when handling PR reviews, addressing reviewer comments, responding to code review feedback, or automating review resolution. Triggers on handle reviews, PR review, address feedback, reviewer comments, code review, review response.
jira-ticket-start
Start work on a Jira ticket by fetching ticket details, creating a properly named feature branch, and beginning codebase investigation. Use when starting a new ticket, beginning work on a Jira issue, or picking up a task from the backlog. Triggers on start ticket, begin work, pick up ticket, start jira, new ticket work, PROJ-123.
jira-cli
Jira ticket operations via Atlassian MCP including view, search (natural language to JQL), create, update, comment, and transition with auto-detection of ticket IDs from git branches. Triggers on jira, ticket, create ticket, update ticket, jira search, JQL, ticket status, move ticket, add comment, link ticket.
implement-ticket
End-to-end Jira ticket implementation — fetches ticket, creates branch, implements changes, builds, commits, pushes, and creates a PR. Designed for non-engineers to ship design system changes by just providing a ticket ID. Triggers on implement ticket, ship ticket, do ticket, build ticket, implement MPD.
getting-started
Analyze the current repo structure, build system, test setup, and conventions to provide a practical onboarding guide. Use when new to a codebase, joining a project, or wanting to understand how a repo is organized. Triggers on getting started, new to repo, onboard, how does this repo work, repo structure, codebase overview.
dry-code-reviewer
Detects deeply nested loops with duplicated inline logic and recommends extracting into small, named functions. Enforces DRY principles, single-responsibility helpers, and flat iteration patterns. Triggers on nested loop, duplicated logic, extract function, DRY, refactor loop, code review, deeply nested, inline logic, readability.
conventional-commit
Analyze staged git changes and generate a conventional commit message with proper type, scope, and description. Use when committing code changes, creating commits, writing commit messages, or staging files for commit. Triggers on commit, commit changes, stage and commit, conventional commit, commit message.
commit-push-watch
Composite workflow that stages all changes, creates a conventional commit, pushes to origin, and monitors CI until green or failure. Use when you want to commit and push in one step with CI monitoring. Triggers on commit and push, push and watch, commit push watch, ship it, push and monitor CI.
ci-watcher
Monitor CI/CD checks until green or failure with auto-diagnosis, failure classification (related vs flaky vs external), self-healing fix attempts, and smart retriggers for flaky E2E tests. Use for CI monitoring, pipeline failed, build broken, flaky test, CI red, check status, watch pipeline, Buildkite, GitHub Actions, re-trigger CI.
add-rokt-icons
Add Rokt/Untitled UI icons to the Aquarium library. Accepts a Figma URL, icon names, or a screenshot — figures out what's needed, registers icons, verifies build, and optionally creates a PR. Designed for designers. Triggers on add rokt icon, rokt icon, untitled ui icon, register rokt, add icons from figma.