[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6J4T2N7EFEXBQ58MEF8NF7T":3,"skill-same:01M6J4T2N7EFEXBQ58MEF8NF7T":86},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":28,"publishedAt":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":48,"commitSha":49,"skillDirectory":50,"forksCount":51,"repositoryHtmlUrl":52,"repositoryHomepageUrl":53,"ownerHtmlUrl":54,"ownerBlogUrl":55,"ownerDescription":56,"updatedAt":57,"install":58,"resources":71},"01M6J4T2N7EFEXBQ58MEF8NF7T","planr-plan-review",null,"Review an OpenPlanr plan for product, engineering, design, and developer-experience problems. Use after planning and before implementation to improve the plan.","openplanr\u002FOpenPlanr","openplanr","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F273764861?v=4","01M6J4PHHBPM1ATKH7TXR1AZMB","OpenPlanr","01M6J4PHNQ7FWP1CC3JGNVBQ8N",6,"MIT","https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr\u002Fblob\u002Fmain\u002Fskills\u002Fplanr-plan-review\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40,41,42],"planr plan review","review","plan review","plan","planr plan","planning","for","improve","design","use","product","implementation","engineering","developer","2026-11-10 10:12:30",false,"---\nname: planr-plan-review\ndescription: Review an OpenPlanr plan for product, engineering, design, and developer-experience problems. Use after planning and before implementation to improve the plan.\nlicense: MIT\n---\n\n# OpenPlanr Plan Review\n\nReview the plan as a senior engineer would before implementation. Read the plan\nand the files it names, plus `AGENTS.md` and `CLAUDE.md` when tracked, in one\nbatch. Expand only for a missing contract, a dependency or a contradiction, and\nstop when each claim has evidence or a named gap.\n\nLead with one verdict: `ready`, `ready with improvements` or `needs revision`.\nUse `needs revision` only while a must-fix remains.\n\n- **Must fix**: what would make the implementation wrong or unsafe. Give each\n  one its evidence (the plan section plus the file and line, or the quoted\n  text, that shows it) and the change that resolves it. A concern without\n  evidence is an improvement or an open question, never a must-fix.\n- **Improvements**: worthwhile, non-blocking changes.\n- **Decisions and assumptions**: unresolved choices, each with a recommended\n  default. Ask only when a missing answer would change the verdict; otherwise\n  state the assumption and continue.\n\nEnd with the smallest useful next step. Link the reviewed plan. Follow\n[the shared return rules](references\u002Freturn-contract.md).\n","# OpenPlanr Plan Review\n\nReview the plan as a senior engineer would before implementation. Read the plan\nand the files it names, plus `AGENTS.md` and `CLAUDE.md` when tracked, in one\nbatch. Expand only for a missing contract, a dependency or a contradiction, and\nstop when each claim has evidence or a named gap.\n\nLead with one verdict: `ready`, `ready with improvements` or `needs revision`.\nUse `needs revision` only while a must-fix remains.\n\n- **Must fix**: what would make the implementation wrong or unsafe. Give each\n  one its evidence (the plan section plus the file and line, or the quoted\n  text, that shows it) and the change that resolves it. A concern without\n  evidence is an improvement or an open question, never a must-fix.\n- **Improvements**: worthwhile, non-blocking changes.\n- **Decisions and assumptions**: unresolved choices, each with a recommended\n  default. Ask only when a missing answer would change the verdict; otherwise\n  state the assumption and continue.\n\nEnd with the smallest useful next step. Link the reviewed plan. Follow\n[the shared return rules](references\u002Freturn-contract.md).\n",{"name":5,"license":15,"description":7},"main","2e652da8c7d9983e0ad05bf1e27c683914ce56a1","skills\u002Fplanr-plan-review",1,"https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr","https:\u002F\u002Fopenplanr.dev","https:\u002F\u002Fgithub.com\u002Fopenplanr","https:\u002F\u002Fopenplanr.dev\u002F","Close the loop from intent to delivery. The open harness around your coding agent.","2026-11-12 12:17:02",{"source":8,"skillName":5,"commands":59,"prompt":69,"zipAvailable":70},[60,63,66],{"tool":61,"command":62},"npx","npx skills add openplanr\u002FOpenPlanr --skill planr-plan-review",{"tool":64,"command":65},"bunx","bunx skills add openplanr\u002FOpenPlanr --skill planr-plan-review",{"tool":67,"command":68},"pnpm","pnpm dlx skills add openplanr\u002FOpenPlanr --skill planr-plan-review","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr\u002Fblob\u002Fmain\u002Fskills\u002Fplanr-plan-review\u002FSKILL.md",true,[72,78,82],{"path":73,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":76,"sourceHtmlUrl":77},"agents\u002Fopenai.yaml","REFERENCE","参考文档",388,"https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr\u002Fblob\u002Fmain\u002Fskills\u002Fplanr-plan-review\u002Fagents\u002Fopenai.yaml",{"path":79,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":80,"sourceHtmlUrl":81},"openplanr.skill.json",698,"https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr\u002Fblob\u002Fmain\u002Fskills\u002Fplanr-plan-review\u002Fopenplanr.skill.json",{"path":83,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":84,"sourceHtmlUrl":85},"references\u002Freturn-contract.md",676,"https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr\u002Fblob\u002Fmain\u002Fskills\u002Fplanr-plan-review\u002Freferences\u002Freturn-contract.md",[87,96,113,133,155,170],{"skillNo":88,"name":37,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":89,"categories":90,"keywords":95,"publishedAt":43},"01M70XD1RYQC5160MRRCPTGA2K","https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr\u002Fblob\u002Fmain\u002Ftests\u002Frelease-train\u002Ffixtures\u002Ffigma\u002Fskills\u002Fdesign\u002FSKILL.md",[91,92],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":93,"categoryName":94,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000032","设计师",[37],{"skillNo":97,"name":98,"nameZh":6,"description":99,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":100,"categories":101,"keywords":102,"publishedAt":43},"01M6J4V75T3VW91HJQ5ZD5SFW0","planr-sync","Audit OpenPlanr planning artifacts for graph and protocol drift. Use when statuses, references, schemas, or generated planning views may be inconsistent.","https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr\u002Fblob\u002Fmain\u002Fskills\u002Fplanr-sync\u002FSKILL.md",[],[103,104,105,106,107,108,109,110,111,112,38,35,34],"sync","planr sync","generated","when","graph","protocol","audit","references","drift","artifacts",{"skillNo":114,"name":115,"nameZh":6,"description":116,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":117,"categories":118,"keywords":119,"publishedAt":43},"01M6J4V38R89DYYA4AAN312MNZ","planr-status","Inspect project delivery or one feature's pipeline status without changing state. Use when the user asks what is done, pending, blocked, or next.","https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr\u002Fblob\u002Fmain\u002Fskills\u002Fplanr-status\u002FSKILL.md",[],[120,121,122,123,124,38,125,126,127,128,129,130,106,131,132],"status","planr status","next","state","done","inspect","pipeline","project","feature","delivery","pending","pipeline status","user",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":140,"publishedAt":43},"01M6J4TYGNBZG2YSSHCY8BASFB","planr-sprint","Refine every open backlog item against the code and the calendar, refute the picks, and select a sprint that fits capacity and the release cut. Use before a cut or sprint; not for decomposing one specification or reporting status.","https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr\u002Fblob\u002Fmain\u002Fskills\u002Fplanr-sprint\u002FSKILL.md",[139],{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},[141,142,143,144,38,145,146,35,120,147,148,149,150,151,152,153,154],"planr sprint","sprint","release","capacity","release cut","backlog","refine","reporting","calendar","cut","specification","code","open","select",{"skillNo":156,"name":157,"nameZh":6,"description":158,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":159,"categories":160,"keywords":161,"publishedAt":43},"01M6J4TT7X6GV9A25JHSMKEMHJ","planr-spec","Shape vague product or engineering intent into a clear, measurable Protocol-compatible specification grounded in the current repository. Use when requirements need clarification before planning or implementation.","https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr\u002Fblob\u002Fmain\u002Fskills\u002Fplanr-spec\u002FSKILL.md",[],[162,163,164,38,34,165,41,106,40,166,108,167,168,39,169,151],"spec","planr spec","requirements","vague","clear","shape","repository","intent",{"skillNo":171,"name":172,"nameZh":6,"description":173,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":174,"categories":175,"keywords":176,"publishedAt":43},"01M6J4TNYE49SE8PBNNWJKK1CN","planr-ship","Implement an OpenPlanr plan, specification, task, or clearly stated request end to end in the current repository. Use when the user asks to build, implement, fix, finish, or ship local work, or to plan and implement an accepted change. Invoke before editing files for the requested change. Not for planning only, landing, release, or work handed to another coding agent.","https:\u002F\u002Fgithub.com\u002Fopenplanr\u002FOpenPlanr\u002Fblob\u002Fmain\u002Fskills\u002Fplanr-ship\u002FSKILL.md",[],[177,178,179,180,181,182,183,184,32,185,186,106,187,188,189,35,34,190,191,143,168,192,151,193],"ship","planr ship","local","only","end","fix","coding agent","work","plan and implement","request","invoke","landing","editing","coding","finish","files","change"]