Smart Commit Messages

Stop wrestling with commit message writer's block. CommitFox analyzes your staged changes and generates descriptive commit messages following conventional commit standards. Each message includes a type prefix, scope, and clear description of what changed and why.

  • Supports conventional commits format (feat, fix, docs, style, refactor, test, chore)
  • Understands code context from file names and diff content
  • Multi-language support for programming terms
# Input: your staged changes
+++ b/src/auth/login.ts
+export async function login(email: string) {
+  const user = await db.users.find(email);
+  return { success: true, user };
+}

# Output: commitfox suggestion
feat(auth): add user login function

Intelligent Split

When you work on multiple features in one coding session, CommitFox's split command analyzes your staged changes and groups them by logical commits. It identifies which files belong together and suggests how to break up your changes into atomic commits.

  • Groups related files by inferred intent
  • Shows file sizes and change counts
  • Interactive confirmation before committing
  • Supports manual adjustment of suggested groups
$ commitfox split

Analyzing staged changes...

✦ feat: add user authentication
    ├── login.ts      (+45)
    ├── auth.ts       (+128)
    └── middleware.ts (+67)

✦ fix: resolve CORS issue
    └── cors.ts       (+12)

✦ chore: update dependencies
    └── package.json  (+3)

Split into 3 commits? [Y/n]

Project Doctor

Keep your project healthy with automated diagnostics. The doctor command checks your repository for common issues: missing configuration files, large binary files, inconsistent formatting, and more. Get actionable recommendations to improve your project's maintainability.

  • Configurable health checks
  • Auto-fix support for common issues
  • Health score tracking over time
  • CI/CD integration ready
$ commitfox doctor

Checking project health...

   Git repository initialized
   Node.js v20.10.0 detected
   package.json present
   TypeScript configured
   No .gitignore found
   3 large files (>1MB) detected

Health score: 78/100
Run commitfox doctor --fix to auto-fix

Checkpoints

Working on a complex feature that spans multiple commits? Use checkpoints to save your progress without committing incomplete work. Stash your changes, continue switching contexts, and resume exactly where you left off.

  • Named checkpoint snapshots
  • Resumable work sessions
  • Shareable checkpoint bundles
  • Clean up when done
$ commitfox checkpoint

Creating checkpoint: "implement-user-auth"

   Stashed 12 staged changes
   Saved checkpoint
   Git stash list updated

To resume: commitfox checkpoint --resume
To delete: commitfox checkpoint --delete

Get started with CommitFox

Install the CLI and transform your commit workflow in minutes.

Read the Documentation