npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

gitbun

v1.3.0

Published

A comfy git commit assistant with optional AI enhancement

Downloads

728

Readme

Gitbun

npm version Build Status License: MIT Conventional Commits

Gitbun is a high-performance, intelligent CLI assistant designed to automate your Git workflow. It analyzes your staged changes and generates clean, professional, and context-aware Conventional Commits in milliseconds.

No more feat: update code or fix: fix bug. Gitbun understands your diffs.


Features

  • AI-Powered: Leverages local LLMs (via Ollama) or remote APIs to write human-like commit descriptions.
  • Conventional Commits: Automatically detects the correct type (feat, fix, refactor, etc.) and scope based on your file structure.
  • Smart Fallback: If the AI is offline, Gitbun uses a robust rule-based engine to generate structured messages.
  • Interactive Mode: Review, edit, or regenerate suggestions before committing.
  • Highly Configurable: Works out-of-the-box, but stays customizable via .smartcommitrc or package.json.
  • Privacy First: With local AI support, your code analysis never leaves your machine.

Quick Start

Generate a perfect commit message for your staged changes:

# Stage your changes first
git add .

# Run Gitbun
npx gitbun

Installation

Install globally for the best experience:

npm install -g gitbun

Then simply type gitbun in any repository.


Usage & Flags

| Flag | Shortcut | Description | |---|---|---| | --ai | - | Use AI enhancement (default: true) | | --no-ai | - | Disable AI, use rule-based fallback | | --model <name> | - | Specify a specific LLM model (e.g. llama3) | | --interactive | -i | Force interactive preview (default: true) | | --auto | - | Commit immediately without preview (DANGEROUS) | | --config <path> | - | Path to a custom config file | | --help | - | Show usage info |


Local AI Setup (Ollama)

To get the most out of Gitbun without sending data to the cloud, use it with Ollama:

  1. Install Ollama from ollama.com.
  2. Download a model (we recommend deepseek-coder or llama3):
    ollama pull deepseek-coder:6.7b
  3. Run Gitbun: Gitbun will automatically detect Ollama and use your downloaded models.

Configuration

Gitbun uses Cosmiconfig to find settings. You can add a smartcommit block to your package.json or create a .smartcommitrc file.

Example .smartcommitrc:

{
  "model": "deepseek-coder:6.7b",
  "ai": true,
  "interactive": true
}

Fallback & Rule-Based Logic

When AI is unavailable, Gitbun falls back to a deterministic summarization engine.

How it works:

  1. Type Detection: Analyzes filenames and extensions (e.g., .test.tstest, docs/docs).
  2. Scope Detection: Identifies the primary module or package directory affected.
  3. Verb Selection: Map types to imperative verbs (featadd, fixresolve).
  4. Noun Extraction: Pulls logical nouns from your folder structure.

Example Fallback Output: feat(analyzer): add scopeDetector


Examples & Screenshots

AI Enhancement Mode

Staged Diff:

- export function run() {
+ export async function run(options: CliOptions) {

Gitbun Output: feat(core): implement support for CLI options and async execution

Multi-file refactor

Staged: src/analyzer/typeClassifier.ts, src/analyzer/summarizer.ts Gitbun Output: refactor(analyzer): optimize classification and summarization logic


CI/CD Integration

Gitbun can be used in CI/CD pipelines using the --auto flag.

GitHub Actions Example:

jobs:
  auto-fix:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Run gitbun
        run: npx gitbun --auto
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Contributing

We welcome contributions! See the docs/ for more details on project architecture.

License

MIT © Nirvik Goswami