BoxcarsAI/boxcars
組み合わせ可能なツール、エージェント、複数プロバイダー対応エンジンでLLMアプリケーションを構築するRubyフレームワーク。
- スター
- 462
- フォーク
- 41
- 未解決の Issue
- 7
- 最終コミット
- 24 日前
これは何?
Boxcarsは、特にRubyやRailsのチーム向けに設計された、LLMを活用するシステムを構築するためのRubyフレームワークです。ドメインロジックはBoxcarオブジェクトとしてパッケージ化されます。Boxcarは、検索、計算、SQLやActiveRecordのクエリ、API呼び出しなどを担う単一目的のツールです。TrainはEngineと連携して複数のBoxcarをまとめ、問題を段階的に解決します。従来型のテキストベースReAct(ZeroShot)と、プロバイダー標準のツール呼び出し(ToolTrain)のどちらも利用できます。
共通のエンジンパターンを通じて、OpenAI、Anthropic、Groq、Gemini、Ollama、Perplexityなど複数のLLMプロバイダーに対応します。また、JSON Schemaによる出力制約、ベクトルストアとの連携、stdio経由でMCPサーバーに接続して外部MCPツールとローカルツールを統合する機能も備えています。より高機能なStationAgentでは、ライフサイクルコールバック、エージェントのネスト、ハンドオフ、イベントストリーミングを利用できます。
SQLおよびActiveRecord向けのBoxcarは、デフォルトで読み取り専用モードになっており、明示的に有効化しない限り書き込み操作を拒否します。プロバイダー用のgemは、使用時にのみ読み込まれます。また、Ruby 3.3以降が必要です。
主な機能
- 01ドメインロジックを、SQL、ActiveRecord、検索、API呼び出しに使える再利用可能なBoxcarツールとしてパッケージ化します。
- 02ZeroShotによるテキストベースのReActと、ToolTrainによるネイティブなツール呼び出しのオーケストレーションを提供します。
- 03共通エンジンを通じて、OpenAI、Anthropic、Groq、Gemini、Ollamaなどのプロバイダーに対応します。
- 04JSONEngineBoxcarを通じて、JSON Schemaに基づく構造化出力を強制します。
- 05stdio経由でMCPサーバーに接続し、そのツールをローカルのBoxcarと統合します。
- 06コールバック、ハンドオフ、イベントストリーミングに対応したStationAgentを提供します。
ユースケース
- ドキュメントやActiveRecord/SQLデータを検索する社内コパイロットの構築。
- Swaggerで定義されたAPIを呼び出し、複数段階の操作を実行する運用ボットの作成。
- 検索を優先するアシスタントで、ベクトル検索と後続のツール呼び出しを組み合わせる。
- 独自のRubyツールと、MCPサーバーから検出したツールを組み合わせる。
クイックスタート
- 1
Gemfile に gem を追加します(Ruby 3.3 以降が必要です)
gem 'boxcars' - 2
Bundler で依存関係をインストールします
bundle install - 3
または gem を直接インストールします
gem install boxcars
使う前に知っておきたいこと
- Ruby 3.3 以降が必要です。
- 多くの機能では、オプションの provider gem と API キーを別途追加する必要があります。
収録されている特集
トピック
よくある質問
- boxcars とは?
- 組み合わせ可能なツール、エージェント、複数プロバイダー対応エンジンでLLMアプリケーションを構築するRubyフレームワーク。 Boxcarsは、特にRubyやRailsのチーム向けに設計された、LLMを活用するシステムを構築するためのRubyフレームワークです。ドメインロジックはBoxcarオブジェクトとしてパッケージ化されます。Boxcarは、検索、計算、SQLやActiveRecordのクエリ、API呼び出しなどを担う単一目的のツールです。TrainはEngineと連携して複数のBoxcarをまとめ、問題を段階的に解決します。従来型のテキストベースReAct(ZeroShot)と、プロバイダー標準のツール呼び出し(ToolTrain)のどちらも利用できます。
- boxcars は無料で使えますか?ライセンスは?
- boxcars は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- boxcars は今もメンテナンスされていますか?
- 活発にメンテナンス中。boxcars の最終コミットは 2026年10月13日 です。
- boxcars は何に使えますか?
- ドキュメントやActiveRecord/SQLデータを検索する社内コパイロットの構築。 Swaggerで定義されたAPIを呼び出し、複数段階の操作を実行する運用ボットの作成。 検索を優先するアシスタントで、ベクトル検索と後続のツール呼び出しを組み合わせる。 独自のRubyツールと、MCPサーバーから検出したツールを組み合わせる。
- boxcars のインストール方法は?
- Gemfile に gem を追加します(Ruby 3.3 以降が必要です): gem 'boxcars' Bundler で依存関係をインストールします: bundle install または gem を直接インストールします: gem install boxcars
- boxcars はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/BoxcarsAI/boxcars
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
チャット、ツール、エージェント、埋め込み、Rails連携を単一のAPIで実現する、LLM機能開発向けRubyフレームワーク。
Claude、OpenAI、Gemini、OllamaやセルフホストモデルなどのLLMをElixirアプリケーションに統合するためのElixirライブラリ。
LLMへのクエリを意味的にキャッシュし、類似する質問への回答を再利用してAPIコストと応答時間を削減するライブラリです。
AIエージェントやIDE、アプリを、事前定義ツールまたはカスタムツールでデータベースにつなぐオープンソースのMCPサーバー。
ノーコードのグラフエディターを備えた、自律型のLLMエージェントやマルチエージェントワークフローを構築・実行するためのオープンソースプラットフォーム。