Add a new AI Agent skill for detecting and managing stale issues and PRs: - SKILL.md - main skill guide - README.md - overview documentation - examples/ - AI judgment demo, PR stale workflow, weekly cleanup workflow - references/ - scan, judge, actions, and exempt rules The skill automates stale detection with AI-powered judgment and supports weekly cleanup workflows with configurable exemption rules. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| examples | ||
| references | ||
| README.md | ||
| SKILL.md | ||
| skill_test.md | ||
README.md
gitlink-stale
GitLink Stale Issue/PR 自动处理 Skill — 让 AI Agent 帮你清理堆积如山的未活动 Issue/PR
🎯 这是什么?
gitlink-stale 是基于 gitlink-cli 的 AI Agent Skill,专门用于:
- 🔍 扫描识别 长期未活动的 GitLink Issue / PR(默认 60 天)
- 🧠 AI 智能判断 区分"真僵尸"和"等维护者回复"(不是简单按时间一刀切)
- 🏷️ 自动打 stale 标签 通知作者/相关者
- 💬 友好催办评论 避免简单粗暴的"过期警告"
- 🔒 过期自动关闭 超过宽限期(默认 14 天)仍未响应才关闭
- 🛡️ 白名单豁免
pinned/security/roadmap永不动 - 📊 生成审计报告 JSON + 表格,可追溯
适合所有 Issue/PR 长期堆积的开源项目或团队仓库,承担类似 GitHub stale bot 的角色,但通过 AI Agent 实现"人在环路"和"智能判断"。
🚀 快速开始
前置条件
- 已安装
gitlink-cli(参考 主 README) - 已完成认证(
gitlink-cli auth login) - 在目标仓库目录下(自动解析 owner/repo)或显式指定
--owner --repo
5 分钟体验
向 AI Agent(如 Claude Code)说:
"帮我用 gitlink-stale 扫描 owner/repo 仓库中所有 60 天以上未活动的 open Issue,生成报告后等我确认。"
AI 会:
- 拉取所有 open Issue/PR
- 按时间过滤 + 白名单豁免 + AI 判断
- 展示表格报告(含 confidence)
- 等你确认后才执行 mark_stale / auto_close 动作
📁 Skill 结构
gitlink-stale/
├── README.md # 本文件
├── SKILL.md # AI Agent 读取的主入口
├── references/
│ ├── gitlink-stale-scan.md # 扫描算法详解
│ ├── gitlink-stale-judge.md # AI 判断规则详解
│ ├── gitlink-stale-actions.md # 动作执行手册
│ └── gitlink-stale-exempt.md # 白名单豁免规则
├── examples/
│ ├── weekly-cleanup-workflow.md # 每周清理工作流
│ ├── pr-stale-workflow.md # PR 催办工作流
│ └── ai-judgment-demo.md # AI 判断示例
└── skill_test.md # 测试指南
🧠 核心差异化(vs GitHub stale-bot)
| 维度 | GitHub stale-bot | gitlink-stale(本 Skill) |
|---|---|---|
| 触发 | 事件驱动(cron),自动跑 | Agent 驱动(按需),人在环路 |
| 判断 | 仅看时间(>= 60 天) | 时间 + AI 判断"真僵尸" |
| 白名单 | 简单 label 匹配 | 多信号(label + tracker + priority + 作者活跃度) |
| 评论 | 固定模板 | 根据上下文动态生成 |
| 回滚 | 难(已自动关闭) | 字段快照,一键恢复 |
| 审计 | 日志在 Actions | JSON 报告 + 备份文件 |
关键差异:本 Skill 不是简单按时间一刀切,而是通过 AI 判断评论历史、活跃度等信号决定"是否真应该处理"。
🛡️ 安全设计
| 机制 | 说明 |
|---|---|
| ✅ Dry-run 默认 | 分析阶段不调用任何写 API |
| ✅ 双重确认 | 应用动作前必须表格展示 + 用户同意 |
| ✅ 白名单豁免 | pinned/security/roadmap 永不动 |
| ✅ AI 双重判断 | 不仅看时间,还要 AI 判断"真僵尸" |
| ✅ 低置信度跳过 | confidence < 0.6 不自动处理 |
| ✅ 字段快照 | 每个变更保留原始标签和状态,支持回滚 |
| ✅ 批次上限 | 单批 ≤ 20 个,超出强制分批 |
🤖 AI Agent 兼容性
已在以下 Agent 平台设计兼容:
- ✅ Claude Code — 主要验证目标,所有示例均可执行
- ✅ Cursor — 通过 SKILL.md markdown 协议兼容
- ✅ OpenAI Code — 通过 references/ 文档兼容
📚 相关文档
- SKILL.md — AI Agent 主入口
- 扫描算法详解
- AI 判断规则详解
- 动作执行手册
- 白名单豁免规则
- 每周清理工作流示例
- PR 催办示例
- AI 判断演示
- 测试指南
- 上游 Skill: gitlink-issue
- 互补 Skill: gitlink-issue-triage
- 共享规则: gitlink-shared
❓ FAQ
Q: 必须用 AI Agent 吗?人能用吗? A: 当然可以。SKILL.md 中的工作流对人类也是清晰的 SOP,你可以手动按步骤执行 gitlink-cli 命令。AI 的价值在 Stage C "真假僵尸判断",但人类读评论历史同样能做。
Q: PR 没有 label 接口怎么打 stale? A: GitLink PR 端点暂不支持 PR 维度的标签。对 PR 只做评论催办,在评论标题写"⏰ Stale"作为视觉提示。
Q: 用户回复后会自动去掉 stale 标签吗?
A: 默认不会自动响应。下次扫描时看到新活动会自动跳过;如需立刻移除,手动调用 issue +label-remove。
Q: 与 GitHub Actions 的 stale-bot 有何不同? A: 本 Skill 是 Agent-driven(按需触发、人在环路、AI 智能判断),不是 Event-driven(自动触发、机械规则)。适合需要人工监督和精准判断的高质量项目。
Q: 误关了重要 Issue 怎么办? A: 见 SKILL.md §8 回滚策略。所有动作都保留原始字段快照,可重新打开。强烈建议 urgent/roadmap 类 Issue 打上对应标签加入白名单。
📄 许可证
继承 gitlink-cli 的 MulanPSL-2.0。