From dobby
Wraps up work by running the project's pre-commit checks, syncing documentation, committing, pushing, and opening a pull request. Use when committing code, finishing a task, pushing changes, or creating a PR.
How this skill is triggered — by the user, by Claude, or both
Slash command
/dobby:commitopusThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Check if `.claude/commit.config.yml` exists. If it exists, continue to step 2.
Check if .claude/commit.config.yml exists. If it exists, continue to step 2.
If not, the project hasn't been set up for harness-driven commits — that config (doc-sync rules + pre-commit checks) is created by /dobby:bootstrap, which can't be auto-invoked. Offer with AskUserQuestion:
/dobby:bootstrap (it creates the config along with the rest of the project setup), then re-run /dobby:commit.Run each command separately:
git diff --stagedgit diffgit log --onelinegit diff --staged has output -> use as-is (user curated manually)git add -A to stage everythingfiles from .claude/commit.config.yml*.md files not in the config that could be documentation (excluding skills/), detect their update condition, register themupdate_when is met by staged changesgit add <updated-doc-files>
The checks list in .claude/commit.config.yml is the project's pre-commit gate — the harness runs it, replacing git pre-commit hooks.
checks from the config. If absent or empty, skip this step.run command sequentially, from the repo root.Subject: semantic commit format (feat:, fix:, refactor:, docs:, chore:, test:, ci:, perf:, style:, build:). Lowercase imperative, no period, max 70 chars. Use scope when it adds clarity.
Body: explain why — motivation, trade-offs, decisions. State breaking changes explicitly.
References: issue/ticket refs on their own line (e.g., Closes #142).
Execute with HEREDOC:
git commit -m "$(cat <<'EOF'
feat: subject line describing what changed
Body explaining why this change was made.
Closes #issue (if applicable)
EOF
)"
git push -u origin HEAD
Only if branch was pushed in step 8.
git branch — if on main, stopgit log <base-branch>..HEAD --oneline
git diff <base-branch>...HEAD
gh pr create --title "<title>" --body "$(cat <<'EOF'
## Summary
<bullet points from commit analysis>
## Test plan
<checklist>
EOF
)"
.claude/commit.config.yml (or the user explicitly chose a one-off contract-less commit; /dobby:bootstrap suggested)npx claudepluginhub kvnwolf/dobby --plugin dobbyCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.