mcpbeat

Commit

openai/commit

Create a well-formed git commit from current changes using session history for rationale and summary; use when asked to commit, prepare a commit message, or finalize staged work.

620 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
26423
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/openai/symphony --skill commit

The instruction itself

6 sections, as written by the author

Commit

Goals

  • Produce a commit that reflects the actual code changes and the session

context.

  • Follow common git conventions (type prefix, short subject, wrapped body).
  • Include both summary and rationale in the body.

Inputs

  • Codex session history for intent and rationale.
  • git status, git diff, and git diff --staged for actual changes.
  • Repo-specific commit conventions if documented.

Steps

  • Read session history to identify scope, intent, and rationale.
  • Inspect the working tree and staged changes (git status, git diff,

git diff --staged).

  • Stage intended changes, including new files (git add -A) after confirming

scope.

  • Sanity-check newly added files; if anything looks random or likely ignored

(build artifacts, logs, temp files), flag it to the user before committing.

  • If staging is incomplete or includes unrelated files, fix the index or ask

for confirmation.

  • Choose a conventional type and optional scope that match the change (e.g.,

feat(scope): ..., fix(scope): ..., refactor(scope): ...).

  • Write a subject line in imperative mood, <= 72 characters, no trailing

period.

  • Write a body that includes:
  • Summary of key changes (what changed).
  • Rationale and trade-offs (why it changed).
  • Tests or validation run (or explicit note if not run).
  • Append a Co-authored-by trailer for Codex using Codex <[email protected]>

unless the user explicitly requests a different identity.

10. Wrap body lines at 72 characters.

11. Create the commit message with a here-doc or temp file and use

git commit -F <file> so newlines are literal (avoid -m with \n).

12. Commit only when the message matches the staged changes: if the staged diff

includes unrelated files or the message describes work that isn't staged,

fix the index or revise the message before committing.

Output

  • A single commit created with git commit whose message reflects the session.

Template

Type and scope are examples only; adjust to fit the repo and changes.

<type>(<scope>): <short summary>

Summary:
- <what changed>
- <what changed>

Rationale:
- <why>
- <why>

Tests:
- <command or "not run (reason)">

Co-authored-by: Codex <[email protected]>

How to use it

Copy the folder

Take openai/commit from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.