๐ ask-rb
A Ruby ecosystem for building with LLMs.
ask-rb is a suite of Ruby gems for building any kind of LLM-powered application โ coding assistants, chatbots, batch processors, desktop apps, RAG pipelines, and automated workflows.
gem "ask-core"
gem "ask-llm-providers"
gem "ask-tools"
gem "ask-agent"
gem "ask-rag" # RAG pipeline (loaders, splitters, vector stores)
What youโll find here
| Section | Whatโs covered |
|---|---|
| Getting Started | Your first agent, Rails integration, core concepts |
| Core Components | LLM providers, tools, sandboxes, agent loop, skills, schema, auth, RAG pipeline |
| Rails Integration | Setup, database tools, persistence, error services |
| Service Contexts | GitHub, Slack, Notion, Linear, Sentry, Honeybadger |
| Production | Observability, monitoring, tracing, evaluation |
| Extending | Custom tools, providers, agents, services, skills |
| Reference | Gem index, API docs, design philosophy |
Design philosophy
- Providers own their protocols. No shared abstraction layer. Each provider gem knows its own wire format, auth, and streaming.
- Conversation, tools, and streaming are one thing. Always used together, shipped in the same gem.
- Schema is the only shared primitive. JSON Schema has zero LLM dependencies and stands alone.
- Auth lives with the provider. Each provider knows how to authenticate.
- Tools are separate from the agent loop. Tool definitions are useful without an agent โ batch scripts, REPLs, CI pipelines.
- Everything has a programmatic API. Every gem can be used from Ruby code directly, not just through a CLI.
- Extensions are first-class. Third-party code can hook into every lifecycle event.
- No required database. In-memory is the default. ActiveRecord is an optional adapter.
Ready to build?
Jump to Getting Started and have an agent running in 5 minutes.