# Commit

> Commit local changes without pushing.

- Skill: `tencent/commit` (Agent Skill)
- Install (CLI): `npx skillmds@latest add tencent/commit`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tencent/commit/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tencent (https://skillmd.com/u/tencent)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tencent/commit

---


# Commit — Local Commit Only

Commits local changes to the current branch. Does not push or create a PR.

## Instructions

- **NEVER** push. This skill only creates local commits.
- All user-facing text must use the language the user has been using in the
  conversation. Do not default to English.

---

## Stage & Commit

Run `git status --porcelain` and inspect the output:

- **No output** → no local changes. Inform the user and stop.
- **Staged changes exist, no unstaged changes** → proceed directly to commit.
- **Staged changes exist, unstaged changes also exist** → ask the user: commit
  only the staged files (**partial**), or stage everything (**full**)?
  If **partial**: skip staging (files are already staged).
  If **full**: run `git add -A` first.
- **No staged changes, unstaged changes exist** → run `git add -A` to stage
  everything, then commit.

Read the staged diff (`git diff --cached`) and generate a commit message
following the project's commit conventions. If no convention is found, default
to a concise English message under 120 characters ending with a period, with no other punctuation, focusing on user-perceivable changes.

Commit, then output a single line in the format:
`已提交 {short_hash}：{commit message}`

If the user chose **partial**, also inform them that unstaged changes remain
and were not included in this commit.

