repomix について
Repomix Skill は、リポジトリを LLM 分析向けの単一ファイルにまとめる Repomix の使い方を案内します。コードレビューやセキュリティ監査、文書作成のためのコードコンテキスト準備に利用できます。
主な機能
- 01リポジトリを単一ファイルに集約
- 02XML、Markdown、JSON、プレーンテキスト出力
- 03クローンせずにリモートリポジトリを処理
- 04パターンによるファイル選択とコメント除去
- 05トークン数の計測と機密情報の検査
活用シーン
- 01AI によるコードレビュー用の準備
- 02セキュリティ監査用のサードパーティライブラリ整理
- 03文書作成用にコードと文書を収集
- 04バグ調査対象のモジュールを抽出
MCP 対応
README では AI アシスタント連携用の MCP サーバーが利用可能とされていますが、具体的な機能は説明されていません。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jackspace/ claudeskillz --skill repomixインストール後、Claude Code で/repomixを入力して読み込まれたか確認します。
同梱ファイルSKILL.json
詳細
Repomix スキル
Repomix はリポジトリ全体を、AI が扱いやすい単一のファイルにまとめます。Claude、ChatGPT、Gemini などの LLM にコードベースを渡すのに最適です。
使用する場面
次の場合に使用します:
- AI による分析のためにコードベースをパッケージ化する
- LLM のコンテキスト用にリポジトリのスナップショットを作成する
- サードパーティライブラリを分析する
- セキュリティ監査に備える
- ドキュメント生成用のコンテキストを作成する
- 大規模なコードベース全体にまたがるバグを調査する
- AI が扱いやすいコード表現を作成する
クイックスタート
インストールの確認
repomix --version
インストール
# npm
npm install -g repomix
# Homebrew (macOS/Linux)
brew install repomix
基本的な使い方
# Package current directory (generates repomix-output.xml)
repomix
# Specify output format
repomix --style markdown
repomix --style json
# Package remote repository
npx repomix --remote owner/repo
# Custom output with filters
repomix --include "src/**/*.ts" --remove-comments -o output.md
主な機能
リポジトリのパッケージ化
- 明確な区切りを備えた、AI に最適化された形式
- 複数の出力形式:XML、Markdown、JSON、プレーンテキスト
- Git を考慮した処理(.gitignore を尊重)
- LLM のコンテキスト管理のためのトークン数カウント
- 機密情報を対象としたセキュリティチェック
リモートリポジトリのサポート
クローンせずにリモートリポジトリを処理します:
# Shorthand
npx repomix --remote yamadashy/repomix
# Full URL
npx repomix --remote https://github.com/owner/repo
# Specific commit
npx repomix --remote https://github.com/owner/repo/commit/hash
コメントの削除
サポート対象言語(HTML、CSS、JavaScript、TypeScript、Vue、Svelte、Python、PHP、Ruby、C、C#、Java、Go、Rust、Swift、Kotlin、Dart、Shell、YAML)からコメントを削除します:
repomix --remove-comments
一般的な使用例
コードレビューの準備
# Package feature branch for AI review
repomix --include "src/**/*.ts" --remove-comments -o review.md --style markdown
セキュリティ監査
# Package third-party library
npx repomix --remote vendor/library --style xml -o audit.xml
ドキュメントの生成
# Package with docs and code
repomix --include "src/**,docs/**,*.md" --style markdown -o context.md
バグの調査
# Package specific modules
repomix --include "src/auth/**,src/api/**" -o debug-context.xml
実装計画
# Full codebase context
repomix --remove-comments --copy
コマンドラインリファレンス
ファイルの選択
# Include specific patterns
repomix --include "src/**/*.ts,*.md"
# Ignore additional patterns
repomix -i "tests/**,*.test.js"
# Disable .gitignore rules
repomix --no-gitignore
出力オプション
# Output format
repomix --style markdown # or xml, json, plain
# Output file path
repomix -o output.md
# Remove comments
repomix --remove-comments
# Copy to clipboard
repomix --copy
設定
# Use custom config file
repomix -c custom-config.json
# Initialize new config
repomix --init # creates repomix.config.json
トークン管理
Repomix は、個々のファイル、リポジトリ全体、形式ごとの出力について、トークン数を自動的にカウントします。
一般的な LLM のコンテキスト上限:
- Claude Sonnet 4.5:約200Kトークン
- GPT-4:約128Kトークン
- GPT-3.5:約16Kトークン
セキュリティに関する考慮事項
Repomix は Secretlint を使用して、機密データ(API キー、パスワード、認証情報、秘密鍵、AWS シークレット)を検出します。
ベストプラクティス:
- 共有する前に、必ず出力を確認してください
- 機密ファイルには
.repomixignoreを使用してください - 詳細不明のコードベースではセキュリティチェックを有効にしてください
.envファイルのパッケージ化は避けてください- ハードコードされた認証情報がないか確認してください
必要に応じてセキュリティチェックを無効にします:
repomix --no-security-check
実装ワークフロー
ユーザーからリポジトリのパッケージ化を依頼された場合:
-
要件の確認
- 対象のリポジトリ(ローカル/リモート)を特定する
- 必要な出力形式を確認する
- 機密データに関する懸念事項を確認する
-
フィルターの設定
- 関連ファイルの include パターンを設定する
- 不要なファイルの ignore パターンを追加する
- コメント削除を有効または無効にする
-
パッケージ化の実行
- 適切なオプションを指定して repomix を実行する
- トークン数を監視する
- セキュリティチェックの結果を確認する
-
出力の検証
- 生成されたファイルを確認する
- 機密データが含まれていないことを確認する
- 対象の LLM のトークン上限を確認する
-
コンテキストの提供
- パッケージ化されたファイルをユーザーに提供する
- トークン数の概要を含める
- 警告や問題があれば伝える
リファレンスドキュメント
詳細については、以下を参照してください:
- 設定リファレンス - 設定ファイル、include/exclude パターン、出力形式、高度なオプション
- 使用パターン - AI 分析ワークフロー、セキュリティ監査の準備、ドキュメント生成、ライブラリ評価
追加リソース
- GitHub:https://github.com/yamadashy/repomix
- ドキュメント:https://repomix.com/guide/
- MCP サーバー:AI アシスタントとの連携に利用可能