ln-910-community-engagement
Analyzes community health and delegates engagement tasks. Use when managing GitHub issues, discussions, and announcements.
How do I install this agent skill?
npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-910-community-engagementIs this agent skill safe to install?
- Gen Agent Trust Hubpass
This skill acts as a coordinator for community engagement tasks on GitHub. It uses the GitHub CLI and Git to analyze repository health and activity, delegating tasks to specific worker skills. It includes a fallback mechanism to fetch missing instruction files from the author's official repository.
- Socketpass
No alerts
- Snykwarn
Risk: MEDIUM · 2 issues
- Runlayerpass
2/4 files flagged
What does this agent skill do?
Paths: File paths (
references/,../ln-*) are relative to this skill directory.
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 | $ARGUMENTS (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 references/community_github_discovery.md
Execute the discovery protocol. Extract:
{owner}/{repo}for all GitHub operationsrepo.idfor GraphQL mutations (passed to workers)maintainerlogin (authenticated user)- Discussion category IDs
Gate checks: gh authenticated? Discussions enabled?
Load strategy: check docs/community_engagement_strategy.md in target project, fallback to 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 |
$ARGUMENTS 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)
| Argument | Delegation |
|---|---|
announce or announce {topic} | Skill(skill: "ln-912-community-announcer", args: "{topic}") |
debate or debate {topic} | Skill(skill: "ln-913-community-debater", args: "{topic}") |
triage or triage {scope} | Skill(skill: "ln-911-github-triager", args: "{scope}") |
respond or respond {#number} | Skill(skill: "ln-914-community-responder", args: "{#number or batch}") |
Analysis-Based Delegation
| Recommended action | Delegation |
|---|---|
| Announce | Skill(skill: "ln-912-community-announcer") — worker gathers its own context |
| Debate | Skill(skill: "ln-913-community-debater", args: "{identified topic}") |
| Respond to items | Skill(skill: "ln-914-community-responder", args: "batch") |
| No action needed | Report status, done |
Shared References
| File | Purpose |
|---|---|
references/community_github_discovery.md | Phase 0: dynamic repo/category/user discovery |
references/community_strategy_template.md | Default engagement strategy (fallback) |
references/community_discussion_formatting.md | 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 references/.
Phase 4: Meta-Analysis
Optional reference: load references/meta_analysis_protocol.md only when the user asks for post-run meta-analysis or protocol-formatted run reflection.
Skill type: planning-coordinator. When requested, 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)
Host Skill Invocation: Skill(skill: "...", args: "...") is mandatory delegation.
- Claude: call the Skill tool exactly as shown.
- Codex: if no Skill tool exists, locate the named skill in available skills, read its
SKILL.md, treatargsas$ARGUMENTS, execute that skill workflow, then return here with its result/artifact. - Do not inline worker logic or mark the worker complete without executing the target skill.
| 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
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/levnikolaevich/claude-code-skills/ln-910-community-engagement">View ln-910-community-engagement on skillZs</a>