The most advanced agentic platform for Ruby on Rails.
Build Rails AI agents in your repo. Test, deploy, and monitor at /agents.
AGENTS.md · Getting started · Coding agents · Cloud
Rails Agent is the fullstack Rails agent framework for production Ruby on Rails agents. Define instructions, tools, skills, packages, knowledge, channels, memory, and evals as files in your app — then use the mounted /agents dashboard to connect BYOK credentials, attach guardrails, ship channels, and observe cost.
If you are searching for a Rails AI agents stack, an ActiveAgent alternative, or a RubyLLM alternative, Rails Agent is built for the full lifecycle: author in Git, run in the cloud, integrate responses into your product.
Website: rails-agent.com
Rails Agent is a better alternative to library-only LLM wrappers when you need agents that ship with your Rails app — not just chat completions.
| Rails Agent | RubyLLM | ActiveAgent | |
|---|---|---|---|
| Scope | Fullstack agentic platform (build → deploy → monitor) | LLM client / chat helpers | Agent abstractions in Rails |
| Source of truth | app/agents/ directories in your repo |
Application code calling the gem | Ruby classes / generators |
| Dashboard | Mounted /agents (test, deploy, traces, cost) |
— | Limited / app-owned |
| BYOK credentials | Cloud-managed references (credential: :company_openai) |
Env / config in app | App-managed |
| Build surface | Instructions, tools, connectors, channels, skills, packages, knowledge, memory, guardrails | Prompts + API calls | Tools / prompts (varies) |
| Playbooks & Library | Workspace reuse + proven scaffolds | — | — |
| Channels | Open-Wire Slack / Teams, web, cron, API | — | App-wired |
| Ops | Budget, guardrails, evals, Monitor | Caller responsibility | Caller responsibility |
| Best for | Production Rails AI agents end-to-end | Thin LLM access | Lightweight agent objects |
Positioning in one line: most advanced agentic platform for Ruby on Rails — git-native agents with cloud runtime, integrations, and production controls.
| Capability | What you get |
|---|---|
| Instructions | prompt.md system prompt — reviewed in Git |
| Tools | Ruby methods over your ActiveRecord models |
| Connectors | OAuth SaaS (Sheets, Notion, HubSpot, …) from the dashboard |
| Channels | Slack & Microsoft Teams via Open-Wire, web chat, cron, API |
| Skills | Composable multi-step behaviors |
| Packages | Install from Skills.sh / Microsoft APM / Smithery |
| Knowledge | Docs + database grounding for RAG-style answers |
| Memory | Conversation memory (Mem0-backed), on by default |
| Guardrails | Budget, model access, prompt injection, sensitive info |
- Playbooks — proven scaffolds (instructions + tools + skills) you customize locally
- Library — share tools, skills, packages, knowledge, and connectors across agents (
app/agents_library/+imports.yml) - Budget — per-agent / policy spend limits alongside usage monitoring
- Monitor — runs, traces, evals, and cost in
/agents - BYOK — attach OpenAI, Anthropic, and other provider keys in cloud; reference them in Ruby with no secrets in Git
- Open-Wire — Slack and Teams channel transport over
open-wire/1 - Composio email — email connectors for inbox workflows
- Evals — golden cases under
evals/before deploy - Deploy —
rails-agents sync→deploy→ production traffic - Coding-agent docs — Cursor, Codex, and Claude Code follow AGENTS.md and Coding agents
# Gemfile
gem "rails-agent-stack", "~> 0.1"bundle install
bin/rails generate rails_agents:install
bin/dev # → http://localhost:3000/agentsConnect your company workspace at /agents, then scaffold a database Knowledge agent:
bin/rails generate rails_agents:agent store_assistant --type knowledge --databaseZeitwerk: fresh installs add config/initializers/rails_agents_autoload.rb so app/agents/ and app/agents_library/ are agent assets, not application namespaces.
External coding agents (Cursor, Claude Code, Codex): start with docs/AGENTS.md.
bundle exec rails-agents run store_assistant "Where is order ORD-DEMO-1001?"
bundle exec rails-agents sync store_assistant
bundle exec rails-agents deploy store_assistant
bundle exec rails-agents logs store_assistantclass StoreAssistant < RailsAgents::KnowledgeAgent
model :gpt_5_mini, provider: :openai, credential: :company_openai
memory :conversation, provider: :mem0, recall: 5
knowledge_from "knowledge/**/*"
tool :lookup_order do |order_number:|
Order.find_by(number: order_number)&.as_json(only: %i[number status total_cents])
end
end:company_openai is a cloud credential reference — not a local env var. Enable managed memory from Build → Memory. Pass a stable session_id to .run so recall stays scoped per product user.
app/agents/store_assistant/
├── agent.rb # RailsAgents::KnowledgeAgent subclass
├── prompt.md # System prompt
├── imports.yml # Optional workspace Library attachments
├── tools/ # Optional extracted tools
├── skills/ # Composable behaviors
├── packages/ # Registry-installed capabilities
├── memory.rb # Memory config
├── knowledge/ # RAG files
├── connectors/ # External connection manifests
├── channels/ # Slack, Teams, web, API, …
└── evals/ # Smoke / regression cases
app/agents_library/
├── tools/
├── skills/
├── packages/
├── knowledge/
└── connectors/
Keep one-off work inside the agent. Move stable capabilities to app/agents_library/ when another agent should reuse them, then reference via imports.yml. rails-agents sync includes imported Library files in the runtime bundle without duplicating shared source in Git.
| Type | Main purpose | Example |
|---|---|---|
| Knowledge | Understand and answer | Order support from Rails data |
| Workflow | Execute predictable processes | Refund approval |
| Operations | Coordinate unpredictable real-world work | Incident coordination |
| Monitoring | Observe changes and respond | Inventory watcher |
Generator: --type knowledge|workflow|operations|monitoring and --database for DB-connected Knowledge scaffolds.
Integrate responses: every run returns output_text (Markdown), optional output_data, and typed items — same shape for every LLM. Guide: rails-agent.com/docs/run-response.
# config/initializers/rails_agents.rb
RailsAgents.configure do |config|
config.api_key = ENV["RAILS_AGENTS_API_KEY"] # platform key
config.project_id = ENV["RAILS_AGENTS_PROJECT_ID"]
endProvider keys live in the cloud dashboard → Model credentials (BYOK). Never commit them.
| Subscription | Fixed company plan (production workspaces) |
| Usage | Provider + infrastructure at pass-through cost |
| Service fee | 1% on metered usage (transparent line item) |
Details: rails-agent.com/pricing
bundle install
bundle exec rspecLocal path testing: sibling app rails-agents-boilerplate.
MIT — MIT-LICENSE