Leina 博客

如何把跑通的 AI 任务整理成可复用的 Skill

把一次任务的提示词整理为可复用的 SKILL.md,区分每次变化的输入与固定规则,检查边界情况,再把方法交给团队使用。

如果一份 GitHub 周报已经检查过,下次通常还需要沿用同样的规则:按合并时间筛选、保留来源链接,并标明缺失信息。把这些规则保存下来,便于复用和检查,也省去每周复制一大段聊天记录的工作。

在 Leina 中,可以把跑通的工作流整理成 Skill:一份遵循开放 Agent Skills 规范的 SKILL.md 文件。每次运行时,提供当前的仓库、日期、时区和必要的目标位置,就能继续使用保存的方法。

先选择一个已经检查过的任务作为起点。GitHub 周报写入 Notion 的操作示例介绍了如何准备和检查这样的周报。

每次变化的仓库、统计周期和目标位置进入一个保存筛选、证据和写入规则的 Skill

区分每次输入与固定规则

可靠的 Skill 应把本次运行的输入和可复用的规则分开。

本次运行的输入保存在 SKILL.md 中的规则
目标仓库或仓库列表明确的筛选口径,例如按合并时间筛选
统计窗口和时区来源引用要求,例如保留 PR 链接和作者
写入时的 Notion 页面 URL证据规则,例如把缺失信息标为未记录
目标读者和详细程度写入规则,例如遵守请求范围并检查已有内容

凭证和访问令牌不应写进 Skill 文件。Leina 通过已授权的连接管理访问;Skill 描述如何使用当前环境已经提供的工具。

组织 SKILL.md 文件

SKILL.md 包含 YAML frontmatter 和 Markdown 指令。下面是可以按实际工具调整并测试的示例,尚未在你的账号上运行。

---
name: weekly-pr-report
description: 为指定仓库和时间窗口准备附有来源链接的 GitHub PR 周报,并在获得授权后按需写入 Notion。用于工程进展汇总,不用于代码审查或个人生产力评分。
---

# 每周 PR 周报

根据 Agent 环境中可用的工具调整并验证这些示例指令。此文件不会安装连接器,也不会授予账号访问权限。

## 输入

从请求中明确仓库列表、统计窗口及其时区,以及目标读者。缺失的信息会改变周报范围时,先询问。写入 Notion 时,还需要明确页面、周报标题,以及用户要求追加还是替换。

使用当前环境提供且已授权的 GitHub 读取操作。如果这些操作不可用,说明缺少的能力。不要编造连接器 action ID 或获取到的记录。

## 筛选与汇总

- 纳入合并时间落在请求窗口内的 PR,区分已经合并与直接关闭、未经合并的记录。
- 仅在用户需要时,单独提供当前开放 PR 的快照,并标注获取时间。不要把当前状态表述为历史状态。
- 在工具支持的情况下获取范围内全部结果页。说明无法访问的记录、截断结果和失败查询;不完整的查询不能作为零结果的依据。
- 保留 PR URL、编号、标题、作者、状态和相关时间戳。摘要依据 PR 描述和工具可获取的改动。
- 仅在有证据时说明影响、部署、阻塞和下一步负责人。不要默认把作者作为下一步负责人。
- 返回选定范围、周报各部分、来源链接和未解决问题。详细程度应适合目标读者。

## 按需写入 Notion

请求草稿时返回草稿。只有用户授权了具体目标和操作后才写入,并沿用已有授权,避免重复确认。

追加前检查周报标题。如果周报已经存在,而用户没有授权替换,返回已有内容的位置并询问如何处理。保留无关内容。

写入后,在工具支持的情况下读回该部分并返回位置。如果写入结果不确定,重试前先检查目标。无法验证时,说明这个限制,不要声称已经确认写入。

可以下载同一份 weekly-pr-report SKILL.md,按团队的字段调整。

文件中的三个设计值得保留:

  1. 明确的描述: 说明 Skill 适用于什么任务;具体怎样被发现和调用,取决于 Agent 环境。
  2. 清楚的筛选规则: 用合并时间决定哪些 PR 进入已完成部分。
  3. 确定的写入范围: 要求检查已有内容并遵守用户请求。这些指令指导行为,实际访问由权限控制。

推广前检查边界情况

交给团队前,先换一个周或仓库再运行,并对照来源记录检查结果。可以测试以下情况:

测试场景预期行为
一个没有合并 PR 的安静周完整查询后报告零项,不编造亮点,也不补入其他周期的 PR
PR 在窗口结束后一分钟合并不纳入已合并部分
PR 直接关闭、未经合并不纳入已合并部分
PR 没有描述,例如仅写“更新版本”概括实际改动,并明确标注影响未记录
Notion 中已存在目标标题检查已有部分并遵守已授权的操作;未授权替换时询问如何处理
仓库或页面不可访问明确说明缺少权限,避免把无法访问描述成空仓库

如果第二次运行仍沿用旧日期,检查指令中是否固定了统计窗口。如果摘要推测了客户影响,应收紧依据来源汇总的规则。

交给团队使用,并按需安排定期运行

检查第二次结果后,按照 Skill 包的安装说明,或 Agent 环境支持的导入方式使用它。下载文件本身不会完成安装。在 Leina 中使用 Skills介绍了目录中的安装流程。

  • 交互使用: 成员可以在聊天中请求:“@Leina,为 backend/api 运行 weekly-pr-report,统计 2026 年 9 月 28 日至 10 月 4 日,使用 America/Los_Angeles 时区,在这里返回草稿。”
  • 权限: 每位成员都需要使用 GitHub 连接的权限;保存周报时,还需要 Notion 连接权限。可以在连接中核对账号。
  • 定期运行: 请求循环任务时,指定时区、统计窗口和交付位置。核对 Leina 创建的计划,并检查第一次定期运行的输出。保存 Skill 本身不会创建计划。

分享检查过的文件时,一并说明所需 Apps、提供示例周报,并标注版本或修订日期。团队改变统计规则后,更新文件,再检查一次运行结果。