profile

Static Ruby Monthly

Static Ruby Monthly | Issue 14, March 2026


Static Ruby Monthly

The only newsletter dedicated to static typing in Ruby

Welcome to another issue of the Newsletter!

Ruby’s relationship with static typing has always been complicated. Type systems used to feel optional. Something for the disciplined, or for teams at large companies. But in early 2026, something shifted. AI coding agents changed the equation entirely. Type systems went from nice-to-have to essential infrastructure. This month’s update captures that shift. It’s not about any single breakthrough. It’s about an ecosystem recognizing that types have become the shared language between humans and AI.

The experimental edge is sharp right now. I tested out T-Ruby myself and wrote about adding static typing to Ruby without runtime overhead. It’s an interesting toy to play with right now, though still far from production use. But things move fast, and Y. Fred Kim (@yhk1038) is pushing boundaries with this TypeScript-like syntax and inference experiment. Meanwhile, John Weir (@jweir) released Typewriter v0.2.0, a Sorbet-typed HTML template engine for Rails that brings type safety all the way to your view layer. Rails traditionally had this as a type-checking blind spot.

More ambitious still is Mark Tigchelaar’sAutopilot, a statically-typed scripting language inspired by Ruby that’s transitioning from semantic analysis into backend code generation. These projects aren’t just iterating on existing typing approaches; they’re asking: “What if Ruby’s typing system could be fundamentally different?”

The tooling supporting Ruby’s type systems is getting more mature. Peter Boling’srbs-merge v2.0.0 shows this evolution well. It now features TreeHaver backend integration (cross-platform parsing), explicit agent support via dependency tags, and covers 140 documented commands with 72.31% test coverage.

Shopify’s rubocop-sorbet v0.12.0 (led by @rafaelfranca with contributions from @issyl0 and @sambostock) fixed critical crashes in static analysis workflows. @damolinx released vscode-sorbetto v0.3.29 for editor integration, while @ybiquitous released rbs-mode v0.3.3 for Emacs compatibility. The ecosystem isn’t just growing. It’s compacting into reliable, well-maintained tools.

PROMOTION

Level up your Ruby skills with Static Typing!

Master RBS and write more robust, maintainable, and error-free Ruby code. This course gives you practical, real-world techniques you can apply immediately to any Ruby project.

🚀 Start building smarter Ruby software today!

And here’s where AI enters the picture. It turns out AI agents work much better when types are available.

When Stripe published their engineering blog about Minions (their internal coding agents), one detail stood out. The entire Stripe backend is written in Ruby with Sorbet typing. Rather than being an obstacle for their agents, it became useful. The types gave the agents context to work with across their large codebase.

Soonoh (@sh1nj1) built rails_mcp_engine v0.4.1 with this idea in mind. It uses Sorbet signatures as a reference for which tools are available to AI agents, generating both RubyLLM and FastMCP tool definitions from one place. This avoids duplication and keeps things in sync.

Similar ideas are showing up elsewhere. roam-code (by @Cranot and team) ships with 140 commands and 102 MCP tools across 27 languages, built with agent-assisted coding in mind. hamachan (@engneer-hamachan) built ruby-ti for MRuby with zero-annotation type inference and a beta “Code Navigator” specifically built to reduce the context agents must read. The AG-UI protocol (12.4k stars, 83 contributors) is another example. It explores how agents and user interfaces might talk to each other, with types helping structure that conversation.

Meanwhile, another trend appeared. Ruby developers are looking beyond web servers. A Reddit thread about turning Ruby into Electron desktop applications via RubyJS-Vite transpilation sparked discussion about tradeoffs and whether Tauri might be worth exploring.

This past month, no single typing system dominated. What stood out instead was a shift in thinking. Static typing has moved from abstract debates about purity and correctness toward something more practical. Types became a shared language. They let humans and AI understand what code is safe, what’s possible, and what it should do. You see it across the month: new type systems (T-Ruby, Typewriter, Autopilot), maturing tooling (rbs-merge, rubocop-sorbet, rbs-mode), AI integration strategies (Minions, rails_mcp_engine, ruby-ti), and new platforms (desktop Ruby, AG-UI). There’s a pattern in all of it. Ruby developers are treating types differently now. Not as an optional choice, but as a practical foundation.

The year ahead will tell us whether this becomes the new baseline for Ruby development.

Your faithful static typing guy ✍️

Your essential Static Typing toolset


rbs

official Ruby Signature solution from the Ruby team

repo


rbs-inline

extension to rbs lets you write signatures in line with your code

repo


steep

type checker for the Ruby signatures

repo


sorbet

type signature and type checking solution designed by Stripe

repo


ruby-lsp

essential toolset and extension, which helps with Ruby development in the VS Code

repo


steep VS Code extension

steep integration with the IDE

repo


rbs syntax VS Code extension

ease the work with RBS signature files

repo


“Let's do TDD - type-driven development”


You can find all the previous issues of the newsletter in my archive.

I’d really appreciate any feedback that could help improve the newsletter. Feel free to share your thoughts using this form.

Cheers,

c/o IP-Management #8826, Ludwig-Erhard-Str. 18, Hamburg, 20459
Unsubscribe · Preferences

Static Ruby Monthly

Discover insights, tips, and updates on RBS, Steep, Sorbet, and more. Perfect for developers who want to master type-safe Ruby programming.

Share this page