{"id":"c4448655-2809-4741-97d7-d3489cd0c89f","shortId":"W5Hz9j","kind":"skill","title":"next","tagline":"Analyze and pick the next task to work on. Reads MASTER_PLAN.md, scores tasks by priority and status, and presents interactive selection. Use when starting a session or deciding what to tackle next.","description":"# What's Next?\n\nAnalyze MASTER_PLAN.md tasks, score by priority/status, and let the user pick interactively.\n\n## Triggers\n\n- `/master-plan:next` - Main command\n- \"what should I work on\", \"pick a task\", \"next task\", \"what's next\"\n\n## Arguments\n\n| Argument | Filter |\n|----------|--------|\n| `bugs` | Only BUG-XXX tasks |\n| `progress` | Only IN PROGRESS tasks |\n| `planned` | Only PLANNED (backlog) tasks |\n| `review` | Only REVIEW tasks |\n| `active` | IN PROGRESS + REVIEW |\n| `all` | Include DONE tasks |\n\nExample: `/master-plan:next bugs` or `/master-plan:next planned`\n\n## Workflow\n\n### Step 1: Find MASTER_PLAN.md\n\nSearch for the plan file in order:\n1. `docs/MASTER_PLAN.md`\n2. `MASTER_PLAN.md`\n3. `master-plan.md`\n4. `docs/master-plan.md`\n\nIf not found, tell the user: \"No MASTER_PLAN.md found. Run `/master-plan:task` to create your first task, or create one from the template.\"\n\n### Step 2: Parse Tasks\n\nRead the file and extract tasks from `###` headers matching this pattern:\n\n```\n### [optional ~~]TASK-123[optional ~~]: Title (STATUS)\n```\n\nRegex: `^###\\s+(~~)?((TASK|BUG|FEATURE|ROAD|IDEA|ISSUE|INQUIRY)-\\d+)(~~)?:\\s*(.+?)\\s*\\(([^)]+)\\)`\n\nFor each match, extract:\n- **ID**: e.g., `TASK-123`, `BUG-456`\n- **Title**: The text after `: ` and before ` (`\n- **Status**: Text in parentheses. Normalize:\n  - Contains \"DONE\", \"COMPLETE\", \"FIXED\", \"✅\", or has strikethrough → `DONE`\n  - Contains \"IN PROGRESS\", \"🔄\" → `IN PROGRESS`\n  - Contains \"REVIEW\", \"👀\" → `REVIEW`\n  - Contains \"PAUSED\", \"⏸️\" → `PAUSED`\n  - Otherwise → `PLANNED`\n- **Priority**: Look in the lines following the header for `**Priority**: P0-P3`. Default to P2 if not found.\n\n### Step 3: Check for Active Work\n\nLook for IN PROGRESS tasks first — these should be finished before starting new work.\n\nAlso check git status:\n```bash\ngit status --short\n```\n\nIf uncommitted changes exist, mention: \"You have uncommitted changes — consider committing or running `/master-plan:save` first.\"\n\n### Step 4: Sort and Filter\n\n**Default sort order** (what to START next):\n1. PLANNED first, then REVIEW, IN PROGRESS, PAUSED, DONE last\n2. Within same status: P0 → P1 → P2 → P3\n\n**If `$ARGUMENTS` contains a filter** (bugs, progress, planned, review, active), apply it before sorting.\n\n**Exclude DONE tasks** unless `$ARGUMENTS` contains `all`.\n\n### Step 5: Present Interactive Selection\n\nUse `AskUserQuestion` to let user pick from the top tasks:\n\n```\nAskUserQuestion({\n  questions: [{\n    question: \"Which task would you like to work on?\",\n    header: \"Task\",\n    multiSelect: false,\n    options: [\n      // Top 4 tasks, formatted as:\n      { label: \"TASK-XXX: Title here\", description: \"P0 · IN PROGRESS\" },\n      { label: \"BUG-YYY: Another task\", description: \"P1 · PLANNED\" },\n      // ...\n    ]\n  }]\n})\n```\n\n**Option formatting:**\n- Label: `{ID}: {title (max 40 chars)}`\n- Description: `{priority} · {status}`\n\nIf there are IN PROGRESS tasks, always show them first with a note: \"You have N task(s) in progress.\"\n\n### Step 6: Show Task Details\n\nWhen user selects a task, show the full section from MASTER_PLAN.md:\n- ID, title, status, priority\n- Description (everything between this `###` header and the next `###` or `##`)\n\n### Step 7: Offer Actions\n\nAfter showing task details, ask:\n\n```\nAskUserQuestion({\n  questions: [{\n    question: \"What would you like to do?\",\n    header: \"Action\",\n    multiSelect: false,\n    options: [\n      { label: \"Start working on this\", description: \"Update status to IN PROGRESS\" },\n      { label: \"Pick a different task\", description: \"Go back to task list\" },\n      { label: \"Just show context\", description: \"No status change\" }\n    ]\n  }]\n})\n```\n\nIf \"Start working on this\" is selected:\n1. Update the task's status to `IN PROGRESS` in MASTER_PLAN.md (all locations — see update rules below)\n2. Confirm: \"Started TASK-XXX. Ready to begin implementation.\"\n\n## MASTER_PLAN.md Update Rules\n\nTasks may appear in multiple locations. When updating status, check ALL of:\n\n1. **Summary/Roadmap table** — Update the status column\n2. **Detailed `###` section header** — Update `(STATUS)` in parentheses\n3. **Subtask bullet points** — Add strikethrough + ✅ if marking DONE\n\nAlways verify with a grep after updating.\n\n## Rules\n\n1. **Finish before starting** — Always highlight IN PROGRESS tasks first\n2. **P0 trumps all** — Critical issues come first regardless of status\n3. **Interactive selection** — Always use AskUserQuestion, never just print a list\n4. **Context on selection** — Always show full task details when picked\n5. **Action oriented** — Offer to start work immediately","tags":["next","master","plan","endlessblink","agent-skills","ai-workflow","claude-code","claude-code-plugin","master-plan","productivity","task-management"],"capabilities":["skill","source-endlessblink","skill-next","topic-agent-skills","topic-ai-workflow","topic-claude-code","topic-claude-code-plugin","topic-master-plan","topic-productivity","topic-task-management"],"categories":["master-plan"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/endlessblink/master-plan/next","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add endlessblink/master-plan","source_repo":"https://github.com/endlessblink/master-plan","install_from":"skills.sh"}},"qualityScore":"0.462","qualityRationale":"deterministic score 0.46 from registry signals: · indexed on github topic:agent-skills · 24 github stars · SKILL.md body (4,567 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-24T13:02:13.595Z","embedding":null,"createdAt":"2026-04-18T23:04:40.027Z","updatedAt":"2026-04-24T13:02:13.595Z","lastSeenAt":"2026-04-24T13:02:13.595Z","tsv":"'-123':166,189 '-456':191 '/master-plan':50,99,103,136,284 '1':108,118,299,513,555,587 '2':120,150,309,530,562,597 '3':122,244,570,608 '4':124,288,370,619 '40':399 '5':339,630 '6':425 '7':454 'action':456,472,631 'activ':90,247,326 'add':574 'also':263 'alway':410,579,591,611,623 'analyz':2,37 'anoth':388 'appear':545 'appli':327 'argument':67,68,318,335 'ask':461 'askuserquest':344,353,462,613 'back':494 'backlog':84 'bash':267 'begin':538 'bug':70,73,101,173,190,322,386 'bug-xxx':72 'bug-yyi':385 'bullet':572 'chang':273,279,505 'char':400 'check':245,264,552 'column':561 'come':603 'command':53 'commit':281 'complet':205 'confirm':531 'consid':280 'contain':203,211,216,219,319,336 'context':501,620 'creat':139,144 'critic':601 'd':179 'decid':29 'default':237,292 'descript':380,390,401,444,481,492,502 'detail':428,460,563,627 'differ':490 'docs/master-plan.md':125 'docs/master_plan.md':119 'done':96,204,210,307,332,578 'e.g':187 'everyth':445 'exampl':98 'exclud':331 'exist':274 'extract':157,185 'fals':367,474 'featur':174 'file':115,155 'filter':69,291,321 'find':109 'finish':258,588 'first':141,254,286,301,413,596,604 'fix':206 'follow':229 'format':372,394 'found':128,134,242 'full':436,625 'git':265,268 'go':493 'grep':583 'header':160,231,364,448,471,565 'highlight':592 'id':186,396,440 'idea':176 'immedi':637 'implement':539 'includ':95 'inquiri':178 'interact':21,48,341,609 'issu':177,602 'label':374,384,395,476,487,498 'last':308 'let':44,346 'like':360,468 'line':228 'list':497,618 'locat':525,548 'look':225,249 'main':52 'mark':577 'master-plan.md':123 'master_plan.md':12,38,110,121,133,439,523,540 'match':161,184 'max':398 'may':544 'mention':275 'multipl':547 'multiselect':366,473 'n':419 'never':614 'new':261 'next':1,6,33,36,51,62,66,100,104,298,451 'normal':202 'note':416 'offer':455,633 'one':145 'option':164,167,368,393,475 'order':117,294 'orient':632 'otherwis':222 'p0':235,313,381,598 'p0-p3':234 'p1':314,391 'p2':239,315 'p3':236,316 'parenthes':201,569 'pars':151 'pattern':163 'paus':220,221,306 'pick':4,47,59,348,488,629 'plan':81,83,105,114,223,300,324,392 'point':573 'present':20,340 'print':616 'prioriti':16,224,233,402,443 'priority/status':42 'progress':76,79,92,213,215,252,305,323,383,408,423,486,521,594 'question':354,355,463,464 'read':11,153 'readi':536 'regardless':605 'regex':170 'review':86,88,93,217,218,303,325 'road':175 'rule':528,542,586 'run':135,283 'save':285 'score':13,40 'search':111 'section':437,564 'see':526 'select':22,342,431,512,610,622 'session':27 'short':270 'show':411,426,434,458,500,624 'skill' 'skill-next' 'sort':289,293,330 'source-endlessblink' 'start':25,260,297,477,507,532,590,635 'status':18,169,198,266,269,312,403,442,483,504,518,551,560,567,607 'step':107,149,243,287,338,424,453 'strikethrough':209,575 'subtask':571 'summary/roadmap':556 'tabl':557 'tackl':32 'task':7,14,39,61,63,75,80,85,89,97,137,142,152,158,165,172,188,253,333,352,357,365,371,376,389,409,420,427,433,459,491,496,516,534,543,595,626 'task-xxx':375,533 'tell':129 'templat':148 'text':194,199 'titl':168,192,378,397,441 'top':351,369 'topic-agent-skills' 'topic-ai-workflow' 'topic-claude-code' 'topic-claude-code-plugin' 'topic-master-plan' 'topic-productivity' 'topic-task-management' 'trigger':49 'trump':599 'uncommit':272,278 'unless':334 'updat':482,514,527,541,550,558,566,585 'use':23,343,612 'user':46,131,347,430 'verifi':580 'within':310 'work':9,57,248,262,362,478,508,636 'workflow':106 'would':358,466 'xxx':74,377,535 'yyy':387","prices":[{"id":"d019eedc-7c7c-4b1d-af81-b6ccae334e33","listingId":"c4448655-2809-4741-97d7-d3489cd0c89f","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"endlessblink","category":"master-plan","install_from":"skills.sh"},"createdAt":"2026-04-18T23:04:40.027Z"}],"sources":[{"listingId":"c4448655-2809-4741-97d7-d3489cd0c89f","source":"github","sourceId":"endlessblink/master-plan/next","sourceUrl":"https://github.com/endlessblink/master-plan/tree/master/skills/next","isPrimary":false,"firstSeenAt":"2026-04-18T23:04:40.027Z","lastSeenAt":"2026-04-24T13:02:13.595Z"}],"details":{"listingId":"c4448655-2809-4741-97d7-d3489cd0c89f","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"endlessblink","slug":"next","github":{"repo":"endlessblink/master-plan","stars":24,"topics":["agent-skills","ai-workflow","claude-code","claude-code-plugin","master-plan","productivity","task-management"],"license":"mit","html_url":"https://github.com/endlessblink/master-plan","pushed_at":"2026-02-26T07:00:33Z","description":"AI-native task management for Claude Code. Track tasks in MASTER_PLAN.md — pick, save, ship.","skill_md_sha":"20695aff771fe80fdbae86903de72dd97c8a4030","skill_md_path":"skills/next/SKILL.md","default_branch":"master","skill_tree_url":"https://github.com/endlessblink/master-plan/tree/master/skills/next"},"layout":"multi","source":"github","category":"master-plan","frontmatter":{"name":"next","description":"Analyze and pick the next task to work on. Reads MASTER_PLAN.md, scores tasks by priority and status, and presents interactive selection. Use when starting a session or deciding what to tackle next."},"skills_sh_url":"https://skills.sh/endlessblink/master-plan/next"},"updatedAt":"2026-04-24T13:02:13.595Z"}}