بنقرة واحدة
committing-changes
Commit via feature branch + PR + git hooks; never push main, never merge.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Commit via feature branch + PR + git hooks; never push main, never merge.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | committing-changes |
| description | Commit via feature branch + PR + git hooks; never push main, never merge. |
| allowed-tools | Read, Edit, Write, Bash(git status *), Bash(git diff *), Bash(git log *), Bash(git add *), Bash(git commit *), Bash(git push *), Bash(git checkout *), Bash(git branch *), Bash(git merge *), Bash(git fetch *), Bash(git rev-parse *), Bash(gh pr *), Bash(gh repo *), Bash(bash scripts/install-hooks.sh), Bash(bash scripts/install-pr-size-workflow.sh) |
Install hooks (once per repo). From inside the repo, run the installer that ships with this skill:
bash <skills>/committing-changes/scripts/install-hooks.sh
This copies commit-msg and pre-push into .git/hooks/ and makes them executable. Idempotent.
Then install the PR-size CI workflow:
bash <skills>/committing-changes/scripts/install-pr-size-workflow.sh
This drops .github/workflows/pr-size.yml and appends .gitattributes exclusions. Idempotent.
Branch check. If on main, switch to a feature branch:
git checkout -b <type>/<description>
Valid type prefixes: feat, fix, refactor, docs, test, chore, infra, ai-native.
Auto-fix before commit. Run the project's linter/formatter (e.g., ruff format && ruff check for Python, golangci-lint run for Go, forge fmt && solhint for Solidity). The pre-commit hook (if installed) runs the project's full quality gate.
Commit & push.
git add <specific paths>
git commit -m "<subject conforming to rules below>"
git push -u origin <branch>
Sync with main.
git fetch origin main
git merge origin/main
Resolve conflicts; commit the merge; push.
PR creation (first push only).
gh pr list --head <branch>
gh pr create --fill # if no PR exists yet
Branch cleanup (after the user has merged).
git fetch --prune
git branch --merged main | grep -v '^\*\|main' | xargs -r git branch -d
main. Always feature branches + PRs. The pre-push hook blocks this.--force, no --force-with-lease. Create new commits instead..github/workflows/pr-size.yml.commit-msg hook):
Co-Authored-By: lines.Each rule traces to a specific failure mode:
main, every change is reviewable.shell-discipline — issue these git/gh commands one per call, no && chains.engineering-philosophy — "Small Steps" and "Investigate, Don't Mask" map directly to one-logical-change-per-commit and don't-disable-failing-hooks.main/master.linguist-generated/linguist-vendored entries appended to .gitattributes so GitHub collapses generated files in PR diffs..gitattributes block.commit.md command verbatim.rules/git.md verbatim.Generate one "Implement Block X" GitHub issue per Spec Kit tasks.md PR-stack block, with a minimal body pointing at tasks.md as the source of truth.
Implement one Spec Kit `tasks.md` PR-stack block end-to-end — TDD + review + PR + CI fix loop.
Apply KISS, YAGNI, DRY, SOLID, fail-fast, be-brief on every code decision.
Five-pass review of a diff: code, security, architecture, acceptance, AI-native.
Apply Solidity conventions — Foundry only, forge fmt, solhint:all, fuzz tests.
Drive strict red-green-refactor TDD discipline on any code change, any language.