Git Workflow and Versioning
addyosmani/agent-skills
Sets git habits for every change: short-lived branches, atomic commits with descriptive messages, clean pull requests, plus versioning, tagging and changelogs for releases.
Commits staged changes, pushes a branch, and opens or updates a GitHub pull request, including writing its description.
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-commit-push-pr -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install EveryInc/compound-engineering-plugin ce-commit-push-pr --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ce-commit-push-pr .claude/skills/ce-commit-push-pr && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "ce-commit-push-pr" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-commit-push-pr into .claude/skills/ce-commit-push-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-commit-push-pr", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-commit-push-prType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-commit-push-pr -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install EveryInc/compound-engineering-plugin ce-commit-push-pr --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/ce-commit-push-pr .agents/skills/ce-commit-push-pr && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ce-commit-push-pr" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-commit-push-pr into .agents/skills/ce-commit-push-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-commit-push-pr", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-commit-push-pr -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install EveryInc/compound-engineering-plugin ce-commit-push-pr --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/ce-commit-push-pr .cursor/skills/ce-commit-push-pr && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "ce-commit-push-pr" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-commit-push-pr into .cursor/skills/ce-commit-push-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-commit-push-pr", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/EveryInc/compound-engineering-plugin.git --path skills/ce-commit-push-pr--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-commit-push-pr -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install EveryInc/compound-engineering-plugin ce-commit-push-pr --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/ce-commit-push-pr .gemini/skills/ce-commit-push-pr && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "ce-commit-push-pr" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-commit-push-pr into .gemini/skills/ce-commit-push-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-commit-push-pr", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install EveryInc/compound-engineering-plugin ce-commit-push-prInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-commit-push-pr -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/ce-commit-push-pr .github/skills/ce-commit-push-pr && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "ce-commit-push-pr" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-commit-push-pr into .github/skills/ce-commit-push-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-commit-push-pr", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-commit-push-pr -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install EveryInc/compound-engineering-plugin ce-commit-push-pr --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/ce-commit-push-pr .opencode/skills/ce-commit-push-pr && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "ce-commit-push-pr" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-commit-push-pr into .opencode/skills/ce-commit-push-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-commit-push-pr", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
ce-commit-push-prCommits staged changes, pushes a branch, and opens or updates a GitHub pull request, including writing its description.
The last mile of a change is handled here: committing, pushing, and opening a pull request, plus a description-only mode for drafting or rewriting a PR body on request. It resolves whether an open PR already exists for the branch before deciding to create one or refresh an existing description, and distinguishes a plain single-PR flow from an opt-in mode for submitting a stack of linked pull requests.
A non-interactive pipeline mode lets an orchestrating caller run the flow without blocking questions, falling back to conservative defaults such as keeping the current branch and never rewriting an existing PR without being asked.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit cef001f. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
ghgitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh and git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Commit, Push, and PR loads about 2k tokens when it runs, and up to ~18k if it reads all its reference files. Until then it costs about 41 tokens; SKILL.md has 1,139 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from EveryInc/compound-engineering-plugin at commit cef001f, republished under its MIT licence (© EveryInc). 1,139 words, ~1,977 tokens.
.claude/skills/ce-commit-push-pr/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.Asking the user: use the host's blocking question tool already in the current tool list (match by capability, not by a host-specific name). Presence in the current tool list is proof the tool exists; never call a user-facing question tool to discover whether it exists. If a matching tool is listed but unloaded, use the host's tool-discovery primitive to load that capability — do not search for another host's tool name. Fall back to asking in chat only when no such tool is in the list or a real question call errors, and never silently skip the question.
[] is "no open PR" (report it and stop), and a non-zero exit is unknown (resolve auth or connectivity, then stop until presence is known). With an open PR, run Step 4 in PR mode on that URL, then Step 5 to preview, confirm, and apply via gh pr edit.mode:pipeline modifier, set by orchestrated callers such as lfg. Run the resolved mode non-interactively and suppress every blocking ask. Each suppressed ask takes the conservative default: no existing-PR rewrite, the branch kept, an unresolvable base stopping rather than guessed, and a description-update preview applied directly, since that invocation is the apply intent. Pipeline stack mode uses only the intent and scope on the invocation and passes posture into the handoff.
Opt-in only. Enter it when intent or standing preference wants a multi-PR stack. An explicit stack request is required intent — do not re-read it as a single PR with a custom --base. Do not proactively suggest PR stacks. When the user did not ask for one, refuse nonsense stacks (one logical change, artificial slices) and stay single-PR.
In stack mode, load references/stack-submit.md before Step 3 and follow only its probing, topology, and retrospective construction; that layer-by-layer commit flow replaces ordinary Step 3. Do not submit there. Step 5 handles submission, the gh stack CLI dependency and residuals, and the handoff posture: posture:stack-ready by default, posture:stack-land only on explicit land intent, from the bottom open non-draft PR. Do not add posture: to this skill's argument-hint.
Read references/context.md before Step 1. It defines the command table, the exit-code meanings, the fork and detached-HEAD traps, and the branch and PR resolution Steps 1-2 use. Two of its rules belong here too. Never ask whether to branch: a detached HEAD, or the default branch with work on it, creates one, and the default branch with no work reports and stops. And with conventional commits, default to fix: over feat: when ambiguous, unless the user overrides.
Three rules govern the run.
Every git and gh probe is its own argv-form call, gathering and re-verification alike, and its exit status is control flow. The reference gives the reason and names the two compound recipes this skill pins.
Probe output is a snapshot. Re-verify branch, remote, and PR state right before each consequential action: Step 3's push, Step 5's create.
Only an exit-0 [] from a query against the base repo means "no open PR." A non-zero exit is unknown, never "none". On a fork checkout, target the base with -R and pass the branch name only, since --head <owner>:<branch> silently returns []. With results, do not blindly take index 0: match head owner and branch, and stop on an ambiguous match. Note the URL and body from that entry — Step 5 uses the URL to pick the existing-PR path, Step 4 rewrites the existing body.
Resolve <root> once when archival is on: it writes an explainer under <root>/explainers/.
<!-- ce-docs-root:start -->
Resolve the CE artifact root <root> before composing any artifact path.
docs_root from <repo-root>/.compound-engineering/config.yaml only (<repo-root> = git rev-parse --show-toplevel). Do not read it from config.local.yaml. Unset -> <root> is docs, exactly as before..git/. Otherwise stop with an error naming docs_root and the value -- never fall back to docs.<root> as the sole artifact location: create it if absent, compose each path as <root>/<subdir> with this skill's own subdirectory, and never also read docs.<!-- ce-docs-root:end -->
Read references/commit-and-push.md for commit/push mechanics and default-branch handling via references/branch-creation.md. If stack mode committed its layers, skip to Step 4; Step 5 submits them.
Project publishing gate. Before publishing commits, resolve every applicable pre-push or review-ready requirement from the project's active instructions and conventions already in context and any additional scoped instructions governing the committed paths. Only evidence valid for the exact commit state being sent satisfies them; otherwise stop before the external write and report what is missing or failing. If none, proceed.
Never use git add -A or git add .. Name files in both add and commit so unrelated staged files stay out. Honor exclude:<paths>: leave and report them.
You MUST read references/pr-description-writing.md in full — it defines the title and body content rules, including the rule to preserve an existing Related: / Fixes on rewrite. Then read references/compose.md for the three decisions to make before composing: the evidence decision; the teaching decision, where pr_teaching_section defaults on, pr_teaching_archive defaults off, and only an active (non-commented) key changes either; and the branding decision, where branding is off unless this invocation carries branding:on or the user asks for Compound Engineering branding in this prompt.
If Step 1 found an existing PR, pass its URL to Step 4 so PR mode fetches the existing body.
Read references/apply-and-handoff.md for apply, preview, archival, and handoff. Before gh pr create, re-check PR presence: a matching PR takes the existing-PR path, exit-0 [] creates, non-zero blocks. Pass the body via --body-file <path>, never stdin — gh exits 0 with an empty body.
Completion is decided here. An interactive full workflow or pipeline stack submit is not done until ce-babysit-pr owns follow-on for the published PR. Reporting the PR URL alone is not success. Load the callee to choose the monitoring mode. If running it in this session, continue until its stop condition permits a final report.
Only babysit:off, CE config's auto_babysit: false, or a "Do not fire" case in references/apply-and-handoff.md skips it. No other watch substitutes: not ci-watcher, not gh pr checks --watch, not a hand-rolled poll, not "later". If ce-babysit-pr cannot be loaded or started, stop and report it blocked.
© EveryInc, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 8 other files (references) in skills/ce-commit-push-pr of EveryInc/compound-engineering-plugin.
Open the folder on GitHubat commit cef001f
Commit, Push, and PR next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Commit, Push, and PR this skillEveryInc/compound-engineering-plugin | 25k | — | ~2k | Automated safety check: Pass | MIT | |
| Git Workflow and Versioningaddyosmani/agent-skills | 102k | 2 repos | ~3.5k | Automated safety check: Notes | MIT | |
| React Router Pull Request Creatorremix-run/react-router | 57k | — | ~2.5k | Automated safety check: Pass | MIT | |
| Emoji Commit ConventionsbaptisteArno/typebot.io | 11k | — | ~424 | Automated safety check: Pass | Custom licence | |
| Commit And PR Messagessuperplanehq/superplane | 7.7k | — | ~1.6k | Automated safety check: Pass | Custom licence | |
| Draft Pull Request Creatorwordpress-mobile/WordPress-Android | 3.2k | — | ~881 | Automated safety check: Notes | GPL-2.0 |
addyosmani/agent-skills
Sets git habits for every change: short-lived branches, atomic commits with descriptive messages, clean pull requests, plus versioning, tagging and changelogs for releases.
remix-run/react-router
Packages finished React Router work into a draft pull request: branch, commit, push, a written PR body and the right GitHub labels.
baptisteArno/typebot.io
Sets the repository's convention for commit messages and pull request titles: one emoji prefix for the main intent, a concise title and clean follow-up commits.
superplanehq/superplane
Write Git commit messages and pull request titles/descriptions using the Chris Beams / Tim Pope conventions (subject/body split, ~50-char subject, imperative mood, why-not-how body) plus ASD-STE100…
wordpress-mobile/WordPress-Android
Commits and pushes current changes, writes a pull request title and body from the branch history and template, and opens a draft PR on GitHub after you approve it.
codewhale-hq/Codewhale
Decides how verified work should reach main, directly, in a worktree or on an integration branch, while keeping contributor credit and respecting merge gates.
EveryInc/compound-engineering-plugin
Records one solved and verified problem as a durable learning in the repository, but only when the reasoning is not already clear from the final code, tests or docs.
EveryInc/compound-engineering-plugin
Audits a repo's stored learnings against the current codebase, fixes stale, overlapping or superseded docs and reports on every document.
EveryInc/compound-engineering-plugin
Builds a throwaway prototype at just the fidelity needed to settle a specific how-it-should-work-or-feel question, before committing to an approach other work will treat as fixed.
EveryInc/compound-engineering-plugin
Checks Compound Engineering plugin health and repo-local config, or scaffolds a Compound Pack when you ask for one by id.
EveryInc/compound-engineering-plugin
Watches an open GitHub pull request over time, routing review comments and CI failures to other skills until the PR is ready to merge.
EveryInc/compound-engineering-plugin
Turns a vague or ambitious feature idea into a requirements-only plan through dialogue with you, sized to the work, before any code is written.
Categories
Commits staged changes, pushes a branch, and opens or updates a GitHub pull request, including writing its description. The last mile of a change is handled here: committing, pushing, and opening a pull request, plus a description-only mode for drafting or rewriting a PR body on request. It resolves whether an open PR already exists for the branch before deciding to create one or refresh an existing description, and distinguishes a plain single-PR flow from an opt-in mode for submitting a stack of linked pull requests.
Commit, Push, and PR fits situations like: shipping a finished change as a commit, push, and pull request; rewriting or refreshing an existing pull request's description; submitting a stack of related pull requests instead of one.
Run `npx skills add EveryInc/compound-engineering-plugin --skill ce-commit-push-pr -a claude-code`. Or copy the skill folder (skills/ce-commit-push-pr in EveryInc/compound-engineering-plugin) into .claude/skills/ce-commit-push-pr in your project. Claude Code loads it when a task matches its description.
Run `npx skills add EveryInc/compound-engineering-plugin --skill ce-commit-push-pr -a codex`. Or copy the skill folder (skills/ce-commit-push-pr in EveryInc/compound-engineering-plugin) into .agents/skills/ce-commit-push-pr in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add EveryInc/compound-engineering-plugin --skill ce-commit-push-pr -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ce-commit-push-pr, .gemini/skills/ce-commit-push-pr, .github/skills/ce-commit-push-pr and .opencode/skills/ce-commit-push-pr in your project.
Going by SKILL.md and its folder, Commit, Push, and PR needs the command-line tools its instructions call (gh and git). Our summary lists: GitHub CLI (`gh`), authenticated.
SKILL.md contains no URLs. Its commands use gh and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Commit, Push, and PR is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 7.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 16k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Commit, Push, and PR: Git Workflow and Versioning (addyosmani/agent-skills, 102k stars), React Router Pull Request Creator (remix-run/react-router, 57k stars), Emoji Commit Conventions (baptisteArno/typebot.io, 11k stars) and Commit And PR Messages (superplanehq/superplane, 7.7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
EveryInc (a GitHub organization) maintains it in EveryInc/compound-engineering-plugin, which has 25,412 GitHub stars. The repository holds 37 skills in this directory. The repository was last updated on October 7, 2026.
Source: EveryInc/compound-engineering-plugin on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.