このプロジェクトについて
# PARTHA
プライベートかつ進化するコードベースのためのリポジトリインテリジェンス。
## 概要
PARTHAはリポジトリのリビジョン(ZIP/TARアーカイブまたは公開GitHubリポジトリとしてインポート)を取り込み、その構造の永続的で不変のスナップショットを構築します。その1つのスナップショットから以下の情報を提供します:
- **アーキテクチャ** — モジュールと解決された関係性のインタラクティブグラフ;対応するPython/FastAPIパターンに対する証拠を引用した説明
- **依存関係グラフ** — `package.json`、`pyproject.toml`、`requirements.txt`からの宣言、2種類のロックファイルフォーマットの解決済みピンが別々に記録される
- **エンジニアリングレビュー** — 各発見が保存された証拠スパンによって裏付けられます;未評価のカテゴリは可視状態を保ちます;集計スコアや健康度のパーセントはありません
- **リポジトリインサイト** — スナップショットのみからのカウント、比率、診断、カバレッジ
- **リポジトリリンページ** — 同じリポジトリとブランチの繰り返しインポートが耐久履歴にグループ化される
- **ドキュメントとエクスポート** — 構造化ドキュメント、およびReview/Documentation/Architecture/DependenciesをJSON、Markdown、HTML、PDFでエクスポート
- **オプションのAIコンテキスト** — 利用者ごとのプロバイダ設定、暗号鍵、デプロイメント所有のエグレス許可リスト;プロバイダに渡されるのは構造的事実と観測されたパスのみで、ソースバイトや行スパンは渡されない
契約は[capability matrix](docs/CAPABILITIES.md)に形式化され、コードから生成されCIでドリフトチェックされます。対応する事実は分析済みリビジョン内の正確なソース位置に紐づく証拠とproveanceを保持します。
## 動作原理
```
インポート → 分析 → 探索 → エクスポート
```
1. **インポート** — アーカイブをアップロードするか、HTTPS経由で公開GitHubリポジトリをインポートします。PARTHAはファイル目録とリビジョンIDを保存します。
2. **分析** — 永続的で取消可能なバックグラウンドジョブが、対応するPythonおよびTypeScript/JavaScriptの構成、マニフェスト、ロックファイル、サービス間相互作用、Docker Composeのための有界抽出パイプラインを実行します。
3. **探索** — アーキテクチャ、依存関係、エンジニアリングレビュー、インサイト、証拠、リンページを検索できます。欠落または期限切れのスナップショットは推定解釈にフォールバックするのではなく、利用不可を表示します。
4. **エクスポート** — 構造化ドキュメントを生成するか、JSON/Markdown/HTML/PDFパイプラインを通じて結果をエクスポートします。
中間成果物は`ri.v1`——バージョン付きの密封済みスナップショットで、事実、証拠、診断、以及 canonical hashを含みます。すべての製品サーフェスは共有モデルから読み取り、どの消費者もコードを独立して再解析しません。AIはリポジトリインテリジェンスのダウンストリーム消費者であり、独立した解釈者ではありません。
## テクストアック
- **バックエンド**: Python 3.12–3.13、FastAPI
- **フロントエンド**: Node.js 22、React
- **データベース**: SQLite(開発環境)
- **ワーカー**: インプロセスデーモンスレッド(1ジョブずつ)
- **AIプロバイダ**: オプション、Fernet暗号化鍵およびDNS固定エグレス許可リストで設定可能
## クイックスタート
```bash
git clone https://github.com/Second-Origin/PARTHA.git
cd PARTHA
# バックエンド — http://localhost:8000(OpenAPI at /docs)
cd apps/backend
python3.13 -m venv .venv && source .venv/bin/activate
pip install -e .
cd ../.. && npm run dev:backend
# フロントエンド — http://localhost:5173
cd apps/frontend
npm ci
npm run dev
```
ローカル開発にはコンテナランタイムまたは外部データベースは不要です。.envファイルも不要です。
## 現在の制限
- 信頼された環境での利用のみ——広範な共有またはマルチテナントホスティング向けにはハードニングされていません。
- 深層セマンティック抽出はPythonおよびTypeScript/JavaScriptに限定され、他の言語はファイル目録のみを提供します。
- 依存関係カバー:3つのマニフェストフォーマットと2つのロックファイルフォーマット;推移的解決は行わず、脆弱性や古いバージョンのスキャンもありません。
- 実行ごと全体のレポジトリ分析——増分再分析はありません。
- リンページはリビジョン履歴を保持しますが、スナップショットの差分計算、rename/moveの検出、歴史的ブラスト半径の算出は行いません。
- オプションAIは外部プロバイダを呼び出せます;ローカルプロバイダのみがすべてをホスト上に保持します。[egress policy](docs/security/AI_PROVIDER_EGRESS.md)を参照してください。
## ドキュメント
- [システム概要](docs/architecture/SYSTEM_OVERVIEW.md)
- [リポジトリインテリジェンス](docs/architecture/REPOSITORY_INTELLIGENCE.md)
- [RFC-0001 — ri.v1契約](docs/architecture/REPOSITORY_INTELLIGENCE_V1_RFC.md)
- [RFC-0002 — リポジトリリンページ](docs/architecture/REPOSITORY_LINEAGE_RFC.md)
- [キャパビリティマトリクス](docs/CAPABILITIES.md)
- [開発ガイド](docs/DEVELOPMENT.md)
- [AIプロバイダセットアップ](docs/operations/AI_PROVIDER_SETUP.md)
- [セキュリティポリシー](SECURITY.md)
## ライセンス
Apache License 2.0
## コミュニティ
- [Discord](https://discord.gg/qvk9DcxDA)
- [Issues](https://github.com/Second-Origin/PARTHA/issues)
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.