Project

airarb

0.0
The project is in a healthy, maintained state
An elegant Ruby SDK for building AI Ruby Agent that interact with both LLMs and system tools
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Runtime

 Project Readme

Aidarb - AI Ruby Agent SDK

Note: This SDK is currently under active development and not ready for production use. Star and watch the repo to stay updated on our progress!

Gem Version Build Status License: MIT

An elegant Ruby SDK for building AI agents that interact with both LLMs and system tools. The SDK follows a minimalist philosophy focusing on three core components:

  • 🌍 Environment: File-based agent communication and queueing
  • 🛠️ Tools: A unified registry for various capabilities (browser control, file operations, etc.)
  • 💬 Prompt: ERB templates for natural Ruby-style prompt interpolation

Philosophy

Not every problem needs an agent. Use agents when tasks are:

  • Complex with multiple steps
  • Valuable enough to justify LLM costs
  • Ambiguous requiring intelligence

Keep agents simple and focused - this enables faster iteration and better understanding of their behavior.

Installation

Install the gem and add to the application's Gemfile by executing:

bundle add aidarb

If bundler is not being used to manage dependencies, install the gem by executing:

gem install aidarb

Usage

require 'aira'

# Create a web content extractor agent
agent :web_extractor do
  description "Extract main content from a webpage and save as markdown"

  input :url
  output :markdown_file

  tools :web_browser, :markdown_converter

  prompt <<-ERB
    Given the URL <%= url %>, extract the main content.
    Return the result as a markdown document.
  ERB

  # Optional validation loop
  loop do |context|
    File.exist?(context[:markdown_file])
  end
end

# Create a summarization agent
agent :summarizer do
  description "Create a concise summary of markdown content"

  input :markdown_file
  output :summary

  tools :file_ops

  prompt <<-ERB
    Read the markdown from <%= markdown_file %>
    Create a concise summary focusing on key points.
  ERB
end

# Run the agents in sequence
context = {url: "https://example.com/article"}
web_extractor.run(context)
summarizer.run(context)

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/cs3b/ai-ruby-agent-sdk.

License

The gem is available as open source under the terms of the MIT License.