docs: final CST-agent → Hermit migration notice (0.10.1)
ci / tcc-check (push) Failing after 40s
ci / linux (aarch64, 0) (push) Skipped
ci / linux (x86, 1) (push) Skipped
ci / linux (x86_64, 1) (push) Skipped
ci / windows (push) Skipped

Point readers at WHC/Hermit as canonical; add MIGRATION.md and
migrate_remote_to_hermit.sh so existing checkouts can retarget origin.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
WHC
2026-10-29 21:46:23 +08:00
co-authored by Cursor
parent f30b4ede48
commit 8fcbd886c3
7 changed files with 171 additions and 7 deletions
+103
View File
@@ -0,0 +1,103 @@
# 从 CST-Agent 迁移到 Hermit
**本仓库 `WHC/CST-agent` 保留为兼容入口。** 产品名与规范克隆地址已改为:
**https://git.whcself.xyz/WHC/Hermit**
二进制、配置与环境变量自 **0.10.0** 起以 Hermit 为准;`CST-agent` 仓库与旧包名仅作过渡。
---
## 1. 换源码远程(推荐)
已有检出:
```bash
# 一键(在仓库根目录)
./scripts/migrate_remote_to_hermit.sh
# 或手动
git remote set-url origin https://git.whcself.xyz/WHC/Hermit.git
git fetch origin
git branch -u origin/main
```
新克隆:
```bash
git clone https://git.whcself.xyz/WHC/Hermit.git
cd Hermit
make -j$(nproc) && make install PREFIX=$HOME/.local
```
旧地址仍可拉代码一段时间:
```bash
git clone https://git.whcself.xyz/WHC/CST-agent.git # 兼容;请改 origin 到 Hermit
```
---
## 2. 二进制与 PATH
| 旧 | 新 |
|---|---|
| `cst-agent` | `hermit`(安装时仍提供 `cst-agent` → `hermit` 软链) |
| `cst-agent-update` | 仍可用;内部装的是 `hermit` |
| Release `cst-agent-VERSION-linux-*.tar.gz` | `hermit-VERSION-linux-*.tar.gz`(过渡期可能双发) |
```bash
hermit --version # hermit 0.10.x
cst-agent --version # 同二进制(软链)
```
---
## 3. 配置目录
| 旧 | 新 |
|---|---|
| `~/.config/cst-agent/` | `~/.config/hermit/` |
| Windows `%APPDATA%\cst-agent` | `%APPDATA%\hermit` |
程序若发现 **仅有** 旧目录、尚无新目录,会继续读旧路径。建议主动迁移:
```bash
# Linux / macOS
mkdir -p ~/.config/hermit
# 若尚未迁过:
cp -a ~/.config/cst-agent/. ~/.config/hermit/ 2>/dev/null || true
```
工作区 `.agent/` 会话目录**不变**,无需改动。
---
## 4. 环境变量
`HERMIT_*` 优先;未设置时仍读 `CST_*`。
| 用途 | 新 | 旧(兼容) |
|---|---|---|
| Provider / Key / Model | `HERMIT_PROVIDER` 等 | `CST_PROVIDER` 等 |
| ASCII / Icons | `HERMIT_ASCII` / `HERMIT_ICONS` | `CST_ASCII` / `CST_ICONS` |
| 议会密码等 | `HERMIT_REALM_PASSWORD`(若已接双读) | `CST_REALM_PASSWORD` |
systemd:`EnvironmentFile` 已同时尝试 `~/.config/hermit/parliament.env` 与旧路径。
---
## 5. CI / 脚本 / 文档链接
- 安装脚本、bootstrap、文档中的规范 URL 改为 `…/WHC/Hermit`。
- 本文件与 README 顶栏是 **CST-agent 仓库上的最后一次迁移说明**;后续功能请在 **Hermit** 仓库跟进。
---
## 6. 核对清单
- [ ] `git remote -v` 指向 `WHC/Hermit.git`
- [ ] `hermit --version` 正常;PATH 上可选保留 `cst-agent` 软链
- [ ] `~/.config/hermit/` 有 credentials / settings(或确认仍在用旧目录回退)
- [ ] 书签 / 镜像 / CI 的 clone URL 已更新
- [ ](可选)归档或只读化 `CST-agent` 仓库说明,避免双主开发
+10 -5
View File
@@ -1,5 +1,9 @@
# Hermit # Hermit
> **仓库已更名。** 规范地址:[WHC/Hermit](https://git.whcself.xyz/WHC/Hermit)。
> 本仓库 `CST-agent` 仅作迁移兼容入口。换远程:`./scripts/migrate_remote_to_hermit.sh`
> 完整步骤:[MIGRATION.md](MIGRATION.md)。
本地 coding agent(原 CST-Agent):终端 TUI、可选 WebUI / 桌面 GUI,在工作区里读改文件、跑命令、管会话。 本地 coding agent(原 CST-Agent):终端 TUI、可选 WebUI / 桌面 GUI,在工作区里读改文件、跑命令、管会话。
C11 实现,OpenAI 兼容网关(DeepSeek / Kimi / MiniMax / OpenAI 等)。 C11 实现,OpenAI 兼容网关(DeepSeek / Kimi / MiniMax / OpenAI 等)。
@@ -17,20 +21,21 @@ C11 实现,OpenAI 兼容网关(DeepSeek / Kimi / MiniMax / OpenAI 等)。
### Linux / WSL / macOS ### Linux / WSL / macOS
```bash ```bash
# 预编译包(快;失败则回退源码) # 预编译包(快;失败则回退源码)— 规范仓库 Hermit
curl -fsSL https://git.whcself.xyz/WHC/CST-agent/raw/branch/main/scripts/bootstrap_linux.sh | bash -s -- --release curl -fsSL https://git.whcself.xyz/WHC/Hermit/raw/branch/main/scripts/bootstrap_linux.sh | bash -s -- --release
# 源码增量编译 → ~/.local/bin/hermit(+ cst-agent 软链) # 源码增量编译 → ~/.local/bin/hermit(+ cst-agent 软链)
curl -fsSL https://git.whcself.xyz/WHC/CST-agent/raw/branch/main/scripts/bootstrap_linux.sh | bash curl -fsSL https://git.whcself.xyz/WHC/Hermit/raw/branch/main/scripts/bootstrap_linux.sh | bash
``` ```
```bash ```bash
./scripts/bootstrap_linux.sh . ./scripts/bootstrap_linux.sh .
hermit --version # hermit 0.10.0 hermit --version # hermit 0.10.x
cst-agent-update # 升级助手仍可用 cst-agent-update # 升级助手仍可用
./scripts/migrate_remote_to_hermit.sh # 已有 CST-agent 检出时改 origin
``` ```
[Release](https://git.whcself.xyz/WHC/CST-agent/releases):`hermit-VERSION-linux-{x86_64,x86,aarch64}.tar.gz`。 [Release](https://git.whcself.xyz/WHC/Hermit/releases)(旧 [CST-agent releases](https://git.whcself.xyz/WHC/CST-agent/releases) 过渡期可能仍有镜像):`hermit-VERSION-linux-{x86_64,x86,aarch64}.tar.gz`。
### Windows ### Windows
+2
View File
@@ -1,5 +1,7 @@
# Hermit 文档索引 # Hermit 文档索引
规范仓库:[WHC/Hermit](https://git.whcself.xyz/WHC/Hermit)。从旧名迁移见根目录 [MIGRATION.md](../MIGRATION.md)。
二进制:`hermit`(兼容软链 `cst-agent`)。配置目录:`~/.config/hermit`(若无则回退 `~/.config/cst-agent`)。 二进制:`hermit`(兼容软链 `cst-agent`)。配置目录:`~/.config/hermit`(若无则回退 `~/.config/cst-agent`)。
| 文档 | 内容 | | 文档 | 内容 |
+2
View File
@@ -18,4 +18,6 @@ icons/{状态}-shell.svg 是大的带壳图标;icons/{状态}.svg 是小的无
普通字符终端不直接渲染 SVG;图标适用于支持图形的终端界面、Webview 或 CLI 伴随应用。 普通字符终端不直接渲染 SVG;图标适用于支持图形的终端界面、Webview 或 CLI 伴随应用。
**TUI 双轨**:默认极简字符/色块帧见 `src/hermit_glyph.c`;`make hermit-font`(`scripts/build_hermit_font.py`)把本目录 SVG 批量打成 `res/hermit-icons.ttf`(PUA `U+E700+`),`HERMIT_ICONS=font` 时直接输出码点序列。
更新:橘杏色身体、莓紫眼睛、低饱和蓝绿终端壳。预览主角色以 620ms 缓入缓出插值连续改变眼睛路径与身体姿态,支持中途切换;不重建主角色。状态符号淡入淡出。独立 SVG 保留各状态循环动效;跨状态变形逻辑位于 index.html。 更新:橘杏色身体、莓紫眼睛、低饱和蓝绿终端壳。预览主角色以 620ms 缓入缓出插值连续改变眼睛路径与身体姿态,支持中途切换;不重建主角色。状态符号淡入淡出。独立 SVG 保留各状态循环动效;跨状态变形逻辑位于 index.html。
+1 -1
View File
@@ -3,7 +3,7 @@
#define CST_VERSION_MAJOR 0 #define CST_VERSION_MAJOR 0
#define CST_VERSION_MINOR 10 #define CST_VERSION_MINOR 10
#define CST_VERSION_PATCH 0 #define CST_VERSION_PATCH 1
#define CST_VERSION_STR_(x) #x #define CST_VERSION_STR_(x) #x
#define CST_VERSION_STR(x) CST_VERSION_STR_(x) #define CST_VERSION_STR(x) CST_VERSION_STR_(x)
+1 -1
View File
@@ -128,7 +128,7 @@ install_from_release() {
} }
main() { main() {
local repo_url="${CST_AGENT_REPO:-https://git.whcself.xyz/WHC/CST-agent.git}" local repo_url="${CST_AGENT_REPO:-${HERMIT_REPO:-https://git.whcself.xyz/WHC/Hermit.git}}"
local prefix="${CST_AGENT_PREFIX:-$HOME/.local}" local prefix="${CST_AGENT_PREFIX:-$HOME/.local}"
local dir="" pull=1 changed=0 mode="${CST_INSTALL_MODE:-source}" arg local dir="" pull=1 changed=0 mode="${CST_INSTALL_MODE:-source}" arg
for arg in "$@"; do for arg in "$@"; do
+52
View File
@@ -0,0 +1,52 @@
#!/usr/bin/env bash
# Retarget this checkout's origin to the Hermit repo (canonical name).
# Safe to rerun. Does not rewrite history.
#
# ./scripts/migrate_remote_to_hermit.sh
# HERMIT_REMOTE_URL=… ./scripts/migrate_remote_to_hermit.sh
set -euo pipefail
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
cd "$ROOT"
NEW_URL="${HERMIT_REMOTE_URL:-https://git.whcself.xyz/WHC/Hermit.git}"
OLD_HINT="CST-agent"
if [[ ! -d .git ]]; then
echo "not a git checkout: $ROOT" >&2
exit 1
fi
cur="$(git remote get-url origin 2>/dev/null || true)"
echo "==> current origin: ${cur:-"(none)"}"
echo "==> target origin: $NEW_URL"
if [[ -n "$cur" && "$cur" == "$NEW_URL" ]]; then
echo "already on Hermit remote"
else
if git remote get-url origin >/dev/null 2>&1; then
git remote set-url origin "$NEW_URL"
else
git remote add origin "$NEW_URL"
fi
# Keep a pointer at the old name for a while.
if ! git remote get-url cst-agent >/dev/null 2>&1; then
if [[ -n "$cur" && "$cur" == *"$OLD_HINT"* ]]; then
git remote add cst-agent "$cur" || true
echo "==> saved previous URL as remote 'cst-agent'"
else
git remote add cst-agent "https://git.whcself.xyz/WHC/CST-agent.git" || true
fi
fi
fi
git fetch origin
branch="$(git rev-parse --abbrev-ref HEAD)"
if git show-ref --verify --quiet "refs/remotes/origin/$branch"; then
git branch --set-upstream-to="origin/$branch" "$branch" 2>/dev/null || true
fi
echo
echo "OK. Canonical repo: $NEW_URL"
echo " git remote -v"
echo " See MIGRATION.md for config / binary / env notes."
git remote -v