.claude/skills/commit/SKILL.md
Commit uncommitted changes with clear commit messages. Use when the user asks to commit changes, save work, or create a commit.
npx skillsauth add recidiviz/pulse-data commitInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill commits uncommitted changes with clear, descriptive commit messages.
Run these commands to understand what needs to be committed:
git status
git diff HEAD --stat
git diff HEAD
Read any modified files if needed to understand the context of changes.
If on main:
Prompt the user to create a new branch. Suggest a name based on the changes.
Check if GitChildBranchHelpers is installed:
ls .git/child_branch_helper/ 2>/dev/null
If the directory exists, use cmk (child make branch):
cmk <username>/<short-description>
Otherwise, use regular git:
git checkout -b <username>/<short-description>
Branch naming convention: <username>/<kebab-case-description>
If not on main:
Ask the user if they want to commit to the current branch or create a new one. If the user explicitly says "commit to the current branch", skip this prompt.
Stage all relevant changes:
git add <files>
CRITICAL: Do NOT stage files that contain secrets (.env, credentials.json, etc.)
Create a commit message following this format:
[STATE_CODE] Brief description or [Component] Brief descriptionExamples:
[US_IX] Add CRC-like bed eligibility criteria[BigQuery] Fix view dependency ordering[Workflows] Update client record supervision levelgit commit -m "$(cat <<'EOF'
<commit message>
🤖 Generated with [Claude Code](https://claude.com/claude-code)
EOF
)"
After committing, tell the user:
✓ Created commit on branch: <branch-name>
Commit: <commit-hash-short>
<commit message title>
Files committed:
- <file1>
- <file2>
If you need to make changes:
- Undo commit (keep changes): git reset --soft HEAD~1
- Amend commit message: git commit --amend -m "New message"
- Rename branch: git branch -m <new-name>
Ask the user if they want to push. If yes:
Check if branch has upstream:
git rev-parse --abbrev-ref --symbolic-full-name @{u} 2>/dev/null
If the branch already has an upstream (command succeeds):
git push
If the branch is new (command fails):
git push -u origin <branch-name>
tools
Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layers like Lobster, ACPX, plugins, or plain code. Keep conditional logic in the caller; use TaskFlow for flow identity, child-task linkage, waiting state, revision-checked mutations, and user-facing emergence.
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------
tools
A CLI tool for making authenticated requests to the X (Twitter) API. Use this skill when you need to post tweets, reply, quote, search, read posts, manage followers, send DMs, upload media, or interact with any X API v2 endpoint.