<p align="center">
<img src="https://raw.githubusercontent.com/Sunwood-ai-labs/SourceSage/main/docs/icon/SourceSage_icon4.png" width="100%">
<br>
<h1 align="center">SourceSage</h1>
<h2 align="center">
~Transforming code for AI~
<br>
<img alt="PyPI - Version" src="https://img.shields.io/pypi/v/sourcesage">
<img alt="PyPI - Format" src="https://img.shields.io/pypi/format/sourcesage">
<img alt="PyPI - Implementation" src="https://img.shields.io/pypi/implementation/sourcesage">
<img alt="PyPI - Status" src="https://img.shields.io/pypi/status/sourcesage">
<img alt="PyPI - Downloads" src="https://img.shields.io/pypi/dd/sourcesage">
<img alt="PyPI - Downloads" src="https://img.shields.io/pypi/dw/sourcesage">
<a href="https://app.codacy.com/gh/Sunwood-ai-labs/SourceSage/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade"><img src="https://app.codacy.com/project/badge/Grade/77ab7715dd23499d82caca4e7ea3b093"/></a>
[](https://github.com/Sunwood-ai-labs/SourceSage "Go to GitHub repo")

[](https://github.com/Sunwood-ai-labs/SourceSage)
[](https://github.com/Sunwood-ai-labs/SourceSage)
[](https://github.com/Sunwood-ai-labs/SourceSage)


<img alt="GitHub Actions Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Sunwood-ai-labs/SourceSage/publish-to-pypi.yml">
<br>
<p align="center">
<a href="https://hamaruki.com/"><b>[🌐 Website]</b></a> •
<a href="https://github.com/Sunwood-ai-labs"><b>[🐱 GitHub]</b></a>
<a href="https://x.com/hAru_mAki_ch"><b>[🐦 Twitter]</b></a> •
<a href="https://hamaruki.com/tag/sourcesage/"><b>[🍀 Official Blog]</b></a>
</p>
</h2>
</p>
SourceSageは、リポジトリの構造と内容を包括的に分析し、AIフレンドリーなドキュメントを生成するツールです。主にRepository_summary.mdの生成とRELEASE_REPORTの作成機能を提供します。
>[!IMPORTANT]
>このリポジトリのリリースノートやREADME、コミットメッセージの9割近くは[claude.ai](https://claude.ai/)や[ChatGPT4](https://chatgpt.com/)を活用した[AIRA](https://github.com/Sunwood-ai-labs/AIRA), [SourceSage](https://github.com/Sunwood-ai-labs/SourceSage), [Gaiah](https://github.com/Sunwood-ai-labs/Gaiah), [HarmonAI_II](https://github.com/Sunwood-ai-labs/HarmonAI_II)で生成しています。
## リリースノート
最新の更新内容はGitHubのリリースページをご覧ください。
https://github.com/Sunwood-ai-labs/SourceSage/releases
## 🎯 主な機能
SourceSageはシンプルで軽量なリポジトリ分析ツールで、以下の2つの主要機能を提供します:
### 1. 📋 Repository Summary Generation
リポジトリの構造、コミット情報、ファイル統計を包括的に分析し、AIフレンドリーなマークダウンドキュメントを生成します。
**出力ファイル**: `.SourceSageAssets/DOCUMIND/Repository_summary.md`
**含まれる情報**:
- 🌳 プロジェクトツリー構造
- 📋 Gitリポジトリ情報
- 📈 ファイルサイズと行数統計
- 📝 ファイル内容の詳細
### 2. 📄 Release Report Generation
Gitタグ間の差分を分析し、リリースレポートを自動生成します。
**出力ファイル**: `.SourceSageAssets/RELEASE_REPORT/Report_{latest_tag}.md`
**含まれる情報**:
- 🏷️ バージョン比較
- 🔄 変更差分の詳細
- 📋 コミット履歴
- 📂 リポジトリ基本情報(リモートURL、ブランチ、最新コミットなど)
- 📖 READMEの内容(オプション)
## 🚀 クイックスタート
### 📦 インストール(最短)
```bash
git clone https://github.com/Sunwood-ai-labs/SourceSage.git
cd SourceSage
uv sync
uv run ss
```
備考: パッケージとして利用する場合は `pip install sourcesage` 後に `ss`(または `sourcesage`)を実行できます。
### 🗺️ 基本的な使用方法(必要最小限)
```bash
# リポジトリサマリを生成
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`
よく使うオプション(抜粋):
```bash
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つ以上ある場合に生成されます。
### 📊 生成される内容例
#### Repository Summary
```markdown
# 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
### 開発用セットアップ
```bash
# 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
```
## 💡 使用例
```bash
# 1) リポジトリサマリを出力
uv run ss
# 2) リリースレポートを出力(タグ差分)
uv run ss --ss-mode GenerateReport
# 3) 出力先を変更
uv run ss --ss-output ./analysis
```
## 貢献
SourceSageの改善にご協力ください!バグの報告や機能追加の提案がある場合は、[GitHubリポジトリ](https://github.com/Sunwood-ai-labs/SourceSage)でIssueを開くかプルリクエストを送信してください。
## ライセンス
このプロジェクトは[MITライセンス](LICENSE)の下で公開されています。
Raw data
{
"_id": null,
"home_page": null,
"name": "sourcesage",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "ai, analysis, documentation, markdown, repository",
"author": null,
"author_email": "Sunwood AI Labs <sunwood.ai.labs@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/04/75/e8f11ec762e595683589deb7745a1d3a20579a3d82b678a43d1873115dda/sourcesage-7.0.1.tar.gz",
"platform": null,
"description": "<p align=\"center\">\n<img src=\"https://raw.githubusercontent.com/Sunwood-ai-labs/SourceSage/main/docs/icon/SourceSage_icon4.png\" width=\"100%\">\n<br>\n<h1 align=\"center\">SourceSage</h1>\n<h2 align=\"center\">\n \uff5eTransforming code for AI\uff5e\n\n <br>\n <img alt=\"PyPI - Version\" src=\"https://img.shields.io/pypi/v/sourcesage\">\n <img alt=\"PyPI - Format\" src=\"https://img.shields.io/pypi/format/sourcesage\">\n <img alt=\"PyPI - Implementation\" src=\"https://img.shields.io/pypi/implementation/sourcesage\">\n <img alt=\"PyPI - Status\" src=\"https://img.shields.io/pypi/status/sourcesage\">\n <img alt=\"PyPI - Downloads\" src=\"https://img.shields.io/pypi/dd/sourcesage\">\n <img alt=\"PyPI - Downloads\" src=\"https://img.shields.io/pypi/dw/sourcesage\">\n <a href=\"https://app.codacy.com/gh/Sunwood-ai-labs/SourceSage/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade\"><img src=\"https://app.codacy.com/project/badge/Grade/77ab7715dd23499d82caca4e7ea3b093\"/></a>\n\n [](https://github.com/Sunwood-ai-labs/SourceSage \"Go to GitHub repo\")\n\n[](https://github.com/Sunwood-ai-labs/SourceSage)\n[](https://github.com/Sunwood-ai-labs/SourceSage)\n[](https://github.com/Sunwood-ai-labs/SourceSage)\n\n\n<img alt=\"GitHub Actions Workflow Status\" src=\"https://img.shields.io/github/actions/workflow/status/Sunwood-ai-labs/SourceSage/publish-to-pypi.yml\">\n <br>\n\n<p align=\"center\">\n <a href=\"https://hamaruki.com/\"><b>[\ud83c\udf10 Website]</b></a> \u2022\n <a href=\"https://github.com/Sunwood-ai-labs\"><b>[\ud83d\udc31 GitHub]</b></a>\n <a href=\"https://x.com/hAru_mAki_ch\"><b>[\ud83d\udc26 Twitter]</b></a> \u2022\n <a href=\"https://hamaruki.com/tag/sourcesage/\"><b>[\ud83c\udf40 Official Blog]</b></a>\n</p>\n\n</h2>\n\n\n</p>\n\n\n\nSourceSage\u306f\u3001\u30ea\u30dd\u30b8\u30c8\u30ea\u306e\u69cb\u9020\u3068\u5185\u5bb9\u3092\u5305\u62ec\u7684\u306b\u5206\u6790\u3057\u3001AI\u30d5\u30ec\u30f3\u30c9\u30ea\u30fc\u306a\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u751f\u6210\u3059\u308b\u30c4\u30fc\u30eb\u3067\u3059\u3002\u4e3b\u306bRepository_summary.md\u306e\u751f\u6210\u3068RELEASE_REPORT\u306e\u4f5c\u6210\u6a5f\u80fd\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002\n\n\n>[!IMPORTANT]\n>\u3053\u306e\u30ea\u30dd\u30b8\u30c8\u30ea\u306e\u30ea\u30ea\u30fc\u30b9\u30ce\u30fc\u30c8\u3084README\u3001\u30b3\u30df\u30c3\u30c8\u30e1\u30c3\u30bb\u30fc\u30b8\u306e9\u5272\u8fd1\u304f\u306f[claude.ai](https://claude.ai/)\u3084[ChatGPT4](https://chatgpt.com/)\u3092\u6d3b\u7528\u3057\u305f[AIRA](https://github.com/Sunwood-ai-labs/AIRA), [SourceSage](https://github.com/Sunwood-ai-labs/SourceSage), [Gaiah](https://github.com/Sunwood-ai-labs/Gaiah), [HarmonAI_II](https://github.com/Sunwood-ai-labs/HarmonAI_II)\u3067\u751f\u6210\u3057\u3066\u3044\u307e\u3059\u3002\n\n## \u30ea\u30ea\u30fc\u30b9\u30ce\u30fc\u30c8\n\n\u6700\u65b0\u306e\u66f4\u65b0\u5185\u5bb9\u306fGitHub\u306e\u30ea\u30ea\u30fc\u30b9\u30da\u30fc\u30b8\u3092\u3054\u89a7\u304f\u3060\u3055\u3044\u3002\n\nhttps://github.com/Sunwood-ai-labs/SourceSage/releases\n\n\n## \ud83c\udfaf \u4e3b\u306a\u6a5f\u80fd\n\nSourceSage\u306f\u30b7\u30f3\u30d7\u30eb\u3067\u8efd\u91cf\u306a\u30ea\u30dd\u30b8\u30c8\u30ea\u5206\u6790\u30c4\u30fc\u30eb\u3067\u3001\u4ee5\u4e0b\u306e2\u3064\u306e\u4e3b\u8981\u6a5f\u80fd\u3092\u63d0\u4f9b\u3057\u307e\u3059\uff1a\n\n### 1. \ud83d\udccb Repository Summary Generation\n\n\u30ea\u30dd\u30b8\u30c8\u30ea\u306e\u69cb\u9020\u3001\u30b3\u30df\u30c3\u30c8\u60c5\u5831\u3001\u30d5\u30a1\u30a4\u30eb\u7d71\u8a08\u3092\u5305\u62ec\u7684\u306b\u5206\u6790\u3057\u3001AI\u30d5\u30ec\u30f3\u30c9\u30ea\u30fc\u306a\u30de\u30fc\u30af\u30c0\u30a6\u30f3\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u751f\u6210\u3057\u307e\u3059\u3002\n\n**\u51fa\u529b\u30d5\u30a1\u30a4\u30eb**: `.SourceSageAssets/DOCUMIND/Repository_summary.md`\n\n**\u542b\u307e\u308c\u308b\u60c5\u5831**:\n- \ud83c\udf33 \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c4\u30ea\u30fc\u69cb\u9020\n- \ud83d\udccb Git\u30ea\u30dd\u30b8\u30c8\u30ea\u60c5\u5831\n- \ud83d\udcc8 \u30d5\u30a1\u30a4\u30eb\u30b5\u30a4\u30ba\u3068\u884c\u6570\u7d71\u8a08\n- \ud83d\udcdd \u30d5\u30a1\u30a4\u30eb\u5185\u5bb9\u306e\u8a73\u7d30\n\n### 2. \ud83d\udcc4 Release Report Generation \n\nGit\u30bf\u30b0\u9593\u306e\u5dee\u5206\u3092\u5206\u6790\u3057\u3001\u30ea\u30ea\u30fc\u30b9\u30ec\u30dd\u30fc\u30c8\u3092\u81ea\u52d5\u751f\u6210\u3057\u307e\u3059\u3002\n\n**\u51fa\u529b\u30d5\u30a1\u30a4\u30eb**: `.SourceSageAssets/RELEASE_REPORT/Report_{latest_tag}.md`\n\n**\u542b\u307e\u308c\u308b\u60c5\u5831**:\n- \ud83c\udff7\ufe0f \u30d0\u30fc\u30b8\u30e7\u30f3\u6bd4\u8f03\n- \ud83d\udd04 \u5909\u66f4\u5dee\u5206\u306e\u8a73\u7d30\n- \ud83d\udccb \u30b3\u30df\u30c3\u30c8\u5c65\u6b74\n - \ud83d\udcc2 \u30ea\u30dd\u30b8\u30c8\u30ea\u57fa\u672c\u60c5\u5831\uff08\u30ea\u30e2\u30fc\u30c8URL\u3001\u30d6\u30e9\u30f3\u30c1\u3001\u6700\u65b0\u30b3\u30df\u30c3\u30c8\u306a\u3069\uff09\n - \ud83d\udcd6 README\u306e\u5185\u5bb9\uff08\u30aa\u30d7\u30b7\u30e7\u30f3\uff09\n\n\n## \ud83d\ude80 \u30af\u30a4\u30c3\u30af\u30b9\u30bf\u30fc\u30c8\n\n### \ud83d\udce6 \u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\uff08\u6700\u77ed\uff09\n\n```bash\ngit clone https://github.com/Sunwood-ai-labs/SourceSage.git\ncd SourceSage\nuv sync\nuv run ss\n```\n\n\u5099\u8003: \u30d1\u30c3\u30b1\u30fc\u30b8\u3068\u3057\u3066\u5229\u7528\u3059\u308b\u5834\u5408\u306f `pip install sourcesage` \u5f8c\u306b `ss`\uff08\u307e\u305f\u306f `sourcesage`\uff09\u3092\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002\n\n### \ud83d\uddfa\ufe0f \u57fa\u672c\u7684\u306a\u4f7f\u7528\u65b9\u6cd5\uff08\u5fc5\u8981\u6700\u5c0f\u9650\uff09\n\n```bash\n# \u30ea\u30dd\u30b8\u30c8\u30ea\u30b5\u30de\u30ea\u3092\u751f\u6210\nuv run ss\n\n# \u30ea\u30ea\u30fc\u30b9\u30ec\u30dd\u30fc\u30c8\u3092\u751f\u6210\uff08\u30bf\u30b0\u9593\u306e\u5dee\u5206\uff09\nuv run ss --ss-mode GenerateReport\n```\n\n\u51fa\u529b\u5148:\n- Repository Summary: `.SourceSageAssets/DOCUMIND/Repository_summary.md`\n- Release Report: `.SourceSageAssets/RELEASE_REPORT/Report_{latest_tag}.md`\n\n\u3088\u304f\u4f7f\u3046\u30aa\u30d7\u30b7\u30e7\u30f3\uff08\u629c\u7c8b\uff09:\n\n```bash\nuv run ss --ss-output ./out # \u51fa\u529b\u5148\u3092\u5909\u66f4\nuv run ss --ignore-file .gitignore # \u7121\u8996\u30eb\u30fc\u30eb\u3092\u6307\u5b9a\nuv run ss --ss-mode Sage # \u30b5\u30de\u30ea\u306e\u307f\nuv run ss --ss-mode GenerateReport # \u30ec\u30dd\u30fc\u30c8\u306e\u307f\n```\n\n\u30e1\u30e2:\n- `--ignore-file`\u3084`--language-map`\u3092\u7701\u7565\u3059\u308b\u3068\u3001\u540c\u68b1\u30c7\u30d5\u30a9\u30eb\u30c8\uff08`sourcesage/config/`\uff09\u3092\u81ea\u52d5\u7684\u306b\u5229\u7528\u3057\u307e\u3059\u3002\n- Release Report\u306f\u30bf\u30b0\u304c2\u3064\u4ee5\u4e0a\u3042\u308b\u5834\u5408\u306b\u751f\u6210\u3055\u308c\u307e\u3059\u3002\n\n### \ud83d\udcca \u751f\u6210\u3055\u308c\u308b\u5185\u5bb9\u4f8b\n\n#### Repository Summary\n\n```markdown\n # Project: SourceSage\n\n ```plaintext\n OS: posix\n Directory: /path/to/project\n\n \u251c\u2500\u2500 .SourceSageignore\n \u251c\u2500\u2500 pyproject.toml\n \u251c\u2500\u2500 sourcesage/\n \u2502 \u251c\u2500\u2500 __init__.py\n \u2502 \u251c\u2500\u2500 cli.py\n \u2502 \u2514\u2500\u2500 modules/\n \u2502 \u251c\u2500\u2500 DocuSum/\n \u2502 \u2514\u2500\u2500 DiffReport/\n \u2502 \u251c\u2500\u2500 __init__.py\n \u2502 \u251c\u2500\u2500 git_diff.py\n \u2502 \u2514\u2500\u2500 markdown_report.py\n \u2514\u2500\u2500 README.md\n ```\n\n ## \ud83d\udcca \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u7d71\u8a08\n\n - \ud83d\udcc5 \u4f5c\u6210\u65e5\u6642: 2025-02-02 16:22:31\n - \ud83d\udcc1 \u7dcf\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u6570: 5\n - \ud83d\udcc4 \u7dcf\u30d5\u30a1\u30a4\u30eb\u6570: 15\n - \ud83d\udccf \u6700\u5927\u6df1\u5ea6: 3\n```\n\n## \ud83d\udee0\ufe0f \u958b\u767a\u74b0\u5883\n\nSourceSage\u306f\u73fe\u4ee3\u7684\u306aPython\u958b\u767a\u74b0\u5883\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u307e\u3059\uff1a\n\n- **Python**: 3.8\u4ee5\u964d\n- **\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406**: uv / pip\n- **\u30d3\u30eb\u30c9\u30b7\u30b9\u30c6\u30e0**: hatchling\n- **\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb**: pyproject.toml\n\n### \u958b\u767a\u7528\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\n\n```bash\n# uv\u3092\u4f7f\u3063\u305f\u958b\u767a\u74b0\u5883\u69cb\u7bc9\ngit clone https://github.com/Sunwood-ai-labs/SourceSage.git\ncd SourceSage\nuv sync\n\n# \u30c6\u30b9\u30c8\u5b9f\u884c\nuv run pytest\n\n# \u30b3\u30fc\u30c9\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\nuv run black sourcesage/\nuv run isort sourcesage/\n\n# \u30d1\u30c3\u30b1\u30fc\u30b8\u30d3\u30eb\u30c9\nuv build\n```\n\n\n## \ud83d\udca1 \u4f7f\u7528\u4f8b\n\n```bash\n# 1) \u30ea\u30dd\u30b8\u30c8\u30ea\u30b5\u30de\u30ea\u3092\u51fa\u529b\nuv run ss\n\n# 2) \u30ea\u30ea\u30fc\u30b9\u30ec\u30dd\u30fc\u30c8\u3092\u51fa\u529b\uff08\u30bf\u30b0\u5dee\u5206\uff09\nuv run ss --ss-mode GenerateReport\n\n# 3) \u51fa\u529b\u5148\u3092\u5909\u66f4\nuv run ss --ss-output ./analysis\n```\n\n## \u8ca2\u732e\n\nSourceSage\u306e\u6539\u5584\u306b\u3054\u5354\u529b\u304f\u3060\u3055\u3044\uff01\u30d0\u30b0\u306e\u5831\u544a\u3084\u6a5f\u80fd\u8ffd\u52a0\u306e\u63d0\u6848\u304c\u3042\u308b\u5834\u5408\u306f\u3001[GitHub\u30ea\u30dd\u30b8\u30c8\u30ea](https://github.com/Sunwood-ai-labs/SourceSage)\u3067Issue\u3092\u958b\u304f\u304b\u30d7\u30eb\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n\n## \u30e9\u30a4\u30bb\u30f3\u30b9\n\n\u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306f[MIT\u30e9\u30a4\u30bb\u30f3\u30b9](LICENSE)\u306e\u4e0b\u3067\u516c\u958b\u3055\u308c\u3066\u3044\u307e\u3059\u3002\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Repository analysis tool that generates AI-friendly documentation",
"version": "7.0.1",
"project_urls": {
"Homepage": "https://github.com/Sunwood-ai-labs/SourceSage",
"Issues": "https://github.com/Sunwood-ai-labs/SourceSage/issues",
"Repository": "https://github.com/Sunwood-ai-labs/SourceSage"
},
"split_keywords": [
"ai",
" analysis",
" documentation",
" markdown",
" repository"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "2fcb5213712552b6cbe36ce13405b2b64e5fbb339cb8a85f3400252c68d3487f",
"md5": "36b5dcb4ad39edf2185c09a3faa5678c",
"sha256": "e06144b8eea0bf368a5b858e53386e6503e5db9ed56302c40acefbf24a094cfd"
},
"downloads": -1,
"filename": "sourcesage-7.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "36b5dcb4ad39edf2185c09a3faa5678c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 31843,
"upload_time": "2025-08-29T13:48:52",
"upload_time_iso_8601": "2025-08-29T13:48:52.607909Z",
"url": "https://files.pythonhosted.org/packages/2f/cb/5213712552b6cbe36ce13405b2b64e5fbb339cb8a85f3400252c68d3487f/sourcesage-7.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0475e8f11ec762e595683589deb7745a1d3a20579a3d82b678a43d1873115dda",
"md5": "346bb715c89ea9859977fd8fbe306877",
"sha256": "7b04f028e44d4200595eea587f5ca4e01022e77792d8258ab626cc4860a51df0"
},
"downloads": -1,
"filename": "sourcesage-7.0.1.tar.gz",
"has_sig": false,
"md5_digest": "346bb715c89ea9859977fd8fbe306877",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 22767,
"upload_time": "2025-08-29T13:48:54",
"upload_time_iso_8601": "2025-08-29T13:48:54.124135Z",
"url": "https://files.pythonhosted.org/packages/04/75/e8f11ec762e595683589deb7745a1d3a20579a3d82b678a43d1873115dda/sourcesage-7.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-29 13:48:54",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Sunwood-ai-labs",
"github_project": "SourceSage",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "loguru",
"specs": []
},
{
"name": "GitPython",
"specs": []
},
{
"name": "requests",
"specs": []
},
{
"name": "art",
"specs": []
},
{
"name": "rich",
"specs": []
}
],
"lcname": "sourcesage"
}