# ALCOMD3

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

ALCOMD3 是用於管理 VRChat 專案與 VPM 套件的獨立桌面工具。它提供專案流程、
VPM 儲存庫與套件管理、Windows 發行與更新，以及可選的本機 MCP 整合。
本專案起源於 vrc-get/ALCOM。

本專案不是 VRChat 或 VCC 的官方產品。

## 什麼是 ALCOMD3？

ALCOMD3 可管理 VRChat 專案、VPM 儲存庫、套件、範本、備份、更新，以及透過 MCP
提供本機 AI agent 可見性。

主要 ALCOMD3 功能：

- Material Design 3 風格介面。
- 可自訂應用程式主題色。
- 應用程式名稱、視窗標題、安裝程式名稱、捷徑與圖示使用 ALCOMD3 品牌。
- VPM 儲存庫排序 / 優先度調整。
- 可查看儲存庫所包含的套件列表。
- 套件操作進度視窗，支援逐套件狀態、重試與中止。
- 專案複製進度對話框，支援取消與任務協調。
- 備份進度顯示，以及從備份復原的流程。
- 更安全的專案移除行為。當目錄刪除失敗時，會保留專案項目。
- ALCOMD3 更新來源、更新對話框的官方網站入口，以及官方網站下載備援。
- `vcc://` URL 捷徑關聯預設啟用。
- 啟動顯示與 Windows URL 開啟行為穩定性修正。
- 初次設定流程中的主題自訂入口。
- Windows 安裝程式使用帶版本號的 `alcomd3` 命名，例如
  `alcomd3-2.0.0-setup.exe`。
- 可選的本機 MCP bridge，提供專案、儲存庫與套件的唯讀工具。
  請參閱 [docs/mcp.md](./docs/mcp.md)。

## 相容性說明

Windows 安裝程式保持既有安裝路徑與協定關聯的相容性。

- 在 Windows 安裝 ALCOMD3 會更新既有應用程式安裝，而不是並排安裝。
- 為了相容既有安裝路徑與協定關聯，安裝後的主執行檔保留 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 target 時需要 Windows build tools
- Inno Setup 會在需要時由 bundling task 下載 / 快取

### Windows 發行版安裝程式

完整的 ALCOMD3 release workflow 記錄在 [docs/RELEASE.md](./docs/RELEASE.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.md`：文件索引與導覽入口。
- `docs/mcp.md`：MCP bridge 使用方式、工具、生命週期與疑難排解。
- `docs/MAINTENANCE.md`：ALCOMD3 維護筆記與相容性邊界。

## 外部變更引入

ALCOMD3 以此儲存庫作為品牌、安裝程式行為、圖示資產、UI 行為、儲存庫管理功能、
MCP 邊界、發行流程與 GitHub 設定的基準。

從其他儲存庫引入變更前，請閱讀：

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

該檔案記錄了套用變更時應保留的 ALCOMD3 行為與相容性邊界。

## GitHub Workflows

通用繼承而來的 GitHub workflows 已有意移除。ALCOMD3 的發行自動化應針對本儲存庫設計。

目前保留：

- `.github/ISSUE_TEMPLATE/*`

目前仓库内不维护发行 workflow 或签名 action。

## 授權

主要專案程式碼使用 MIT License。請參閱
[LICENSE](./LICENSE)。

應用程式內含 Licenses 頁面，用於顯示依賴項與第三方資源聲明。重要的同梱第三方資源：

- ALCOMD3 圖示資源，使用 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.md](./CONTRIBUTING.md)
- [vrc-get-gui/CONTRIBUTING.md](./vrc-get-gui/CONTRIBUTING.md)
