{"id":"1b46e557-d9ce-4436-b1f9-664bde9039c3","shortId":"8FeJp3","kind":"skill","title":"pick-next-issue","tagline":"Fetch and rank open GitHub issues by community engagement, present the top 3 candidates, and plan implementation for the selected issue. Use when the user asks to \"pick next issue\", \"next issue\", \"which issue should I work on\", \"top issues\", \"most popular issues\", \"prioritize iss","description":"# Pick Next Issue\n\nRank open GitHub issues by engagement and plan the selected issue.\n\n## Step 1: Fetch and Rank Issues\n\nRun `gh issue list` to fetch open issues with engagement data:\n\n```bash\ngh issue list --state open --json number,title,url,reactionGroups,comments,labels,createdAt --limit 50\n```\n\nCalculate an engagement score for each issue:\n\n- **Reactions score**: Sum all reaction counts from `reactionGroups` (thumbs up, heart, hooray, etc.). Weight thumbs-up (`THUMBS_UP`) reactions 2x since they signal explicit demand.\n- **Comments score**: Count of comments on the issue.\n- **Engagement score**: `(weighted reactions) + comments`\n\nSort issues by engagement score descending.\n\n## Step 2: Present Top 3\n\nPresent the top 3 issues in a numbered list. For each issue, show:\n\n1. **Title** with issue number and link\n2. **Labels** (if any)\n3. **Engagement**: reaction breakdown and comment count\n4. **Created**: date\n5. **First paragraph** of the issue body (truncate if long)\n\nIf fewer than 3 open issues exist, present all of them.\n\nIf no open issues exist, inform the user and stop.\n\n## Step 3: User Picks an Issue\n\nAsk the user to pick one of the presented issues (or request to see more).\n\nIf the user asks to **see more**, present the next 3 issues from the ranked list.\n\n## Step 4: Read the Full Issue\n\nFetch the complete issue details for the selected issue:\n\n```bash\ngh issue view <number> --json number,title,body,url,labels,comments,reactionGroups,assignees,milestone\n```\n\nRead the full issue body and comments to understand the requirements and any discussion context.\n\n## Step 5: Run `/turboplan` Skill\n\nRun the `/turboplan` skill with the issue body as the task description. Tell turboplan that the plan must include a final implementation step: \"Close issue #N or reference it in the PR with `Closes #N`.\"\n\n## Rules\n\n- Requires `gh` CLI authenticated with access to the current repo\n- If `gh` fails (not in a repo, not authenticated), inform the user and stop\n- Never modify issues. This skill is read-only until the implementation is committed.","tags":["pick","next","issue","turbo","tobihagemann","agent-skills","claude-code","claude-skills","developer-tools","skills"],"capabilities":["skill","source-tobihagemann","skill-pick-next-issue","topic-agent-skills","topic-claude-code","topic-claude-skills","topic-developer-tools","topic-skills"],"categories":["turbo"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/tobihagemann/turbo/pick-next-issue","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add tobihagemann/turbo","source_repo":"https://github.com/tobihagemann/turbo","install_from":"skills.sh"}},"qualityScore":"0.590","qualityRationale":"deterministic score 0.59 from registry signals: · indexed on github topic:agent-skills · 280 github stars · SKILL.md body (2,065 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T00:54:10.858Z","embedding":null,"createdAt":"2026-04-18T22:03:55.628Z","updatedAt":"2026-04-22T00:54:10.858Z","lastSeenAt":"2026-04-22T00:54:10.858Z","tsv":"'/turboplan':303,307 '1':65,167 '2':150,174 '2x':124 '3':17,153,157,178,201,220,250 '4':185,257 '5':188,301 '50':96 'access':346 'ask':30,225,243 'assigne':283 'authent':344,359 'bash':81,271 'bodi':194,278,289,312 'breakdown':181 'calcul':97 'candid':18 'cli':343 'close':328,338 'comment':92,130,134,142,183,281,291 'commit':378 'communiti':12 'complet':264 'context':299 'count':109,132,184 'creat':186 'createdat':94 'current':349 'data':80 'date':187 'demand':129 'descend':148 'descript':316 'detail':266 'discuss':298 'engag':13,58,79,99,138,146,179 'etc':116 'exist':204,213 'explicit':128 'fail':353 'fetch':5,66,75,262 'fewer':199 'final':325 'first':189 'full':260,287 'gh':71,82,272,342,352 'github':9,55 'heart':114 'hooray':115 'implement':21,326,376 'includ':323 'inform':214,360 'iss':49 'issu':4,10,25,34,36,38,44,47,52,56,63,69,72,77,83,103,137,144,158,165,170,193,203,212,224,234,251,261,265,270,273,288,311,329,367 'json':87,275 'label':93,175,280 'limit':95 'link':173 'list':73,84,162,255 'long':197 'mileston':284 'modifi':366 'must':322 'n':330,339 'never':365 'next':3,33,35,51,249 'number':88,161,171,276 'one':230 'open':8,54,76,86,202,211 'paragraph':190 'pick':2,32,50,222,229 'pick-next-issu':1 'plan':20,60,321 'popular':46 'pr':336 'present':14,151,154,205,233,247 'priorit':48 'rank':7,53,68,254 'reaction':104,108,123,141,180 'reactiongroup':91,111,282 'read':258,285,372 'read-on':371 'refer':332 'repo':350,357 'request':236 'requir':295,341 'rule':340 'run':70,302,305 'score':100,105,131,139,147 'see':238,245 'select':24,62,269 'show':166 'signal':127 'sinc':125 'skill':304,308,369 'skill-pick-next-issue' 'sort':143 'source-tobihagemann' 'state':85 'step':64,149,219,256,300,327 'stop':218,364 'sum':106 'task':315 'tell':317 'thumb':112,119,121 'thumbs-up':118 'titl':89,168,277 'top':16,43,152,156 'topic-agent-skills' 'topic-claude-code' 'topic-claude-skills' 'topic-developer-tools' 'topic-skills' 'truncat':195 'turboplan':318 'understand':293 'url':90,279 'use':26 'user':29,216,221,227,242,362 'view':274 'weight':117,140 'work':41","prices":[{"id":"2be18304-8397-4f2a-bd7f-c20479d5c595","listingId":"1b46e557-d9ce-4436-b1f9-664bde9039c3","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"tobihagemann","category":"turbo","install_from":"skills.sh"},"createdAt":"2026-04-18T22:03:55.628Z"}],"sources":[{"listingId":"1b46e557-d9ce-4436-b1f9-664bde9039c3","source":"github","sourceId":"tobihagemann/turbo/pick-next-issue","sourceUrl":"https://github.com/tobihagemann/turbo/tree/main/skills/pick-next-issue","isPrimary":false,"firstSeenAt":"2026-04-18T22:03:55.628Z","lastSeenAt":"2026-04-22T00:54:10.858Z"}],"details":{"listingId":"1b46e557-d9ce-4436-b1f9-664bde9039c3","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"tobihagemann","slug":"pick-next-issue","github":{"repo":"tobihagemann/turbo","stars":280,"topics":["agent-skills","claude-code","claude-skills","developer-tools","skills"],"license":"mit","html_url":"https://github.com/tobihagemann/turbo","pushed_at":"2026-04-21T12:22:12Z","description":"A composable dev process for Claude Code, packaged as modular skills.","skill_md_sha":"90100593477bd647f8b0a538364df72d45419cbb","skill_md_path":"skills/pick-next-issue/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/tobihagemann/turbo/tree/main/skills/pick-next-issue"},"layout":"multi","source":"github","category":"turbo","frontmatter":{"name":"pick-next-issue","description":"Fetch and rank open GitHub issues by community engagement, present the top 3 candidates, and plan implementation for the selected issue. Use when the user asks to \"pick next issue\", \"next issue\", \"which issue should I work on\", \"top issues\", \"most popular issues\", \"prioritize issues\", or \"what should I work on next\"."},"skills_sh_url":"https://skills.sh/tobihagemann/turbo/pick-next-issue"},"updatedAt":"2026-04-22T00:54:10.858Z"}}