close
Skip to content

st0012/ruby-skills

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ruby Skills

Ruby's ecosystem has many version managers, a rapidly evolving typing and tooling landscape, and documentation scattered across multiple sources.

This Claude Code plugin helps Claude navigate each of these — activating the correct Ruby environment, pointing to authoritative docs, and avoiding common test framework pitfalls.

Installation

From terminal:

claude plugin marketplace add st0012/ruby-skills
claude plugin install ruby-skills@ruby-skills

From a Claude session:

/plugin marketplace add st0012/ruby-skills
/plugin install ruby-skills@ruby-skills

What to Expect

After installation, start a Claude Code session in any Ruby project — no configuration needed. The plugin activates automatically.

ruby-version-manager

Detects your version manager and project Ruby version, then activates it for every shell command. Supports chruby, rbenv, rvm, asdf, mise, rv, and shadowenv.

  • Reads .ruby-version, .tool-versions, .mise.toml, or Gemfile to determine the required version
  • Handles multi-manager environments — prompts you to set a preference if more than one is detected
  • Offers to install missing Ruby versions
  • Works around Claude Code's non-persistent shell by chaining activation with every command

See the technical reference for detection internals.

ruby-resource-map

Points Claude to authoritative documentation sources so it doesn't hallucinate APIs or rely on outdated references.

  • Version-specific docs for Ruby 3.2–4.0 and master
  • Core vs bundled vs default gem distinctions
  • Ruby typing ecosystem: Sorbet (RBI) and RBS, including Tapioca, Spoom, Steep, and RBS inline comments
  • Blocks known-bad sources (ruby-doc.org, apidock.com)

ruby-test-frameworks

Divergence reference for minitest and test-unit — the two frameworks have deceptively similar APIs with critical naming differences that cause NoMethodError at runtime.

  • Side-by-side assertion naming mismatches (assert_raises vs assert_raise, refute_* vs assert_not_*, etc.)
  • CLI flag comparison for test selection (by name, line number, class, pattern)
  • Lifecycle differences (startup/shutdown/cleanup in test-unit, before_setup/after_teardown in minitest)
  • Rails-specific aliases that blur the line between the two frameworks

Why not RSpec?

RSpec has a distinct API (describe/it/expect) that doesn't overlap with minitest or test-unit. LLMs rarely confuse it with other frameworks, so a divergence reference isn't needed.

Acknowledgements

The version manager detection logic is based on Ruby LSP's VS Code extension by Shopify.

Contributing

Feedback, use cases, issue reports, and contributions are all welcome on GitHub.

License

MIT License - see LICENSE for details.

About

Claude Code plugins for Ruby development.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages