Skip to content

release: 0.9.0-alpha.1(外部集成与 CLI) - #174

Merged
huhamhire merged 94 commits into
masterfrom
dev
Jul 2, 2026
Merged

release: 0.9.0-alpha.1(外部集成与 CLI)#174
huhamhire merged 94 commits into
masterfrom
dev

Conversation

@huhamhire

Copy link
Copy Markdown
Owner

0.9.0-alpha.1 发布 PR(dev → master)

本版首个预发布,重点是外部集成与 CLI:开启本机 API 把 PR 浏览与评审 Agent 操作开放给外部集成,并提供跨平台命令行工具 meebox

本 PR 含发布前置(同批完成)

  • 版本号apps/desktop/package.json 0.9.0-dev0.9.0-alpha.1(lockfile 同步)。
  • CHANGELOGUnreleased 段定版为 [0.9.0-alpha.1] - 2026-07-02,补 compare 链接引用。
  • 校对[0.9.0-alpha.1] 段已覆盖自 0.8.0 以来合入 dev 的要点。

主要内容(摘 CHANGELOG)

✨ 新增

  • 外部集成 · 本地 API 服务(设置「集成」分区,令牌鉴权,浏览 / 评审 Agent / 评审写动作,不含合并与变更类工具)。
  • 外部集成 · 命令行工具 meebox(Windows / macOS / Linux,经本地 API 浏览 PR、操作评审 Agent、执行评审写动作)。
  • PR 列表发现分类未读圆点;「我创建的」PR 通知;命令回显气泡;按提交发起评审 Agent。

♻️ 变更

  • 评审 Agent 临时工作树内部分支改用 pr-<localId>/head|base(去品牌化、贴合平台引用惯例)等。

🔧 修复

  • 主题相关配色、未读计数 chip 即时清零等。

附带修复(本 PR)

  • CLI 版本门控放行同线预发布 CLI:门控比对前把版本 coerce 到 major.minor.patch、忽略预发布后缀。此前直接 semver 比对会把与下限(0.9.0)同线的预发布误判为过旧——首发的 0.9.0-alpha.1 CLI 会被自家服务端(同为 0.9.0-alpha.1)拦为「过旧」。这是本 alpha 能正常工作的前置。

合并后

master 打 tag v0.9.0-alpha.1(名含 - → release.yml 自动标 prerelease、不抢占 Latest),触发出包 + CLI 二进制 + GitHub Release。

huhamhire and others added 30 commits June 30, 2026 21:16
0.8.0 发版后按版本号规则切下一版 -dev 预发布号,标记开发态、与正式版区分(-dev 不打 tag、不发版)。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
为 0.9.0「外部集成扩展与 CLI」方向沉淀设计:

- 服务监听与本地 API:主进程内置 HTTP API(IPC 之外第二前端),默认关闭、
  强制 bearer token、loopback 默认 / 可选 0.0.0.0、固定默认端口 18765、只读边界
  (写工具硬拒绝)、路由复用 service 层、端点表与 SV 错误码领域。
- CLI 工具:Go 技术栈与「同仓独立 cli/ 目录、不打进安装包」的内嵌评估、命令树、
  本机零配置自动发现(读 ~/.code-meeseeks/config.yaml)、输出与退出码、跨平台分发与 CI。
- 同步 arch README / 00-overview 模块地图与 ROADMAP 交叉链接。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
独立 Go module(顶层 cli/,不纳入 npm/Nx),作为本地 API 的瘦客户端:

- 命令树(cobra):categories、pr(list/show/diff/activity/commits/reviewers)、
  agent(status/history/review/instruct/chat);全局 flag --api-url/--token/--output/--quiet。
- 连接与鉴权解析:flag > env > CLI 配置文件 > 本机 ~/.code-meeseeks/config.yaml 自动发现。
- HTTP client:bearer 鉴权 + { ok, data } / { ok:false, error } 响应封套解析。
- 输出与退出码:JSON 输出 + 0/1/2/3 退出码映射(text 表格化待后续)。
- agent instruct 前置只读白名单(describe|review|ask|improve),写工具拒绝。

按设计文档契约实现(server 端单独实现)。本地 go vet / build / test 均通过。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
主进程内置 HTTP API(IPC 之外的第二前端),复用同一 ControllerContext 与 service 层把只读
PR / Agent 能力暴露给外部 CLI / 工具。默认关闭、开启即强制 bearer token 鉴权。

- 配置:config.yaml 新增 service 段(enabled / host / port=18765 / token,全默认);
  config:setService 热重建监听器、config:generateServiceToken 重新生成 token。
- 错误码:新增 SV(service)领域 + ESV0000~0004(经 HTTP 返回外部客户端,不走渲染层 i18n)。
- api-server:内置 http + 极简路由 + 常数时间 token 比对 + 统一响应封套 + 错误→状态码映射;
  12 端点(categories / prs 列表 + 详情 diff·动态·提交·描述·评审人 / agent 状态·历史·review·
  instruct·chat)。生命周期随 app 启停、按 service.enabled 决定是否监听,监听失败非致命。
- 只读边界:instruct 仅放行 describe/review/ask/improve,写工具硬拒绝(403)。
- 薄连接层:PR 列表的一/二级过滤 + 检索谓词与分类标签下沉为 @meebox/shared 纯函数,
  渲染层侧栏与 API 路由共用同一份语义(消除重复),api-server 仅做解析 + 委派。
- findPrOrThrow 改抛 AppError(PR_NOT_FOUND),API 可映射 404、GUI 亦得正确 i18n。

设计见 docs/arch/04-integration/01-service-api.md。本地 lint / typecheck / test / build 均通过。
设置页 UI 单列后续。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
设置页新增独立「集成」分区,可视化管理本地 API 服务监听(见上一提交的服务端):

- 开关 + 监听地址 http://<host>:<port> 两输入框组合(host 自由输入,保存时做简单合法性
  校验),开关仅决定是否监听、host/port/token 任何状态下均可编辑。
- bearer token:显示 / 隐藏 / 复制 / 重新生成(即时写盘生效);启用且无 token 时自动生成。
- 监听非 loopback 地址(0.0.0.0 / 局域网 IP)时给出安全警示。
- 四语 locale 同步(新增「集成」分区名与服务监听文案)。
- CHANGELOG 增「本地 API 服务」Unreleased 条目(CLI 待随发布产出后再补)。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
cli/ 为纯 Go、无 CGO,单 ubuntu runner 即可交叉编译全平台:

- 矩阵出 Windows x64 / macOS arm64 / Linux x64·arm64 二进制,打 .zip(win)/ .tar.gz(unix)
  + .sha256,随桌面安装包挂到同一个 GitHub Release(CLI 不打进安装包,是独立可分发物)。
- -ldflags -X …/cmd.version 注入版本号;仅 tag 触发上传,workflow_dispatch 仅编译冒烟。
- 不设 Release 正文(由桌面 build job 注入),仅追加产物,避免覆盖。
- CHANGELOG 补「命令行工具 meebox」条目(CLI 现随发布产出),本版重点改为「外部集成与 CLI」。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
cli/ 为独立 Go module,与 Node/Nx 的 CI 分开成独立 workflow:路径过滤只能加在 on 层
(不能按 job 过滤),独立成一条流水线才能做到仅当 cli/ 变更时才跑 go vet / test / build,
既隔离 Go 工具链、又省 CI 分钟。ci.yml 触发器保持不动,避免影响分支保护必检项。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
CLI 主消费者是第三方 agent,但集成方传 flag 无门槛,故默认可面向人类优化体验:

- 默认输出 YAML——结构化又比裸 JSON 可读(类 kubectl -o yaml);--output json 供机器/agent。
- YAML 与 JSON 皆为对响应数据的通用转换(json 解码 → 重新编码),不做逐命令表格 / formatter,
  免去手写响应 struct 的契约同步负担。复用既有 yaml.v3 依赖,无新增。
- 同步 cli/README 与设计文档 02-cli 的输出模式说明。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
与并列的 cli job 对称,明确 release 内 GUI / CLI 两条产物线的划分。release 保持单 workflow
双 job(按 tag 原子发版、发到同一 Release),不拆分——路径触发那套只适用于按变更跑的 CI。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
原先读 <user-config-dir>/meebox/cli.yaml 会另起一个配置根,与产品单一数据目录约定
(~/.code-meeseeks/)不一致。改为 ~/.code-meeseeks/cli.yaml:与 GUI 的 config.yaml 同目录、
独立文件,隔离二者配置且单一可发现。抽 appHome() 复用同一 home 解析。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
新增 docs/guide/06-cli.md(面向用户):开启本地 API 服务 → 获取 CLI → 连接方式(含本机零配置
自动发现)→ 命令表 → 输出格式与退出码 → 安全须知;更新 guide README 索引,并与设计文档 02-cli 互链。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- CLI(Go):httptest 契约 mock 起在进程内跑命令,断言各命令的 method/path/query/鉴权头/
  请求体、yaml/json 渲染、退出码映射(401/403→2、404→3),以及写工具客户端硬拒绝。
- render:可注入 Stdout/Stderr 输出 seam + ExitCodeFor / 输出格式单测。
- settings:加 isolateHome,隔离本机 ~/.code-meeseeks 使解析测试本地 / CI 都 hermetic。
- @meebox/shared:新增 test target + pr-filter 纯谓词单测(渲染层侧栏与 API 共用同一份语义)。
- 全部零外部依赖、不触第三方模型,本地与 GitHub 均可跑。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
补 Go 专有、根 .gitignore 未覆盖的忽略项:测试二进制(*.test)、覆盖率 / 剖析输出
(*.out / *.prof)、go workspace 文件(go.work / go.work.sum)。exe 与 dist/ 依赖根规则全局忽略。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
macOS 与 Windows 统一用 .zip(Finder 原生一步解压、贴合 Apple 工具链,Linux 仍用 .tar.gz)。
Linux runner 上 zip 保留 darwin 二进制的可执行位,解压即可运行。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- guide 06-cli:新增「网络代理」段(CLI 遵循标准 HTTP(S)_PROXY / NO_PROXY,loopback 直连)。
- arch 02-cli:补代理行为说明;发布产物命名更新为 Windows/macOS .zip、Linux .tar.gz。
- AGENTS.md:新增「CLI 工程(cli/)」段(独立 Go module / 本地命令 / 双 CI / 只读边界 / 契约同步);
  仓库结构对齐(cli/ 树、services/api-server、shared 的 pr-filter、docs/guide);
  CHANGELOG 撰写风格与 i18n 要点由密集单行改为列表排版。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
AGENTS.md 每会话整篇进上下文,精简其固定开销:

- 发布前置清单(版本号/CHANGELOG/校对)+ `-dev` 版本号规则 + CHANGELOG 撰写风格下沉到
  docs/development/packaging-release.md;AGENTS 只留 ⚠️ 前置警示 + 指针。
- pr-agent 运行时 / shim 深坑收成一条指针(机制与铁律已全在 02-agent/05)。
- 仓库结构树改用途导向(去具体文件名,各目录留一句职责);i18n 三条、内部包两步登记改列表排版。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
feat: 外部集成扩展与 CLI(本地 API 服务 + meebox CLI)
- priority / tools 标签补 i18n(优先级 / 工具,四语)。
- 文件路径由机器绝对路径改为相对 Agent 目录展示(`rules/<id>`)。
- 「打开 Agent 目录」按钮从每条规则行移到标题栏、全局仅一个(通用 Modal 新增可复用
  headerActions 槽;.modal-header-right 用 align-items:stretch 让图标按钮与关闭键等高)。
- 单条规则标题去掉 id(改「规则详情」),不再与下方路径重复。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
回归修复:有未保存草稿时点击面板外部背景会直接关闭并丢失配置。设置页改为
closeOnBackdrop={false},仅右上角关闭键(或保存成功)退出。子编辑器(连接 / LLM)
的 dirty→确认放弃逻辑保留不变。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 分级交互样式:整分区改用 settings-sublist(圆点 + 标签/说明 + 右控件),与「策略」「通知」统一;
  监听地址、访问令牌各一行,两行右侧控件等宽(320px)左右边缘对齐、组内输入框自适应填充。
- 文案:serviceHint 弱化为「使用 token 鉴权」;监听提示精简为单句「配置为 0.0.0.0 可被本机局域网访问」;
  访问令牌新增标签 + 一句用途说明。
- 图标:分区导航 ShareIcon → PuzzleIcon(拼图/扩展);「重新生成」文字按钮 → 刷新图标 SyncIcon,
  与显隐 / 复制图标按钮并排一致。
- token 草稿制:generateServiceToken 改为纯生成随机 token(32B→base64url,不落盘),前端只置入草稿并
  标脏 → host / port / token 一致「保存才生效、不保存则丢弃」。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
fix(desktop): 集成配置与规则弹层交互改良 + 设置面板误关回归修复
发现分类标签(待我评审 / 我创建 / 指派 / 提及)下有未读 PR 时,标签文字后加亮蓝未读圆点,
提示该分类有新的待处理;无发现分类平台的单一「进行中」锚点任一活动 PR 未读即标点。
未读点始终基于活跃 PR(即便处在「已关闭」视图,标签仍反映活跃分类的未读),复用既有
pr.unread 语义,随 PR 被查看清除。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
--bg-group-header 之前不在 editor-chrome-sync 的派生集里,主题切换时停在 _theme.scss 静态浅/深值、
与派生出来的 --bg-app/--bg-panel 不匹配。现纳入派生:从当前主题 base 色向黑轻微下沉(比 bg-app 略暗的
凹陷标题带,hover 走 --bg-panel 上浮),随主题一致变化。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
按约定,CLI 的设计文档(arch 02-cli)与使用文档(guide 06-cli)无须互相引用,双向移除引导链接。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
窗控按钮(titleBarOverlay)此前在主进程用硬编码通用深/浅色,只按 nativeTheme 深浅二选一,
非标准主题下与标题栏派生底色对不上、右上角有接缝。现由渲染层在主题应用后把派生的
--bg-app / --text-primary(hex)经新 IPC window:setControlColors 推给主进程 setTitleBarOverlay,
与具体主题精确同色;渲染层未推送时按 nativeTheme 深浅回退通用色(新窗口 / 兜底)。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
状态栏常态不再显示 pr-agent 版本号(减少噪声),仅在不可用时保留红色告警
chip(可操作信息)。版本与运行策略改在「关于」页运行环境信息中弱化展示,
打开时按需拉取。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
作者视角下有合并冲突的 PR 需其跟进解决,即便评审已通过。「我创建的」发现分类
的「待处理」二级筛选除本人评审决断 pending 外,并入存在冲突的 PR;筛选与计数
均复用 @meebox/shared 同源谓词(与本地 API 一致),避免与冲突计数重复叠加。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
运行环境信息中 pr-agent 一行去除 embedded/local-cli 运行策略前缀(对用户无
意义),仅展示版本号;键名对齐官方品牌名 PR-Agent 的大小写。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
二级状态筛选按钮改为宽度自适应胶囊:basis 取内容宽,一行挤得下就用一行;容纳不下
时按内容宽换行(窄侧栏自然落为每行两个),flex-grow 使每行按项数均分撑满整行,消除
定宽按钮换行后右侧留白参差;内容居中读作对称胶囊。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
补充 Unreleased:新增发现分类未读圆点;变更状态栏 pr-agent 版本弱化、「我创建的」
待处理并入冲突、二级筛选胶囊宽度自适应;修复分组头背景与 Windows 窗控随主题。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
huhamhire and others added 27 commits July 2, 2026 10:48
原本临时 worktree 恒建 `meebox/head` / `meebox/base` 两个分支,带工具品牌前缀且
静态不变,pr-agent 会把它当 PR 标识回显进 describe/review 产出,构成明显行为特征。

改为 `pr-<localId>/head` / `pr-<localId>/base`(localId = 每-PR 稳定主键):去掉品牌
前缀、与 PR 关联便于追溯,斜杠分层贴合平台 refs/pull/N/head 惯例;未提供 localId 的
包级直调回退到本次随机 nonce。同步更新发布前的泄漏清洗器正则以匹配新命名,避免换名后
分支名漏进公开评论。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…aming

feat(pragent): worktree 内部分支名改用 pr-<localId>/head|base
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- POST /api/v1/refresh:触发一次立即轮询刷新(复用 GUI 同源 poller.tick / prs:refresh),
  返回本轮计数汇总;纯读远端 + 落本地,无远端写副作用。
- GET /api/v1/version:返回服务端(桌面应用)版本,供 CLI 同时展示客户端 + 服务端版本。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- pr refresh:触发一次立即刷新(POST /refresh),返回本轮变化计数;归入 pr 领域(刷新 PR 列表)。
- version:同时返回客户端(CLI)+ 服务端(应用)版本;服务端不可达时仅客户端、退出码仍 0
  (根 --version flag 保留为快速客户端版本)。根层级系统性命令。
- categories 从顶层移入 pr 领域(它是 pr list 的筛选词表)。
- 系统性命令(whoami / version)保留在根层级,不套领域组。
- 同步更新 SKILL.md / README.md(skill 交付形态)与集成测试。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
arch(service-api 端点表 + cli 命令树/分组哲学)、guide(用法表)三处对齐:根层级系统性命令
(whoami / version)+ pr 领域(含 categories / refresh)+ agent 领域。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
将 routes.ts 拆为 routes/ 子目录:system(whoami / version)、pr(列表 / 详情 / diff / 刷新 /
分类 / 评审写动作)、agent(Agent 操作),公共原语(Route 类型 / seg / NO_EVENT)归 shared;
routes/index 只做聚合注册与路径匹配、不含业务逻辑。与 CLI 命令树的领域划分对称。纯结构调整,
端点与行为不变。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
meebox login --token <token> [--server <url>]:把 token(与可选 server,默认 loopback)
持久化到 ~/.code-meeseeks/cli.yaml(0600 权限),后续命令免逐次传参。此前 CLI 只能读 cli.yaml
(Resolve)却无写入手段,login 补上写侧,使配置管理自洽。根层级系统性命令;纯本地写、不校验令牌
(可随后 whoami 确认)。

settings 增 Save() 与 DefaultAPIURL()(后者同时去重 Resolve 的默认兜底)。同步 SKILL.md / README.md。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
构建期用 go:embed 把 SKILL.md 内嵌进二进制,meebox skill 打印之——二进制即便脱离发布压缩包
(go install / 裸放 PATH)也能自述 agent 用法,且内嵌内容与随包 SKILL.md 构建期一致。根层级
系统性命令。刻意不做 --manifest 之类 function-calling JSON:skill 的消费形态是 markdown、非工具
schema 注入,真有此需求应从命令树生成而非另手维护。

Execute / newRootCmd 增 skillDoc 形参由 main 注入(embed 须置于 SKILL.md 所在的根包)。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
arch 补 skill 命令与 go:embed / 不做 manifest 的设计说明;guide 新增「作为 Agent Skill 集成」
一节,说明投放即用、二进制自述、集成流程与边界,并澄清 SKILL.md 自动发现是 Claude 约定、
其它框架经 shell + meebox skill + --output json 接入。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
guide「Agent Skill 集成」一节与 README 补充:手头只有二进制(缺压缩包 / SKILL.md)时,
可用 `meebox skill > SKILL.md` 从内嵌副本导出、就地重建 skill 目录,内容与二进制同源。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
feat(cli): meebox 新增 pr refresh / version 命令并规整命令树
curl … | bash 一条命令完成安装:探测系统/架构 → 解析最新 Release(或 MEEBOX_VERSION/--version)
→ 下载匹配压缩包 → 校验 SHA-256 → 解出 meebox 装入 PATH(默认 /usr/local/bin,不可写回退
~/.local/bin;MEEBOX_BIN_DIR/--bin-dir 可覆盖)。刻意不落地 SKILL.md(已内嵌、meebox skill 可导出)。
仅覆盖 Linux 与 macOS arm64(与已发布产物一致),Windows 走手动下载。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
guide §2 增一键安装 + 手动下载回退;cli/README 增 Install 节;arch 02-cli 分发段补安装脚本说明。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
CLI 请求带 X-Meebox-CLI-Version 头声明版本;服务端据集中管理的最低可兼容版本(MIN_CLI_VERSION)
对所有 API 调用统一门控:版本可解析且低于下限 → 426 + SV_CLIENT_TOO_OLD(meta 带 minVersion /
clientVersion)。默认宽松:缺头 / 不可解析(dev 构建)放行,保证既有 CLI 可用;不做按端点差异化。
新增错误码 ESV0005。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
apiclient 每次请求带 X-Meebox-CLI-Version(版本经 New 注入,空则省略);收到 ESV0005
(HTTP 426)时 APIError.Error() 输出「CLI 过旧、请升级」提示,含双方版本与升级指引。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
CLI release 版本不再独立取 git tag,改从 apps/desktop/package.json(app 运行期版本的唯一真相源)
读取并注入 cmd.version;发布前置已校验 tag == 该版本,故二者一致但只有一个来源。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
arch service-api 增「CLI 版本兼容门控」一节 + 426 状态;arch cli 与 AGENTS 记版本取自
apps/desktop/package.json(与 app 同源)+ 版本头门控;guide 增版本过旧升级提示说明。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
feat(cli): 一键安装脚本 + CLI↔server 版本兼容门控 + 版本源统一
- config-reference 补齐缺失的 appearance / notifications / service / update 配置块(含完整示例、字段表与小节)
- 订正 language 字段:默认空=自动、界面+pr-agent 双语,已在设置页暴露(热生效)
- 生效时机注记:并发数改为热生效,重启项仅 workspace.repos_dir
- 修正两处失效的 arch 链接(指向重组前扁平布局):06-agent.md / 07-rules.md → 02-agent 子目录

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
预发布构建(如 0.9.0-alpha.1)与其正式版同属一条版本线、共享同一线协议,但 semver 中预发布低于其正式版,直接比对会把与下限(0.9.0)同线的预发布 CLI 误判为过旧、连首发的 alpha 都被拦。改为比对前把版本 coerce 到 major.minor.patch、忽略预发布后缀;同步更新服务 API arch 文档。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
apps/desktop/package.json 版本 0.9.0-dev → 0.9.0-alpha.1(lockfile 同步);CHANGELOG 的 Unreleased 段定版为 [0.9.0-alpha.1] - 2026-07-02 并补 compare 链接引用。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@huhamhire huhamhire added release 发布 PR / 版本发布 enhancement New feature or request labels Jul 2, 2026
@huhamhire
huhamhire merged commit 7ca286b into master Jul 2, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request release 发布 PR / 版本发布

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant