mufeedvh/code2prompt
A CLI tool to convert your codebase into a single LLM prompt with source tree, prompt templating, and token counting.
解決する課題
大規模言語モデル (LLMs) にコンテキストを提供する際、複数のファイルをコピーしてフォーマットする手作業の煩雑さを解消します。ローカルのコードベースを自動的に取り込み、単一のLLM対応プロンプトに構造化することで、「コンテキストエンジニアリング」の課題を解決します。
仕組み
Rustで構築された高性能なツールで、.gitignore ルールを尊重しながらディレクトリを走査しファイルを読み取ります。Handlebarsテンプレートを使用して、収集したコードとメタデータを構造化されたプロンプトにフォーマットします。CLI(クイック利用)、TUI(インタラクティブな設定)、Python SDK(エージェントやRAGパイプラインへの統合)、MCPサーバー(エージェントアプリケーションによるローカルコードベースへの効率的なアクセス)など、複数のインターフェースを提供します。
対象ユーザー
AIチャットインターフェース(ChatGPTなど)に手動でコードコンテキストを提供している開発者、AIエージェントを構築している開発者、およびコードベースの取り込みを必要とするRAG (検索拡張生成) パイプラインを実装するエンジニア向けに設計されています。
主な特徴
- スマートフィルタリング: globパターンをサポートし、
.gitignore設定を自動的に尊重します。 - Git統合: 生成されるプロンプトにGitの差分、ログ、ブランチ比較を含めることができます。
- トークン見積もり: ファイルごとのトークン数を並列で算出し、プロンプトサイズを見積もります。
- 柔軟な出力: stdoutへの出力、ファイルへの保存、クリップボードへの直接コピーをサポートしています。
- 多言語サポート: CSV、Notebooks、JSONLなどの形式に対する特殊な読み取り機能を備えています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- Dispatch
- プロジェクト