# I built GitX to turn messy AI-generated changes into clean Git history

> Source: <https://dev.to/musoyangrigor/i-built-gitx-to-turn-messy-ai-generated-changes-into-clean-git-history-1408>
> Published: 2026-08-11 19:46:10+00:00

AI coding agents are great at changing code.

But after a long session with Codex, Claude Code, Cursor, or another coding agent, I often end up with something like this:

```
17 changed files
```

Some files belong to a feature.

Some belong to a bug fix.

Some are tests.

Some are documentation.

Putting everything into one commit works, but it usually creates messy Git history.

So I built **GitX**.

GitX is a portable Git workflow skill for AI coding agents. It inspects your working tree, understands the changes, and helps organize them into clean, logical commits.

One of the commands I use most is:

```
gitx plan
```

It analyzes the current changes and proposes how they should be grouped without creating any commits.

For example:

```
3 logical commits

feat(auth): add token refresh support

fix(api): handle expired authentication sessions

test(auth): cover refresh token behavior
```

This lets me review the plan before GitX changes anything.

If the plan looks good:

```
gitx
```

GitX creates Conventional Commit messages based on the actual changes.

If the working tree contains multiple logical groups, GitX can separate them instead of automatically putting unrelated changes into one large commit.

I didn't want GitX to be only another commit-message generator.

It can also help with the rest of the Git workflow:

```
gitx status
gitx tree
gitx plan
gitx check

gitx branch
gitx pull
gitx push

gitx pr

gitx issue <description>
gitx issue <number>

gitx resolve
gitx amend
```

For example:

```
gitx check
```

GitX detects relevant project checks such as tests or linting and runs them before creating the commit.

```
gitx branch
```

GitX can infer an appropriate branch name and prefix such as `feat/`

, `fix/`

, `docs/`

, or `refactor/`

.

```
gitx pr
```

It inspects the commits and changes, pushes the branch when needed, and creates a pull request with a generated title and summary.

Create an issue:

```
gitx issue Login fails after token expiry
```

Or ask your coding agent to work on an existing issue:

```
gitx issue 123
gitx resolve
```

GitX can inspect an in-progress merge or rebase conflict, understand both sides of the change, resolve it, and run the relevant checks.

Git automation can become dangerous quickly, so GitX is intentionally conservative.

It avoids force-pushing, doesn't push during a normal commit workflow, protects existing branches and working-tree changes, and warns before including files that may contain credentials, secrets, logs, or build artifacts.

GitX follows the portable Agent Skills `SKILL.md`

format and is designed for compatible coding agents such as Codex, Claude Code, Cursor, and other Agent Skills-compatible tools.

Install it with:

```
npx skills add musoyangrigor/gitx-skill --skill gitx
```

Then start with:

```
gitx plan
```

GitHub:

[https://github.com/musoyangrigor/gitx-skill](https://github.com/musoyangrigor/gitx-skill)

I'd especially like feedback from developers using AI coding agents on real projects.

If you try GitX, I'm curious about one thing:

**Does gitx plan group your changes the way you would have grouped them yourself?**

If it doesn't, I'd love to hear about the case so I can improve it.
