跳到正文
cccskills
免费在 GitHub 公开

commit

Synchronize the current tracked branch, then prepare and create a local Git commit following verl-vla conventions. Use when the user asks to commit current changes, organize a coherent local commit, or validate a proposed commit message; preserve local work while pulling and resolving conflicts, require final confirmation before staging or committing, and do not push.

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

verl-project/verl-vla星标 141(GitHub 141 + cccskills 0)

实测评分 未实测

查看安装方法

包含的文件(2)

  • SKILL.md4.8 KB
  • agents/openai.yaml186 B

SKILL.md(原文)

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

Create a commit only when the user explicitly asks for one. Do not push, rebase, squash, or amend unless the user separately requests that operation.

Synchronize the Current Branch

Before reviewing changes, identify the current branch and whether it has a remote tracking branch:

git status --short --branch
git rev-parse --abbrev-ref --symbolic-full-name '@{upstream}'

If no upstream is configured, report that fact and continue without pulling. Do not guess which remote branch should be used.

If an upstream exists, update it before preparing the commit:

git pull --ff-only

Preserve all local staged, unstaged, and untracked changes. If those changes prevent the pull, create a clearly named temporary stash that includes untracked files, run the fast-forward pull, then restore the stash with its staged state:

git stash push --include-untracked -m "codex commit sync"
git pull --ff-only
git stash pop --index

Record the stash identifier before restoring it. If restoration conflicts, Git retains the stash; keep it until every local change has been recovered and verified. Confirm the staged, unstaged, and untracked state before continuing.

Resolve conflicts from restoring local changes by inspecting the upstream and local intent, removing every conflict marker, and preserving both changes when they are compatible. Never discard either side merely to make the conflict disappear. If the correct result is ambiguous or falls outside the requested commit scope, stop and ask the user. Reinspect the complete diff and rerun relevant checks after every conflict resolution.

If git pull --ff-only reports divergent history, do not choose merge or rebase automatically. Show the divergence and ask the user which history strategy to use; continue only after they explicitly choose one.

Gather Context

Read the commit message rules in the repository-root CONTRIBUTING.md, then inspect the repository state and both staged and unstaged changes:

git status --short
git diff
git diff --cached

Use the repository convention as the source of truth for allowed modules and types. Check recent commit titles when useful, but do not copy an old title that violates the current convention.

Define the Commit Scope

Identify one coherent change to commit. Preserve unrelated user changes and pre-existing staged content. If staged content cannot be safely separated from the requested change, stop and explain the conflict instead of modifying the user's staging area without permission.

Choose modules by responsibility rather than implementation detail. Use the smallest set that accurately describes the change, and explain the specific algorithm, backend, or dependency in the description when needed.

Validate the Change

Run checks relevant to the proposed change. Do not claim a check passed unless it was actually run. Keep the staging area unchanged while preparing the commit preview.

Compose and Validate the Message

Write a concise title that follows CONTRIBUTING.md. Add a body when the reason for the change, an important tradeoff, or migration guidance would not be clear from the title and diff alone.

Validate the proposed title before creating the commit:

python3 scripts/check_commit_message.py --title "[module] type: description"

If validation fails, fix the message. Never bypass repository hooks with --no-verify.

Request Final Confirmation

Before staging or committing, show the user:

  • The proposed title and body, if any.
  • The explicit list of files to include.
  • Checks run and their results.
  • Any unrelated or pre-existing staged changes that will remain untouched.
  • A statement that the commit will remain local and will not be pushed.

Wait for explicit confirmation such as "confirm", "commit", or "go ahead". The initial request to prepare a commit starts this workflow but does not replace final confirmation of the preview. Do not run git add or git commit before that confirmation.

If any candidate file changes after the preview, refresh the diff and request confirmation again.

Commit and Report

After confirmation, stage only the approved files with git add -- <path>.... Do not use git add . or git add -A, because they can capture unrelated work.

Inspect the final staged diff and check it for whitespace errors:

git diff --cached --check
git diff --cached

Create the local commit, then report its hash, title, checks run, and remaining worktree state. Do not push the commit.

评价

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

评论

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

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

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

0 / 1000 字

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

同一仓库的技能

issue

免费

Prepare, create, or update verl-vla GitHub issues following repository conventions. Use when the user asks to draft, file, open, or revise a bug report or feature request; search for duplicates, gather the issue-template details, and require final confirmation before changing GitHub.

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

verl-project/verl-vla1412026年9月11日 更新

pr

免费

Prepare, create, or update a verl-vla pull request following repository conventions. Use when the user asks to open, draft, publish, or revise a PR; inspect the complete branch diff and existing GitHub edits, require final confirmation before creating a branch, pushing, or changing a PR.

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

verl-project/verl-vla1412026年9月11日 更新

查看 verl-project 的全部技能

报告此技能的问题