git-factor

Split oversized Git commits into reviewable atomic commits with validation.

6|Updated Feb 6, 2026
One-click install
npx skills add https://github.com/dkubb/git-factor --skill git-factor
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: git-factor
Source: https://github.com/dkubb/git-factor/tree/main
Command: npx skills add https://github.com/dkubb/git-factor --skill git-factor

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you break a large or messy Git commit history into smaller atomic commits without losing the correctness of the final result.

Core Features & Use Cases

  • Commit Splitting: Split a single commit or a contiguous commit span into review-sized commits.
  • Deterministic Validation: Use a strict gate before the session starts and before every emitted commit to ensure each step remains green.
  • Recovery and Control: Retry, continue, finish, abort, and inspect active sessions while preserving the intended final tree.
  • Use Case: A developer has one oversized feature commit and wants to turn it into a clean sequence of focused commits that are easier to review, test, and revert.

Quick Start

Use the git-factor skill to split the selected Git commit or contiguous commit span into atomic commits with a deterministic validation gate.

Frequently Asked Questions about git-factor

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I split a large Git commit into smaller atomic commits?▼

To split a large Git commit into atomic commits, you can use an interactive rebase approach that breaks oversized commits into review-sized sequences while applying a deterministic validation gate to ensure each step remains green.

What is the best way to rewrite Git history for an oversized feature commit?▼

Rewriting Git history for an oversized feature commit involves breaking it into a clean sequence of focused commits that are easier to review, test, and revert, while preserving the final target tree of the original code.

Can I split a contiguous commit span instead of just a single Git commit?▼

Yes, you can split a contiguous commit span as well as a single commit. The process applies to interactive rebase refactors for debugging and cleanup, rejecting invalid spans and merge commits to maintain history integrity.

Do I need a clean repository before rewriting Git commit history?▼

Yes, a clean repository is required before rewriting Git commit history. You also need a deterministic --exec validation gate and ancestry checks to ensure the refactoring preserves the intended final tree without losing correctness.

Why does interactive rebase fail when splitting commits in a dirty repository?▼

Interactive rebase fails in a dirty repository because history rewriting requires a clean working state to preserve the final target tree. Without it, ancestry checks and validation gates cannot guarantee that each emitted commit remains green.

Does git-factor support retrying or aborting an active commit splitting session?▼

Yes, you can retry, continue, finish, abort, and inspect active commit splitting sessions. This recovery and control ensures the intended final tree is preserved throughout the interactive rebase refactoring process.