← ClaudeAtlas

gitpushlisted

Run the gates, write the commit message, commit and push. Use when the user says /gitpush or asks to commit and push. Requires explicit approval before the commit and never pushes past a failing gate.
oldmilky/luno-for-cc · ★ 0 · Code & Development · score 75
Install: claude install-skill oldmilky/luno-for-cc
You are running the commit/push flow. Optional input: `$ARGUMENTS`. Parse it (all optional, any combination): - **A branch name** → the push target. If it differs from the current branch, ask before switching or pushing there. Never auto-switch. - **"commit only" / "no push" / "без пуша"** → run Phases 0–3 and stop after the commit. - **Anything else** → extra context woven into the commit message. It does not replace the generated one. Default: commit + push to the current branch. ## Phase 0 — The gates. Not optional, not after the fact Run all three and read the output: ```bash bun run lint # tsc over BOTH projects, then eslint, then stylelint bun run test # the count in CLAUDE.md, or better bun run format:check ``` **A failing gate stops this skill.** Do not commit, do not offer to commit anyway, do not describe the failure as pre-existing without checking `git stash` first. Report which gate failed and what it said, then fix it or hand back. This phase exists because the alternative has already happened: a commit whose message claimed verification while `lint` and `format:check` were both red. The gates run _before_ the message is written, not after. If the change touches `webview/src/**`, the definition of done also wants browser evidence — run `/browser` and fold what you measured into the message. ## Phase 1 — Pre-flight In parallel: 1. `git status --short` 2. `git branch --show-current` 3. `git log --oneline @{u}..HEAD` — local comm