Use for OpenClaw clawtributors PR/issue triage: Discrawl discovery, live-open rechecks, deep review, topic grouping, and compact @handle/LOC/type/blast/verification summaries.
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "clawdtributor" 技能: 1. 下载 https://raw.githubusercontent.com/openclaw/openclaw/main/.agents/skills/clawdtributor/SKILL.md 2. 保存为 ~/.claude/skills/clawdtributor/SKILL.md 3. 装好后重载技能,告诉我可以用了
Use for the #clawtributors queue: Discord-discovered OpenClaw PRs/issues that need live GitHub status plus maintainer-quality review.
$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.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.
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.
For each open item, inspect enough to classify risk:
origin/main code path and adjacent tests.gitcrawl neighbors/search.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.
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.
…
Summarize CodexBar local cost logs by model for Codex or Claude, including current or full breakdowns.
Edit PDFs with natural-language instructions using the nano-pdf CLI.
Diagnose OpenClaw Android, iOS, or macOS node pairing, QR/setup code, route, auth, and connection failures.
Debug Node.js with node inspect, --inspect, breakpoints, CDP, heap, and CPU profiles.
Notion CLI/API for pages, Markdown content, data sources, files, comments, search, Workers, and raw API calls.
Search meme templates, suggest formats, and generate local or hosted image memes.