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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@hugsylabs/plugin-git

v0.0.7

Published

Git integration for Hugsy - version control permissions and hooks

Readme

@hugsylabs/plugin-git

Git version control integration plugin for Hugsy that focuses solely on Git operations.

Features

  • 📝 Git command permissions for all common operations
  • 🔒 Protection for dangerous Git operations
  • 🎣 Pre and post operation hooks
  • 📂 Git configuration file management
  • 🐙 GitHub CLI integration
  • ⚠️ Smart warnings for risky operations

Installation

npm install @hugsylabs/plugin-git

Usage

Add to your .hugsyrc.json:

{
  "plugins": ["@hugsylabs/plugin-git"]
}

What It Adds

Permissions

Allowed operations:

  • Basic Git operations (init, clone, status)
  • Staging commands (add, reset, restore)
  • Committing (commit, amend)
  • Branching (branch, checkout, switch, merge, rebase)
  • Remote operations (fetch, pull, push)
  • History viewing (log, diff, show, blame)
  • Stashing (stash)
  • Tags (tag)
  • Submodules management
  • Configuration (config)
  • GitHub CLI (gh)
  • Git files editing (.gitignore, .gitattributes, etc.)

Ask before:

  • Force push operations
  • Hard reset operations
  • Clean operations
  • Interactive rebase
  • Cherry-pick operations
  • Revert operations
  • Global config changes

Denied:

  • Force push to main/master branches
  • Hard reset to origin/main or origin/master
  • Direct editing of .git directory

Hooks

Pre-operation:

  • Warns about uncommitted changes before checkout
  • Reminds to pull before push
  • Warns when pushing to main branch

Post-operation:

  • Reminds to push after commit
  • Notifies about merge completion
  • Suggests installing dependencies after clone

Single Responsibility

This plugin focuses solely on Git operations:

  • Version control commands
  • Repository management
  • Git configuration
  • GitHub CLI integration

It does NOT handle:

  • Build processes (use build plugins)
  • Testing (use @hugsylabs/plugin-test)
  • Code formatting (use format plugins)
  • General file operations (use other plugins)

Common Workflows

Basic Git Flow

git status          # ✅ Allowed
git add .           # ✅ Allowed
git commit -m "msg" # ✅ Allowed
git push            # ✅ Allowed (with warning for main branch)

Branch Management

git checkout -b feature  # ✅ Allowed
git merge develop       # ✅ Allowed
git rebase main        # ✅ Allowed

Dangerous Operations

git push --force        # ⚠️ Requires confirmation
git reset --hard        # ⚠️ Requires confirmation
git clean -fd          # ⚠️ Requires confirmation
git push --force origin main  # ❌ Denied

License

MIT