ln-914-community-responder
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChinesePaths: File paths (,shared/,references/) are relative to skills repo root. If not found at CWD, locate this SKILL.md directory and go up one level for repo root. If../ln-*is missing, fetch files via WebFetch fromshared/.https://raw.githubusercontent.com/levnikolaevich/claude-code-skills/master/skills/{path}
路径: 文件路径(、shared/、references/)是相对于skills仓库根目录的。如果当前工作目录下找不到,请定位到该SKILL.md文件所在目录,向上一级即为仓库根目录。如果../ln-*目录缺失,通过WebFetch从shared/拉取对应文件。https://raw.githubusercontent.com/levnikolaevich/claude-code-skills/master/skills/{path}
ln-914-community-responder
ln-914-community-responder
Type: L3 Worker (standalone)
Category: 9XX Community Engagement
Responds to unanswered GitHub Discussions and Issues by analyzing the question, searching the codebase for answers, and composing a helpful reply. Supports single-item and batch modes.
类型: L3 Worker(独立运行)
分类: 9XX 社区互动
通过分析问题、检索代码库寻找答案、编写有价值的回复,来答复GitHub上未被回应的讨论和Issue,支持单条目模式和批量模式。
Overview
概述
| Aspect | Details |
|---|---|
| Input | |
| Output | Response comment(s) published to GitHub |
| Pattern | Read question → Search codebase → Compose response → Fact-check → Publish |
| 维度 | 详情 |
|---|---|
| 输入 | |
| 输出 | 发布到GitHub的回复评论 |
| 流程 | 读取问题 → 检索代码库 → 编写回复 → 事实校验 → 发布 |
Phase 0: GitHub Discovery
阶段0:GitHub信息发现
MANDATORY READ: Load
shared/references/community_github_discovery.mdExecute the discovery protocol. Extract:
- for URLs and API calls
{owner}/{repo} - for GraphQL mutations
repo.id - login (authenticated user)
maintainer - Discussion category IDs
Load strategy: check in target project, fallback to . Extract Section 5 (Engagement Metrics) and Section 6 (Tone Guide).
docs/community_engagement_strategy.mdshared/references/community_strategy_template.mdMANDATORY READ: Load
MANDATORY READ: Load response_styles.md
MANDATORY READ: Load
shared/references/community_discussion_formatting.mdshared/references/humanizer_checklist.md必读: 加载
shared/references/community_github_discovery.md执行发现协议,提取以下信息:
- 用于URL和API调用的信息
{owner}/{repo} - 用于GraphQL变更操作的
repo.id - 维护者登录账号(已认证用户)
- 讨论分类ID
加载策略:优先读取目标项目中的,兜底使用,提取第5节(互动指标)和第6节(语气指南)内容。
docs/community_engagement_strategy.mdshared/references/community_strategy_template.md必读: 加载
必读: 加载response_styles.md
必读: 加载
shared/references/community_discussion_formatting.mdshared/references/humanizer_checklist.mdPhase 1: Load Items
阶段1:加载待处理条目
Single Item Mode
单条目模式
If contains a number (e.g., , ):
$ARGUMENTS42#42bash
undefined如果包含数字(例如、):
$ARGUMENTS42#42bash
undefinedFor discussions
用于查询讨论
gh api graphql -f query='query($owner: String!, $name: String!) {
repository(owner: $owner, name: $name) {
discussion(number: {N}) {
id number title body
category { name }
author { login }
createdAt
answerChosenAt
comments(first: 20) {
totalCount
nodes { author { login } body createdAt }
}
}
}
}' -f owner="{owner}" -f name="{repo}"
```bashgh api graphql -f query='query($owner: String!, $name: String!) {
repository(owner: $owner, name: $name) {
discussion(number: {N}) {
id number title body
category { name }
author { login }
createdAt
answerChosenAt
comments(first: 20) {
totalCount
nodes { author { login } body createdAt }
}
}
}
}' -f owner="{owner}" -f name="{repo}"
```bashFor issues (if discussion not found)
用于查询Issue(如果未找到对应讨论时使用)
gh issue view {N} --repo {owner}/{repo} --json number,title,body,author,createdAt,comments,labels
undefinedgh issue view {N} --repo {owner}/{repo} --json number,title,body,author,createdAt,comments,labels
undefinedBatch Mode
批量模式
If is :
$ARGUMENTSbatch- Fetch recent discussions + issues via GraphQL (last 30 days, open, sorted by created DESC)
- Filter to P1 items: author != maintainer AND zero maintainer comments
- Fetch full context for each item (max 10 per batch)
如果值为:
$ARGUMENTSbatch- 通过GraphQL拉取最近30天的公开讨论和Issue,按创建时间倒序排列
- 筛选P1优先级条目:发布者≠维护者 且 无维护者回复
- 拉取每个条目的完整上下文,单批次最多处理10条
Interactive Mode
交互模式
If is empty, list recent unanswered items and ask the user which to respond to.
$ARGUMENTS如果为空,列出近期未答复的条目,询问用户需要回复哪条。
$ARGUMENTSPhase 2: Analyze Context
阶段2:上下文分析
For each item:
针对每个待处理条目:
2a. Understand the Question
2a. 理解问题
- Read the discussion/issue body — identify the core question or problem
- Read existing comments — check if partially answered or if follow-ups changed the scope
- Detect item type: Q&A question, bug report, feature request, configuration help, general feedback
- 阅读讨论/Issue正文,识别核心问题或需求
- 阅读已有评论,确认是否已部分答复、或后续追问是否变更了问题范围
- 识别条目类型:问答问题、Bug反馈、功能请求、配置求助、通用反馈
2b. Search Codebase for Answer
2b. 检索代码库寻找答案
Based on the question type, search for relevant information:
| Question Type | Search Strategy |
|---|---|
| "How do I..." | Grep for keywords in SKILL.md files, README.md, docs/ |
| Bug report | Grep for mentioned function/file, check git log for recent fixes |
| Configuration | Read docs/tools_config.md, CLAUDE.md, relevant SKILL.md |
| Feature request | Check if feature already exists, grep for related patterns |
| Installation | Read README.md installation section, plugin.json |
FOR each item:
1. Extract keywords from question (function names, skill names, error messages)
2. Grep codebase for keywords (max 5 searches)
3. Read relevant files (max 3 files, prioritize SKILL.md and docs/)
4. Check git log for recent changes related to the topic
5. If answer found → proceed to Phase 3
6. If not found → mark as "needs-manual" and suggest the user respond directly根据问题类型,检索相关信息:
| 问题类型 | 检索策略 |
|---|---|
| "如何实现..."类问题 | 在SKILL.md文件、README.md、docs/目录中检索关键词 |
| Bug反馈 | 检索提到的函数/文件,查看git log确认是否已有近期修复 |
| 配置相关问题 | 读取docs/tools_config.md、CLAUDE.md、相关SKILL.md文件 |
| 功能请求 | 校验该功能是否已存在,检索相关实现逻辑 |
| 安装相关问题 | 读取README.md安装章节、plugin.json文件 |
针对每个条目:
1. 从问题中提取关键词(函数名、skill名称、错误信息)
2. 在代码库中检索关键词,最多执行5次检索
3. 读取相关文件,最多读取3个,优先选择SKILL.md和docs/目录下文件
4. 查看git log中与该主题相关的近期变更
5. 如果找到答案 → 进入阶段3
6. 如果未找到答案 → 标记为"需要人工处理",建议用户直接回复2c. Detect First-Time Poster
2c. 识别首次发布者
bash
gh api graphql -f query='query($owner: String!, $name: String!) {
repository(owner: $owner, name: $name) {
discussions(first: 100) {
nodes { author { login } }
}
}
}' -f owner="{owner}" -f name="{repo}"Count how many discussions the author has created. If 0 previous (this is their first) → flag for Welcome style.
bash
gh api graphql -f query='query($owner: String!, $name: String!) {
repository(owner: $owner, name: $name) {
discussions(first: 100) {
nodes { author { login } }
}
}
}' -f owner="{owner}" -f name="{repo}"统计该发布者创建的讨论数量,如果之前发布数为0(本次是首次发布)→ 标记为欢迎风格回复。
Phase 3: Classify Response Type
阶段3:回复类型分类
MANDATORY READ: Load response_styles.md — use the classification matrix.
| Item Type | Response Style |
|---|---|
| Q&A question with answer found | Technical Answer |
| Bug report | Bug Acknowledgment |
| Feature request / idea | Feature Acknowledgment |
| Question already answered elsewhere | Redirect |
| First-time poster (any type) | Welcome + appropriate content style |
| Stale item with progress update | Status Update |
| Cannot find answer in codebase | Mark |
必读: 加载response_styles.md,使用其中的分类矩阵。
| 条目类型 | 回复风格 |
|---|---|
| 可找到答案的问答问题 | 技术解答 |
| Bug反馈 | Bug确认 |
| 功能请求/创意 | 功能反馈 |
| 已在其他位置答复的问题 | 跳转引导 |
| 首次发布者(任意类型) | 欢迎 + 对应内容风格 |
| 有进度更新的陈旧条目 | 状态同步 |
| 代码库中未找到答案 | 标记为 |
Phase 4: Compose Response
阶段4:编写回复
Use the selected style template from .
response_styles.md使用中对应风格的模板。
response_styles.mdRequired Elements (All Styles)
所有风格必备元素
- Thank the author — by name if possible, acknowledge their contribution
- Answer the question — direct, clear, linked to source code/docs
- Invite follow-up — "Let us know if this helps" or similar
- No jargon without context — explain internal terms
- Link to code — at least one link to relevant file in the repo
- 感谢发布者 — 尽可能使用名称,感谢其贡献
- 解答问题 — 直接清晰,关联源代码/文档链接
- 邀请后续反馈 — 例如"如果这对您有帮助请告知我们"等表述
- 无上下文的术语要解释 — 说明内部术语含义
- 关联代码链接 — 至少提供一个仓库内相关文件的链接
Batch Mode Composition
批量模式编写规则
In batch mode, compose all responses first, then present ALL for user review before publishing any.
批量模式下,先编写完所有回复,全部提交给用户审核后再执行发布操作。
Phase 5: Fact-Check
阶段5:事实校验
Before presenting to user, verify every claim:
-
File paths & links — verify each linked file exists:
ls {path} -
Code references — verify mentioned functions/classes exist:
grep -r "{name}" -
Feature descriptions — re-read source file, confirm accuracy
-
Install/usage commands — verify against README.md
-
Humanizer audit -- run the audit protocol from. If 3+ AI patterns found, rewrite flagged sections.
humanizer_checklist.md
Gate: If any check fails, fix the response before proceeding.
提交给用户前,校验所有表述:
-
文件路径与链接 — 校验每个链接的文件是否存在:
ls {path} -
代码引用 — 校验提到的函数/类是否存在:
grep -r "{name}" -
功能描述 — 重读源文件,确认表述准确
-
安装/使用命令 — 与README.md内容校验一致性
-
拟人化审核 -- 执行中的审核协议,如果发现3个及以上AI特征表述,重写标记区域。
humanizer_checklist.md
门槛: 任何校验不通过都要先修正回复再进入下一步。
Phase 6: Review and Publish
阶段6:审核与发布
Single Item Mode
单条目模式
Present the composed response to the user. Wait for explicit approval before publishing.
将编写好的回复提交给用户,发布前必须等待用户明确批准。
Batch Mode
批量模式
Present ALL responses in a summary table:
undefined将所有回复汇总到表格中展示:
undefinedBatch Responses — {N} items
批量回复 — {N} 条
| # | Type | Title | Style | Status |
|---|---|---|---|---|
| {number} | {Discussion/Issue} | {title} | {Technical/Bug/Welcome/...} | Ready |
| {number} | ... | ... | ... | needs-manual |
Then show each response body. User can approve all, approve selectively, or edit individual responses.| 编号 | 类型 | 标题 | 风格 | 状态 |
|---|---|---|---|---|
| {number} | {讨论/Issue} | {title} | {技术解答/Bug确认/欢迎/...} | 准备就绪 |
| {number} | ... | ... | ... | 需要人工处理 |
随后展示每个回复的正文,用户可以选择全部批准、选择性批准、或编辑单个回复。Publish Discussion Comment
发布讨论评论
bash
gh api graphql -f query='
mutation($discussionId: ID!, $body: String!) {
addDiscussionComment(input: {
discussionId: $discussionId,
body: $body
}) {
comment { url }
}
}
' -f discussionId="{discussion.id}" -f body="{response body}"bash
gh api graphql -f query='
mutation($discussionId: ID!, $body: String!) {
addDiscussionComment(input: {
discussionId: $discussionId,
body: $body
}) {
comment { url }
}
}
' -f discussionId="{discussion.id}" -f body="{response body}"Publish Issue Comment
发布Issue评论
bash
gh issue comment {number} --repo {owner}/{repo} --body "{response body}"Report the comment URL(s) to the user.
bash
gh issue comment {number} --repo {owner}/{repo} --body "{response body}"向用户反馈评论的URL。
Rules
规则
- Always require user approval before publishing any response
- Never close discussions or issues — only respond
- Never mark as answered — let the author do it (for Q&A discussions)
- Batch limit: max 10 items per batch (prevent context overload)
- needs-manual items: report to user with GitHub URL + reason, do not attempt response
- Tone: per strategy Section 6 — respectful, helpful, link to code
- 发布任何回复前必须获得用户批准
- 永远不要关闭讨论或Issue — 仅做回复
- 永远不要标记为已答复 — 让发布者自行操作(针对问答类讨论)
- 批量上限: 单批次最多处理10条(避免上下文过载)
- 需要人工处理的条目: 向用户反馈GitHub URL+原因,不要尝试自动回复
- 语气: 遵循策略第6节要求 — 尊重、有帮助、关联代码链接
Definition of Done
完成定义
- Items loaded (single, batch, or interactive selection)
- Question context analyzed + codebase searched for answers
- Response type classified per response_styles.md
- First-time posters detected and welcomed
- Response(s) composed with links to relevant code/docs
- Fact-checked (file paths, code references, commands verified)
- User approved response(s)
- Published via GraphQL/CLI, comment URL(s) reported
- needs-manual items reported to user with URLs
Version: 1.0.0
Last Updated: 2026-03-14
- 条目已加载(单条、批量或交互选择)
- 问题上下文已分析 + 已在代码库中检索答案
- 回复类型已按照response_styles.md分类
- 首次发布者已被识别并设置欢迎风格
- 回复已编写完成,包含相关代码/文档链接
- 已完成事实校验(文件路径、代码引用、命令已验证)
- 用户已批准回复
- 已通过GraphQL/CLI发布,已反馈评论URL
- 需要人工处理的条目已附带URL反馈给用户
版本: 1.0.0
最后更新: 2026-03-14