# Commit

> Stage changes and write a clean Conventional-Commit message that follows the repo's git rules

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

---


# Commit

Create a commit that follows `.agents/rules/git-github.md`. Invoke as `/commit`, or
use these steps whenever you are about to commit.

Parse `$ARGUMENTS`: anything after `--` is an optional hint (a subject, a scope, or
"only the dashboard files") — guidance, not the literal message.

## Steps

### 1. Inspect

```
git status
git diff --staged
git diff
```

Decide what belongs in the commit. If nothing is staged, stage the relevant changes
with `git add <paths>` (or `git add -A` when everything belongs together). **NEVER
stage secret-looking files** (`.env`, `*secrets.toml`, credentials) — they are also
denied in `settings.json`.

### 2. Compose the message

Apply `.agents/rules/git-github.md`:

- One line: `{type}: subject` or `{type}({scope}): subject` — lowercase, imperative,
  no trailing period. Types: `feat`, `fix`, `docs`, `test`, `refactor`, `chore`.
- **Subject line only** for the vast majority of commits. Add a body line *only* for a
  non-obvious *why*, max 3 lines total. Never narrate *what* the diff does.
- **No footers** — no `Co-Authored-By`, no "Generated with ..." trailers.
- **No emojis** anywhere in the message.

### 3. Commit

```
git commit -m "$(cat <<'EOF'
fix(dashboard): keep the selector when no pipeline is selected
EOF
)"
```

### 4. Confirm

```
git log -1 --format=%B
```

Verify it is a single Conventional-Commit subject (plus an optional why) with no
footers. **Do not push and do not amend pushed commits** unless the user explicitly
asks.

