rails-kit
A fast, compiled CLI for inspecting Rails projects. Most commands read project files directly without loading Rails, making them useful for developers, scripts, editors, and AI agents.
Installation
brew install janstol/tap/rails-kit
Or install with Go:
go install github.com/janstol/rails-kit@latest
Quick start
Run rails-kit anywhere inside a Rails project. It finds the Rails root automatically; use --root to override it.
rails-kit about
rails-kit schema users
rails-kit routes users
rails-kit related user
rails-kit model user
rails-kit skeleton app/services
Most inspection commands accept --json for structured output:
rails-kit model user --json
rails-kit --root /path/to/app schema users --json
Commands
| Command |
Description |
rails-kit about |
Summarize application, dependency, runtime, and database metadata |
rails-kit schema [table...] |
Inspect db/schema.rb or db/structure.sql |
rails-kit routes [pattern...] |
Show cached Rails routes or use offline static parsing |
rails-kit related <name> |
Find files related to a model |
rails-kit fixtures [name] |
Inspect test fixtures |
rails-kit locales [scope] |
Browse locale keys and values |
rails-kit model <name> |
Summarize an Active Record model |
rails-kit skeleton <input...> |
Generate compact Ruby AST skeletons through Prism |
rails-kit gem [name] |
Inspect Gemfile.lock |
rails-kit concerns [name] |
Inspect model and controller concerns |
rails-kit skill install|uninstall |
Manage the bundled Claude Code or Codex skill |
rails-kit completion bash|zsh|fish |
Generate shell completions |
rails-kit version |
Print version information |
See the command reference for examples, JSON shapes, requirements, and limitations.
Documentation
Runtime behavior
Most commands are pure Go and do not boot Rails. The main exceptions are:
routes runs bundle exec rails routes; use routes --static for a fast offline approximation.
about --runtime boots Rails to obtain active runtime values; plain about is static.
skeleton invokes Ruby with Prism but does not load the Rails application.
Static parsing is intentionally conservative. Consult the relevant reference page before using its output as a source of truth in CI or production audits.