ToolJet Multi-Repo Commit
ToolJet/ToolJet
Commits changes across ToolJet's root repo and its server/ee and frontend/ee submodules, writing messages from the diffs and updating submodule pointers in order.
Creates atomic git commits with Conventional Commits messages, staging specific files and adding a short prose body only when a decision needs explaining.
$ npx skills add congchuanling-dot/Cohort --skill commit -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install congchuanling-dot/Cohort commit --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/congchuanling-dot/Cohort.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.cohort/skills/commit .claude/skills/commit && 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 "commit" agent skill from https://github.com/congchuanling-dot/Cohort/tree/master/.cohort/skills/commit into .claude/skills/commit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "commit", 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/congchuanling-dot/Cohort/tree/master/.cohort/skills/commitType 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 congchuanling-dot/Cohort --skill commit -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install congchuanling-dot/Cohort commit --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/congchuanling-dot/Cohort.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.cohort/skills/commit .agents/skills/commit && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "commit" agent skill from https://github.com/congchuanling-dot/Cohort/tree/master/.cohort/skills/commit into .agents/skills/commit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "commit", 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 congchuanling-dot/Cohort --skill commit -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install congchuanling-dot/Cohort commit --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/congchuanling-dot/Cohort.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.cohort/skills/commit .cursor/skills/commit && 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 "commit" agent skill from https://github.com/congchuanling-dot/Cohort/tree/master/.cohort/skills/commit into .cursor/skills/commit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "commit", 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/congchuanling-dot/Cohort.git --path .cohort/skills/commit--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 congchuanling-dot/Cohort --skill commit -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install congchuanling-dot/Cohort commit --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/congchuanling-dot/Cohort.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.cohort/skills/commit .gemini/skills/commit && 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 "commit" agent skill from https://github.com/congchuanling-dot/Cohort/tree/master/.cohort/skills/commit into .gemini/skills/commit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "commit", 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 congchuanling-dot/Cohort commitInstalls 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 congchuanling-dot/Cohort --skill commit -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/congchuanling-dot/Cohort.git skills-src && mkdir -p .github/skills && cp -r skills-src/.cohort/skills/commit .github/skills/commit && 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 "commit" agent skill from https://github.com/congchuanling-dot/Cohort/tree/master/.cohort/skills/commit into .github/skills/commit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "commit", 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 congchuanling-dot/Cohort --skill commit -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install congchuanling-dot/Cohort commit --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/congchuanling-dot/Cohort.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.cohort/skills/commit .opencode/skills/commit && 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 "commit" agent skill from https://github.com/congchuanling-dot/Cohort/tree/master/.cohort/skills/commit into .opencode/skills/commit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "commit", 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.
commitCreates atomic git commits with Conventional Commits messages, staging specific files and adding a short prose body only when a decision needs explaining.
The skill makes the agent commit one logical change at a time, never mixing features with docs or refactors, and never staging with `git add .` or `git add -A`. It runs `git status` and `git diff`, asks which files to include when none are named, stops if the tree is clean and reads the staged files to pick a type: feat, fix, refactor, test, docs, chore or perf.
A three-question split test checks whether one change can be reverted without the other, whether the diff reads as one unit and whether the subject needs the word and, recommending a split when it does. Messages use `type(scope): description` with a subject of at most 72 characters in the imperative. A body is written only for non-obvious decisions, pitfalls avoided or patterns chosen, in at most two sentences of prose without lists, and the skill forbids AI attribution lines.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit a0479a6. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
BashReadFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use 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.
Atomic Git Commit loads about 1k tokens when it runs. Until then it costs about 70 tokens; SKILL.md has 498 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 noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Bash, ReadAutomated 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 congchuanling-dot/Cohort at commit a0479a6, republished under its MIT licence (© congchuanling-dot). 498 words, ~1,025 tokens.
.claude/skills/commit/SKILL.md (or your agent's skills folder).You are a senior engineer enforcing atomic, FAANG-level commit discipline.
git add . or git add -A — always stage specific filestype(scope): short imperative description| Type | When |
|---|---|
feat | New feature or test slice |
fix | Bug fix |
refactor | Code change with no behaviour change |
test | Adding or updating tests only |
docs | README, comments, ADRs |
chore | Config, dependencies, CI |
perf | Performance improvement |
Run git status and git diff to understand what changed.
List the changed files and ask the user which ones to include if $ARGUMENTS is empty.
If $ARGUMENTS specifies files, stage only those.
If there are no changes (clean working tree), tell the user and stop.
Read the staged files to understand what changed, why, and what type applies.
Split test — ask these three questions:
If any answer points to a split, recommend it with the specific grouping (e.g. "config files in commit 1, formatted code in commit 2").
Write subject line + body if needed.
Body is required when:
Body is NOT needed when:
Body format — prose, not lists:
Good: getErrorMessage() targets data-test="error" not data-test="error-button" — the button passes toBeVisible() but fails toContainText().
Bad: - Fixed error locator\n- Updated test assertions
Display:
Files to stage:
path/to/file1.ts
path/to/file2.ts
Commit message:
---
type(scope): subject line
body explaining why (if needed)
---Wait for user approval before running the commit.
Stage the specific files and commit with the approved message using a HEREDOC:
git commit -m "$(cat <<'EOF'
type(scope): subject line
Body if needed.
EOF
)"Report the commit hash after success. Ask if the user wants to push.
If the commit fails (e.g. pre-commit hook), report the error. Do NOT retry with --no-verify. Fix the underlying issue and create a new commit.
Simple commit:
/commit src/utils/format.ts-> Stages only that file, drafts fix(utils): correct date format parsing
No arguments:
/commit-> Runs git status, shows changed files, asks user which to include
With scope hint:
/commit all test files-> Finds changed .spec.ts files, stages them, drafts test(cart): add checkout validation specs
© congchuanling-dot, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .cohort/skills/commit of congchuanling-dot/Cohort.
Open the folder on GitHubat commit a0479a6
Atomic Git Commit 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 |
|---|---|---|---|---|---|---|
| Atomic Git Commit this skillcongchuanling-dot/Cohort | 199 | — | ~1k | Automated safety check: Notes | MIT | |
| ToolJet Multi-Repo CommitToolJet/ToolJet | 41k | — | ~1.3k | Automated safety check: Pass | AGPL-3.0 | |
| 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 | |
| Saleor Commit Workflowsaleor/saleor | 23k | — | ~575 | Automated safety check: Pass | BSD-3-Clause | |
| Emoji Commit ConventionsbaptisteArno/typebot.io | 11k | — | ~424 | Automated safety check: Pass | Custom licence |
ToolJet/ToolJet
Commits changes across ToolJet's root repo and its server/ee and frontend/ee submodules, writing messages from the diffs and updating submodule pointers in order.
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.
saleor/saleor
Commits changes in the Saleor codebase and works through pre-commit hook failures from ruff, mypy, the GraphQL schema check and the migrations check.
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.
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.
congchuanling-dot/Cohort
Runs a Python script with checks first: confirms the interpreter version, compiles it for syntax errors, verifies imports, then explains any traceback in plain language.
Works with
Categories
Creates atomic git commits with Conventional Commits messages, staging specific files and adding a short prose body only when a decision needs explaining. ` or `git add -A`. It runs `git status` and `git diff`, asks which files to include when none are named, stops if the tree is clean and reads the staged files to pick a type: feat, fix, refactor, test, docs, chore or perf.
Atomic Git Commit fits situations like: committing changes with a clean conventional message; deciding whether a messy working tree should be split into several commits; staging only specific files for a commit.
Run `npx skills add congchuanling-dot/Cohort --skill commit -a claude-code`. Or copy the skill folder (.cohort/skills/commit in congchuanling-dot/Cohort) into .claude/skills/commit in your project. Claude Code loads it when a task matches its description.
Run `npx skills add congchuanling-dot/Cohort --skill commit -a codex`. Or copy the skill folder (.cohort/skills/commit in congchuanling-dot/Cohort) into .agents/skills/commit 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 congchuanling-dot/Cohort --skill commit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/commit, .gemini/skills/commit, .github/skills/commit and .opencode/skills/commit in your project.
Going by SKILL.md and its folder, Atomic Git Commit needs the command-line tools its instructions call (git). Our summary lists: A git repository with changes to commit. Its frontmatter pre-approves these tools: Bash, Read.
SKILL.md contains no URLs. Its commands use 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 notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Atomic Git Commit is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1k tokens (SKILL.md is roughly 4.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Atomic Git Commit: ToolJet Multi-Repo Commit (ToolJet/ToolJet, 41k stars), Git Workflow and Versioning (addyosmani/agent-skills, 102k stars), React Router Pull Request Creator (remix-run/react-router, 57k stars) and Saleor Commit Workflow (saleor/saleor, 23k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
congchuanling-dot (a GitHub user) maintains it in congchuanling-dot/Cohort, which has 199 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on August 15, 2026.
Source: congchuanling-dot/Cohort on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.