SourceSageは、リポジトリの構造と内容を包括的に分析し、AIフレンドリーなドキュメントを生成するツールです。主にRepository_summary.mdの生成とRELEASE_REPORTの作成機能を提供します。
Important
このリポジトリのリリースノートやREADME、コミットメッセージの9割近くはclaude.aiやChatGPT4を活用したAIRA, SourceSage, Gaiah, HarmonAI_IIで生成しています。
最新の更新内容はGitHubのリリースページをご覧ください。
https://github.com/Sunwood-ai-labs/SourceSage/releases
SourceSageはシンプルで軽量なリポジトリ分析ツールで、以下の2つの主要機能を提供します:
リポジトリの構造、コミット情報、ファイル統計を包括的に分析し、AIフレンドリーなマークダウンドキュメントを生成します。
出力ファイル: .SourceSageAssets/DOCUMIND/Repository_summary.md
含まれる情報:
- 🌳 プロジェクトツリー構造
- 📋 Gitリポジトリ情報
- 📈 ファイルサイズと行数統計
- 📝 ファイル内容の詳細
Gitタグ間の差分を分析し、リリースレポートを自動生成します。
出力ファイル: .SourceSageAssets/RELEASE_REPORT/Report_{latest_tag}.md
含まれる情報:
- 🏷️ バージョン比較
- 🔄 変更差分の詳細
- 📋 コミット履歴
- 📂 リポジトリ基本情報(リモートURL、ブランチ、最新コミットなど)
- 📖 READMEの内容(オプション)
git clone https://github.com/Sunwood-ai-labs/SourceSage.git
cd SourceSage
uv sync
uv run ss
備考: パッケージとして利用する場合は pip install sourcesage
後に ss
(または sourcesage
)を実行できます。
# リポジトリサマリを生成
uv run ss
# リリースレポートを生成(タグ間の差分)
uv run ss --ss-mode GenerateReport
出力先:
- Repository Summary:
.SourceSageAssets/DOCUMIND/Repository_summary.md
- Release Report:
.SourceSageAssets/RELEASE_REPORT/Report_{latest_tag}.md
よく使うオプション(抜粋):
uv run ss --ss-output ./out # 出力先を変更
uv run ss --ignore-file .gitignore # 無視ルールを指定
uv run ss --ss-mode Sage # サマリのみ
uv run ss --ss-mode GenerateReport # レポートのみ
メモ:
--ignore-file
や--language-map
を省略すると、同梱デフォルト(sourcesage/config/
)を自動的に利用します。- Release Reportはタグが2つ以上ある場合に生成されます。
# Project: SourceSage
```plaintext
OS: posix
Directory: /path/to/project
├── .SourceSageignore
├── pyproject.toml
├── sourcesage/
│ ├── __init__.py
│ ├── cli.py
│ └── modules/
│ ├── DocuSum/
│ └── DiffReport/
│ ├── __init__.py
│ ├── git_diff.py
│ └── markdown_report.py
└── README.md
```
## 📊 プロジェクト統計
- 📅 作成日時: 2025-02-02 16:22:31
- 📁 総ディレクトリ数: 5
- 📄 総ファイル数: 15
- 📏 最大深度: 3
SourceSageは現代的なPython開発環境をサポートしています:
- Python: 3.8以降
- パッケージ管理: uv / pip
- ビルドシステム: hatchling
- 設定ファイル: pyproject.toml
# uvを使った開発環境構築
git clone https://github.com/Sunwood-ai-labs/SourceSage.git
cd SourceSage
uv sync
# テスト実行
uv run pytest
# コードフォーマット
uv run black sourcesage/
uv run isort sourcesage/
# パッケージビルド
uv build
# 1) リポジトリサマリを出力
uv run ss
# 2) リリースレポートを出力(タグ差分)
uv run ss --ss-mode GenerateReport
# 3) 出力先を変更
uv run ss --ss-output ./analysis
SourceSageの改善にご協力ください!バグの報告や機能追加の提案がある場合は、GitHubリポジトリでIssueを開くかプルリクエストを送信してください。
このプロジェクトはMITライセンスの下で公開されています。