github
Skill0 starsChanged 4 months agoMITView on GitHub
Use for GitHub issue and project-board operations. Owns the issue + project-board surface — issues (create/read/update/close), comments, labels, the board (status, type, sprint, drafts), sprint-context loading, and completion notifications. Confirms before mutating ops.
166 other projects use a version of this.
Adopted by
Most recently taken up by
- Moriarty33/jb-kaizentheir own version, first seen Nov 8, 2026
- GradScalerTeam/claude_clitheir own version, first seen Nov 8, 2026
- artivilla/agent-skillstheir own version, first seen Nov 8, 2026
- DmacMcgreg/psibottheir own version, first seen Nov 8, 2026
- ashleysbrain/skillstheir own version, first seen Nov 8, 2026
- sidmanale643/pekka-bottheir own version, first seen Nov 8, 2026
Used with
Projects with it also use taskflow-inbox-triage, BlueBubbles and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
AtomicBot-aiSkilltaskflow-inbox-triage
Also in 6 projects that use this
jiulingyunSkillBlueBubbles
为Clawdbot构建或更新BlueBubbles外部通道插件(扩展包,REST发送/探测,webhook入站)。
Also in 20 projects that use this
hkyutongSkillnode-connect
Diagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps. Use when QR/setup code/manual connect fails, local Wi-Fi works but VPS/tailnet does not, or errors mention pairing required, unauthorized, bootstrap token invalid or expired, gateway.bind, gateway.remote.url, Tailscale, or plugins.entries.device-pair.config.publicUrl.
Also in 18 projects that use this
molt-botSkilldiscord-e2e
Test Discord with Convex-leased QA bots: check credentials without a Gateway, exercise owned messages, or prove OpenClaw replies, files, threads, reactions, streaming, and typing. Distinguish API and Gateway evidence from manual user interactions.
Also in 10 projects that use this
molt-botSkillopenclaw-repair-sweep
Run scoped OpenClaw issue/PR repair campaigns: coordinate workers, prove root causes, and land or close verified work under the requested authority.
Also in 10 projects that use this
clawdbotSkillopenclaw-performance
Performance work in OpenClaw: a slow or heavy flow (latency, CPU, memory, SQL, RPC, renders), writing or reviewing a perf PR, or adding a cache. Count the work, delete waste first, cache last.
Also in 7 projects that use this
- +2 more from molt-bot
Other versions166 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 166
- moltbot/clawdbot★ 394ksame name
- steipete/warelay★ 394ksame name
- steipete/clawdis★ 394ksame name
- moltbot/moltbot★ 394ksame name
- clawdbot/clawdbot★ 394ksame name
- openclaw/openclaw★ 394ksame name
- molt-bot/clawdbot★ 391ksame name
- NousResearch/hermes-agent★ 262ksame name
- spinabot/brigade★ 11ksame name
- the-open-agent/openagent★ 5.7ksame name
156 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository8 other files it gives its agents.
- checkpointSkill
- design-themeSkill
- dispatch-agentsSkill
- github-templatesSkill
- gitSkill
- productSkill
- technical-designSkill
- user-storiesSkill
The file
We split this skill into the rules it gives an agent
5 rules. 0 are common, 4 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 151 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 20
Before any mutating op: summarise all planned mutations in one block, ask once "Proceed?
- Distinctive: line 22
Skip: read-only ops (read issue, list issues, board reads — list sprint, list drafts, resolve active sprint).
- Distinctive: line 23
Always confirm: create issue, update issue body, update labels, post comment, close issue, update comment, board mutations (set status / …
- Distinctive: line 39
Read the issue first (Fetch Issue), modify, then write.
- Distinctive: line 83
After creating an issue, add it and set its fields (Sprint for sprint-scoped work — stories, TDD, requirement, in-sprint bugs, in-sprint …
“Common” is measured: kept by at least 6 in 10 of the 151 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Repo Derivation
Derive at runtime, never hardcode; hold for the session. Run from the relevant repo root:
- Issues/board/stories/TDD/design -> orchestration repo.
- PRs/branches -> codebase directory (path from the Codebases table).
gh repo view --json owner,name --jq '[.owner.login,.name]|join("/")'Confirmation Protocol
Before any mutating op: summarise all planned mutations in one block, ask once "Proceed? (y/n)", proceed only if confirmed.
- Skip: read-only ops (read issue, list issues, board reads — list sprint, list drafts, resolve active sprint).
- Always confirm: create issue, update issue body, update labels, post comment, close issue, update comment, board mutations (set status / type / sprint, add issue to board, create draft, delete item).
- Exception: board status transitions and self-assignment (Assign Issue) that a command performs as a documented side effect of an already-confirmed mutation (e.g. Notify Implementation Complete) need no second confirmation.
Operations
Link Reference
Format: #id (e.g. #17) — use in issue bodies and comments.
Fetch Issue
gh issue view {id} --repo {owner}/{repo} --json title,body,labels,comments
Create Issue
gh issue create --repo {owner}/{repo} --title "{title}" --body "{body}" --label {label}— returns new issue URL.- Sprint membership and lifecycle state live on the project board, not the issue — after creating, register the issue on the board (see Project Board).
Update Issue Body
- Read the issue first (Fetch Issue), modify, then write.
gh issue edit {id} --repo {owner}/{repo} --body "{body}"
Update Labels
gh issue edit {id} --repo {owner}/{repo} --add-label {add} --remove-label {remove}— no read needed; omit either flag to skip that side.
Assign Issue
gh issue edit {id} --repo {owner}/{repo} --add-assignee @me— assigns the authenticated user;@meresolves at runtime, never hardcode a login.
Post Comment
gh issue comment {id} --repo {owner}/{repo} --body "{body}"
Update Comment
gh api repos/{owner}/{repo}/issues/comments/{comment_id} --method PATCH -f body="{body}"
List Open Issues
gh issue list --repo {owner}/{repo} --state open --label {label} --json number,title,labels
Close Issue
gh issue close {id} --repo {owner}/{repo}
Project Board (Projects v2)
Board = single tracking surface:
- Status replaces lifecycle labels.
- Sprint (single-select) replaces milestones.
- Type (Feature / Refactor / Bug) classifies items.
All board ops -> .claude/scripts/board.sh. Resolves project by title + field/option IDs by name at runtime, caching to gitignored .claude/state/board.json (auto-refreshed on lookup miss + after sprint-option mutations — never edit or commit it). Needs project token scope; scope failure → surface gh auth refresh -s project --hostname github.com. No board → surface that the project board isn't provisioned yet.
Status lifecycle: Backlog (captured draft) → Todo (issue filed) → In Progress (implement start) → Implemented (PRs open, awaiting merge) → Done (released + closed).
Resolve Active Sprint
bash .claude/scripts/board.sh current-sprint— prints the highestSprint Nthat still has active (non-Done) work →$SPRINT_Nfrom its number.- Script halts if none:
⛔ No active sprint on the board.
Next Sprint Number
bash .claude/scripts/board.sh next-sprint-number— prints max(N)+1.
Ensure Sprint
bash .claude/scripts/board.sh ensure-sprint {N}— appends theSprint Noption if missing. Idempotent.
Register Issue on Board
After creating an issue, add it and set its fields (Sprint for sprint-scoped work — stories, TDD, requirement, in-sprint bugs, in-sprint refactors; standalone refactors and production bugs get none):
bash .claude/scripts/board.sh add-issue {id}bash .claude/scripts/board.sh set-type {id} {Feature|Refactor|Bug}bash .claude/scripts/board.sh set-status {id} Todobash .claude/scripts/board.sh set-sprint {id} "Sprint N"(sprint-scoped work only)
Set Board Status
bash .claude/scripts/board.sh set-status {id} {Backlog|Todo|In Progress|Implemented|Done}— self-healing: adds the issue to the board first if absent.
List Sprint Items
bash .claude/scripts/board.sh list-sprint "Sprint N" [--open-only]— JSON[{number, title, labels, status, type, state}].
Create Backlog Draft
bash .claude/scripts/board.sh set-draft "{title}" "{body}" {Type}— draft item, Status=Backlog. Prints item ID.
List Backlog Drafts
bash .claude/scripts/board.sh list-drafts— JSON[{id, title, body, type, status}].
Delete Board Item
bash .claude/scripts/board.sh delete-item {item-id}— used after promoting a draft.
Load Sprint Snapshot
Resolve Active Sprint → list-sprint "Sprint N" --open-only once (closed issues = out of sprint scope) → partition in memory → read all present partitions in parallel:
- $STORIES — open issues labelled
user-story. Read each in full. - $REQUIREMENT — single open issue labelled
requirement. May be absent. - $TDD — single open issue whose title contains
Technical Design Document. Read in full. May be absent. - $DESIGN — design hub comment on
$REQUIREMENT(body starts## Design Navigation); its Surfaces table links each surface's Storybook story file. Resolve via$REQUIREMENT's comments — design is a comment, never a labelled issue. May be absent. Callers read the linked story files for surfaces they need.
Notify Implementation Complete
Two mandatory mutations on issue #ISSUE_NUMBER — run both, never stop after the comment.
Step 1 — Post or update completion comment
Fetch comments (gh issue view {id} --repo {owner}/{repo} --json comments). One starts with ## Refactor Complete, ## Implementation Complete, or ## Revert Ready → update via Update Comment (don't post new). Else → Post Comment.
Pick mode (refactor / revert / implementation) + variant:
- Single-PR — one PR.
- Multi-PR — one bullet per PR, labelled by codebase name from the Codebases table (e.g.
api,web,infrastructure) — never hardcodeBackend/Frontend.
Substitute every <pr-url> with the actual URL.
Refactor — single-PR:
## Refactor Complete
- PR: <pr-url>
---
> ⏸ Human gate: Review the PR diff. When approved, merge the PR into its base — `main` for a standalone refactor, or the sprint branch for an in-sprint refactor.Refactor — multi-PR (one bullet per codebase):
## Refactor Complete
- <codebase-name>: <pr-url>
- <codebase-name>: <pr-url>
---
> ⏸ Human gate: Review all PR diffs. When approved, merge the PRs into their base — `main` for a standalone refactor, or the sprint branch for an in-sprint refactor.Revert — single-PR:
## Revert Ready
Story #<ISSUE_NUMBER> was removed from scope. Implementation has been reversed.
- Revert PR: <revert-pr-url>
---
> ⏸ Human gate: Review the revert PR diff. When approved, merge into the sprint branch.Revert — multi-PR:
## Revert Ready
Story #<ISSUE_NUMBER> was removed from scope. Implementation has been reversed across all codebases.
- <codebase-name> revert PR: <revert-pr-url>
- <codebase-name> revert PR: <revert-pr-url>
---
> ⏸ Human gate: Review all revert PR diffs. When approved, merge into the sprint branch.Implementation — single-PR:
## Implementation Complete
- PR: <pr-url>
---
> ⏸ Human gate: Review the PR diff. When approved, merge into the staging branch.Implementation — multi-PR:
## Implementation Complete
- <codebase-name>: <pr-url>
- <codebase-name>: <pr-url>
---
> ⏸ Human gate: Review all PR diffs. When approved, merge into the staging branch.Step 2 — Update board status
Via Set Board Status (implementation and refactor modes; skip for revert):
bash .claude/scripts/board.sh set-status {ISSUE_NUMBER} ImplementedStep 3 — Confirm
Output a single line listing the PR URL(s) for the orchestrator's summary.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

