Concepts
Agent concepts in Rails terms
Inspired by Eve-style agent building blocks — expressed as a directory under app/agents/ and a RailsAgents::Base class.
class Support < RailsAgents::Base
model :auto # cloud-routed models
memory :conversation # managed memory
knowledge_from "knowledge/**/*"
tool :lookup_order do |order_id:|
Order.find(order_id).as_json
end
skill :triage, from: "skills/triage.rb"
channel :slack
endInstructions
The system prompt lives in prompt.md next to the agent. Chat edits and git commits share one source of truth.
app/agents/<name>/prompt.md
Tools
Each tool is a Ruby method. Arguments are keyword args; return values are JSON-safe hashes from your models.
app/agents/<name>/tools/
Skills
Skills are multi-step playbooks (refund flow, escalate, summarize). Compose them instead of stuffing the prompt.
app/agents/<name>/skills/
Channels
Where users meet the agent — Slack, Discord, web chat, cron, REST. One agent, many surfaces.
app/agents/<name>/channels/
Sandbox
Dashboard Test runs against a free cloud sandbox. No production side effects until you Deploy.
Dashboard → Test
Subagents
Other folders under app/agents/ can be called as specialists. Keep each agent small and focused.
app/agents/<other>/
Schedules
Cron-style channels fire digests and batch jobs without owning Sidekiq schedules yourself.
channels/cron.rb
Evals
YAML cases with expected outcomes. Run on every deploy so regressions fail before traffic.
app/agents/<name>/evals/
Ready to build?
Follow the getting started guide — gem, mount, vibe-code, test, deploy.
Getting started →