forked from chroe/gitlink-cli
194 lines
4.7 KiB
Markdown
194 lines
4.7 KiB
Markdown
# 示例:组织成员审计(真实数据)
|
||
|
||
> 本示例基于真实组织 `algo` 于 2026-06-12 在 Claude Code 中实际执行。
|
||
> 展示完整组织审计流程:扫描 → 分析成员结构 → 生成治理建议。
|
||
|
||
---
|
||
|
||
## 执行命令序列
|
||
|
||
```bash
|
||
# Step 1: 列出所有组织
|
||
gitlink-cli org +list --format json
|
||
# 结果: 多个组织,选定 algo 进行分析
|
||
|
||
# Step 2: 获取组织详情
|
||
gitlink-cli org +info --id algo --format json
|
||
# 结果: 3 个成员, 1 个项目, 1 个团队
|
||
|
||
# Step 3: 获取成员列表
|
||
gitlink-cli org +members --id algo --format json
|
||
# 结果: 3 个成员,1 个在 Owner 团队,2 个未分配
|
||
```
|
||
|
||
## Step 1 真实输出:组织列表
|
||
|
||
```json
|
||
{
|
||
"ok": true,
|
||
"data": {
|
||
"organizations": [
|
||
{
|
||
"id": 152434,
|
||
"name": "algo",
|
||
"nickname": "algo",
|
||
"description": "组织描述",
|
||
"num_projects": 1,
|
||
"num_teams": 1,
|
||
"num_users": 3,
|
||
"visibility": "common",
|
||
"created_at": "2026-06-12",
|
||
"pms_enable": false
|
||
},
|
||
{
|
||
"id": 152177,
|
||
"name": "moui-mbt",
|
||
"nickname": "moui",
|
||
"description": "moui",
|
||
"num_projects": 0,
|
||
"num_teams": 1,
|
||
"num_users": 1,
|
||
"created_at": "2026-06-08"
|
||
}
|
||
]
|
||
}
|
||
}
|
||
```
|
||
|
||
## Step 2 真实输出:algo 组织详情
|
||
|
||
```json
|
||
{
|
||
"ok": true,
|
||
"data": {
|
||
"id": 152434,
|
||
"name": "algo",
|
||
"nickname": "algo",
|
||
"description": "组织描述",
|
||
"created_at": "2026-06-12",
|
||
"num_projects": 1,
|
||
"num_teams": 1,
|
||
"num_users": 3,
|
||
"visibility": "common",
|
||
"can_create_project": false,
|
||
"is_admin": false,
|
||
"is_member": false,
|
||
"pms_enable": false,
|
||
"max_repo_creation": -1,
|
||
"enabling_cla": false
|
||
}
|
||
}
|
||
```
|
||
|
||
## Step 3 真实输出:成员列表
|
||
|
||
```json
|
||
{
|
||
"ok": true,
|
||
"data": {
|
||
"organization_users": [
|
||
{
|
||
"id": 28300,
|
||
"created_at": "2026-06-12",
|
||
"team_names": ["Owner团队"],
|
||
"user": {
|
||
"user_id": 28300,
|
||
"login": "gluo",
|
||
"name": "Guojie Luo",
|
||
"mail": "gluo@pku.edu.cn",
|
||
"identity": "副教授"
|
||
}
|
||
},
|
||
{
|
||
"id": 152435,
|
||
"created_at": "2026-06-12",
|
||
"team_names": [],
|
||
"user": {
|
||
"user_id": 152435,
|
||
"login": "dottle",
|
||
"name": "dottle",
|
||
"mail": "dottle@example.org",
|
||
"identity": "专业人士"
|
||
}
|
||
},
|
||
{
|
||
"id": 130463,
|
||
"created_at": "2026-06-12",
|
||
"team_names": [],
|
||
"user": {
|
||
"user_id": 130463,
|
||
"login": "yetja",
|
||
"name": "yetja",
|
||
"mail": "...",
|
||
"identity": "专业人士"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
}
|
||
```
|
||
|
||
## AI 分析过程
|
||
|
||
### 成员分类
|
||
|
||
| 用户 | 角色 | 团队 | 加入 | 分类 |
|
||
|------|------|------|------|------|
|
||
| gluo | 副教授 (PKU) | Owner团队 | 2026-06-12 | 👑 管理员(组织创建者) |
|
||
| dottle | 专业人士 | 无 | 2026-06-12 | 👻 未激活(无团队归属) |
|
||
| yetja | 专业人士 | 无 | 2026-06-12 | 👻 未激活(无团队归属) |
|
||
|
||
### 治理评分
|
||
|
||
| 检查项 | 状态 | 说明 |
|
||
|--------|------|------|
|
||
| 管理员数量 | ⚠️ 仅 1 人 | 存在单点故障风险 |
|
||
| 成员活跃率 | ❌ 33% | 3 人中仅 1 人有团队归属 |
|
||
| 项目/成员比 | ⚠️ 0.33 | 1 个项目 / 3 人 |
|
||
| 新成员引导 | ❌ | 2 个新成员创建当天即闲置 |
|
||
|
||
## 生成的审计报告
|
||
|
||
```markdown
|
||
# 🏢 组织成员分析报告 — algo
|
||
|
||
> 分析时间:2026-06-12
|
||
> 组织创建:2026-06-12(当天创建)
|
||
|
||
## 总览
|
||
|
||
| 指标 | 数值 |
|
||
|------|------|
|
||
| 成员总数 | 3 |
|
||
| 管理员数 | 1 ⚠️ |
|
||
| 活跃成员 | 1 (33%) |
|
||
| 未激活成员 | 2 (67%) |
|
||
| 团队数 | 1(Owner团队) |
|
||
| 项目数 | 1 |
|
||
|
||
## 成员详情
|
||
|
||
| 用户名 | 显示名 | 身份 | 团队 | 状态 |
|
||
|--------|--------|------|------|------|
|
||
| gluo | Guojie Luo | 副教授 | Owner团队 | 👑 管理员 |
|
||
| dottle | dottle | 专业人士 | (无) | 👻 未激活 |
|
||
| yetja | yetja | 专业人士 | (无) | 👻 未激活 |
|
||
|
||
## 治理建议
|
||
|
||
1. 🔴 **指定副管理员**:当前仅 gluo 一个管理员,建议从活跃成员中提拔 1 人
|
||
2. 🟡 **分配团队**:2 个成员尚未归入任何团队,建议创建 dev-team 并分配
|
||
3. 🟡 **新人引导**:组织当天创建,3 个成员同时加入,建议创建 Welcome Issue
|
||
4. 🟢 **项目规划**:目前仅 1 个项目,可考虑创建 docs/website 等配套项目
|
||
```
|
||
|
||
---
|
||
|
||
## 补充示例:批量邀请(预览)
|
||
|
||
```bash
|
||
# 如果想为 algo 邀请新成员
|
||
gitlink-cli org +batch-invite --id algo --users newcomer1,newcomer2 --dry-run
|
||
# 输出预览列表,确认后去掉 --dry-run 执行
|
||
```
|