跳到正文
cccskills
免费在 GitHub 公开

ship

Commit, push, and optionally create or update a PR for the current staged changes. Use when the user asks to "ship", "ship it", "ship changes", "commit push and PR", or "ship this".

中文简介正在准备中。当前显示原文说明。

集成工具GitHub
查看安装方法

包含的文件(1)

  • SKILL.md4.9 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Ship

Commit, push, and optionally create or update a PR for the current staged changes.

Task Tracking

At the start, use TaskCreate to create a task for each phase:

  1. Determine intent
  2. Branch (if needed)
  3. Stage unstaged changes
  4. Run /commit-rules skill
  5. Commit
  6. Update PR (if requested)
  7. Push (if requested)
  8. Create PR (if requested)
  9. Link changelog entries to the PR (if needed)

Step 1: Determine Intent

Detect the repository state:

  • Default branch: gh repo view --json defaultBranchRef --jq '.defaultBranchRef.name'
  • Current branch name, and whether it tracks an upstream
  • Whether a PR already exists for the current branch (gh pr view)

Sample the prevailing workflow from recent default-branch history (git log --first-parent origin/<default-branch> -n 30 --pretty=%s): judge whether changes mostly land through pull requests (merge-PR commits or (#N)-suffixed squash commits) or are committed directly to the default branch.

Output a one-line summary of the detected state as text. Then use AskUserQuestion to choose how to proceed, offering these options:

  • Commit, push, and create/update the PR — say "create a PR" when no PR exists for the current branch and "update the PR" when one does; on the default branch, Step 2 creates a feature branch first
  • Commit and push — commit, then push to the current branch's remote
  • Commit only — commit the staged changes, do not push

Recommend the option that fits this repo by listing it first and labeling it (Recommended): when the current branch already has a PR, recommend updating it; otherwise follow the prevailing workflow — recommend the PR path for a PR-based history, or commit and push for a direct-commit history.

If the user declines (chooses the free-form "Other" option or asks to abort), leave the changes staged and do not commit.

Step 2: Branch (if Needed)

If the chosen option creates a PR and the current branch is the default branch:

  1. Suggest a branch name based on the changes and use AskUserQuestion to confirm or adjust
  2. Create and switch to the new branch: git checkout -b <branch-name>

Step 3: Check for Unstaged Changes

Run git status to check for unstaged changes. Stage by path the files that belong to the current changeset; this catches files modified by auto-formatters that were not re-staged. When one also carries unrelated changes, write git diff <file> to a patch file, back the unrelated changes out of it (delete their + lines and turn their - lines into context lines), and stage it with git apply --cached --recount <patch>.

Step 4: Run /commit-rules Skill

Run the /commit-rules skill to load commit message rules and technical constraints.

Step 5: Commit

Commit the already-staged changes (do not stage additional files) with a message following the loaded rules. Keep the branch Step 2 left in place and commit on it, including when that is the default branch.

If the commit fails due to a pre-commit hook (formatter, linter), fix the issues — or run the project's format/lint script to auto-fix — then re-stage by path the files the hook modified before retrying. Pre-commit hooks may modify files in the working tree without updating the staging area.

Step 6: Update PR (if Requested)

If the chosen option updates the PR, run the /update-pr skill.

Step 7: Push (if Requested)

If the chosen option includes pushing, push to the current branch's remote:

git push

Step 8: Create PR (if Requested)

If the chosen option creates a PR, run the /create-pr skill.

When /create-pr hands the body file over for editing instead of posting, report that path and that no PR was opened yet, and leave Step 9 pending until the PR is posted or cancelled.

Step 9: Link Changelog Entries to the PR (if Needed)

When Step 8 opened a PR, including one posted after the user edited its body, and this branch added Unreleased changelog entries that carry no PR reference while the changelog's earlier entries carry one, run the /changelog-rules skill and add to each of those entries the references it calls for with the new PR. Stage the changelog by path and commit it with a message following the commit rules Step 4 loaded, handling a pre-commit hook as Step 5 does, then push to the current branch's remote.

Then use the TaskList tool and proceed to any remaining task.

Rules

  • Run the /commit-rules skill before every commit; do not commit without loading it first.
  • Never stage or commit files containing secrets (.env, credentials, API keys). Warn if detected.
  • Don't reference .turbo/ content (filenames, acceptance criteria, step numbers, headings) in branch names. .turbo/ is gitignored, so these references would be opaque to anyone reading without local copies.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Apply findings by making the suggested code changes. Applies accepted verdicts, escalates ambiguous findings to the user, and offers to note genuine improvements for later. Use when the user asks to "apply findings", "apply fixes", "apply suggestions", "apply accepted findings", "fix the findings", or "apply the review results".

中文简介正在准备中。当前显示原文说明。

tobihagemann/turbo4152026年10月22日 更新

Audit the turbo skill lessons that /self-improve writes into this repo's .turbo/handoff/ from other projects, apply the ones the user approves, delete the consumed handoffs, commit and push, and update the installed Turbo skills. Use when the user asks to "read .turbo/handoff and let me know what you think", "read the handoff files and let me know what you think", "review the lesson handoffs", "apply the self-improve handoffs", or "process the turbo handoffs".

中文简介正在准备中。当前显示原文说明。

tobihagemann/turbo4152026年10月22日 更新

Assess project-wide structural technical debt: complexity hotspots, deprecated API usage, duplication clusters, architecture rot, and low-value tests. Ranks findings by impact and refactor effort into a report at .turbo/technical-debt.md. Use when the user asks to "assess technical debt", "find technical debt", "review technical debt", "what should we refactor", "find refactoring candidates", "where is the code rot", "what's our worst code", "find low-value tests", or "which tests can we delete". Analysis-only — does not modify code.

中文简介正在准备中。当前显示原文说明。

tobihagemann/turbo4152026年10月22日 更新

Shared changelog conventions and formatting rules referenced by /create-changelog and /update-changelog. Not typically invoked directly.

中文简介正在准备中。当前显示原文说明。

tobihagemann/turbo4152026年10月22日 更新

Shared changelog conventions and formatting rules referenced by $create-changelog and $update-changelog. Not typically invoked directly.

中文简介正在准备中。当前显示原文说明。

tobihagemann/turbo4152026年10月22日 更新

Run a non-interactive Claude Code print-mode call from Codex. Use when the user asks to "claude print", "ask claude", "run claude", "consult claude", or when a Codex Turbo skill needs Claude as an independent peer reviewer.

中文简介正在准备中。当前显示原文说明。

tobihagemann/turbo4152026年10月22日 更新

查看 tobihagemann 的全部技能

报告此技能的问题