Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
161 commits
Select commit Hold shift + click to select a range
c33d7aa
Update full_description.txt
JStone2934 Nov 3, 2025
35dce20
Merge pull request #8 from UjuiUjuMandan/fastlane
JStone2934 Nov 3, 2025
ebf15d0
Merge pull request #11 from Coconut-Aero/main
JStone2934 Nov 3, 2025
cf8de04
Update README with new features and download info
JStone2934 Nov 3, 2025
a4ba27e
Merge branch 'main' of https://github.com/Coconut-Aero/LiveGalGame
Coconut-Aero Nov 3, 2025
6795655
Merge pull request #18 from Coconut-Aero/main
JStone2934 Nov 3, 2025
404bf1a
Update README.md
JStone2934 Nov 3, 2025
469bd8a
可以自定义弹窗,但是显示有BUG
JStone2934 Nov 4, 2025
8002b1a
允许自定义弹窗
JStone2934 Nov 4, 2025
294c73d
可以增加额外选项
JStone2934 Nov 4, 2025
d3df061
添加白屏效果
JStone2934 Nov 4, 2025
cdd0825
触发器可以修改和删除
JStone2934 Nov 4, 2025
4019ff4
Merge pull request #22 from JStone2934/feature/dialog
JStone2934 Nov 4, 2025
f4a14af
点击img5可以改成实时视频
JStone2934 Nov 4, 2025
1a3a4ee
再次点击按钮可以切换更新模式
JStone2934 Nov 4, 2025
aa119c7
可以切换CG更新速度了
JStone2934 Nov 4, 2025
bae4542
更新README,说明了一些新特性
JStone2934 Nov 4, 2025
02408de
允许调整画面的速度和切换模式#23 from JStone2934/feature/camera2CG
JStone2934 Nov 4, 2025
aef27f5
ready for v1.8.0
JStone2934 Nov 4, 2025
33a64e5
feat. Package Name
Coconut-Aero Nov 4, 2025
f9ca87b
Merge pull request #27 from Coconut-Aero/main
JStone2934 Nov 4, 2025
a017db0
Update README.md
JStone2934 Nov 5, 2025
fe737e6
Update README.md
JStone2934 Nov 5, 2025
ad8ad09
fix(speech): 增加了重试逻辑,修复了启动应用时初始化麦克风可能失败的问题
chlorodose Nov 10, 2025
0fa1f9d
docs: 删除了关于已修复问题的说明
chlorodose Nov 10, 2025
1b5cb79
Merge pull request #38 from chlorodose/fix-speech-init
JStone2934 Nov 10, 2025
3b0227b
Update README.md
JStone2934 Nov 10, 2025
08d254b
Revise download section in README
JStone2934 Nov 11, 2025
525fae3
Remove DependencyInfoBlock for F-Droid
UjuiUjuMandan Nov 12, 2025
143165b
Merge pull request #40 from UjuiUjuMandan/patch-2
JStone2934 Nov 14, 2025
38b37bc
Add QQ group for collaboration
JStone2934 Nov 30, 2025
92ae663
feat: enhance ASR capabilities and improve project structure
Chen-speculation Nov 26, 2025
de84d56
feat: complete HUD window functionality and add new settings page
Chen-speculation Nov 12, 2025
c41131f
feat: integrate FunASR for enhanced ASR capabilities
Chen-speculation Nov 30, 2025
ccc9e1e
feat: implement conversation update functionality and enhance audio s…
Chen-speculation Nov 17, 2025
ad8e3b1
feat: enhance ASR settings and model management UI
Chen-speculation Nov 29, 2025
f385e07
feat: integrate better-sqlite3 for database management and enhance ch…
Chen-speculation Nov 13, 2025
8a46d00
feat: Add ASR settings UI, update whisper.cpp dependencies and build …
Chen-speculation Nov 18, 2025
ee8a9d4
feat: enhance ASR functionality with duplicate recognition and audio …
Chen-speculation Nov 18, 2025
150ffa6
fix: remove deleted file from staging
Chen-speculation Nov 26, 2025
7f5da1a
feat: implement ASR service with WhisperLiveKit integration
Chen-speculation Nov 26, 2025
4d176b5
Remove unused .idea configuration files and add initial mobile app st…
Chen-speculation Nov 12, 2025
1a911cb
feat: add initial desktop application structure and development docum…
Chen-speculation Nov 12, 2025
3598ff0
feat: enhance application functionality with LLM configuration and ch…
Chen-speculation Nov 13, 2025
8a5c6fb
feat: refactor desktop application structure and enhance development …
Chen-speculation Nov 16, 2025
1ab9ec1
Update QQ group number in README
JStone2934 Dec 1, 2025
6d34b64
feat: reorganize project structure and add desktop development docs
Chen-speculation Nov 12, 2025
b300839
feat: enhance project configuration and add new features
Nov 27, 2025
9f63135
feat: add ASR model download functionality and enhance model management
Nov 27, 2025
23a48cd
feat: enhance ASR settings and model management UI
Chen-speculation Nov 27, 2025
2547050
feat: add README for LiveGalGame and remove outdated development plan
Dec 1, 2025
1317823
修改 readme文档
Chen-speculation Dec 2, 2025
dad566b
feat: implement LLM suggestion features and enhance audio management
Chen-speculation Dec 3, 2025
104dfd3
feat: enhance .gitignore and update Python version in desktop build w…
Chen-speculation Dec 4, 2025
af353a7
feat: integrate Python environment setup and enhance prebuild process
Chen-speculation Dec 4, 2025
07a9643
feat: update desktop build workflow and Python environment setup
Chen-speculation Dec 4, 2025
0f48fcb
feat: streamline desktop build workflow by removing redundant pnpm se…
Chen-speculation Dec 4, 2025
946eee4
feat: update pnpm workspace configuration to include current directory
Chen-speculation Dec 4, 2025
b4a3589
feat: update requirements.txt to include custom PyPI index URLs
Chen-speculation Dec 4, 2025
94aafa7
feat: simplify artifact paths and improve app version logging in desk…
Chen-speculation Dec 4, 2025
97ce28c
feat: add desktop build workflow and enhance performance logging
Chen-speculation Dec 4, 2025
45345ec
feat: update desktop build workflow to include new branch
Chen-speculation Dec 4, 2025
f54ccac
feat: update desktop build workflow and prebuild script for ASR imple…
Dec 5, 2025
441b58f
Merge branch 'feat/desktop-branch' of https://github.com/JStone2934/L…
Dec 5, 2025
8d69e45
fix: update ASR implementation in desktop build workflow
Dec 5, 2025
0e874e7
feat: add ASR dependencies installation step for FunASR in desktop bu…
Dec 5, 2025
8b845a1
refactor: streamline ASR model handling and update documentation
Dec 5, 2025
9552660
chore: update ASR model in desktop build workflow
Dec 5, 2025
ed2ffab
chore: update package.json to include additional source directories
Dec 5, 2025
62ad2bc
chore: update package dependencies in package.json and pnpm-lock.yaml
Dec 5, 2025
98a7629
chore: update pnpm-lock.yaml and remove unused ASR cache files
Dec 5, 2025
bff4bdf
chore: update desktop build workflow and package.json output directory
Dec 5, 2025
1ca9dc4
refactor: enhance window management by introducing dynamic renderer f…
Chen-speculation Dec 5, 2025
03493e0
docs: add macOS installation notes for unsigned applications in README
Chen-speculation Dec 5, 2025
6bce94b
refactor: improve Python environment resolution in ASR model manager …
Chen-speculation Dec 5, 2025
84699e1
refactor: enhance ASR file handling and path resolution
Chen-speculation Dec 5, 2025
6c6bca3
chore: update requirements.txt to include requests with SOCKS support
Chen-speculation Dec 5, 2025
1ae9be1
refactor: enhance ASR model download process with fallback support
Chen-speculation Dec 5, 2025
67b4380
refactor: improve virtual environment creation logic in Python setup
Chen-speculation Dec 5, 2025
f11d855
refactor: add symlink fixing for Python virtual environment
Chen-speculation Dec 5, 2025
237b21e
refactor: enhance Python environment detection and setup logic
Chen-speculation Dec 6, 2025
3f4325d
refactor: enhance virtual environment management with rebuild option
Chen-speculation Dec 6, 2025
ff7aee7
refactor: enhance Python environment setup with Conda support
Chen-speculation Dec 6, 2025
eebbf0b
fix: use conda-pack for relocatable Python runtime on macOS
Chen-speculation Dec 6, 2025
26f19dd
fix: update requirements and handle optional WhisperModel import
Chen-speculation Dec 6, 2025
c4fa2fe
feat: add FFmpeg and AV dependencies for enhanced media processing
Chen-speculation Dec 6, 2025
4c6519f
chore: clean CI install flow and add debugging guide
Chen-speculation Dec 6, 2025
94f2ffc
feat: add situation llm config and route topic detection fully to LLM
hhh2210 Dec 6, 2025
2c7ded3
feat: wire structured memory sidecar and preload IPC APIs
hhh2210 Dec 6, 2025
e1bd416
fix: use pip for faster-whisper and keep conda ffmpeg/av
Chen-speculation Dec 6, 2025
2de026a
chore: add structured memory sidecar service (FastAPI)
hhh2210 Dec 6, 2025
cdb35c1
fix: align av version with faster-whisper
Chen-speculation Dec 6, 2025
b204739
docs: add ci debugging notes for av/proxy
Chen-speculation Dec 6, 2025
6dc5674
docs(memory): add packaging guidance for bundled sidecar
hhh2210 Dec 6, 2025
44f0dc0
fix: correct indentation for WhisperModel import in asr_utils.py
Chen-speculation Dec 6, 2025
8d39b5a
feat: improve ASR model downloads with shared cache and resume-aware UI
hhh2210 Dec 6, 2025
7b3f4da
feat: implement FastAPI backend for ASR functionality
Dec 6, 2025
f02fab0
feat: enhance backend build process and CI workflow
Chen-speculation Dec 7, 2025
e184b60
chore: update .gitignore and requirements, enhance ASR functionality
Chen-speculation Dec 7, 2025
96b70c2
refactor: streamline ASR backend Python environment setup in CI workflow
Chen-speculation Dec 7, 2025
a81a4db
fix: install win deps without av via no-deps
Chen-speculation Dec 7, 2025
f9dc334
refactor: improve Python environment setup in prepare-python-env.js
Chen-speculation Dec 7, 2025
780531a
chore: update Python path configuration in CI workflow
Chen-speculation Dec 7, 2025
8b04f30
chore: log pip install output on win
Chen-speculation Dec 7, 2025
7679f57
chore: dump pip log on win failure
Chen-speculation Dec 7, 2025
0c41e6e
feat: enhance ASR backend with debug information and worker management
Chen-speculation Dec 7, 2025
49b0976
chore: refine ASR_PYTHON_PATH configuration in CI workflow
Chen-speculation Dec 7, 2025
56a61aa
feat: enhance ASRManager with model download progress and punctuation…
Chen-speculation Dec 7, 2025
6ce446a
fix: escape windows pip args
Chen-speculation Dec 7, 2025
4590510
fix: downgrade huggingface-hub version to 0.17.3 for compatibility wi…
Chen-speculation Dec 7, 2025
8eb1f96
fix: force av wheel on windows
Chen-speculation Dec 7, 2025
c637714
fix: avoid av build on windows
Chen-speculation Dec 7, 2025
994d89c
refactor: update pip installation command in prepare-python-env.js
Chen-speculation Dec 7, 2025
00d5d4c
chore: add pyinstaller for win packaging
Chen-speculation Dec 7, 2025
644e788
fix: update package.json to correct backend path for ASR integration
Chen-speculation Dec 7, 2025
3076c33
feat: add platform-specific data argument for ASR build process
Chen-speculation Dec 7, 2025
7fa61b3
fix: align huggingface-hub version for win deps
Chen-speculation Dec 7, 2025
3bf7ee6
fix: resolve win deps without av + hub conflict
Chen-speculation Dec 7, 2025
abbac25
feat: add support for Faster-Whisper engine in ASR
Chen-speculation Dec 7, 2025
635cb82
refactor: optimize ASR streaming chunk handling and update package.json
Chen-speculation Dec 7, 2025
30035fa
fix: improve HUD creation guard and database path handling
hhh2210 Dec 8, 2025
b118026
docs: add high-level summary for hhh2210 changes
hhh2210 Dec 8, 2025
b2ce983
Merge remote-tracking branch 'origin/feat/desktop-branch' into feat/s…
hhh2210 Dec 8, 2025
ff6b1b0
Merge pull request #51 from JStone2934/feat/situation_asr
Chen-speculation Dec 8, 2025
8a8c923
refactor: unify worker script path handling in WorkerBridge
Chen-speculation Dec 8, 2025
7c33ba3
refactor: transition to FunASR ONNX for ASR processing
Chen-speculation Dec 8, 2025
09590d6
refactor: streamline worker script handling and build process
Chen-speculation Dec 8, 2025
f5bb973
chore: update desktop build workflow and enhance backend packaging
Chen-speculation Dec 8, 2025
b0f3388
chore: update FunASR ONNX version and enhance conda environment setup
Chen-speculation Dec 8, 2025
04e8014
feat: enhance ASR model management and download process
Chen-speculation Dec 9, 2025
9c80b4c
refactor: remove Faster-Whisper support and streamline ASR configuration
Chen-speculation Dec 9, 2025
06f51b8
refactor: update dependencies and enhance situation LLM handling
Chen-speculation Dec 9, 2025
c8fd1d8
feat: implement conversation review feature with IPC integration
Chen-speculation Dec 9, 2025
6090466
feat: enhance ASR and suggestion services with caching and thinking c…
Chen-speculation Dec 9, 2025
c3e71cf
feat: implement offline mode for FunASR and enhance LLMSuggestionService
Chen-speculation Dec 9, 2025
2719bf9
feat: enhance ASR capabilities with SiliconFlow integration and featu…
Chen-speculation Dec 11, 2025
7ffaeff
feat: enhance conversation review and suggestion services with decisi…
Chen-speculation Dec 13, 2025
f20fe74
feat: add backend build and verification steps to desktop workflow
Chen-speculation Dec 13, 2025
4c8809e
refactor: remove ASR backend build steps from desktop workflow and en…
Chen-speculation Dec 13, 2025
14debd4
chore: update .gitignore and enhance ASRManager and ASRService initia…
Dec 13, 2025
a75c55b
feat: enhance ASR device management and configuration
Dec 13, 2025
62ad814
feat: implement file logging and enhance error handling in main process
Dec 13, 2025
a253fa6
feat: add jieba dependency and enhance build scripts for ASR integration
Chen-speculation Dec 13, 2025
f522c10
fix(ipc): improve preload + main IPC
hhh2210 Dec 13, 2025
930fceb
Remove suggestion thinking toggle
hhh2210 Dec 13, 2025
4524f95
fix(db): add missing parameters in seedDefaultSuggestionConfig
hhh2210 Dec 15, 2025
33cef77
feat(desktop): 增强 LLM 配置编辑功能及多项优化
hhh2210 Dec 15, 2025
085f3c3
fix(build-backend): resolve OpenMP library conflict on macOS
hhh2210 Dec 15, 2025
8c1d5fc
feat(asr): add GUI-configurable model cache directory
hhh2210 Dec 22, 2025
080216b
feat(llm): add configurable timeout for LLM requests
hhh2210 Dec 22, 2025
d952f89
feat(ci): add prerelease release on tag push and silence stream logging
hhh2210 Dec 22, 2025
14c8f16
feat(ci): update desktop release workflow and docs
hhh2210 Dec 22, 2025
7de2a54
fix(ci): remove duplicate 'with' block in desktop-build.yml
hhh2210 Dec 22, 2025
a8688ce
fix(ci): handle filenames with spaces in release upload
hhh2210 Dec 22, 2025
8c38283
feat(tests): add complex test data generation and insertion scripts
Chen-speculation Dec 23, 2025
1687325
refactor(prompt): externalize LLM prompts into templates
hhh2210 Dec 24, 2025
f50514e
feat(review): make affinity change driven by explicit suggestion sele…
hhh2210 Dec 24, 2025
1e8f6c8
chore: resolve merge conflicts in review service and story tree page
Chen-speculation Dec 24, 2025
3aa543f
提交
Dec 24, 2025
b8fb41d
feat(docs): add recent preview image to README and new GIF file
Dec 24, 2025
cedaea8
fix: resolve merge conflicts (desktop: ours, mobile: theirs)
Dec 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
165 changes: 165 additions & 0 deletions .github/workflows/desktop-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,165 @@
name: Desktop Build

on:
push:
branches: [ main, master, feat/desktop-branch ]
tags:
- 'v*.*.*-*' # prerelease: v0.1.0-beta.1
- 'v[0-9]*.[0-9]*.[0-9]*' # release: v0.1.0 (纯版本号)
paths:
- 'desktop/**'
- '.github/workflows/desktop-build.yml'
pull_request:
branches: [ main, master, feat/desktop-branch ]
paths:
- 'desktop/**'
- '.github/workflows/desktop-build.yml'
workflow_dispatch:

concurrency:
group: desktop-${{ github.ref }}
cancel-in-progress: true

jobs:
build:
name: Desktop ${{ matrix.platform }} (${{ matrix.arch }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: macos-14
platform: mac
arch: arm64
python: python3.10
asr: funasr-onnx
artifact_path: |
desktop/release/*.dmg
- os: windows-latest
platform: win
arch: x64
python: python
asr: funasr-onnx
artifact_path: |
desktop/release/*.exe

defaults:
run:
shell: bash
working-directory: desktop

steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 9
run_install: false

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: pnpm
cache-dependency-path: desktop/pnpm-lock.yaml

- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.10'

- name: Install dependencies
run: pnpm install --frozen-lockfile

- name: Prepare Python env for ASR backend
working-directory: desktop
run: pnpm run prepare:python

- name: Print app version
id: meta
run: |
node -e "const v=require('./package.json').version; console.log('app_version='+v)" >> "$GITHUB_OUTPUT"


- name: Build desktop package
env:
PYTHON: ${{ matrix.python }}
ASR_IMPL: ${{ matrix.asr }}
ASR_PYTHON_PATH: ${{ matrix.platform == 'win' && format('{0}/desktop/python-env/Scripts/python.exe', github.workspace) || format('{0}/desktop/python-env/bin/python3', github.workspace) }}
run: |
if [ "${{ matrix.platform }}" = "mac" ]; then
pnpm run build:mac -- --${{ matrix.arch }}
else
pnpm run build:win -- --${{ matrix.arch }}
fi

- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: livegalgame-desktop-${{ matrix.platform }}-${{ matrix.arch }}-v${{ steps.meta.outputs.app_version }}
path: ${{ matrix.artifact_path }}
if-no-files-found: error
retention-days: 14

prerelease:
name: Publish prerelease
runs-on: ubuntu-latest
needs: build
if: |
startsWith(github.ref, 'refs/tags/v') &&
contains(github.ref_name, '-')
permissions:
contents: write
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Download artifacts
uses: actions/download-artifact@v4
with:
path: dist

- name: Create prerelease
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh release create "${GITHUB_REF_NAME}" \
--prerelease \
--title "${GITHUB_REF_NAME}" \
--notes "Prerelease ${GITHUB_REF_NAME}"
# 处理带空格的文件名
find dist -type f -print0 | xargs -0 -I {} gh release upload "${GITHUB_REF_NAME}" "{}" --clobber

release:
name: Publish release
runs-on: ubuntu-latest
needs: build
if: |
startsWith(github.ref, 'refs/tags/v') &&
!contains(github.ref_name, '-')
permissions:
contents: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Download artifacts
uses: actions/download-artifact@v4
with:
path: dist

- name: Create release
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh release create "${GITHUB_REF_NAME}" \
--title "${GITHUB_REF_NAME}" \
--notes "Release ${GITHUB_REF_NAME}"
# 处理带空格的文件名
find dist -type f -print0 | xargs -0 -I {} gh release upload "${GITHUB_REF_NAME}" "{}" --clobber
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ on:
push:
branches: [ main, master ]
tags:
- 'v*'
- 'android-v*'
pull_request:
branches: [ main, master ]
workflow_dispatch:
Expand Down
34 changes: 33 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,36 @@ signing.properties
/desktop/data
/desktop/.temp
/desktop/tests
.cursor
desktop/src/data
desktop/.venv310
/desktop/release
/desktop/backend/build/
/desktop/backend/dist/
.venv
/desktop/memory-service/.venv
/desktop/memory-service/__pycache__
__pycache__/
# 忽略所有项目里的 python 环境目录(venv/虚拟环境/bootstrap python等)
**/python-env
**/python-bootstrap
**/.venv*/
**/venv/
**/.venv
# Python 缓存文件
**/__pycache__/
*.py[cod]
*.pyo
.cursor

# Test media files
test.mp4
*.mp4
*.wav

# Desktop docs (local only)
desktop/docs/
**/node_modules

# Environment variables
.env
.env.*
13 changes: 9 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@

<img width="100%" alt="preview" src="https://github.com/user-attachments/assets/d6c44e31-8362-4825-9d7c-a760a4720133" />

<img width="100%" alt="recent preview" src="./docs/20251225-004407.gif" />

---

## 核心功能
Expand Down Expand Up @@ -63,10 +65,6 @@

### 下载

[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"
alt="Get it on F-Droid"
height="75">](https://f-droid.org/packages/com.jstone.livegalgame/)

- **GitHub Release**: [点击下载](https://github.com/JStone2934/LiveGalGame/tags)
- **夸克网盘**: https://pan.quark.cn/s/1000136902b5
- **百度网盘**: https://pan.baidu.com/s/1Bpt2DZNvjzT6BpKr8RyG-A?pwd=94g6
Expand All @@ -77,6 +75,13 @@

**Windows / macOS 应用** - 专为语音聊天场景设计的智能助手

### macOS 安装提示(未签名)

- 当前开源版本未做 Apple 官方签名/公证,直接双击 DMG 可能提示“应用已损坏/来自未被认可的开发者”。
- 推荐做法:在 Finder 中控制键+点按 DMG 内的 `LiveGalGame.app`,选择“打开”,在弹窗中再次“打开”,系统将对本次豁免。(参考 [macguide.leavelet.io](https://macguide.leavelet.io/Bike/appnotopen.html))
- 如仍被拦截,可在终端移除隔离属性:`sudo xattr -r -d com.apple.quarantine "/Applications/LiveGalGame.app"`(请替换为实际路径)。
- 临时放宽 Gatekeeper(风险较高,装完建议恢复):`sudo spctl --master-disable`,安装后 `sudo spctl --master-enable`。

### 使用流程

1. **创建对话对象**
Expand Down
68 changes: 66 additions & 2 deletions desktop/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,9 +78,10 @@ pnpm install
### 配置语音识别

```bash
# 安装 FunASR(推荐,中文识别效果最好)
# 安装 FunASR(推荐,中文识别效果最好,macOS 默认
npm run setup-funasr
```
- Windows 也使用 FunASR ONNX,无需额外安装 faster-whisper。

### 启动

Expand Down Expand Up @@ -115,6 +116,70 @@ pnpm dev

---

## 📦 桌面端发布规则(GitHub Actions)

桌面端发布使用 tag 触发,并区分 **预发布** 和 **正式发布**:

- **预发布(Prerelease)**:`vX.Y.Z-xxx`
例:`v0.1.0-beta.1`
- **正式发布(Release)**:`vX.Y.Z`
例:`v0.1.0`

Android 的发布已独立为 `android-v*` 标签,避免干扰桌面端发布。

示例:

```bash
# 预发布(会生成 GitHub Prerelease)
git tag v0.1.0-beta.1
git push origin v0.1.0-beta.1

# 正式发布(会生成 GitHub Release)
git tag v0.1.0
git push origin v0.1.0

# Android 发布(仅 Android 流程触发)
git tag android-v0.1.0
git push origin android-v0.1.0
```

> 说明:桌面端产物为 macOS `.dmg` 与 Windows `.exe`,不会生成 APK。

---

## 🧰 模型下载与缓存目录(HF / ModelScope)

应用内的语音识别模型(尤其是 FunASR ONNX)会在首次使用/点击下载时自动拉取,并缓存到本机磁盘。为了方便管理、并兼容 Windows / macOS 的默认目录差异,项目默认把缓存放到 Electron 的 `userData` 目录下(不同系统会自动选择合适位置)。

如果你希望把模型统一下载到自己指定的盘符/目录(例如放到大硬盘、NAS 挂载目录等),推荐通过环境变量覆盖:

- `ASR_CACHE_BASE`:ASR 缓存根目录(推荐只改这个)
- `HF_HOME`:HuggingFace 缓存根目录(高级用法)
- `ASR_CACHE_DIR`:HuggingFace hub 目录(高级用法)
- `MODELSCOPE_CACHE`:ModelScope 缓存根目录(注意:实际会写到 `<MODELSCOPE_CACHE>/hub`)

示例(macOS/Linux):

```bash
ASR_CACHE_BASE=/data/livegalgame/asr-cache pnpm dev
```

示例(Windows PowerShell):

```powershell
$env:ASR_CACHE_BASE="D:\\LiveGalGame\\asr-cache"; pnpm dev
```

如果你想手动使用 ModelScope CLI 把某个模型下载到指定位置(不走应用内下载),确实可以用:

```bash
modelscope download --model 'Qwen/Qwen2-7B' --local_dir /data/models/Qwen2-7B
```

但应用内的 FunASR 模型下载是由 `funasr_onnx` 触发的(不是直接下载单个 Qwen 模型),因此更推荐用上面的环境变量来统一管理缓存位置。

---

## 🔧 开发者指南

如果你想参与开发或了解技术细节,请查看项目源码:
Expand All @@ -125,4 +190,3 @@ pnpm dev
- `src/db/` - 本地数据存储

欢迎提交 PR!有问题请加 QQ 群:**1074602400**

Loading