feat(skills): add gitlink-standup skill

This commit is contained in:
Ct201314 2026-06-06 15:31:00 +08:00
parent b45241dcda
commit ec904b9023
3 changed files with 156 additions and 0 deletions

View File

@ -0,0 +1,85 @@
---
name: gitlink-standup
version: 1.0.0
description: "个人/团队日报周报汇总成员的提交、Issue、PR、版本发布活动按类型统计生成团队同步日报/周报。当用户提到「日报」「周报」「standup」「团队同步」「某人最近做了什么」「成员活动」「team report」时触发。"
metadata:
requires:
bins: ["gitlink-cli"]
optional_bins: ["python"]
cliHelp: "gitlink-cli user --help"
---
# gitlink-standup个人/团队日报周报)
**CRITICAL — 开始前先阅读 [`../gitlink-shared/SKILL.md`](../gitlink-shared/SKILL.md),其中包含认证、权限处理和 API 注意事项。**
**CRITICAL — GitLink 操作只能用 `gitlink-cli`。禁止用 `gh`GitHub CLI操作 GitLink 资源。**
**CRITICAL — 本技能全程只读,仅统计公开活动。**
> **前置条件:** 先阅读 [`../gitlink-shared/SKILL.md`](../gitlink-shared/SKILL.md)。
## 何时使用本技能
- 团队每日/每周同步,需要汇总成员近期做了什么
- 用户问「@某人最近在忙什么」「这周团队有哪些活动」
- 生成个人工作日报/周报
## 何时不使用
- 项目级健康度/协作分析 → 用 `gitlink-insight` / `gitlink-health`
- 单个仓库的 Issue/PR 列表 → 用 `gitlink-issue` / `gitlink-pr`
## 能力概览
| 能力 | 说明 |
|------|------|
| 活动汇总 | 按 commit / Issue / PR / 版本发布分类统计 |
| 多成员 | 一次汇总整个团队 |
| 样例展示 | 每类活动展示代表性标题 |
## 工作流:生成日报/周报
### 方式 A配套脚本推荐
```bash
# 单个成员
python scripts/standup.py --user wbtiger
# 整个团队
python scripts/standup.py --users wbtiger,wangyue789 --period 周
# JSON 输出
python scripts/standup.py --user wbtiger --format json
```
参数说明:
| 参数 | 类型 | 必填 | 说明 |
|------|------|:----:|------|
| `--user` | string | 是* | 单个成员 login*或 `--users` |
| `--users` | string | 否 | 多个成员 login逗号分隔 |
| `--limit` | int | 否 | 每人采集的活动条数上限,默认 50 |
| `--period` | string | 否 | 周期标注(如 日 / 周) |
| `--format` | string | 否 | `markdown`(默认)或 `json` |
| `--output` | string | 否 | 输出文件 |
### 方式 B用 gitlink-cli 命令
```bash
# 查看用户信息
gitlink-cli user +info --login wbtiger --format json
# 用户动态Raw API
gitlink-cli api GET /users/wbtiger/project_trends --query 'page=1&limit=50' --format json
```
## API 注意事项
- 活动数据来自 `users/:login/project_trends``action_time` 为相对时间(如"3天前"
因此本技能按活动条数与类型汇总,而非精确时间区间过滤。
- 仅统计公开活动;私有仓库活动不在其中。
## References
- [api-reference.md](references/api-reference.md) — 采集接口与字段
- [activity-types.md](references/activity-types.md) — 活动类型说明
- [gitlink-shared](../gitlink-shared/SKILL.md) — 认证、全局参数、安全规则

View File

@ -0,0 +1,24 @@
# 活动类型说明
GitLink 用户动态project_trends`trend_type` 字段取值与本技能的呈现映射:
| trend_type | 含义 | 报告标签 |
|------------|------|----------|
| CommitLog | 代码提交 | 💻 代码提交 |
| Issue | 创建/更新 Issue | 🐛 Issue |
| PullRequest | 创建/合并/关闭 PR | 🔀 合并请求 |
| VersionRelease | 版本发布 | 🏷️ 版本发布 |
未识别的类型按原值展示。
## 汇总逻辑
- 对每个成员,按 `trend_type` 统计活动条数。
- 每类活动保留最多 5 条代表性标题(取 `name` 首行,截断 70 字符)。
- 多成员时逐一汇总并合计总活动数。
## 适用场景
- **个人日报**`--user <login>`,看某人最近做了什么。
- **团队周报**`--users a,b,c --period 周`,团队同步会前快速生成。
- **管理视角**:观察成员活动类型分布(偏开发 / 偏协作 / 偏发版)。

View File

@ -0,0 +1,47 @@
# gitlink-standup API 参考
> **前置条件:** 先阅读 [`../../gitlink-shared/SKILL.md`](../../gitlink-shared/SKILL.md)。
本技能全程只读。
## 采集的接口
### 用户动态
```
GET /users/:login/project_trends.json?page=<n>&limit=<n>
```
返回 `project_trends[]`,使用字段:
| 字段 | 说明 |
|------|------|
| `trend_type` | 活动类型CommitLog / Issue / PullRequest / VersionRelease |
| `action_type` | 动作描述(如"创建了代码提交(Commit)" |
| `action_time` | 相对时间(如"3天前" |
| `name` | 活动标题(提交信息 / Issue 标题 / PR 标题) |
### 用户信息(可选)
```
gitlink-cli user +info --login <login> --format json
```
## 时间说明
`action_time` 为相对时间字符串,非精确时间戳,因此本技能按**活动条数 + 类型**汇总,
通过 `--limit` 控制采集的近期活动量,而非按精确日期区间过滤。
## 输出字段JSON
```json
[
{"login": "wbtiger", "total_activities": 30,
"by_type": {"CommitLog": 26, "PullRequest": 4},
"samples": {"CommitLog": ["..."], "PullRequest": ["..."]}}
]
```
## 错误处理
某成员动态采集失败时,记为 0 活动,不中断其他成员。