Nano Banana Pro
Agent skill for nano-banana-pro
Commit changes and close bead to finalize step completion
Sign in to like and favorite skills
Finalize a completed step: stage files, commit changes, and close the associated bead. This skill handles git operations and bead closure after implementation is complete.
The director invokes this skill with a JSON payload:
{ "speck_path": "string", "step_anchor": "string", "proposed_message": "string", "files_to_stage": ["string"], "auto_commit": true, "bead_id": "string | null", "close_reason": "string | null" }
Fields:
speck_path: Path to the speck (for commit message context)step_anchor: Which step was completed (e.g., #step-2)proposed_message: Commit message from the step's **Commit:** linefiles_to_stage: Files to add (from implementer output)auto_commit: If true, execute commit; if false, only prepare messagebead_id: Bead ID to close after commit (null if no bead linked)close_reason: Reason for closing bead (e.g., "Step completed per speck")Return JSON-only output (no prose, no markdown, no code fences):
{ "commit_message": "string", "files_staged": ["string"], "committed": true, "commit_hash": "string", "bead_closed": true, "bead_id": "string | null" }
Fields:
commit_message: The commit message used (or prepared)files_staged: List of files that were stagedcommitted: Whether a commit was actually madecommit_hash: Git commit hash (null if not committed)bead_closed: Whether the bead was closedbead_id: The bead ID that was closed (null if none)git status to see current stategit add for each file in files_to_stagegit commit -m "proposed_message"specks beads close <bead_id> --jsongit status to see current stategit-commit-message.txtUse the proposed_message from input. The message should follow this format:
<type>(<scope>): <description> - <detail> - <detail> - Completes specks-N.md Step M: Title
If bead_id is provided, close it after a successful commit:
specks beads close <bead_id> --reason "Step completed per speck" --json
The bead closure happens AFTER the commit succeeds. If the commit fails, do not close the bead.
The committer runs:
{ "commit_message": "feat(skills): add analysis skills (clarifier, critic, reviewer, auditor)", "files_staged": [ "skills/clarifier/SKILL.md", "skills/critic/SKILL.md", "skills/reviewer/SKILL.md", "skills/auditor/SKILL.md" ], "committed": true, "commit_hash": "abc1234", "bead_closed": true, "bead_id": "bd-specks-3.step-2" }
{ "commit_message": "feat(skills): add analysis skills (clarifier, critic, reviewer, auditor)", "files_staged": [], "committed": false, "commit_hash": null, "bead_closed": false, "bead_id": null }
If git operations fail:
{ "commit_message": "string", "files_staged": ["string"], "committed": false, "commit_hash": null, "bead_closed": false, "bead_id": null, "error": "description of the failure", "recommendation": "PAUSE" }
Common errors: