All projects

Planned

Ferrule

A Rust CLI for safer project checkpointing and Git-based save workflows.

Overview

Ferrule is a Rust CLI for safer project checkpointing and Git-based save workflows.

It turns the existing save habit into a deliberate tool with visible checks, clear failure behavior, and fewer repeated manual steps.

Why Ferrule exists

Frequent, understandable checkpoints make every other project safer to work on. Ferrule is intentionally small: it solves a real workflow problem without attempting to replace Git.

Because the same workflow is useful across Feo, Ferrisle, and future projects, improvements to Ferrule can benefit the entire ecosystem.

MVP goal

Ferrule provides a safe save and commit workflow with a status preview, optional checks, commit-message handling, a commit step, and an optional push.

Initial commands

  • ferrule status
  • ferrule save
  • ferrule save with an inline message
  • ferrule check
  • ferrule config

How the workflow should behave

  • Show Git status before committing.
  • Run configured checks before saving.
  • Commit only when required checks pass.
  • Accept an inline commit message.
  • Prompt for a message when one is missing.
  • Show clear failure output.
  • Never hide important Git output.

Definition of done

  • ferrule status works.
  • ferrule save with a message works.
  • An optional pre-save command works.
  • Failures are clear and safe.
  • The README shows example workflows.
  • The tool is useful in at least Feo and Ferrisle.

Non-goals for now

  • Replacing Git.
  • Complex branching workflows.
  • AI-generated commit messages.
  • GitHub API integration.
  • Automatic pushing by default.
  • Hidden behavior that obscures what Git is doing.

Next step

Create the smallest version that wraps git status and git commit safely.