
Clawdtributor
FreeStreamline triage for OpenClaw PRs and issues.
Free · Opens the source repo
What Clawdtributor does
Clawdtributor is a specialized tool designed for managing the triage of pull requests (PRs) and issues within the OpenClaw project. It integrates seamlessly with existing workflows, allowing developers and maintainers to efficiently handle Discord-discovered PRs and issues that require immediate attention. By leveraging commands such as $discrawl, $openclaw-pr-maintainer, and $gitcrawl, users can synchronize local archives, perform live GitHub status checks, and conduct thorough reviews of contributions. This skill is particularly useful for teams looking to maintain high-quality code and ensure that contributions are properly managed and reviewed.
The skill emphasizes a structured approach to triage, enabling users to extract relevant information from Discord archives and map it back to GitHub issues or PRs. By utilizing SQLite queries, Clawdtributor allows for the retrieval of recent messages and their associated metadata, ensuring that maintainers have the context needed for effective review. The skill also supports live rechecks of GitHub statuses, ensuring that users are always working with the most current data.
Clawdtributor is ideal for developers and maintainers involved in open-source projects, particularly those using the OpenClaw framework. It helps streamline the review process, making it easier to identify high-impact contributions and prioritize them accordingly. The ability to group topics and classify risk levels further enhances the review process, allowing teams to focus on the most critical issues first.
Overall, Clawdtributor is a valuable addition to any developer's toolkit, providing essential functionality for managing PRs and issues in a collaborative environment. Its integration with existing workflows and emphasis on live data make it a powerful resource for maintaining code quality and project health.
When to use it
Use Clawdtributor when you need to manage and review contributions to the OpenClaw project efficiently.
When not to use it
This skill may not be suitable for projects outside the OpenClaw ecosystem or for users unfamiliar with command-line tools.
What you can build with it
Triage New Contributions
Use Clawdtributor to efficiently triage new pull requests and issues discovered via Discord, ensuring timely reviews.
Live Status Checks
Perform live checks of GitHub statuses for PRs and issues to maintain accurate information during the review process.
Group Related Topics
Utilize Clawdtributor's topic grouping feature to organize PRs and issues by relevant categories for streamlined management.
How to install Clawdtributor
View source1. Install with the skills CLI
npx skills add openclaw/openclaw/clawdtributor --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by openclawClawdtributor
Use for the #clawtributors queue: Discord-discovered OpenClaw PRs/issues that need live GitHub status plus maintainer-quality review.
Compose with other skills
$discrawl: local Discord archive sync/search.$openclaw-pr-maintainer: live GitHub PR/issue review, duplicate search, close/land rules.$gitcrawl: related issue/PR and current-main/stale-proof search.$openclaw-testing/$crabbox: proof choice when a candidate needs real validation.
Archive flow
Local archive first; verify freshness for current questions.
discrawl status --json
discrawl sync
Resolve channel if needed:
sqlite3 "$HOME/.discrawl/discrawl.db" \
"select id,name from channels where name like '%clawtributor%' order by name;"
Current known channel id from prior work: 1458141495701012561. Re-resolve if it stops matching.
Extract recent refs:
sqlite3 "$HOME/.discrawl/discrawl.db" "
select m.created_at, coalesce(nullif(mm.username,''), m.author_id), m.content
from messages m
left join members mm on mm.guild_id=m.guild_id and mm.user_id=m.author_id
where m.channel_id='1458141495701012561'
and m.created_at >= '<ISO cutoff>'
order by m.created_at desc;" |
perl -nE 'while(m{github\.com/openclaw/openclaw/(pull|issues)/(\d+)}g){say "$1\t$2\t$_"}'
Map a PR/issue back to the Discord handle:
sqlite3 -separator $'\t' "$HOME/.discrawl/discrawl.db" "
select m.created_at,
coalesce(nullif(mm.username,''), nullif(mm.global_name,''), m.author_id)
from messages m
left join members mm on mm.guild_id=m.guild_id and mm.user_id=m.author_id
where m.channel_id='1458141495701012561'
and m.content like '%github.com/openclaw/openclaw/<pull-or-issues>/<number>%'
order by m.created_at desc
limit 1;"
Show only @handle in the final list. Do not write the word Discord unless the user asks for source details.
Live GitHub recheck
Always recheck live state before listing, closing, or saying "open".
GITHUB_TOKEN= GITHUB_TOKEN_NODIFF= GH_TOKEN= \
gh api repos/openclaw/openclaw/pulls/<number> \
--jq '. | {number,title,state,merged,mergeable,draft,author:.user.login,url:.html_url,updatedAt:.updated_at,additions,deletions,changedFiles:.changed_files}'
For issues:
GITHUB_TOKEN= GITHUB_TOKEN_NODIFF= GH_TOKEN= \
gh api repos/openclaw/openclaw/issues/<number> \
--jq '. | {number,title,state,author:.user.login,url:.html_url,updatedAt:.updated_at,pull_request}'
If gh says bad credentials, clear env vars with empty assignments as above. Use --jq '. | {...}' for object projections.
Review depth
For each open item, inspect enough to classify risk:
- PR body, linked issue, comments, files, additions/deletions, checks.
- Current
origin/maincode path and adjacent tests. - Related threads with
gitcrawl neighbors/search. - Whether main already fixed it, the PR is obsolete, or the idea is invalid.
- Blast radius: touched runtime surfaces, config/schema, plugin/core boundary, user-visible behavior, release/package surface.
- Verification: say if local unit/docs proof is enough, live/provider proof is needed, or it is not directly verifiable.
Do not close from title alone. If closing as done on main or nonsensical, prove it against current main and comment first when mutation is requested. Bulk close/reopen above 5 requires explicit scope.
Candidate selection
When asked for 5 new, exclude refs already surfaced in the session and refill from the archive until there are 5 live-open candidates. If fewer than 5 remain open, list all open ones and say how many short.
When asked to update, refresh, recheck, check again, or similar, return an updated live-open candidate list. Sort by maintainer importance, not recency: high-impact ready fixes first, then useful-but-review-first, then open/not-ready items. Do not include a "changed since last pass" section or bottom-line merged/closed summary unless the user explicitly asks for churn.
Prefer:
- Fresh, open, external contributor work.
- Small, high-confidence bugfixes.
- Clear repro, tests, or obvious code-path proof.
Demote:
- Broad product/features without owner decision.
- Large rewrites with unclear contract.
- PRs already in progress, merged, closed, duplicate, or fixed on main.
Topic grouping
Group only when useful or requested:
- Agents/tooling
- Providers/auth/models
- Channels/messaging
- UI/web
- Gateway/protocol/runtime
- Config/memory/cache
- Docker/install/release
- Docs/tests/chore
- Closed/obsolete
Infer topic from labels, touched files, title/body, and actual code path.
Output format
No Markdown tables. Compact bullets. Use color/risk markers:
- 🟢 low/narrow
- 🟡 medium or needs targeted proof
- 🔴 broad/high runtime risk
- 🟣 security/policy/owner-boundary slow review
- ✅ merged
- ⚪ closed unmerged
Required line shape:
- **PR #81244** `@whatsskill.` `+118/-1` `bug` 🟢 https://github.com/openclaw/openclaw/pull/81244 - Prevents chat action buttons from overlapping short assistant replies. Verifiable: yes. Blast: web chat rendering, low.
- **Issue #81245** `@alice` `LOC n/a` `bug` 🟡 https://github.com/openclaw/openclaw/issues/81245 - Reports duplicate Telegram replies when reconnecting after gateway restart. Verifiable: partial. Blast: Telegram channel runtime, medium.
Rules:
- Bold the
PR #norIssue #nmarker. - Use
@handle, not author bio text. - Always include the full GitHub URL.
- Include a one-line description after the URL, separated with
-. - PR LOC is
+additions/-deletions; issue LOC isLOC n/a. - Type:
bug,feature,perf,security,docs,test,chore, orrefactor. - Write a full sentence for what it does.
- Always include blast radius in one phrase.
- Always include
verifiable: yes|partial|noplus the shortest proof hint when helpful. - If status is not open, still show it only when the user asked for all surfaced refs; use ✅ or ⚪ and state merged/closed.
- For refresh-style asks, prefer section order:
Best Open Now,Useful But Review First,Still Open / Not Ready. Omit merged/closed churn by default.
Frequently asked questions about Clawdtributor
Similar skills
Quality Playbook Generator
Run comprehensive quality audits on any codebase.
PR Draft Summary
Automate PR summary generation for openai-agents-python.
Final Release Review
Streamline your release candidate audits with ease.
Unit Test Vue Pinia
Efficiently write and review unit tests for Vue 3 applications.
Slang Shader Expert
Optimize and integrate Slang shaders with ease.
Telemetry Standards
Ensure consistent event tracking in Supabase Studio.
