Agent skill

Rigor Plugin Author

by rigortype in rigortype/rigor

Author a Rigor plugin in an adopting project or standalone rigor- gem for a DSL, framework, or metaprogramming pattern.

MPL-2.0Auto-check passedDevelopment

Install Rigor Plugin Author

skills CLI
$ npx skills add rigortype/rigor --skill rigor-plugin-author -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install rigortype/rigor rigor-plugin-author --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/rigortype/rigor.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/rigor-plugin-author .claude/skills/rigor-plugin-author && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
rigor-plugin-author
GitHub stars
106
Token cost
~1.9k tokens
SKILL.md length
876 words
Files
4 (incl. references)
Skills in repo
36
Repo updated
First seen
Licence
MPL-2.0

At a glance

Author a Rigor plugin in an adopting project or standalone rigor- gem for a DSL, framework, or metaprogramming pattern.

  • Rigor needs project-specific extension support
  • SKILL.md covers First: load the…, The plugin contract is pre-1.0, Read a real plugin — rigor… and Phase 0 — Standalone gem or…, plus 3 more sections
  • Calls bundle and make
  • Not for onboarding a project

What it does

Rigor Plugin Author is an agent skill from rigortype/rigor. Author a Rigor plugin in an adopting project or standalone rigor- gem for a DSL, framework, or metaprogramming pattern. Use when Rigor needs project-specific extension support; not for onboarding a project, reducing a baseline, or editing Rigor's bundled plugins.

Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `references/01-plan-and-scaffold.md`, `references/02-walker-and-types.md` and `references/03-test-and-ship.md`).

It sits in Development. The repository describes itself as: Inference-first static analysis for Ruby. The licence is MPL-2.0.

When your agent uses it

  • Rigor needs project-specific extension support
  • Not for onboarding a project
  • Reducing a baseline
  • Editing Rigors bundled plugins

Example prompts

  • “/rigor-plugin-author”

What it can do on your machine

Read from SKILL.md and the folder at commit 57a67cf. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • bundle
    • make

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Rigor Plugin Author loads about 1.9k tokens when it runs, and up to ~8.6k if it reads all its reference files. Until then it costs about 72 tokens; SKILL.md has 876 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~72
When it runs · the whole SKILL.md, loaded when a task matches
~1.9k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~8.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from rigortype/rigor at commit 57a67cf, republished under its MPL-2.0 licence (© rigortype). 876 words, ~1,930 tokens.

Download SKILL.mdSave it as .claude/skills/rigor-plugin-author/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
rigor-plugin-author
description
Author a Rigor plugin in an adopting project or standalone `rigor-*` gem for a DSL, framework, or metaprogramming pattern. Use when Rigor needs project-specific extension support; not for onboarding a project, reducing a baseline, or editing Rigor's bundled plugins.
license
MPL-2.0
metadata.version
0.1.0
metadata.homepage
https://github.com/rigortype/rigor

Rigor Plugin Author (external)

Author a Rigor plugin in your own repository — to teach Rigor a DSL, framework convention, or metaprogramming pattern its core analyzer cannot follow. The result is either a standalone rigor-<id> gem or a project-private plugin.

This skill targets external authors: you depend on the published rigortype gem (bundle add rigortype) and use the public plugin API surface — Rigor::Plugin::Base and friends. It does not assume the rigor monorepo's Makefile, spec/integration/ helpers, or Nix environment.

Authoring inside the rigor monorepo instead? If you are adding a plugin to rigor's own plugins/ or examples/ tree, use the contributor rigor-plugin-author skill bundled in that repo — it covers the in-repo layout, plugin_helpers.rb, and make verify. This skill is for plugins that live in your project.

First: load the version-current copy

The plugin contract is pre-1.0 and moving (see the next section), so this skill's step detail — in its references/ files — is exactly the kind that drifts between releases. Follow the copy that ships with the installed Rigor rather than any vendored or frozen copy of this file. Get the complete current procedure (body + all references, inline) in one call:

sh
rigor skill --full rigor-plugin-author

If you already loaded this skill via rigor skill you have the current copy — just proceed. If the rigor command is not available, run rigor-next-steps to install Rigor first, then come back.

The plugin contract is pre-1.0

Rigor's plugin contract (ADR-2) freezes at rigortype v1.0.0. Until then, treat each rigortype minor release as potentially contract-changing:

  • Pin rigortype to the minor you built against — "~> X.Y.0" in your gemspec or Gemfile, where X.Y comes from rigor --version.
  • Expect to revisit your plugin when you move to the next minor. The node-rule block signature, the Diagnostic shape, and the type carriers may shift.

Tell the user this up front: a plugin written today is valuable but not yet on a frozen foundation.

Read a real plugin — rigor plugin

You do not have to learn the Rigor::Plugin::Base surface from this prose alone. Because Rigor is installed on disk (mise / gem install), every plugin bundled in the toolchain is readable source. Use it as a worked-example library throughout this skill:

sh
rigor plugin list                              # all bundled + example plugins, with paths
rigor plugin print rigor-activesupport-core-ext  # a plugin's main source, inline
rigor plugin path  rigor-units                 # the dir, to browse with your file tool
rigor plugin root                              # gem root + public API (lib/rigor/plugin.rb)

rigor plugin (singular) browses the toolchain's plugins; rigor plugins (plural) reports your own .rigor.yml activation — different commands. When a step below is thinner than you need, read a shipped plugin that does the same thing. (Paths are local to where rigor runs — see the command's own note about containers.)

Phase 0 — Standalone gem or project-private?

Decide where the plugin lives before scaffolding anything.

SignalBuild it as
The DSL/library is reusable across projects, or you want to publish itStandalone rigor-<id> gem — own repo, own gemspec, RubyGems-publishable
The pattern is specific to one application's own code / in-house DSLProject-private plugin — lives inside the app repo, never published

Both produce the same plugin class and walker; they differ only in packaging and activation (Phase 1). When unsure, default to project-private — it is less ceremony, and a plugin can always be extracted into a gem later.

Do NOT use this skill for:

  • Onboarding a project to Rigor (writing .rigor.yml, choosing plugins) → rigor-project-init.
  • Reducing a baseline → rigor-baseline-reduce.
  • Editing an existing, already-working plugin — that is ordinary code work; modify the plugin class directly.
Show full SKILL.md (344 more words)Show less

How a plugin works — the one-paragraph model

A Rigor plugin is a Ruby class that subclasses Rigor::Plugin::Base, declares a manifest(id:, version:, …), and calls Rigor::Plugin.register(self) at load time. When .rigor.yml lists the plugin under plugins:, Rigor requires it and runs its node rules: the plugin declares node_rule(Prism::CallNode) { |node, scope, path, _fc, context| … }, and the engine — which owns the single AST walk per file — hands every matching node to the block along with a scope it can query for inferred types. The block returns an array of Rigor::Analysis::Diagnostic (built via the diagnostic helper). Optionally the plugin also declares dynamic_return(receivers:) / narrowing_facts(methods:) to supply a return type or narrowing facts for call sites the core analyzer types as Dynamic. #diagnostics_for_file is the file-rule surface for whole-file diagnostics a per-node walk can't express. See Phase 2.

Phase outline

PhaseWhatReference
1Package and scaffold — gem vs project-private layout, gemspec / Gemfile, the plugin class skeleton, .rigor.yml activation.references/01-plan-and-scaffold.md
2Node rules — node_rule (engine-owned walk), building Diagnostics via Base#diagnostic, querying scope.type_of, calling the target library directly instead of reimplementing it (ADR-39: Plugin::Inflector, Base.suggest), optional dynamic_return / narrowing_facts, RBS for the DSL.references/02-walker-and-types.md
3Test and ship — fixture-based tests (RSpec / Minitest, no rigor internals), version pinning, README, publish or keep private.references/03-test-and-ship.md

Reading order — modules

ModuleReadCovers
1references/01-plan-and-scaffold.mdPhase 1. The gem vs project-private packaging split, directory trees for both, gemspec template, project-private path-gem / RUBYLIB activation, the Rigor::Plugin::Base skeleton, .rigor.yml plugins: wiring.
2references/02-walker-and-types.mdPhase 2. The node_rule engine-owned AST walk over Prism nodes, the Base#diagnostic helper, asking the analyzer for inferred types via scope.type_of, two-pass / lexical context (node_file_context / NodeContext), the optional dynamic_return / narrowing_facts return-type hooks, calling the target library's pure methods directly rather than reimplementing them (ADR-39: Plugin::Inflector over the real ActiveSupport::Inflector; Base.suggest for did-you-mean), and shipping sig/*.rbs so the DSL's types are visible.
3references/03-test-and-ship.mdPhase 3. Testing a plugin from outside the monorepo — fixture projects driven through rigor check --format json, plus pure unit tests of dispatch tables — with RSpec or Minitest. Version pinning against the pre-1.0 contract. README. Publishing to RubyGems or keeping the plugin private.

© rigortype, MPL-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (references) in skills/rigor-plugin-author of rigortype/rigor.

  • SKILL.md
  • references/01-plan-and-scaffold.md
  • references/02-walker-and-types.md
  • references/03-test-and-ship.md

Open the folder on GitHubat commit 57a67cf

Compare with similar skills

Rigor Plugin Author next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Rigor Plugin Author compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Rigor Plugin Author this skillrigortype/rigor106—~1.9kAutomated safety check: PassMPL-2.0
Vercel Composition Patternssupabase/supabase111k59 repos~726Automated safety check: PassMIT
Finishing a Development Branchobra/superpowers296k5 repos~1.9kAutomated safety check: PassMIT
Typescript Advanced Typesrolling-scopes/rsschool-app10k25 repos~4.2kAutomated safety check: PassMPL-2.0
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Code Review ChecklistshareAI-lab/learn-claude-code78k5 repos~1.1kAutomated safety check: PassMIT

Similar skills

  • Official

    React composition patterns that scale. An agent skill from supabase/supabase.

    111k GitHub starsUsed in 59 repos~726 tokens
    DevelopmentAuto-check passed
  • Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.

    296k GitHub starsUsed in 5 repos~1.9k tokens
    DevelopmentAuto-check passed
  • Typescript Advanced Types

    rolling-scopes/rsschool-app

    Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications.

    10k GitHub starsUsed in 25 repos~4.2k tokens
    DevelopmentAuto-check passed
  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Code Review Checklist

    shareAI-lab/learn-claude-code

    Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.

    78k GitHub starsUsed in 5 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Greploop

    onyx-dot-app/onyx

    Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.

    32k GitHub starsUsed in 4 repos~3.3k tokens
    DevelopmentAuto-check passed

More from rigortype/rigor

All 36 skills in this repo
  • Rigor Regression Sweep

    rigortype/rigor

    Measure Rigor's baseline drift across the tagged history of a real OSS Ruby project.

    106 GitHub stars~2.9k tokensUpdated today
    Auto-check passed
  • Adjudicate a rigor unused report safely before proposing dead-code removal.

    106 GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Rigor Baseline Reduce

    rigortype/rigor

    Reduce an existing .rigor-baseline.yml rule by rule by triaging sites, fixing or intentionally suppressing them, and regenerating the baseline.

    106 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Rigor Doctor

    rigortype/rigor

    Validate that a project's Rigor configuration, plugins, paths, and baseline are actually healthy.

    106 GitHub stars~767 tokensUpdated today
    Auto-check passed
  • Rigor Plugin Author

    rigortype/rigor

    Author a new Rigor plugin, choosing plugins/ for production support or examples/ for a contract walkthrough.

    106 GitHub stars~3.3k tokensUpdated today
    Auto-check: notes
  • Rigor Plugin Review

    rigortype/rigor

    Audit an existing Rigor plugin against the current authoring contract and produce a prioritized upgrade path.

    106 GitHub stars~1.9k tokensUpdated today
    Auto-check passed

Categories

Questions about Rigor Plugin Author

What does Rigor Plugin Author do?

Author a Rigor plugin in an adopting project or standalone rigor- gem for a DSL, framework, or metaprogramming pattern. Rigor Plugin Author is an agent skill from rigortype/rigor. Author a Rigor plugin in an adopting project or standalone rigor- gem for a DSL, framework, or metaprogramming pattern.

When should I use Rigor Plugin Author?

Rigor Plugin Author fits situations like: rigor needs project-specific extension support; not for onboarding a project; reducing a baseline; editing Rigors bundled plugins.

How do I install Rigor Plugin Author in Claude Code?

Run `npx skills add rigortype/rigor --skill rigor-plugin-author -a claude-code`. Or copy the skill folder (skills/rigor-plugin-author in rigortype/rigor) into .claude/skills/rigor-plugin-author in your project. Claude Code loads it when a task matches its description.

How do I install Rigor Plugin Author in Codex?

Run `npx skills add rigortype/rigor --skill rigor-plugin-author -a codex`. Or copy the skill folder (skills/rigor-plugin-author in rigortype/rigor) into .agents/skills/rigor-plugin-author in your project. Codex loads it when a task matches its description.

Can I use Rigor Plugin Author in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add rigortype/rigor --skill rigor-plugin-author -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/rigor-plugin-author, .gemini/skills/rigor-plugin-author, .github/skills/rigor-plugin-author and .opencode/skills/rigor-plugin-author in your project.

What does Rigor Plugin Author need to run?

Going by SKILL.md and its folder, Rigor Plugin Author needs the command-line tools its instructions call (bundle and make).

Does Rigor Plugin Author access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Rigor Plugin Author safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Rigor Plugin Author use?

Rigor Plugin Author is published under the MPL-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Rigor Plugin Author use?

About 1.9k tokens (SKILL.md is roughly 7.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 6.7k tokens, read only when the agent opens those files.

What are the alternatives to Rigor Plugin Author?

Skills that share tags, products or a category with Rigor Plugin Author: Vercel Composition Patterns (supabase/supabase, 111k stars), Finishing a Development Branch (obra/superpowers, 296k stars), Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars) and PR Babysitter (openinterpreter/openinterpreter, 69k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Rigor Plugin Author?

rigortype (a GitHub organization) maintains it in rigortype/rigor, which has 106 GitHub stars. The repository holds 36 skills in this directory. The repository was last updated on October 8, 2026.

Source: rigortype/rigor on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.