yolo-data

公共 Skill 上传与验收

在「智能体 → 公共 Skills」中,管理员可以上传 Markdown、启用/停用公共 Skill,以及删除外部目录或手动上传的条目。内置 Skill 可停用,不能删除。会话认证模式下,管理 API 仅允许管理员调用;匿名用户返回 401,普通用户返回 403。

上传规则

示例:

---
name: sales-analysis-method
description: 销售分析的步骤与验证方法
phases: [PRE_PLAN, PLAN, POST_EXECUTE]
---

## Workflow
按已经冻结的查询契约分析结果。

## Validate
核验合计、日期范围与结论使用的数据。

引用与显示

上传来源 UPLOAD 与目录来源 SKILL_MD 都参与阶段指导。停用后,已有绑定保留,但有效 Skill 列表不包含它;重新启用后恢复。删除会清理绑定引用。

名称、说明、文件名和引用提示在页面中转义显示,HTML 片段作为文本。删除已被引用的 Skill 时,页面提示受影响的智能体,并允许取消。

验证

npm test 包含真实 HTTP/SQLite 的权限、非法输入、重复上传、阶段指导与引用生命周期测试,以及编码/字节边界测试。

浏览器测试用独立临时平台库和真实登录会话,覆盖选择与拖拽文件、上传/更新、启停、取消/确认删除、HTML 文本显示和普通用户访问。测试不连接业务数据库、不调用外部模型。

npm install --no-save --package-lock=false @playwright/test
npx playwright install chromium
$env:YOLO_SKILL_BROWSER_TEST = '1'
node --test tests/skillCatalog.browser.test.js

本机已有 Edge 时,可设置 $env:YOLO_BROWSER_CHANNEL = 'msedge'。CI 复用已安装的 Chromium,截图保存为 skill-browser artifact。