核心用法
who-is-actor 是一款基于原生 Git CLI 的开发者画像分析工具,无需安装任何依赖或运行脚本。用户指定仓库路径、目标作者、时间范围和分支后,工具通过 git shortlog、git log、git diff --stat 等只读命令采集数据,从提交习惯、工作习惯、研发效率、代码风格、代码质量、参与度六个维度生成评估报告。
触发场景:团队代码审查、开发者能力评估、协作模式诊断、工程效率优化。
---
显著优点
1. 零依赖零脚本:纯原生 git 命令采集,无 Python/Node 环境要求,无供应链攻击风险
2. 隐私优先设计:主动禁用 %ae 邮箱采集,shortlog -sn 替代 -sne,输入校验拒绝 @ 符号
3. 严格安全沙箱:命令白名单机制,仅允许 4 类只读 git 子命令;路径/作者/日期/分支四重正则校验,阻断命令注入
4. 六维量化评估:提交频率、时段分布、代码流失率、Conventional Commits 合规率、Bug Fix 占比、返工率等 20+ 指标
5. 犀利点评风格:AI 扮演资深 Tech Lead,数据驱动、不留情面但给出可执行改进建议
6. 伦理内置:参与度指数附带「严禁用于绩效考核/裁员决策」的强制声明,Bus Factor 风险提示
---
潜在缺点与局限性
| 局限 | 说明 |
|------|------|
| **非代码贡献盲区** | 无法捕捉代码评审、架构设计、技术讨论、团队指导等不产生提交的工作 |
| **时区与时区漂移** | 提交记录中的 `%aI` 时区信息可能因开发者本地配置变化导致时段分析偏差 |
| **同一人多身份** | Git 作者名不一致时(无 `.mailmap`)会被识别为多个开发者,需人工合并 |
| **大型仓库性能** | 全历史分析可能耗时较长,需主动限定时间范围 |
| **质量信号间接** | Bug Fix/Revert 占比是事后指标,非静态代码分析,无法检测潜在缺陷 |
| **参与度指数误读风险** | 尽管有伦理声明,仍存在被管理层滥用的社会风险 |
---
适合人群
- Tech Lead / 工程经理:定期团队健康度检查、新人融入评估
- 开源维护者:贡献者活跃度分析、核心维护者 Bus Factor 风险预警
- DevOps / 效能工程师:研发流程优化、提交规范推广效果追踪
- 自我提升的开发者:个人编码习惯可视化,针对性改进
---
常规风险
- 隐私合规:虽禁用邮箱采集,但作者显示名仍可能关联真实身份,GDPR/个人信息保护法场景需额外评估
- 命令注入:若实现方未严格执行文档中的四重校验规则,用户输入可构造
; rm -rf /类攻击 - 结论滥用:六维评分被简单等同于「能力排名」,忽视非代码贡献和项目复杂度差异
- AI 幻觉:AI 解读环节可能过度推断数据关联性(如将「深夜提交」直接等同于「效率低下」)