Fixes and features merged upstream in the Ruby & AI libraries I build on.

Most of my open-source work goes into the projects my own Rails and AI code depends on — RubyLLM and ActiveAgent today, React on Rails and Rails-ecosystem gems before that. The common thread is reliability: provider protocols, tool calls, attachments, structured output, caching and cost accounting, and making it all behave inside a Rails app.

45
PRs merged upstream
17
into RubyLLM
8
into ActiveAgent
2015
First upstream merge
Provider protocols Tool calls Attachments & multimodal Structured output Caching & cost accounting Performance Evals Rails integration

RubyLLM

crmne/ruby_llm · 17 merged · 2026

One Ruby API for OpenAI, Anthropic, Gemini and other providers, with Rails persistence built in.

All merged PRs →
  • #1082Static and agentic processing modes for Gemini video attachments
  • #1069Apply persisted prompt-cache boundaries to the next request
  • #1228Reprice reported costs when Message#cost gets a model
  • #1074Price Cohere replies from the units actually billed
  • #1044Keep citations on streamed OpenRouter replies
  • #1000Reject invalid OpenRouter batch embedding positions
  • #932Preload Action Text content to remove N+1 queries on persisted chats
  • #939Preload embedded Action Text blobs

ActiveAgent

activeagents/activeagent · 8 merged · 2026

A Rails framework for building AI agents.

All merged PRs →
  • #511Finish RubyLLM 2.x support: usage, streaming and protocol options
  • #503Fix RubyLLM tool-call replay and structured output
  • #598Compare evaluation models with statistical intervals and P95 latency
  • #595Nest arrays of objects in ActiveModel schemas with has_many
  • #603Build delegation contracts from SchemaGenerator classes

React on Rails

shakacode/react_on_rails · 8 merged · 2015–2016

React components in Rails, with server rendering. Early contributions to the install generator and project docs.

All merged PRs →
  • #144Stop the generator from overwriting application.js
  • #161Clearer --help output for the install generator
  • #152Start the project CHANGELOG from past release notes
  • #171Remove the jquery_ujs dependency

Ruby & Rails ecosystem

12 merged across 9 projects · 2014–2026

Rails upgrade fixes, admin tooling and LLM integrations in smaller gems.

  • #347Langchain.rb — add ask() to the ActiveRecord hooks
  • #73kt-paperclip — Rails 7 fix for AttachmentSizeValidator
  • #8carmen-rails — Rails 7 version detection
  • #8Administrate Batch Actions — toggle action buttons from the selection (4 merged)
  • #62Talorys — skip the real Wrangler test when templates aren't built

Full merged PR history on GitHub →

Projects I maintain, mostly RubyLLM and Rails extensions.

Unofficial community projects — small, focused, and documented in their READMEs, including what they don't do yet.

Hiring for Rails and AI? Get in touch →