Claude-code-skills ln-910-community-engagement
Analyzes community health and delegates engagement tasks. Use when managing GitHub issues, discussions, and announcements.
git clone https://github.com/levnikolaevich/claude-code-skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/levnikolaevich/claude-code-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills-catalog/ln-910-community-engagement" ~/.claude/skills/levnikolaevich-claude-code-skills-ln-910-community-engagement && rm -rf "$T"
skills-catalog/ln-910-community-engagement/SKILL.mdPaths: 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}
ln-910-community-engagement
Type: L2 Coordinator (active) Category: 9XX Community Engagement
Analyzes current community health and repository state, consults the engagement strategy, and delegates to the appropriate worker. Each worker is also invocable standalone.
Overview
| Aspect | Details |
|---|---|
| Input | (optional): topic, action keyword, or empty for auto-analysis |
| Output | Situation report + delegated action via worker skill |
| Workers | ln-911 (triager), ln-912 (announcer), ln-913 (debater), ln-914 (responder) |
Phase 0: GitHub Discovery
MANDATORY READ: Load
shared/references/community_github_discovery.md
Execute the discovery protocol. Extract:
for all GitHub operations{owner}/{repo}
for GraphQL mutations (passed to workers)repo.id
login (authenticated user)maintainer- Discussion category IDs
Gate checks: gh authenticated? Discussions enabled?
Load strategy: check
docs/community_engagement_strategy.md in target project, fallback to shared/references/community_strategy_template.md.
Phase 1: Situation Analysis
If
$ARGUMENTS contains a direct action keyword (announce, debate, triage, respond), skip analysis and jump to Phase 3 (Direct Delegation).
Otherwise, gather context from multiple sources in parallel:
1a. Community Health
Delegate to triager in summary mode (no interactive preview):
Skill(skill: "ln-911-github-triager", args: "summary")
Extract from triager output: red flags, priority counts (P0/P1/P2), health metrics.
1b. Unreleased Changes
# Last announcement date: most recent Announcements discussion gh api graphql -f query='query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { discussions(first: 1, categoryId: "{categories.Announcements}", orderBy: {field: CREATED_AT, direction: DESC}) { nodes { createdAt title } } } }' -f owner="{owner}" -f name="{repo}"
Then check what changed since:
git log --oneline --since="{last_announcement_date}"
Read
CHANGELOG.md — any entries newer than the last announcement?
1c. Cadence Check
From strategy Section 4:
- Days since last announcement → monthly digest overdue if >30 days?
- Any pending architectural decisions that need RFC?
Phase 2: Decision Matrix
Apply strategy Section 1 (Announcement vs Debate) to the gathered context:
| Condition | Priority | Action | Worker |
|---|---|---|---|
| Red flags: unanswered discussions >7d | P0 | Respond to unanswered items | → ln-914 |
| Red flags: PRs needing review | P0 | List PRs needing review | Recommendations only |
| Unreleased changes in CHANGELOG | P1 | Announce: new features/fixes | → ln-912 |
contains RFC/debate topic | P1 | Debate: launch RFC | → ln-913 |
| Monthly digest overdue (>30d) | P2 | Monthly digest announcement | → ln-912 |
| Design questions identified in Phase 1 | P2 | Debate: RFC for open decisions | → ln-913 |
| Community health OK, nothing unreleased | — | Report "all clear" | No delegation |
Output: Situation Report
Present to user:
## Community Status — {YYYY-MM-DD} **Repo:** {owner}/{repo} **Last announcement:** {date} ({days} days ago) **Open items:** {issues} issues, {prs} PRs, {discussions} discussions ### Red Flags {list or "None"} ### Recommended Action {One of: Announce / Debate / Respond to items / No action needed} **Reason:** {brief explanation based on strategy criteria}
Wait for user approval before proceeding.
Phase 3: Delegate
After user approves the recommended action:
Direct Delegation (when $ARGUMENTS
specifies action)
$ARGUMENTS| Argument | Delegation |
|---|---|
or | |
or | |
or | |
or | |
Analysis-Based Delegation
| Recommended action | Delegation |
|---|---|
| Announce | — worker gathers its own context |
| Debate | |
| Respond to items | |
| No action needed | Report status, done |
Shared References
| File | Purpose |
|---|---|
| Phase 0: dynamic repo/category/user discovery |
| Default engagement strategy (fallback) |
| GitHub Discussion formatting rules |
Strategy Override
Each target project can override the default strategy by creating
docs/community_engagement_strategy.md. All skills check project-local first, then fall back to the template in shared/references/.
Phase 4: Meta-Analysis
MANDATORY READ: Load
shared/references/meta_analysis_protocol.md
Skill type:
planning-coordinator. Run after Phase 3 completes. Output to chat using the planning-coordinator format.
TodoWrite format (mandatory):
- GitHub discovery (in_progress) - Situation analysis (pending) - Apply decision matrix (pending) - Invoke ln-911-github-triager (pending) - Invoke ln-912-community-announcer (pending) - Invoke ln-913-community-debater (pending) - Invoke ln-914-community-responder (pending) - Report outcome to user (pending)
Worker Invocation (MANDATORY)
| Phase | Worker | Context |
|---|---|---|
| 1 | ln-911-github-triager | Shared (Skill tool) — community health summary |
| 3 | ln-912-community-announcer | Shared (Skill tool) — feature/release announcements |
| 3 | ln-913-community-debater | Shared (Skill tool) — RFC / architectural debates |
| 3 | ln-914-community-responder | Shared (Skill tool) — respond to unanswered items |
All workers: Invoke via Skill tool — workers see coordinator context.
Definition of Done
- GitHub discovery complete (owner/repo, categories, maintainer extracted)
- Situation analyzed (health + unreleased changes + cadence) OR direct delegation triggered
- Decision matrix applied with priority-based action selection
- Worker delegated or recommendations shown to user
- User informed of outcome
Version: 1.0.0 Last Updated: 2026-03-13