fj/claude
Stephen Way 17d34d2d5d
Some checks are pending
ci / check (push) Waiting to run
plugin: structured source ({source:url, url:...}) for marketplace.json
The "./" string form is older schema; modern Claude Code requires the
structured form. Same shape as anthropics/claude-plugins-official
catalogue entries.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 16:23:21 -07:00
..
.claude-plugin plugin: structured source ({source:url, url:...}) for marketplace.json 2026-05-13 16:23:21 -07:00
skills/fj docs: add Claude Code plugin (skill: fj) 2026-05-13 16:12:36 -07:00
README.md plugin: add marketplace.json + correct install instructions 2026-05-13 16:15:24 -07:00

fj Claude Code plugin

A Claude Code plugin that teaches Claude how to use fj, the CLI for Forgejo and Gitea-compatible instances.

The plugin ships a single skill (fj) that activates when the user mentions fj, Forgejo, Gitea, or any forge-side action (open a PR, list issues, cut a release, request a review, etc.) on a non-GitHub host.

Install

This directory is both a Claude Code plugin AND a single-plugin marketplace. Add the marketplace once, then install:

/plugin marketplace add rasterandstate/fj-claude-plugin
/plugin install fj@rasterandstate

After install, the skill activates automatically when relevant.

Layout

claude/
├── .claude-plugin/
│   ├── plugin.json         plugin manifest (name, version, keywords)
│   └── marketplace.json    makes this directory a single-plugin
│                           marketplace; required for `/plugin install`
├── README.md               this file
└── skills/
    └── fj/
        └── SKILL.md        the skill body — what Claude reads

Updating

This claude/ directory is the source of truth, inside the fj repo at rasterhub.com/rasterstate/fj.

A mirror lives at github.com/rasterandstate/fj-claude-plugin, synced from this directory. To cut a new version:

  1. Bump version in .claude-plugin/plugin.json here.

  2. Update SKILL.md if new fj commands or workflows exist.

  3. Commit + push the fj repo.

  4. Sync the contents of claude/ over to the mirror repo and tag it:

    # From the fj repo root:
    rsync -av --delete --exclude=.git claude/ /path/to/fj-claude-plugin/
    cd /path/to/fj-claude-plugin
    git commit -am "sync from fj vX.Y.Z"
    git tag vX.Y.Z
    git push origin main vX.Y.Z
    

License

MIT, matching fj.