本文へ移動
cccskills
無料GitHub で公開

commit

One-shot conventional commit; bundled scripts adaptively gather diff context, draft the message, and stage+commit — pass `ask` to confirm first or add a hint for the title. Use only when the user asks for a commit.

インストール方法を見る

含まれるファイル(3)

  • SKILL.md3.1 KB
  • commit.sh1.7 KB
  • gather.sh4.6 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Commit

Commit the current changes with a conventional message. Two bundled scripts own every git inspection and mutation — run no other git commands.

Arguments: the optional word ask (confirm mode) and/or a message hint for the title (e.g. /commit ask fix null check in auth). Without ask, resolve all ambiguity yourself and pause for nothing.

Steps

1. Gather

{base_directory}/gather.sh

Prints branch, extracted task number (NONE if none), status, sensitive files (auto-excluded later), full diffstat, recent commits, and an adaptively sized diff. Read it once — never re-run git to "see more"; the script already chose what matters.

If it prints NOTHING_TO_COMMIT, say so and stop.

2. Draft

Compute every field silently from the blob:

  • Type — feat (new functionality), fix (corrects behavior), refactor (restructure, no behavior change), docs (only .md), test (only tests), chore (config/deps/tooling), style (formatting), ci (CI config). Mixed signals → pick the dominant one.
  • Task number — TASK_NUMBER from the blob. If NONE, omit the (scope) and the Refs: trailer entirely. Never invent one, never leave one blank.
  • Title — imperative mood, total header ≤72 chars. Base on the hint if given.
  • Description — 1–3 specific sentences: what changed and why.

Write it to a temp file unique to this checkout — parallel worktrees each run their own /commit, and a shared fixed path races. Use /tmp/commit-msg-{task-number}.txt; when TASK_NUMBER is NONE, use /tmp/commit-msg-{branch}.txt with / replaced by -:

cat > /tmp/commit-msg-{task-number}.txt <<'EOF'
{type}({task-number}): {title}

{description}

Refs: {task-number}
EOF

3. Commit

Default (no ask): run immediately, with no narration between tool calls.

With ask: show the draft message and the status list, then ask "Commit this? (yes / edit / only <files> / cancel)". Apply any edit or file selection, then run.

{base_directory}/commit.sh /tmp/commit-msg-{task-number}.txt [file ...]

No file args → stages everything. File args (ask mode) → stages only those. Either way the script drops sensitive files and embedded git repositories (nested worktrees, stray clones — real submodules are kept), then commits with hooks running.

  • Hook failure → report the script output and stop. No workarounds.
  • NOTHING_STAGED → everything was excluded; report and stop.

Report

≤3 lines: the commit header, anything excluded, confirmation that it's committed. Do not re-print the message body.

You Must NOT

  • Run git add or git commit yourself — the scripts own all mutation.
  • Use --no-verify or bypass hooks in any way.
  • Push to remote or run tests — not this skill's job.
  • Ask questions in default mode — ask is the only interactive path.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Retire a closed issue's working artifacts out of specs/ into the GitHub wiki. Use only when the user asks to archive a finished issue, empty out specs/ for a done task, or move an issue's requirements/architecture/tasks/review/QA docs to the wiki.

日本語の概要は準備中です。原文の説明を表示しています。

foyzulkarim/skills432026年9月4日 更新

Executes a QA specification (specs/qa/QA-<N>-<slug>.md) written by /plan-qa: drives every step with the plan's drivers, verifies each Expected line mechanically ([assert]) or by evidence-backed judgment against the plan's written criterion ([judge]), pauses at named operator handoffs, and writes the results artifact QA-RESULTS-<N>-<slug>.md. Use only when the user asks to run or execute a QA plan — never trigger automatically.

日本語の概要は準備中です。原文の説明を表示しています。

foyzulkarim/skills432026年9月4日 更新

After an issue's PR has squash-merged on GitHub and its issue has closed: fast-forward the default branch, remove the issue-numbered nested worktree (.worktrees/<issue#>), and delete the local feature branch. Use when the user says to finish, tear down, or clean up a lane or worktree for a merged issue.

日本語の概要は準備中です。原文の説明を表示しています。

foyzulkarim/skills432026年9月4日 更新

Phase 3 of 5 — slices the ARCH doc into verification-ready task specs (tdd/test-after/ui/checklist), emitted as a separate TASKS-<N>-<slug>.md file alongside ARCH for the implement skill. Use only when the user asks to run Phase 3 or generate tasks from an ARCH doc — never trigger automatically.

日本語の概要は準備中です。原文の説明を表示しています。

foyzulkarim/skills432026年9月4日 更新

implement

無料

Phase 4 of 5 — implements tasks from TASKS-<N>-<slug>.md (with ARCH-<N>-<slug>.md as architecture-only context) using mode-appropriate verification (tdd, test-after, ui, checklist); pass 'auto' to run without stepping. Use only when the user asks to run Phase 4 or implement tasks from an ARCH doc — never trigger automatically from a coding request.

日本語の概要は準備中です。原文の説明を表示しています。

foyzulkarim/skills432026年9月4日 更新

After /start-task: park the current clean, pushed feature branch in its own issue-numbered nested worktree (.worktrees/<issue#>) and return the primary checkout to current main, so the next parallel lane can start. Use when the user says to move the branch or task to a worktree or open a parallel lane.

日本語の概要は準備中です。原文の説明を表示しています。

foyzulkarim/skills432026年9月4日 更新

foyzulkarim のスキルをすべて見る

このスキルの問題を報告する