feat: restore CI/release, prompt contracts, faster install (0.9.33)

Bring back Gitea CI + auto-publish; share release helpers; strengthen multi-turn
tool/job prompts with a unit contract; ccache/make help and --release bootstrap.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
WHC
2026-10-29 19:56:42 +08:00
co-authored by Cursor
parent f00aad9e3e
commit 814a31c9c8
14 changed files with 588 additions and 94 deletions
+6 -4
View File
@@ -213,12 +213,14 @@ CA 证书:`CST_CA_BUNDLE` → `SSL_CERT_FILE` → 各发行版的常见位置
### CI 与 Release
CI 用 TinyCC 校验(构建、`make check`、WebUI 端到端),通过后用 gcc(`-Werror`)出发行包:
Linux x86_64 / x86 / aarch64 静态包(x86 两种跑 `make check`,aarch64 用 qemu 冒烟),
Windows x86_64 的 zip 和安装包(Debian 的 mingw-w64 UCRT gcc + NSIS)。
推送到 `main` 或 `v*` tag 时每个任务把自己的产物上传到 Gitea Release `vVERSION`(同名资源会被替换);
`.gitea/workflows/ci.yml`:TinyCC 校验(构建、`make check`、WebUI 端到端)通过后,用 gcc(`-Werror`)打发行包——
Linux x86_64 / x86 / aarch64 静态包(前两者跑 `make check`,aarch64 用 qemu 冒烟),
Windows x86_64 的 zip 和安装包(Debian mingw-w64 UCRT + NSIS)。
推送到 `main` 或 `v*` tag 时各任务经 `scripts/ci_publish.sh` 上传到 Gitea Release `vVERSION`(同名资源会被替换);
仓库可设 `RELEASE_TOKEN`(`write:repository`),否则用任务自带 token。
共用逻辑在 `scripts/lib_release.sh`(版本号、sha256、打包、下载镜像)。
本地:`GITEA_TOKEN=... scripts/release.sh dist/cst-agent-*.tar.gz dist/cst-agent-*.zip dist/cst-agent-*-setup.exe`。
快速安装预编译包:`scripts/bootstrap_linux.sh --release`(失败则回退源码编译)。
环境变量:`CST_SHELL`、`CST_EXE_DIR`、`CST_AUTO_APPROVE` 等。