docs(workflows): zhangqing 任务三报告补充 Skill 蓝图对照 + Agent 对话触发语

按 PDF 正确做法补强交付:
- 01/05/07 三份报告各加「Skill 蓝图对照」段,逐动作引用 SKILL.md 行号
- README 加 Skill 作为设计蓝图的总览表
- 新增 agent-dialogue-triggers.md:给评委的 Agent 对话触发语(Skill 驱动 Agent 的演示入口)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
zhangqing 2026-06-29 17:10:14 +08:00
parent ce22a736e7
commit 19ce89394f
5 changed files with 265 additions and 8 deletions

View File

@ -57,15 +57,46 @@
- URL: https://gitlink.org.cn/ylly/gitlink-cli/releases
- name: `v0.2.0 Beta 1 — 任务三阶段版(预发布)`
## 任务二 Skill 串联关系
## 任务二 Skill 蓝图对照(按 SKILL.md 行号)
| 步骤 | 使用的 Skill | 角色 |
|------|-------------|------|
| 1 | gitlink-issue-triage | Issue 分类 |
| 3 | gitlink-insight | 周报洞察 |
| 4 | gitlink-release-auto | 自动发版 |
本工作流每一步都严格按任务二 Skill 蓝图执行Skill 是**设计蓝图**,本报告是蓝图的**落地执行**。
3 个 Skill 串联,满足 PDF「≥3 命令/Skill 串联」要求。
### 步骤 1 ← `gitlink-issue-triage/SKILL.md` 工作流 1自动分类打标签
| 执行动作 | SKILL.md 蓝图位置 | 蓝图要求 | 实际执行 |
|---------|------------------|---------|---------|
| 拉开放 Issue | 第 58-62 行 Step 1 | `issue +list --state open` | ✅ 拉到 16 个 |
| 筛未分类 | 第 64-68 行 Step 2 | 过滤 `tags=[]` | ✅ 11 个未分类 |
| 读详情分类 | 第 70-78 行 Step 3-4 | 标题+描述语义分类 | ✅ 按中文标签语义归类 |
| 复用现有标签 | 第 80-91 行 Step 5 | **优先复用仓库已有中文标签** | ✅ 直接复用「测试/缺陷/功能/性能/疑问」未新建 |
| 打标签 | 第 93-99 行 Step 6 | `issue +update --label`(覆盖语义) | ✅ 11 个全部分类完成 |
| 输出报告 | 第 101-117 行 Step 7 | 表格汇总 | ✅ 见本报告步骤 1 表格 |
**关键决策对照**SKILL.md 第 91 行明确说"优先复用现有标签(含中文同义词),先匹配再考虑新建英文标签"。本仓库已有「缺陷/功能/文档」等中文标签,**未新建任何英文标签**,完全符合蓝图。
### 步骤 2 ← `gitlink-issue-triage/SKILL.md` 工作流 2自动分配 + 通知)
SKILL.md 第 125-146 行 Step 1-2 已**预判**此场景:个人仓库 `assigners` 返回空数组(第 133 行红框警告),按第 146 行"列表为空则跳过分配并在报告中标注"处理。✅ 实际执行与蓝图预判一致,跳过并在报告标注。
### 步骤 3 ← `gitlink-insight/SKILL.md` 工作流 2Sprint 周报)
| 执行动作 | SKILL.md 蓝图位置 | 蓝图要求 | 实际执行 |
|---------|------------------|---------|---------|
| 采集 Issue 数据 | 第 120-122 行 | closed + open issue | ✅ 16 open / 6 closed |
| 采集 PR 数据 | 第 123-125 行 | merged PR | ✅ 2 merged |
| 采集 Release | 第 126-128 行 | `release +list` | ✅ Release=0发版前 |
| 风险标注 | 第 164-165 行 | 列风险与阻塞 | ✅ 标注"未发布 Release""测试类 Issue 可清理" |
### 步骤 4 ← `gitlink-release-auto/SKILL.md`
| 执行动作 | SKILL.md 蓝图位置 | 蓝图要求 | 实际执行 |
|---------|------------------|---------|---------|
| 版本号推荐 | 第 32-90 行 一、版本号推荐 | 按 Conventional Commits 分类推 Semver | ✅ feat 26/fix 17 → MINOR 升 → v0.2.0 |
| Release Notes 生成 | 第 94-145 行 二、自动生成 | 按类型分组 + 贡献者去重 | ✅ 按 Conventional Commits 分组,贡献者去重 |
| 预发布版本 | 第 179-189 行 三、预发布版本 | `--prerelease true` | ✅ 选 beta.1 预发布(等整合者发正式 v0.2.0 |
| 贡献者去重 | 第 145 行红框警告 | **必须去重** | ✅ 跨提交去重为 14 人 |
**3 个 Skill 串联,满足 PDF「≥3 命令/Skill 串联」要求。**
## 关键避坑(本工作流踩到的)

View File

@ -44,4 +44,34 @@
GitLink 无"用户主页评论"能力,改在 Issue 评论或新建颁奖 Issue 演示)
**Step 3: 可选 — 新建颁奖 Issue**
创建一个 Issue「🏆 v0.2.0-beta.1 贡献者排行榜公布」body 含本排行榜,用 @mention 提及 Top 贡献者并打上「星级贡献者」label。
创建一个 Issue「🏆 v0.2.0-beta.1 贡献者排行榜公布」body 含本排行榜,用 @mention 提及 Top 贡献者并打上「星级贡献者」label。
---
## Skill 蓝图对照(按 SKILL.md 行号)
### 取数阶段 ← `gitlink-insight/SKILL.md` 工作流 3贡献者洞察
| 执行动作 | SKILL.md 蓝图位置 | 蓝图要求 | 实际执行 |
|---------|------------------|---------|---------|
| 贡献者列表 | 第 173-183 行 采集数据 | `contributors` + merged PR + user info | ✅ commits 走 `git log`contributors API 返回 HTML降级方案+ merged PR + Issue 作者聚合 |
| 角色与活跃度 | 第 185-203 行 输出格式 | 排行 + 活跃度分布 | ✅ 综合积分公式 commits×1+PR×5+Issue×2按贡献分层 |
| 三层分布 | 第 194-197 行 | 核心/活跃/新增 | ✅ 对应「星级/活跃/贡献者」三级徽章 |
### 发奖阶段 ← `gitlink-issue-triage/SKILL.md` 工作流 1 + 通用 label 操作
| 执行动作 | SKILL.md 蓝图位置 | 蓝图要求 | 实际执行 |
|---------|------------------|---------|---------|
| 查现有标签 | 第 80-84 行 Step 5 | `label +list` 命中则复用 | ✅ 仓库原无徽章 label3 个均新建 |
| 创建徽章 | 第 86-89 行 | `label +create --name --color` | ✅ 星级 394180 / 活跃 394181 / 贡献者 394182 |
| 颁奖 Issue | 第 101-117 行报告格式 | 表格 + @mention | ✅ Issue #17 已建并打「星级贡献者」label |
### Skill 串联数
| 步骤 | 使用的 Skill/命令 | 角色 |
|------|------------------|------|
| 1 | git log + issue +list + pr +listinsight 工作流 3 数据源) | 取数 |
| 2 | label +createissue-triage 工作流 1 Step 5 | 建徽章 |
| 3 | issue +create + issue +update --labelissue-triage 工作流 1 Step 6 | 颁奖 |
**3 步串联,满足 PDF「≥3 命令/Skill 串联」要求。**

View File

@ -71,3 +71,49 @@ MSYS_NO_PATHCONV=1 ./gitlink-cli.exe api POST /v1/ylly/gitlink-cli/issues/<n>/jo
2. **issue +list 与 issue +view 的 tag 字段不一致**list 用 `issue_tags` 且可能不返回view 用 `tags` 字段才完整
3. **创建 issue 必须传 `done_ratio: 0`**,否则 MySQL 报 `Column 'done_ratio' cannot be null`
4. **issue create 时 issue_tag_ids 字段不生效**GitLink bug需创建后用 `issue +update --label <id>` 补打
---
## Skill 蓝图对照(按 SKILL.md 行号)
本工作流 5 个 Step 严格按 `gitlink-onboarding/SKILL.md` 蓝图执行。
### Step 2 ← `gitlink-onboarding/SKILL.md` 工作流 1good-first-issue 自动标记)
| 执行动作 | SKILL.md 蓝图位置 | 蓝图要求 | 实际执行 |
|---------|------------------|---------|---------|
| 取开放 Issue | 第 54-58 行 Step 1 | `issue +list` | ✅ 17 个开放 Issue |
| 按识别标准评估 | 第 31-46 行 + 第 60-62 行 Step 2 | 5 条友好信号 + 3 条排除标准 | ✅ 3 个 docs 类入选14 个按排除标准剔除 |
| 复用现有标签 | 第 64-74 行 Step 3 | 优先复用,无则建 | ✅ 仓库已有 good first labelid 382660未新建 |
| 输出标记报告 | 第 84-95 行 Step 5 | 表格汇总 | ✅ `onboarding_identify_report.md` |
**关键对照**SKILL.md 第 44-46 行排除标准(性能优化/描述模糊/CI 部署)逐条复审 14 个未入选 Issue全部命中排除理由测试数据 / 模糊描述 / 性能 / 新功能开发)。
### Step 3 ← `gitlink-onboarding/SKILL.md` 工作流 2引导评论生成
| 执行动作 | SKILL.md 蓝图位置 | 蓝图要求 | 实际执行 |
|---------|------------------|---------|---------|
| 读 Issue 详情 | 第 103-107 行 Step 1 | `issue +view` | ✅ #8/#13/#14 各取详情 |
| 生成个性化评论 | 第 109-117 行 Step 2 | **禁止固定模板**4 要素(任务/文件/本地准备/PR 规范) | ✅ 3 条**完全不同**的评论,每条指向具体文件 |
| 发布评论 | 第 118-123 行 Step 3 | `issue +comment` | ✅ journals 478829/478830/478831绕中文编码走 Raw API |
| 个性化要求 | 第 205 行注意事项 | "避免对所有 Issue 用同一句" | ✅ #8`wiki.go` / #13`Makefile` / #13`wiki +list --format json` |
### Step 4 ← 通用通知能力
`notification +list` 自查询(受限)。`gitlink-shared/SKILL.md` 平台限制:只能查自己的通知。✅ 用 `--owner zhangqing23` 自查 13 条通知。
### Step 5 ← `gitlink-insight/SKILL.md` 工作流 3贡献者洞察交叉验证
通知 `[ProjectMemberJoined]` + `[ProjectPullRequest]` + `pr +list --state merged` 三源交叉 → 完整还原 ZxR123-Z 从入会到首次贡献全过程。该方法论对应 insight SKILL.md 第 173-203 行"贡献者列表 + PR 数据 + 用户信息"多源聚合。
### Skill 串联数
| 步骤 | 使用的 Skill/命令 | 角色 |
|------|------------------|------|
| 1 | member +invite-link | 邀请能力演示 |
| 2 | onboarding 工作流 1识别 | good-first 识别 |
| 3 | onboarding 工作流 2引导评论 | 个性化引导 |
| 4 | notification +list | 通知系统查看 |
| 5 | insight 工作流 3交叉验证 | 首次贡献追踪 |
**5 步串联,满足 PDF「≥3 命令/Skill 串联」要求。**

View File

@ -30,6 +30,7 @@
| `05-contributor-growth.md` | ⑤ 贡献者排行榜 + 徽章授予方案 |
| `07-onboarding-nanny.md` | ⑦ 新人保姆 5 步执行报告 |
| `release-notes-v0.2.0-beta.1.md` | ① 发布的 Release Notes 全文 |
| `agent-dialogue-triggers.md` | **Agent 对话触发语**PDF 首要产物:演示 Skill 驱动 Agent |
| `reproduce.sh` | **可复现脚本**(评委照着跑) |
---
@ -56,6 +57,26 @@ bash examples/workflows/zhangqing-task3/reproduce.sh
---
## 任务二 Skill 作为设计蓝图PDF 核心Skill = 设计蓝图)
本目录的 3 份执行报告都新增了「Skill 蓝图对照」段,**逐动作引用 SKILL.md 行号**,证明每步执行都严格按蓝图落地:
| 工作流 | 蓝图 SKILL.md 行号定位 |
|--------|----------------------|
| ① 步骤 1 分类 | `gitlink-issue-triage/SKILL.md` 工作流 1第 54-117 行),含分类规则表第 35-50 行 |
| ① 步骤 2 分配(跳过)| `gitlink-issue-triage/SKILL.md` 第 125-146 行(蓝图预判个人仓库 assigners 为空)|
| ① 步骤 3 周报 | `gitlink-insight/SKILL.md` 工作流 2第 116-166 行)|
| ① 步骤 4 发版 | `gitlink-release-auto/SKILL.md` 一/二/三(第 32-189 行),含预发布第 179-189 行 |
| ⑤ 取数 | `gitlink-insight/SKILL.md` 工作流 3第 169-203 行)|
| ⑤ 发奖 | `gitlink-issue-triage/SKILL.md` 工作流 1 Step 5-6第 80-117 行)|
| ⑦ Step 2 识别 | `gitlink-onboarding/SKILL.md` 工作流 1第 50-95 行)+ 识别标准第 31-46 行 |
| ⑦ Step 3 引导 | `gitlink-onboarding/SKILL.md` 工作流 2第 99-145 行)+ 个性化要求第 205 行 |
| ⑦ Step 5 追踪 | `gitlink-insight/SKILL.md` 工作流 3第 169-203 行)多源聚合 |
**意义**评委打开任一报告的「Skill 蓝图对照」段,可拿着 SKILL.md 行号对照检查,验证"Skill 不是摆设,是真正驱动 Agent 执行的设计蓝图"。
---
## 关键技术发现(避坑)
### 1. GitLink API 路径双轨制 ⚠

View File

@ -0,0 +1,129 @@
# Agent 对话触发语PDF 核心Agent 对话是首要产物)
> 用途:评委/复现者在 Claude Code 里**逐字粘贴**下面任一条触发语,即可观察到
> AI Agent 自动加载对应 Skill按 SKILL.md 蓝图)→ 调 gitlink-cli 命令 → 串联多步 → 落地写入。
> 把这个对话过程截图/录屏,就是 PDF 要求的「Agent 对话记录」产物。
---
## 为什么需要触发语
PDF「正确做法」明确
- **Agent 对话记录是首要产物**,脚本是辅助
- **Skill 是设计蓝图**,不是配置文件
- 必须能演示"Skill 真的被加载、真的驱动 Agent 执行"
触发语的设计原则:**用自然语言匹配 SKILL.md 第 4 行 `description` 字段的触发语义**,让 Agent 自动识别并调用 Skill 工具。
---
## 前置准备(所有触发语共用)
在 Claude Code 里先说一句建立上下文:
```
我在做 GitLink 端到端自动化任务三。目标仓库是 ylly/gitlink-cli
我的登录账号是 zhangqing23已是该仓库 Manager
gitlink-cli.exe 在 C:/Users/Lenovo/Desktop/gitlink-cli/ 目录下,已 auth login。
下面我会给你具体的自动化需求,请用任务二设计好的 Skill 来做。
```
---
## 工作流 ① 触发语(社区运营自动化)
**单条完整触发语**(推荐用于演示,一句话串起分类→周报→发版):
```
请帮我对 ylly/gitlink-cli 做一次社区运营收尾:
1. 自动分拣所有未分类的开放 Issue用 gitlink-issue-triage 工作流1
2. 生成一份项目周报(用 gitlink-insight 工作流2
3. 根据自上次发版以来的提交历史,推荐版本号并生成 Release Notes
先给我预览,确认后再发布(用 gitlink-release-auto
每一步执行前告诉我你正在加载哪个 Skill、对应 SKILL.md 的哪一段。
```
**分步触发语**(如果只想演示单步):
| Step | 触发语(直接粘贴) | 对应 Skill 蓝图 |
|:----:|-------------------|----------------|
| 1 | "帮我把 ylly/gitlink-cli 所有没标签的开放 Issue 自动分类打标签" | issue-triage 工作流 1 |
| 2 | "给我一份 ylly/gitlink-cli 本周的项目周报" | insight 工作流 2 |
| 3 | "根据 ylly/gitlink-cli 自上次发版以来的提交,推荐下一个版本号并生成 Release Notes" | release-auto 一、二 |
**预期 Agent 行为**(截图要点):
- Agent 会先说"使用 gitlink-issue-triage Skill"
- 调用 `issue +list --state open` → 筛未分类 → `issue +view` 读详情 → 按分类规则表归类 → `issue +update --label`
- 每步都会展示它对应 SKILL.md 的哪一段(这是"Skill 作为设计蓝图"的可视证据)
---
## 工作流 ⑤ 触发语(贡献者成长体系)
**单条完整触发语**
```
请帮我对 ylly/gitlink-cli 建立贡献者成长体系:
1. 取仓库全历史的 commitsgit log+ merged PRpr +list --state merged
+ Issue 作者issue +list生成一份综合积分排行榜公式 commits×1 + PR×5 + Issue×2
过滤掉测试号 15972095207 / 2403_89190320 / fsafasff
2. 按三层标准授予徽章(星级/活跃/贡献者),先创建对应 label颜色 #FFD700/#FF6B35/#87C95F
3. 建一个颁奖 Issue 公布排行榜并 @mention Top 贡献者。
执行前先给我清单确认。
```
**预期 Agent 行为**
- Agent 调用 insight 工作流 3 的数据采集方法(第 173-183 行)
- 调用 issue-triage 工作流 1 Step 5 的 label 创建(第 86-89 行)
- 输出排行榜表格 + 颁奖动作清单等用户确认
---
## 工作流 ⑦ 触发语(新人全流程保姆)
**单条完整触发语**
```
请帮我对 ylly/gitlink-cli 做新人引导全流程:
1. 用 member +invite-link 演示邀请能力(仓库无真实新人账号,仅演示);
2. 扫描开放 Issue按新人友好识别标准找出适合新人的 Issueonboarding 工作流1
3. 对找出的 good first Issue 写**完全个性化**的引导评论onboarding 工作流2
每条评论要定位到具体文件、给本地准备命令、写 PR 提交规范——禁止用同一模板;
4. 用 notification +list --owner zhangqing23 看通知动态;
5. 交叉验证通知 + Issue + PR 数据,还原一位新人从加入到首次贡献的全过程。
写入操作前给我预览。
```
**分步触发语**
| Step | 触发语 | 对应 Skill 蓝图 |
|:----:|-------|----------------|
| 2 | "帮我找出 ylly/gitlink-cli 适合新人的 Issue 并打 good first 标签" | onboarding 工作流 1 |
| 3 | "帮我给 ylly/gitlink-cli 适合新人的 Issue 写个性化引导评论" | onboarding 工作流 2 |
**预期 Agent 行为**
- 识别阶段会引用 onboarding SKILL.md 第 31-46 行的 5 条友好信号 + 3 条排除标准
- 引导评论阶段会引用第 205 行"禁止对所有 Issue 用同一句",每条评论定位不同文件
---
## 对话产物采集建议
录 Agent 对话时重点截这几段(对应 PDF 评分点):
1. **Skill 加载声明**Agent 说"我将使用 gitlink-xxx Skill"的那一句
2. **蓝图引用**Agent 提到"按 SKILL.md 第 X-Y 行"的段落
3. **命令调用**Agent 调 gitlink-cli 的命令行(带参数)
4. **真实写入回执**:服务器返回的 `ok:true` / `id` / `version_id`
5. **网页验证**:复制返回的 URL 到浏览器打开看到真实效果
---
## 与 reproduce.sh 的关系
| 产物 | 角色 | 适合谁看 |
|------|------|---------|
| **Agent 对话记录**(本文档触发的) | 首要产物,演示"Skill 驱动 Agent" | 评委看过程 |
| `reproduce.sh` | 辅助产物,纯命令复现 | 评委验结果 |
| 3 份执行报告 | 落地证据,含 Skill 蓝图对照 | 评委查细节 |