docs: generalize skill-template references + add TESTING.md

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-10 10:00:44 +08:00
parent f3f59278b4
commit f0032b2201
9 changed files with 368 additions and 122 deletions

View File

@@ -1,4 +1,4 @@
# skill-template CLI 模板
# 通用业务技能模板 CLI 模板
`{baseDir}` 替换为技能根目录(含 `SKILL.md``scripts/` 的目录)。所有命令通过 `python {baseDir}/scripts/main.py` 调用。
@@ -9,28 +9,38 @@ python {baseDir}/scripts/main.py health
python {baseDir}/scripts/main.py version
```
## 若你的技能是发布型
## 通用业务命令骨架
建议继续扩展这些子命令
模板默认提供以下命令(复制后按需保留或扩展)
```bash
python {baseDir}/scripts/main.py publish
python {baseDir}/scripts/main.py publish -a <账号id> -i <文章id>
python {baseDir}/scripts/main.py run
python {baseDir}/scripts/main.py run -t <target> -i <input_id>
python {baseDir}/scripts/main.py logs
python {baseDir}/scripts/main.py logs --task-type disburse --status failed
python {baseDir}/scripts/main.py log-get <log_id>
```
含义:
- `run`:执行一次任务(具体语义由你的 skill 决定)
- `logs`:列出最近 N 条任务日志,可按 task_type / status / target 过滤
- `log-get`:按 log_id 查看单条任务日志JSON
## 若你的技能是发布类
可以把 `run` 命令对外别名为 `publish`,参数 `--target` 别名为 `--account-id`,参数 `--input-id` 保持不变。
## 若你的技能依赖兄弟技能
并列技能与 `{baseDir}` 同级时,兄弟技能路径写为:
使用 `service.sibling_bridge.call_sibling_json(skill_slug, args)`,不要硬编码兄弟技能名到 sibling_bridge.py 自身。
```bash
python {baseDir}/../content-manager/scripts/main.py ...
python {baseDir}/../account-manager/scripts/main.py ...
# 假设 base 与兄弟技能同级
python {baseDir}/../<sibling-skill-slug>/scripts/main.py ...
```
## 模板约定
- 最小模板至少保留 `health` / `version`
- 发布型技能建议使用 `publish` / `logs` / `log-get`
- 不要再用旧模板的 `scripts/skill_main.py`
- 通用业务技能建议使用 `run` / `logs` / `log-get`
- 不要再用旧模板的 `publish` / `--account-id` / `--article-id` 命名