Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
Droid Plugin Marketplace avatar

Git Companion

  • Updated May 30, 2026
  • leonj1/plugin-marketplace

git-companion provides git-workflow skills for writing conventional commit messages and naming branches to standard conventions. It helps developers keep a clean, consistent git history. Aimed at teams that follow conventional-commit and branch-naming standards.

Key points

  • Conventional commit messages
  • Branch naming
  • Git workflow standards

Git Companion by the numbers

  • Data as of Jul 7, 2026 (Skillselion catalog sync)
/plugin marketplace add leonj1/plugin-marketplace
/plugin install git-companion@droid-plugin-marketplace

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Last updatedMay 30, 2026
Repositoryleonj1/plugin-marketplace

What it does

Write conventional commit messages and name branches following standard conventions during git workflows.

README.md

Plugin Marketplace

A self-hostable plugin marketplace that serves the same catalog to both Claude Code (via static marketplace.json) and Factory CLI (via a Smart-HTTP git endpoint) from a single nginx + git-http-backend container.

What you get How it's served
5 productivity plugins (code-review, git-companion, doc-generator, test-scaffold, refactor-helper) plugins/<name>/.claude-plugin/plugin.json + SKILL.md files
Claude Code marketplace GET /.claude-plugin/marketplace.json (static)
Factory CLI marketplace git clone http://<host>/droid/v1/marketplace.git (Smart-HTTP)
Browser UI /index.html, /repo.html, /admin.html

Screenshots

Marketplace (/index.html) Repository (/repo.html) Admin (/admin.html)
Marketplace Repository Admin
Plugin grid with search, category filter, and live stats. Same data the Claude Code CLI sees via /.claude-plugin/marketplace.json. Browseable file tree of the served bare repo. Click any file to open the in-page viewer (markdown-rendered, JSON pretty-print toggle, plain text). Per-plugin toggles for Enabled / Claude Code / Git visibility. Add an external GitHub plugin from the modal — its files are downloaded into the marketplace repo.

Quickstart (3 minutes)

Prereqs: Docker, make, git, curl.

git clone https://github.com/leonj1/plugin-marketplace.git
cd plugin-marketplace
make build      # ~30s first time, cached after
make start      # serves on http://localhost:8081
make test       # end-to-end test: HTTP + Smart-HTTP + git clone

Expected make test output ends with:

All checks passed — any CLI can clone http://localhost:8081/droid/v1/marketplace.git

Useful targets:

Target What it does
make build Build the Docker image
make start Run the container on port 8081
make stop Stop and remove the container
make restart stop + start
make status Is the server running?
make test Run test-clone.sh against the running container

Override the port: edit PORT at the top of Makefile:1.

How it works

                                  +-----------------------------+
   GET /.claude-plugin/...        |                             |
   GET /.factory-plugin/...  ---> |        nginx (static)       |
                                  |                             |
   git clone /droid/v1/...        |                             |
            |                     |       location ~ ^/droid    |
            v                     |               |             |
   info/refs, git-upload-pack --> |        fastcgi_pass         |
                                  |               |             |
                                  |  fcgiwrap -> git-http-backend
                                  |               |             |
                                  |        /var/lib/git/        |
                                  |   droid/v1/marketplace.git  |
                                  +-----------------------------+

On first start, start.sh:1-43 initializes a bare git repo at /var/lib/git/droid/v1/marketplace.git, commits the marketplace contents into it, and runs git update-server-info. Nginx (nginx.conf:23-30) routes /droid/v1/marketplace.git/... to git-http-backend via FastCGI; everything else is served as static files.

Configure your CLI to use this marketplace

Replace http://localhost:8081 with your deployed host (and port).

Claude Code

Claude Code reads the marketplace from a .claude-plugin/marketplace.json URL. Add an entry to your Claude Code settings (or use the in-app marketplace dialog) pointing at:

http://localhost:8081/.claude-plugin/marketplace.json

In ~/.claude/settings.json (path may vary by platform):

{
  "marketplaces": [
    {
      "name": "plugin-marketplace",
      "url": "http://localhost:8081/.claude-plugin/marketplace.json"
    }
  ]
}

After Claude Code reloads, the five plugins appear in the marketplace UI and can be installed individually.

Factory CLI

Factory CLI consumes the marketplace by cloning a git repository that contains a .factory-plugin/marketplace.json at its root. Point Factory CLI at the Smart-HTTP URL exposed by this container:

http://localhost:8081/droid/v1/marketplace.git

Verify it works without Factory CLI first:

git clone http://localhost:8081/droid/v1/marketplace.git
ls marketplace/.factory-plugin/marketplace.json

Then add the marketplace (~/.factory/config.json or via droid marketplace add, depending on your version):

{
  "marketplaces": [
    {
      "name": "plugin-marketplace",
      "git": "http://localhost:8081/droid/v1/marketplace.git"
    }
  ]
}

Factory CLI will git clone (and later git pull) this URL, parse .factory-plugin/marketplace.json, and surface the plugins listed there.

Same catalog, two formats

Both .claude-plugin/marketplace.json and .factory-plugin/marketplace.json in this repo describe the same five plugins with identical source paths under plugins/, so installing from either CLI gets you the same skills.

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.