omp packages

@siriuslan/atomic-git-commits1.0.0

Pi skill that builds multi-part changes as small, dependency-ordered steps and records each one as an atomic git commit titled TICKET-description

siriuslan Published 7 days ago MIT ~354 downloads/mo

Untested on omp

This is a pi package. No one has reported whether it works on omp yet. If you try it, add your result below.

Did it work for you?

Result

One report per person. A new report replaces your old one.

Reports 0

No reports yet.

Readme

atomic-git-commits

A pi skill that plans and builds a multi-part change as a sequence of small, self-contained steps, and records each step as its own git commit titled TICKET-description, e.g. PROJ-123-add UserRepository.

The resulting history reads like a short explanation of the feature. Reviewers can follow the reasoning, git bisect lands on a meaningful step, git blame leads to a message that explains why, and reverting a single commit switches the feature off.

What it does

  • Plans before coding: defines "done", lists every piece of work (including migrations, config, security and docs), and shows the commit plan as a table.
  • Orders the steps safely:
    1. Structural changes (refactors, renames, new dependencies) come first.
    2. Everything else follows in dependency order, so the project compiles at every commit.
    3. The user-visible entry point (endpoint, route, command, flag) is wired in last.
  • Keeps tests together: all new tests go in one commit, last by default, or first when you work test-first (TDD).
  • Stages carefully: commits only explicit paths after reviewing the staged diff, and never touches anyone else's uncommitted work.
  • Writes consistent messages: TICKET-imperative description, with a body that explains why. The ticket comes from your request, the branch name, or a question to you.
  • Stays safe: it only creates commits. It never amends, rebases, resets, stashes, pushes or switches branches.

It also handles work that is already written: it splits the existing changes into a sensible commit series.

Worked examples are included for a backend POST /users endpoint and a React sign-up page.

Install

From npm (recommended)

Installs just this skill:

pi install npm:atomic-git-commits

To pin a version for reproducible installs:

pi install npm:atomic-git-commits@1.0.0

To try it for a single session without installing:

pi -e npm:atomic-git-commits

Update later with pi update npm:atomic-git-commits. Pinned versions stay pinned, so change the version in the source to upgrade.

From GitHub (all skills in the repository)

This skill lives in the siriuslan/pi-packages repository. Installing from git loads every skill in that repository:

pi install git:github.com/siriuslan/pi-packages

To load only this skill from the git install, use the object form in ~/.pi/agent/settings.json:

{
  "packages": [
    {
      "source": "git:github.com/siriuslan/pi-packages",
      "skills": ["packages/atomic-git-commits/skills/*"]
    }
  ]
}

Usage

Pi loads the skill automatically when you implement a feature or fix that spans several files or layers, or when you ask it to commit work.

To invoke it explicitly, optionally with a ticket:

/skill:atomic-git-commits PROJ-123 add POST /users endpoint
/skill:atomic-git-commits add a sign-up page that calls POST /users
/skill:atomic-git-commits commit the changes I've already made

If you don't give a ticket, it takes the first ABC-123 pattern from the branch name. If there isn't one, it asks you, or falls back to a short kebab-case task name.

Contents

skills/atomic-git-commits/
├── SKILL.md                       # principles, procedure, git boundaries, message format, checklist
└── references/
    ├── backend-example.md         # worked example: POST /users endpoint
    └── frontend-example.md        # worked example: React sign-up page

Other agents

The skill follows the Agent Skills format, so the skills/atomic-git-commits/ folder also works in other compatible agents. Copy it into the agent's skills directory, for example ~/.claude/skills/ for Claude Code or .agents/skills/ in a project.

Development

Install from a local checkout. Pi loads it in place, so edits apply after /reload:

pi install /path/to/pi-packages/packages/atomic-git-commits

If you move the folder, run pi remove with the old absolute path, then pi install the new one.

License

MIT; see LICENSE.