Skills Manager v1.43.3
发布日期:2026-11-03
递交范围:v1.43.2...v1.43.3
发布概览
- 部署给 Antigravity 的 Skill 现在会放进它实际读取的目录。检查更新时遇到网络抖动,同一仓库的 Skill 不再全部显示有更新。项目里几个 Agent 共用的目录,只装了其中一部分 Agent 时也能正常使用。
用户可见更新
- Antigravity 能找到部署的 Skill 了 — 之前 Antigravity 的 Skill 部署到
~/.gemini/antigravity/skills,新版 Antigravity 不读这个目录。现在全局 Skill 部署到~/.gemini/config/skills(Antigravity 的 App、IDE 和 CLI 都读这里),项目 Skill 部署到<项目>/.agents/skills。已部署给 Antigravity 的 Skill 会在下次同步时重新部署到新目录。旧目录里的链接会被删除,副本移到技能库的kept-copies/antigravity/下,和其他 Agent 目录变更时的处理一样。感谢 @ZhuYichuan(#605),也感谢更早在 #458 提出相同路径的 @zhirogo(#602、#461、#409、#217)。 - 比较失败不再显示为有更新 — 对于从仓库里某个子目录安装的 Skill,检查更新时会再发一次请求,比较这个子目录和已安装的版本。这次请求失败时(比如网络连接断开),同一仓库的这类 Skill 会全部显示「Update」,角标、通知和自动更新也都据此行动。现在这些 Skill 会显示检查失败,保留已安装的版本,下次检查时再试。仍然可以在卡片上手动更新。感谢 @HengYangDS(#583、#582)。
- 共用的项目目录保持可用 — 在项目工作区里,读同一个目录的 Agent 会合成一行,例如 Antigravity、Cline、Warp 和 GitLab Duo 都用
.agents/skills。之前这一行只看排在第一位的 Agent 是否已安装、已启用,所以以下几种情况都无法在这一行添加 Skill:没装 Cline 的 Warp 用户;和内置 Agent 共用目录的自定义 Agent;没装 TRAE IDE、又把 TRAE CN 的项目目录改成.trae/skills的用户。现在只要读这个目录的 Agent 里有一个已安装并启用,这一行就能使用。感谢 @GoodScholar 在 #489 中定位到这个问题(#633、#431、#632)。
开发者与治理更新
- 对于上面第二条里的那类 Skill,
skills-manager-cli skills check --json现在报error,比较的报错放在last_check_error里,之前报的是update_available。从仓库根目录安装的 Skill,以及已经在远端最新提交上的子目录 Skill,行为不变。没有新增状态(#583)。 project_agent_targets_for_record现在根据项目目录与这一行相同的所有 adapter 来判断「已安装」「已启用」,而不只看这一行的 key 所属的 adapter。export_skill_to_project按同一状态过滤。这一行仍用第一个 adapter 的 key。回归测试改为读取这个 key、不再写死,因为 #605 改变了排在第一位的 adapter(#633、#634)。
当前校验状态
- ✅ 跨平台构建通过(macOS Intel / macOS ARM / Windows x64 / Linux x64 / Linux ARM64)
- ✅ TypeScript typecheck 通过
English release notes
Release date: 2026-11-03
Commit range: v1.43.2...v1.43.3
Release Overview
- Skills deployed to Antigravity now land in the folders Antigravity reads. A network hiccup during an update check no longer marks every skill from a repository as having an update. And a project folder that several agents share stays usable when only some of them are installed.
User-facing
- Antigravity finds deployed skills — Skills Manager deployed Antigravity skills to
~/.gemini/antigravity/skills, which current versions of Antigravity do not read. Global skills now go to~/.gemini/config/skills, which the Antigravity app, IDE and CLI all read, and project skills go to<project>/.agents/skills. At the next sync, skills already deployed to Antigravity are deployed again in the new folder. Links in the old folder are removed, and copies there move intokept-copies/antigravity/in the library, as with any change to an agent's folder. Thanks to @ZhuYichuan (#605), and to @zhirogo, who proposed the same paths earlier in #458 (#602, #461, #409, #217). - A failed comparison no longer shows as an update — For skills installed from a folder inside a repository, the update check makes a second request that compares that folder with the installed version. When that request failed, for example over a dropped connection, every such skill from the repository showed "Update", and the badge, the notifications and auto-update all acted on it. These skills now show a failed check, keep their installed version, and are checked again next time. You can still update one from its card. Thanks to @HengYangDS (#583, #582).
- Shared project folders stay usable — In a project workspace, agents that read the same folder share one row; Antigravity, Cline, Warp and GitLab Duo all use
.agents/skills, for example. The row counted as installed and enabled only when the first agent in it was. So skills could not be added there by a Warp user without Cline, by a custom agent sharing a built-in agent's folder, or by TRAE CN with its project folder set to.trae/skillsand TRAE IDE not installed. The row is now usable while any agent that reads the folder is installed and enabled. Thanks to @GoodScholar for tracking this down in #489 (#633, #431, #632).
Developer & Governance
skills-manager-cli skills check --jsonreports the skills from the second item above aserror, with the comparison's message inlast_check_error, where it used to reportupdate_available. Skills installed from a repository root, and subpath skills already at the remote head, are unchanged. No new status is introduced (#583).project_agent_targets_for_recordtakes "installed" and "enabled" from every adapter whose project folder matches the row, not only from the adapter whose key the row carries.export_skill_to_projectfilters on the same state. The row still carries the first adapter's key. The regression test reads that key instead of naming it, because #605 changed which adapter comes first (#633, #634).
Current Verification
- ✅ Cross-platform build passed (macOS Intel / macOS ARM / Windows x64 / Linux x64 / Linux ARM64)
- ✅ TypeScript typecheck passed
完整变更:v1.43.2...v1.43.3