# ALCOMD3

言語: [English](README.md) | 日本語 | [繁體中文](README.zh-TW.md) | [简体中文](README.zh-CN.md)

ALCOMD3 は VRChat プロジェクトと VPM パッケージを管理する独立した
デスクトップツールです。プロジェクト操作、VPM リポジトリとパッケージ管理、
Windows リリースと更新、任意のローカル MCP 連携を提供します。
このプロジェクトは vrc-get/ALCOM を起源としています。

このプロジェクトは VRChat または VCC の公式製品ではありません。

## ALCOMD3 とは

ALCOMD3 は VRChat project、VPM repository、package、template、backup、update、
MCP による local AI agent visibility を管理します。

主な ALCOMD3 の機能:

- Material Design 3 風の UI。
- アプリのテーマカラーをカスタマイズ可能。
- アプリ名、ウィンドウタイトル、インストーラー名、ショートカット、アイコンは
  ALCOMD3 branding を使用。
- VPM リポジトリの並び替え / 優先度調整。
- リポジトリに含まれるパッケージ一覧の表示。
- パッケージ操作の進行状況ウィンドウ。パッケージごとの状態、再試行、中止に対応。
- プロジェクトコピーの進行状況ダイアログ。キャンセルとタスク調整に対応。
- バックアップ進行状況の表示と、バックアップからの復元ワークフロー。
- ディレクトリ削除に失敗した場合はプロジェクト項目を残す、安全なプロジェクト削除動作。
- ALCOMD3 の更新ソース、更新ダイアログの公式サイト入口、公式サイトからの
  ダウンロード導線。
- `vcc://` URL ショートカット関連付けを既定で有効化。
- 起動時表示と Windows URL オープン動作の安定性改善。
- 初回セットアップ中のテーマカスタマイズ入口。
- Windows インストーラーは `alcomd3-2.0.0-setup.exe` のような
  バージョン付き `alcomd3` 名で配布。
- 任意で有効化できるローカル MCP bridge。プロジェクト、リポジトリ、
  パッケージの read-only tools を提供します。
  [docs/mcp.md](./docs/mcp.md) を参照してください。

## 互換性について

Windows インストーラーは既存の install path と protocol association の互換性を保ちます。

- Windows に ALCOMD3 をインストールすると、既存の application installation を更新します。
  並行インストールはされません。
- 既存のインストールパスとプロトコル関連付けとの互換性のため、インストール
  されるメイン実行ファイルは legacy file name を維持します。
- ユーザーに表示されるアプリのブランドは ALCOMD3 です。

## ダウンロード

ビルド済みリリースは ALCOMD3 リポジトリから公開します。

<https://github.com/CQMHV/ALCOMD3>

現在の ALCOMD3 リリース:

- Stable: `2.0.0`
    - リリースノート: [release-notes/ALCOMD3_2.0.0.md](./release-notes/ALCOMD3_2.0.0.md)
    - Windows インストーラー: `alcomd3-2.0.0-setup.exe`
    - Windows インストーラー zip: `alcomd3-2.0.0-setup.exe.zip`
- Beta: `2.0.1-beta.1`
    - リリースノート: [release-notes/ALCOMD3_2.0.1-beta.1.md](./release-notes/ALCOMD3_2.0.1-beta.1.md)
    - Windows インストーラー: `alcomd3-2.0.1-beta.1-setup.exe`
    - Windows インストーラー zip: `alcomd3-2.0.1-beta.1-setup.exe.zip`

このリポジトリ以外で保守されているパッケージマネージャーのエントリは、
ALCOMD3 をインストールしない場合や、ALCOMD3 の更新経路を使わない場合があります。
ALCOMD3 が必要な場合は、このリポジトリのリリースアセットを使用してください。

## ビルド

### 必要なもの

- Rust stable toolchain
- Node.js と npm
- Windows MSVC ターゲットをビルドする場合は Windows build tools
- Inno Setup は必要に応じて bundling task がダウンロード / キャッシュします

### Windows リリースインストーラー

完全な ALCOMD3 release workflow は [docs/RELEASE.ja.md](./docs/RELEASE.ja.md) に記載しています。

```powershell
cargo xtask release-build --version 2.0.1 --channel stable
```

想定される出力:

- `artifacts/release/v{version}/alcomd3-{version}-setup.exe`
- `artifacts/release/v{version}/alcomd3-{version}-setup.exe.sig`
- `artifacts/release/v{version}/alcomd3-{version}-setup.exe.zip`

既知の非ブロッキング警告:

- `xtask/src/bundle_alcom/linux.rs` で未使用の `mode` 変数警告が出る場合があります。
- Vite が `vrc-get://localhost/global-info.js` について `type="module"` なしでは
  bundle できないと警告する場合があります。

### 開発サーバー

Vite 開発サーバーと Tauri 開発版アプリを起動する場合:

```powershell
cd vrc-get-gui
npm run tauri dev
```

フロントエンドのみ開発する場合:

```powershell
cd vrc-get-gui
npm run dev
```

## リポジトリ構成

- `vrc-get-gui/`: ALCOMD3 デスクトップ GUI。
- `vrc-get/`: コマンドライン互換コード。
- `vrc-get-vpm/`: VPM 関連ライブラリコード。
- `xtask/`: ビルド、バンドル、リリース補助タスク。
- `docs/README.ja.md`: documentation index と navigation entry point。
- `docs/mcp.md`: MCP bridge の利用方法、tools、ライフサイクル、トラブルシュート。
- `docs/MAINTENANCE.ja.md`: ALCOMD3 の保守ノートと互換性境界。

## 外部変更の取り込み

ALCOMD3 では、このリポジトリをブランド、インストーラー動作、アイコンアセット、
UI 挙動、リポジトリ管理機能、MCP 境界、リリース手順、GitHub 設定の基準とします。

他のリポジトリから変更を取り込む前に、以下を読んでください。

[docs/MAINTENANCE.ja.md](./docs/MAINTENANCE.ja.md)

このファイルには、適用時に保持すべき ALCOMD3 の挙動と互換性境界が記録されています。

## GitHub Workflows

汎用的に継承された GitHub workflows は意図的に削除されています。ALCOMD3 の
リリース自動化は、このリポジトリ向けに設計します。

現在保持しているもの:

- `.github/ISSUE_TEMPLATE/*`

現時点では、リリース workflow や署名 action はリポジトリ内で保守していません。

## ライセンス

主要なプロジェクトコードは MIT License です。[LICENSE](./LICENSE) を参照してください。

アプリ内には依存関係と第三者リソースの通知を表示する Licenses ページがあります。
重要な同梱第三者アセット:

- ALCOMD3 icon assets。CC BY 4.0。
- Anton font。SIL Open Font License。
- Noto Sans font。SIL Open Font License。

第三者アセットの追加情報は
[vrc-get-gui/THIRD-PARTY.md](./vrc-get-gui/THIRD-PARTY.md) を参照してください。

## コントリビューション

このリポジトリは ALCOMD3 のために保守されています。Issue と pull request は
ALCOMD3 の挙動、ドキュメント、リリース、互換性、ツールに関する内容にしてください。

コントリビューション方針:

- [CONTRIBUTING.ja.md](./CONTRIBUTING.ja.md)
- [vrc-get-gui/CONTRIBUTING.ja.md](./vrc-get-gui/CONTRIBUTING.ja.md)
