← 返回 Skills 市场
lovemymobilewebsite-dotcom

Finishing A Development Branch

作者 lovemymobilewebsite-dotcom · GitHub ↗ · v0.1.0 · MIT-0
cross-platform ⚠ suspicious
98
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install finishing-a-development-branch-2
功能描述
Use when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting s...
使用说明 (SKILL.md)

Finishing a Development Branch

Overview

Guide completion of development work by presenting clear options and handling chosen workflow.

Core principle: Verify tests → Present options → Execute choice → Clean up.

Announce at start: "I'm using the finishing-a-development-branch skill to complete this work."

The Process

Step 1: Verify Tests

Before presenting options, verify tests pass:

# Run project's test suite
npm test / cargo test / pytest / go test ./...

If tests fail:

Tests failing (\x3CN> failures). Must fix before completing:

[Show failures]

Cannot proceed with merge/PR until tests pass.

Stop. Don't proceed to Step 2.

If tests pass: Continue to Step 2.

Step 2: Determine Base Branch

# Try common base branches
git merge-base HEAD main 2>/dev/null || git merge-base HEAD master 2>/dev/null

Or ask: "This branch split from main - is that correct?"

Step 3: Present Options

Present exactly these 4 options:

Implementation complete. What would you like to do?

1. Merge back to \x3Cbase-branch> locally
2. Push and create a Pull Request
3. Keep the branch as-is (I'll handle it later)
4. Discard this work

Which option?

Don't add explanation - keep options concise.

Step 4: Execute Choice

Option 1: Merge Locally

# Switch to base branch
git checkout \x3Cbase-branch>

# Pull latest
git pull

# Merge feature branch
git merge \x3Cfeature-branch>

# Verify tests on merged result
\x3Ctest command>

# If tests pass
git branch -d \x3Cfeature-branch>

Then: Cleanup worktree (Step 5)

Option 2: Push and Create PR

# Push branch
git push -u origin \x3Cfeature-branch>

# Create PR
gh pr create --title "\x3Ctitle>" --body "$(cat \x3C\x3C'EOF'
## Summary
\x3C2-3 bullets of what changed>

## Test Plan
- [ ] \x3Cverification steps>
EOF
)"

Then: Cleanup worktree (Step 5)

Option 3: Keep As-Is

Report: "Keeping branch \x3Cname>. Worktree preserved at \x3Cpath>."

Don't cleanup worktree.

Option 4: Discard

Confirm first:

This will permanently delete:
- Branch \x3Cname>
- All commits: \x3Ccommit-list>
- Worktree at \x3Cpath>

Type 'discard' to confirm.

Wait for exact confirmation.

If confirmed:

git checkout \x3Cbase-branch>
git branch -D \x3Cfeature-branch>

Then: Cleanup worktree (Step 5)

Step 5: Cleanup Worktree

For Options 1, 2, 4:

Check if in worktree:

git worktree list | grep $(git branch --show-current)

If yes:

git worktree remove \x3Cworktree-path>

For Option 3: Keep worktree.

Quick Reference

Option Merge Push Keep Worktree Cleanup Branch
1. Merge locally - -
2. Create PR - -
3. Keep as-is - - -
4. Discard - - - ✓ (force)

Common Mistakes

Skipping test verification

  • Problem: Merge broken code, create failing PR
  • Fix: Always verify tests before offering options

Open-ended questions

  • Problem: "What should I do next?" → ambiguous
  • Fix: Present exactly 4 structured options

Automatic worktree cleanup

  • Problem: Remove worktree when might need it (Option 2, 3)
  • Fix: Only cleanup for Options 1 and 4

No confirmation for discard

  • Problem: Accidentally delete work
  • Fix: Require typed "discard" confirmation

Red Flags

Never:

  • Proceed with failing tests
  • Merge without verifying tests on result
  • Delete work without confirmation
  • Force-push without explicit request

Always:

  • Verify tests before offering options
  • Present exactly 4 options
  • Get typed confirmation for Option 4
  • Clean up worktree for Options 1 & 4 only

Integration

Called by:

  • subagent-driven-development (Step 7) - After all tasks complete
  • executing-plans (Step 5) - After all batches complete

Pairs with:

  • using-git-worktrees - Cleans up worktree created by that skill
安全使用建议
This skill appears to do what it says (finish a development branch) but has some important omissions and destructive actions to be aware of: - Missing declared requirements: The SKILL.md assumes git, git-worktree, the GitHub CLI (gh), and language test runners are available and that you have network/auth access to the repo, yet the skill declares no required binaries or credentials. Verify those tools are installed and authenticated before running. - Destructive operations: The skill can delete branches and remove worktrees. Ensure you have backups or that you run it on a non-critical clone first. Confirm the 'discard' confirmation behavior actually prevents accidental deletion in your environment. - Authentication: For 'gh pr create' and 'git push' to work the agent or environment must be authenticated (gh auth or GIT credentials). Decide whether you are comfortable giving the agent those capabilities; consider doing PR creation and pushes manually if you prefer. - Dry-run / review: If possible, run the steps in a dry-run mode or have the agent print the exact git commands it will run and require explicit user approval before executing them. If you intend to use this skill, require that the agent run only in an environment you control (local clone or CI job with disposable credentials), ensure gh/git are authenticated as expected, and prefer manual confirmation for any push/branch-delete operations.
功能分析
Type: OpenClaw Skill Name: finishing-a-development-branch-2 Version: 0.1.0 The skill bundle provides a structured workflow for finalizing git development branches, including test verification, merging, creating pull requests, and worktree cleanup. All commands (git, gh, npm/pytest) and instructions in SKILL.md are standard development practices with appropriate safety checks, such as requiring confirmation before discarding work.
能力评估
Purpose & Capability
The skill name and description align with the instructions (verifying tests, choosing merge/PR/discard, cleaning worktrees). However the registry metadata declares no required binaries or env vars while the instructions clearly rely on git, git-worktree, a git remote (origin), the GitHub CLI (gh) for PR creation, and language test runners (npm/cargo/pytest/go). This is an omission/incoherence: those tools and network/auth access are realistically required to perform the tasks.
Instruction Scope
The SKILL.md stays on-task: verify tests, determine base branch, present four fixed options, and execute the chosen workflow. It explicitly requires confirmation before destructive actions (typed 'discard') and mandates test verification. Instructions do perform high-impact repo operations (merge, push, delete branch, remove worktree), which is appropriate for the skill’s purpose but must be treated as destructive by the user.
Install Mechanism
Instruction-only skill with no install steps and no code files — low installation risk. Nothing is downloaded or written by an install process according to the registry metadata.
Credentials
No environment variables or credentials are declared, yet the instructions assume authenticated access to a remote (git push, gh pr create). The GitHub CLI (gh) typically requires an authenticated session or GITHUB_TOKEN; pushing requires git remote credentials. The skill also references various language-specific test commands without declaring or checking for those runtimes. The lack of declared binaries/credentials is disproportionate to the actual requirements.
Persistence & Privilege
The skill is not force-included (always:false) and does not request persistent system-level privileges. It modifies the user's repository state (merges, deletes branches, removes worktrees) which is appropriate for its purpose but inherently destructive; this is a runtime privilege rather than a platform privilege and should be guarded by user confirmation and backups.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install finishing-a-development-branch-2
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /finishing-a-development-branch-2 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.1.0
finishing-a-development-branch v0.1.0 - Initial release. - Provides a structured process for completing a development branch, including verifying tests, determining base branch, and offering four explicit integration options. - Includes clear workflows for merging, creating a PR, keeping, or discarding a branch—with safeguards like test checks and discard confirmations. - Details cleanup procedures for local worktrees and branch management. - Offers quick reference tables and lists common mistakes and red flags to prevent data loss or broken merges.
元数据
Slug finishing-a-development-branch-2
版本 0.1.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

Finishing A Development Branch 是什么?

Use when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting s... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 98 次。

如何安装 Finishing A Development Branch?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install finishing-a-development-branch-2」即可一键安装,无需额外配置。

Finishing A Development Branch 是免费的吗?

是的,Finishing A Development Branch 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Finishing A Development Branch 支持哪些平台?

Finishing A Development Branch 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Finishing A Development Branch?

由 lovemymobilewebsite-dotcom(@lovemymobilewebsite-dotcom)开发并维护,当前版本 v0.1.0。

💬 留言讨论