simonmysun/ell
A command-line interface for LLMs written in Bash.
解決する課題
ellは、コマンドラインから直接大規模言語モデル(LLM)とやり取りするための、軽量で依存関係のない方法を提供します。ほぼ純粋なBashで書かれているため、複雑なインストールや重いランタイムを必要とせず、ターミナルベースのワークフローやシェルパイプラインにLLMを簡単に統合できます。
仕組み
このツールは、LLM API(OpenAIやGoogle Geminiなど)のラッパーとして機能します。curlを介してこれらのサービスにプロンプトを送信し、レスポンスを処理します。以下の複数のインタラクションモードをサポートしています:
- Standard Query: コマンドライン経由で直接プロンプトを送信します。
- Pipe-friendly: stdinを介して他のターミナルコマンドからの入力を受け付けます。
- Interactive Mode: ターミナル内でのチャット形式のインターフェース。
- Record Mode: ターミナルの入出力をキャプチャし、後続のLLMクエリのコンテキストとして使用します。
対象ユーザー
ターミナルでほとんどの時間を過ごし、シェル環境を離れることなくLLMに素早く最小限の方法でクエリを投げたい開発者、システム管理者、パワーユーザー。
ハイライト
- Pure Bash: 極めて軽量で、Unix系システムへのインストールが容易です。
- コンテキスト認識: ターミナルセッションを記録して、LLMにリアルタイムの技術的コンテキストを提供できます。
- パイプ統合: パイプを使用して他のCLIツールとシームレスに連携するように設計されています。
- 拡張性: テンプレートとプラグインをサポートし、関数呼び出しやカスタム動作を実装できます。
- プライバシー: 機密情報の編集(redaction)機能を備えています。