Skip to content
Machine Learning
Skill

/commit-and-pr

Creates Arena-conformant commits and pull requests. Enforces DCO sign-off (git commit -s), no AI attribution lines (no Co-Authored-By, no Generated-with-Claude footers), <username>/<type>/<short-description> branch naming, separate new commits rather than --amend when iterating

BOOST
From plugin
isaaclab-arena
6099 skills
Install
$ npx -y skills add isaac-sim/isaaclab-arena --skill commit-and-pr --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/commit-and-pr

Context preview

The summary Claude sees to decide when to auto-load this skill.

Creates Arena-conformant commits and pull requests. Enforces DCO sign-off (git commit -s), no AI attribution lines (no Co-Authored-By, no Generated-with-Claude footers), <username>/<type>/<short-description> branch naming, separate new commits rather than --amend when iterating

SKILL.md

commit-and-pr.SKILL.md
name: commit-and-pr
description: Creates Arena-conformant commits and pull requests. Enforces DCO sign-off (git commit -s), no AI attribution lines (no Co-Authored-By, no Generated-with-Claude footers), <username>/<type>/<short-description> branch naming, separate new commits rather than --amend when iterating on PR feedback, and main as the default base branch. Use when the user asks to commit, stage changes, push the current branch, open a pull request, make a PR, submit changes, or mark work as ready to merge.
disable-model-invocation: true
allowed-tools: Read Bash(git *) Bash(pre-commit *) Bash(gh pr create *) Bash(gh pr view *)

Commit and Pull Request

Creates commits and PRs that follow Arena's contributor guidelines.

Commit

1. Run the `pre-commit-check` skill (or `pre-commit run --all-files` on the host — pre-commit is not installed in the container) until the working tree is clean. Do not commit through hook failures. 2. Stage **specific files** rather than using `git add -A` — this avoids accidentally committing dotfiles, credentials, or large untracked artifacts. 3. Sign off the commit (per `CONTRIBUTING.md` — Arena currently requires DCO sign-off; the policy is on the books but not yet CI-enforced):

   git commit -s -m "<subject>"

4. **Subject line:** imperative mood, ~50 characters, no trailing period.

  • Good: `Fix attribute access on wrapped env`
  • Bad: `Fixed the attribute access on the wrapped env.` (past tense, trailing period)

5. **Body** (when needed): blank line after the subject, wrap at 72 chars, explain *what* and *why* — not *how* (the diff shows that). 6. **No AI attribution lines.** Do not include `Co-Authored-By: Claude...`, `Generated with Claude Code`, or similar footers. The DCO sign-off is the only required trailer.

Use a heredoc for multi-paragraph messages so quoting stays clean:

git commit -s -m "$(cat <<'EOF'
<subject>

<body paragraph 1>

<body paragraph 2>
EOF
)"

Branch

Branch naming: `<username>/<type>/<short-description>` where `<type>` is one of `feature`, `fix`, `docs`, `refactor`, `chore`, `ci`, and `<short-description>` is kebab-case.

Examples: `<username>/feature/video-recording`, `<username>/fix/experiment-runner-teardown`, `<username>/docs/update-readme`.

Do not use top-level type prefixes that omit the username (e.g. `feature/foo`, `fix/bar`).

Pull request

1. Push the branch (set upstream on first push):

   git push -u origin <branch-name>

2. Open the PR against `main` (the active branch):

   gh pr create --base main \
     --title "<short imperative subject>" \
     --body "<see body format below>"

3. PR title follows the same rules as a commit subject: imperative, ~70 chars max, no trailing period.

4. Read `.github/pull_request_template.md` before writing a PR description and follow its guidance.

Iterating on review feedback

When addressing review comments, **add new commits**. Do not `--amend` and force-push, because reviewers need to see each round of changes as a discrete commit.

# good
git commit -s -m "Address review: rename foo to bar"
git push

# avoid
git commit --amend
git push --force

The exception: if a single commit is *purely* a typo fix in your own as-yet-unmerged work and no one has reviewed it, `--amend` is fine.

Verify

Before declaring the work done:

gh pr view --json title,baseRefName

Confirm:

  • `baseRefName` is `main`.
  • Title has no trailing period and is in imperative mood.
Read more
Ships withisaaclab-arena

Isaac Lab - Arena is a robotics simulation framework that enhances NVIDIA Isaac Lab by providing a composable, scalable system for creating diverse simulation environments and evaluating robot learning policies. The framework enables developers to rapidly prototype and test robotic tasks with various robot embodiments, objects, and environments.

Get the whole plugin

Other skills on isaaclab-arena.