odysseus0/symphony

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.

First seen Mar 10, 2026

Installation

$ npx skills add odysseus0/symphony --skill commit

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from odysseus0/symphony.

npx skills add odysseus0/symphony

Browse all from odysseus0/symphony

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 82
License LICENSE
Default branch main
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,480 B
  • docs SUMMARY.md 192 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 522 installs

SKILL.md

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

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

git diff --staged).

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

scope.

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

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

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

for confirmation.

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

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

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

period.

  1. 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).

  1. Append a Co-authored-by trailer for Codex using Codex <[email protected]>

unless the user explicitly requests a different identity.

  1. Wrap body lines at 72 characters.
  2. 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).

  1. 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]>