feat(skills): add gitlink-standup skill
This commit is contained in:
parent
b45241dcda
commit
ec904b9023
|
|
@ -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) — 认证、全局参数、安全规则
|
||||
|
|
@ -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 周`,团队同步会前快速生成。
|
||||
- **管理视角**:观察成员活动类型分布(偏开发 / 偏协作 / 偏发版)。
|
||||
|
|
@ -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 活动,不中断其他成员。
|
||||
Loading…
Reference in New Issue