技能管理
wescode 的 Tier C 编程技能装配与管理。
预装技能
wescode 预装 26 个 Tier C 编程技能,位于 backend/presets/skills/。
装配路径
workspace 首次打开时自动装配:
seedBuiltinSkills → appengine.SeedSkills → cell.Skills().InstallFromDir
技能装到当前 workspace 对应的 Cell,不是全局。
Tier E vs Tier C
| 层级 | 来源 | 可编辑 | 示例 |
|---|---|---|---|
| Tier E | wesgine 二进制 embed | 只读 | plan / memory-strategy / delegation |
| Tier C | .wesskill 包上传或应用自带 | 可编辑 | code-review / test-engineering |
关键规则
- Tier E 由 wesgine 统一管理,wescode 禁止同名覆盖
- wescode 产品 delta 必须不同名:
wescode-retrieval、wescode-execution - Tier C 技能受
MaxSkillsInstalled限制
技能 API
通过 Cell Handle 管理:
cell.Skills().InstallPackage(ctx, pkg []byte) // .wesskill
cell.Skills().SeedProduct(ctx, name, fsys) // 应用自带
cell.Skills().Uninstall(ctx, name)
cell.Skills().Update(ctx, name, pkg []byte)
cell.Skills().Rollback(ctx, name, version)
cell.Skills().SetEnabled(ctx, name, enabled)
cell.Skills().List(ctx)
cell.Skills().Info(ctx, name)
cell.Skills().Export(ctx, name) // .wesskill 导出
双层白名单
两层 AND 生效:
- Cell 层:
DisabledEngineSkills禁用特定 Tier E 技能 - Agent 层:
AgentConfig.Skillsallowlist(nil= 全量,[]= 无)
.wesskill 包结构
SKILL.md # 必需,name/version 权威源
scripts/ # 脚本文件
templates/ # 模板文件
manifest.json # 可选,依赖声明
signature.sig # 可选,ed25519 签名
渠道三值闭域
| 渠道 | 含义 | 可编辑 |
|---|---|---|
engine | 随引擎二进制 | 只读 |
product | 应用自带 | digest 比较更新 |
user | 用户安装 | 引擎不改写 |
SeedProduct 三方比较
应用自带技能更新判据在引擎:
- 比较 embed / 磁盘 /
wes_skill_seed账本三方 - 而非 SDK 侧用
Info.Source判断
相关文档
- engine 技能系统 → engine
skill-system.md - 工作区即 Cell →
workspace-cell.md