skills/workflow/open-source-maintainer/skills/open-source-maintainer/SKILL.md
End-to-end GitHub repository maintenance for open-source projects. Use when asked to triage issues, review PRs, analyze contributor activity, generate maintenance reports, or maintain a repository. Triggers include "triage", "maintain", "review PRs", "analyze issues", "repo maintenance", "what needs attention", "open source maintenance", or any request to understand and act on GitHub issues/PRs. Supports human-in-the-loop workflows with persistent memory across sessions.
npx skillsauth add numman-ali/n-skills open-source-maintainerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Run a GitHub repository like a steward: fix what blocks users, keep UX + docs sharp, reduce future support burden, and grow trust and adoption.
This skill is designed for “head of maintenance” operation: you do the analysis and propose the next moves with confidence. The human should be able to mostly ask: “What’s next?”
Everything else is optional and should be progressively disclosed.
If unsure which mode to use, default to Maintain → Ship.
Do not read everything by default. Load the minimum reference needed for the task you are about to do.
| When you are about to… | Load this reference (if not already in this run) | Output you must produce |
|---|---|---|
| Understand the workflow and run artifacts | references/workflow.md, references/report-structure.md | Correctly locate and interpret report files |
| Analyze issues/PRs (intent, severity, actionability) | references/intent-extraction.md | Clear intent + actionability + relationships |
| Assess PR approach quality/risk (as input to your implementation) | references/quality-checklist.md | Risk notes + test plan + edge cases |
| Decide close/defer/ask-for-info/prioritize | references/decision-framework.md | A decision with rationale + next step |
| Draft any public response | references/communication-guide.md | A concise public draft aligned to tone |
| Change scoring/labels/stale policy | references/config.md | Proposed config edits + impact |
| Initialize/reshape .github/maintainer/ state | references/repo-state-template.md | Correct state files created/updated |
These are “STOP gates” where skipping the right reference tends to cause mistakes.
references/decision-framework.md.references/communication-guide.md.references/quality-checklist.md.references/intent-extraction.md.references/config.md..github/maintainer/ exists (create via templates if missing)..github/maintainer/context.md to align with project priorities and tone.From repo root:
npx tsx /path/to/open-source-maintainer/scripts/triage.ts
Prefer --delta if a previous run exists.
.github/maintainer/notes/ (scores, confidence, rationale)..github/maintainer/decisions.md, .github/maintainer/patterns.md, .github/maintainer/contributors.md..github/maintainer/state.json current for delta runs.# Standard run (creates reports/<datetime>/)
npx tsx /path/to/open-source-maintainer/scripts/triage.ts
# Compare with previous run
npx tsx /path/to/open-source-maintainer/scripts/triage.ts --delta
# Keep existing folder if same datetime
npx tsx /path/to/open-source-maintainer/scripts/triage.ts --keep
# Override report folder name
npx tsx /path/to/open-source-maintainer/scripts/triage.ts --datetime 2026-01-17T12-30-00
# Use a custom config path
npx tsx /path/to/open-source-maintainer/scripts/triage.ts --config .github/maintainer/config.json
The skill maintains project memory in .github/maintainer/:
| File | Purpose |
|------|---------|
| context.md | Project vision, priorities, tone, boundaries |
| decisions.md | Decision log with reasoning |
| contributors.md | Notes on specific contributors |
| patterns.md | Observed patterns and learnings |
| standing-rules.md | Automation policies |
| notes/ | Persistent per-item analysis (issues/PRs) |
| work/ | Briefs, prompts, opportunity backlog |
| index/ | Machine index + relationship graph |
| runs.md | Run ledger with report paths |
| state.json | Technical state for delta computation |
Notes/work/index are persistent across runs; reports are snapshots.
Reference items consistently in reports and responses:
ISSUE:42 — Issue #42ISSUE:42:C:3 — Comment #3 on issue #42PR:38 — Pull request #38PR:38:R:1 — Review #1 on PR #38PR:38:RC:4 — Review comment #4 on PR #38Never execute without explicit approval:
development
Multi-agent orchestration for complex tasks. Use when tasks require parallel work, multiple agents, or sophisticated coordination. Triggers include requests for features, reviews, refactoring, testing, documentation, or any work that benefits from decomposition into parallel subtasks. This skill defines how to orchestrate work using cc-mirror tasks for persistent dependency tracking and TodoWrite for real-time session visibility.
tools
Z.AI CLI providing: - Vision: image/video analysis, OCR, UI-to-code, error diagnosis (GLM-4.6V) - Search: real-time web search with domain/recency filtering - Reader: web page to markdown extraction - Repo: GitHub code search and reading via ZRead - Tools: MCP tool discovery and raw calls - Code: TypeScript tool chaining Use for visual content analysis, web search, page reading, or GitHub exploration. Requires Z_AI_API_KEY.
tools
Multi-agent orchestrator for Claude Code. Use when user mentions gastown, gas town, gt commands, bd commands, convoys, polecats, crew, rigs, slinging work, multi-agent coordination, beads, hooks, molecules, workflows, the witness, the mayor, the refinery, the deacon, dogs, escalation, or wants to run multiple AI agents on projects simultaneously. Handles installation, workspace setup, work tracking, agent lifecycle, crash recovery, and all gt/bd CLI operations.
tools
Browser automation with persistent page state. Use when users ask to navigate websites, fill forms, take screenshots, extract web data, test web apps, or automate browser workflows. Trigger phrases include "go to [url]", "click on", "fill out the form", "take a screenshot", "scrape", "automate", "test the website", "log into", or any browser interaction request.