技能系统

wescraft 通过技能(Skill)为 AI 注入特定领域的工作方法和最佳实践。

什么是技能

技能是结构化的 Markdown 文件(SKILL.md),告诉 AI 在特定场景下应该如何工作。它不是代码插件,而是一套可复用的工作指令。

示例:一个"会议纪要整理"技能可能包含:

技能来源

预装技能

wescraft 自带一组信息工作场景的技能,安装在 Cell 的 skills/ 目录中:

自定义技能

通过 .wesskill 包安装自定义技能:

my-skill.wesskill (tar.gz)
├── SKILL.md          # 技能定义(必需)
├── manifest.json     # 可选:依赖声明
├── scripts/          # 可选:辅助脚本
├── templates/        # 可选:输出模板
└── references/       # 可选:参考资料

SKILL.md 结构

---
name: meeting-notes
description: 整理会议纪要。
version: 1.0.0
author: your-name
---

# 会议纪要整理技能

## When to Use
当用户提供会议录音转写文本或会议笔记时使用。

## Procedure
1. 识别参与者和时间
2. 提取关键议题
3. 分类:决议 / 待办 / 风险
4. 生成结构化纪要

技能管理

安装

通过 Cell Handle 安装:

cell.Skills().InstallPackage(ctx, tarGzBytes)

查看已安装

skills, _ := cell.Skills().List(ctx)
for _, s := range skills {
    fmt.Printf("%s v%s (%s)\n", s.Name, s.Version, s.Channel)
}

启用 / 禁用

cell.Skills().SetEnabled(ctx, "meeting-notes", false)

卸载

cell.Skills().Uninstall(ctx, "meeting-notes")

技能渠道

渠道来源可编辑
engine引擎 Tier E 内置❌ 只读
productwescraft 预装按版本更新
user用户自行安装✅ 可编辑

技能与 Agent 绑定

可以指定某些技能只对特定 Agent 生效:

双层白名单:Cell 级 DisabledEngineSkills × Agent 级 Skills allowlist,AND 生效。

技能在对话中的使用

在 Sidebar Chat 中,AI 会根据用户的意图自动加载匹配的技能。你也可以通过斜杠命令显式触发:

/skills install path/to/skill.wesskill
/skills list
/skills reload