Commonly-used-high-value-skills yeet
Use only when the user explicitly asks to stage, commit, push, and open a GitHub pull request in one flow using the GitHub CLI (`gh`).
install
source · Clone the upstream repo
git clone https://github.com/seaworld008/Commonly-used-high-value-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/seaworld008/Commonly-used-high-value-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/openclaw-skills/yeet" ~/.claude/skills/seaworld008-commonly-used-high-value-skills-yeet && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/seaworld008/Commonly-used-high-value-skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/openclaw-skills/yeet" ~/.openclaw/skills/seaworld008-commonly-used-high-value-skills-yeet && rm -rf "$T"
manifest:
openclaw-skills/yeet/SKILL.mdsource content
Yeet (The Ultimate Git Flow)
"Yeet" 是一种极致效率的开发哲学:当一项修改已经完成并通过验证,无需反复确认,直接执行“暂存 -> 提交 -> 推送 -> 创建 PR”的一键流水线。本技能通过
gh CLI 和原生 git 命令,帮助开发者在秒级完成从本地代码到 GitHub 评审页面的流转。
安装与前提条件
# 确保已安装 GitHub CLI gh --version # 验证登录状态与权限 (repo, workflow) gh auth status
- 如果
缺失,Agent 应主动提示用户安装。gh - 如果未登录,执行
。gh auth login
命名规范 (Naming Conventions)
- 分支 (Branch):如果当前在
/main
,自动创建master
。codex/{feature-description} - 提交 (Commit):遵循 Conventional Commits(如
或feat: add auth
)。fix: resolve race condition - PR 标题:
,需简明扼要概括全量 Diff。[codex] {description}
触发条件 / When to Use
- 功能开发闭环:当用户说“帮我提交这些改动并开个 PR”时。
- 紧急修复 (Hotfix):需要以最快速度将补丁推送到上游分支进行 CI 验证。
- 文档零碎更新:修改了 README 或注释,不需要复杂的评审流程。
- 多仓库协同:在一个 Monorepo 的多个子包中同步执行 Yeet。
- 代码重构后:当重构规模大但逻辑变动小时,使用 Yeet 快速建立基准。
核心能力 / Core Capabilities
1. 智能分支与环境感知 (Environment Sensing)
- 操作步骤:
- 运行
检查当前状态是否干净。git status -sb - 获取默认分支名称(通常为
或main
)。master - 若在默认分支,基于
生成合规的分支名并切出:description
。git checkout -b "codex/$(echo $DESC | slugify)"
- 运行
- 最佳实践:分支名应尽可能短小(Slugified),避免包含空格或特殊字符。
2. 自动化变更打包 (Atomic Staging)
- 操作步骤:
- 运行
或针对特定目录git add -A
。git add src/ - 结合
预览待提交的内容,防止误传大文件。git diff --cached --stat
- 运行
- 最佳实践:如果发现敏感文件(如
),Agent 应自动发出警报并中止 Yeet。.env
3. CI 预检与健壮性保障 (Pre-push Checks)
- 操作步骤:
- 尝试运行本地定义的检查脚本(如
或npm run lint
)。go test ./... - 若检查失败,Agent 尝试自动修复(例如运行
)并重新运行。prettier --write
- 尝试运行本地定义的检查脚本(如
- 最佳实践:如果本地环境缺失工具链,Agent 应尝试一次性安装依赖。
4. 幂等推送与冲突处理 (Robust Push)
- 操作步骤:
- 执行带有跟踪信息的推送:
。git push -u origin $(git branch --show-current) - 若因上游领先导致推送失败,执行
并重新推送。git pull --rebase
- 执行带有跟踪信息的推送:
- 最佳实践:在极少数情况下使用
,但必须在 PR 描述中注明。--force-with-lease
5. 语义化 PR 描述生成 (Rich PR Content)
- 操作步骤:
- 提取全量 Diff 摘要。
- 自动生成 Markdown 格式的 PR Body,包含:背景、根本原因、修复方案、测试证明。
- 使用
创建 PR。gh pr create --draft --fill
- 最佳实践:将 PR 设为
(草稿) 状态,给用户最后一次人工复核的机会。Draft
常用命令/模板 / Common Patterns
一键 Yeet 完整流 (Full Flow Template)
### 🚀 Yeet 开始执行 1. **[Branch]**: 从 `main` 切换到 `codex/fix-login-typo`。 2. **[Stage]**: 暂存 `src/auth.py` 的改动。 3. **[Commit]**: `fix: correct typo in login error message`。 4. **[Pre-Check]**: 运行 `pytest` ... **PASSED**. 5. **[Push]**: 推送至 `origin/codex/fix-login-typo`。 6. **[PR]**: 创建 PR #456 并生成描述。 ### 📄 自动生成的 PR Body 预览 > **Title**: [codex] fix login typo > **Description**: This PR addresses a UI issue where the error message showed 'Invalid credentails'. > **Root Cause**: Spelling error in string literal. > **Fix**: Updated L45 in `auth.py`. > **Tests**: Ran unit tests and verified manually.
快速创建 PR 示例 (CLI)
# 生成临时 Body 文件并创建 PR echo "## Summary\n$(git log -1 --pretty=%B)" > /tmp/pr-body.md gh pr create --title "[codex] feature-x" --body-file /tmp/pr-body.md --draft
进阶应用场景 / Advanced Use Cases
1. 无缝集成 CI 修复 (Auto-Fixer)
- 当
技能发现错误并修复后,自动衔接gh-fix-ci
技能,将修复代码推回 PR。yeet
2. 定期代码同步 (Sync Upstream)
- 使用
技能,每周五下午自动将本地所有的 WIP (Work In Progress) 分支执行一次 Yeet 到远程备份。cron
边界与限制 / Boundaries
- 认证安全:Yeet 严重依赖
和gh
的本地配置。如果环境不安全,严禁在包含明文密钥的项目中使用。git - 合并冲突 (Merge Conflicts):在
过程中如果遇到复杂冲突,Yeet 流程必须停止,交给人类解决。rebase - Commit History 污染:Yeet 倾向于“单次大提交”,对于要求原子提交(Atomic Commits)的严苛项目,建议在 PR 评审阶段进行 Squash。
- 权限限制:用户可能对该仓库没有
权限(如 Fork 的原始库),此时应提醒用户进行 Fork 或推送到自己的仓库。Push - 构建开销:如果本地
检查非常耗时(如编译 C++ 项目),Yeet 会显著变慢。pre-push
最佳实践总结
- 预览第一:在
后,Agent 必须打印出变更文件的列表。git add - Body 为王:PR 描述质量直接决定了评审速度,必须通过 LLM 生成高质量的 Prose。
- 追踪日志:在 Yeet 执行过程中,所有命令输出必须可见,方便排查。
- 清理临时文件:Yeet 结束后,自动删除生成的
等中间文件。/tmp/pr-body.md - 状态反馈:任务完成时,Agent 必须返回 PR 的 Web URL 链接。
- 防误操作:如果检测到改动超过 100 个文件,必须强制进行二次确认。