[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6BV2G3ZAS76C40S3YBY6R61":3,"skill-same:01M6BV2G3ZAS76C40S3YBY6R61":75},{"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":23,"publishedAt":35,"linkOnly":36,"markdownContent":37,"markdownBody":38,"frontMatter":39,"refName":40,"commitSha":41,"skillDirectory":42,"forksCount":43,"repositoryHtmlUrl":44,"repositoryHomepageUrl":6,"ownerHtmlUrl":45,"ownerBlogUrl":46,"ownerDescription":47,"updatedAt":48,"install":49,"resources":62},"01M6BV2G3ZAS76C40S3YBY6R61","plannotator-setup-goal",null,"Create reviewed Codex goal setup packages for long-running \u002Fgoal work. Use when the user wants to turn an idea, backlog, project mission, or vague objective into durable goal files under a project goals slug folder, with Plannotator review gates for brief, narrative plan with acceptance criteria, verification, blockers, and the final \u002Fgoal prompt.","drn\u002Fdots","drn","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F885841?v=4","01M6BTZJR7B1RVQRJKP0S70DQS","Darren Cheng","01M6BTZJWXCK41P3Z50BV8KWD9",23,"MIT","https:\u002F\u002Fgithub.com\u002Fdrn\u002Fdots\u002Fblob\u002Fmaster\u002Fagents\u002Fskills\u002Fplannotator-setup-goal\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34],"setup","plannotator setup goal","review","codex","packages","create","acceptance","verification","brief","plannotator review","plan","2026-11-10 10:12:30",false,"---\nname: plannotator-setup-goal\ndescription: Create reviewed Codex goal setup packages for long-running \u002Fgoal work. Use when the user wants to turn an idea, backlog, project mission, or vague objective into durable goal files under a project goals slug folder, with Plannotator review gates for brief, narrative plan with acceptance criteria, verification, blockers, and the final \u002Fgoal prompt.\n---\n\n# Plannotator Setup Goal\n\n## Overview\n\nCreate a durable goal package in the current project at `goals\u002F\u003Cslug>\u002F` so Codex `\u002Fgoal` has a clear mission, guardrails, proof of done, and external memory. Use Plannotator as the user review UI: every critical document must be gated with `plannotator annotate \u003Cdocument.md> --gate` and revised until approved.\n\n## Workflow\n\n1. Confirm the working directory is the project root, or use the user-provided project directory.\n2. Gather enough context to name the goal, define the intended outcome, identify constraints, find likely project docs, and determine proof of done.\n3. Ask focused questions whenever the goal is vague, risky, too broad, missing a finish line, or missing verification. Do not proceed with guessed critical requirements.\n4. Create a slug from the goal name and scaffold `goals\u002F\u003Cslug>\u002F` with:\n\n   ```bash\n   python3 \u003Cskill_dir>\u002Fscripts\u002Fscaffold_goal.py --root . --slug \u003Cslug> --title \"\u003Cgoal title>\" --objective \"\u003Cone sentence outcome>\"\n   ```\n\n5. Draft and refine the critical documents in this order:\n   - `brief.md`\n   - `plan.md`\n   - `verification.md`\n   - `blockers.md`\n   - `goal-prompt.md`\n6. Gate each critical document with Plannotator before moving on:\n\n   ```bash\n   plannotator annotate goals\u002F\u003Cslug>\u002F\u003Cdocument.md> --gate\n   ```\n\n7. If Plannotator returns denial, comments, or markup, treat that as user feedback. Revise the document, then run the same gate again. Continue until approved.\n8. After all gates pass, present the final path and the exact `\u002Fgoal` prompt from `goal-prompt.md`.\n\n## Document Standards\n\n`brief.md` must state the mission, context, constraints, non-goals, ask-before rules, and concise done condition.\n\n`plan.md` is the central reviewed planning artifact. It must read like a clear solution narrative, not just a technical checklist. Include what is being built, why this approach is appropriate, how the solution will work, the main implementation slices, risks, phase boundaries, and acceptance criteria. Every important acceptance item needs observable evidence. For large missions, prefer several sequential goals over one endless goal.\n\n`verification.md` must list exact verification commands and manual checks. Include expected pass conditions and where evidence should be recorded.\n\n`blockers.md` must capture open questions, user-decision points, dangerous operations that require approval, and conditions that should pause the goal.\n\n`goal-prompt.md` must contain the final command the user can paste into Codex. It should reference the goal package files as the durable source of truth, tell Codex to append evidence to `progress.jsonl`, and define when to stop or ask.\n\n`progress.jsonl` is append-only evidence. Do not gate it. During execution, append concrete progress and proof, not summaries of intent.\n\n## Plannotator Rules\n\nUse Plannotator as the review surface, not as a passive preview. The command `plannotator annotate \u003Cdocument.md> --gate` presents the document to the user and captures approval or denial feedback.\n\nDo not skip gates for critical documents. Do not mark a document ready because it seems reasonable. The user must approve it through the gate.\n\nIf a document is denied, update the document from the captured feedback and rerun the gate. Keep the loop tight: one document, one review, one revision cycle.\n\n## Goal Prompt Rules\n\nWrite the final `\u002Fgoal` prompt as a compact product brief, not a raw todo dump.\n\nInclude:\n- outcome\n- relevant files\n- constraints and non-goals\n- plan acceptance criteria and evidence\n- verification commands\n- ask-before rules\n- instruction to use `goals\u002F\u003Cslug>\u002F` as the durable plan and append evidence to `progress.jsonl`\n\nAvoid:\n- open-ended improvement loops\n- mixed unrelated missions\n- vague words like \"improve\" without measurable proof\n- instructions to keep working forever\n- hidden assumptions that are not written into the files\n\n## Quality Checks\n\nBefore finalizing, verify:\n- The goal has one clear finish line.\n- The plan explains what, why, and how before listing work slices.\n- The plan acceptance criteria can be audited from real artifacts.\n- Verification commands are concrete.\n- Risky actions have ask-before rules.\n- The final `\u002Fgoal` prompt tells Codex where the goal files live.\n- All critical documents have passed Plannotator gates.\n","# Plannotator Setup Goal\n\n## Overview\n\nCreate a durable goal package in the current project at `goals\u002F\u003Cslug>\u002F` so Codex `\u002Fgoal` has a clear mission, guardrails, proof of done, and external memory. Use Plannotator as the user review UI: every critical document must be gated with `plannotator annotate \u003Cdocument.md> --gate` and revised until approved.\n\n## Workflow\n\n1. Confirm the working directory is the project root, or use the user-provided project directory.\n2. Gather enough context to name the goal, define the intended outcome, identify constraints, find likely project docs, and determine proof of done.\n3. Ask focused questions whenever the goal is vague, risky, too broad, missing a finish line, or missing verification. Do not proceed with guessed critical requirements.\n4. Create a slug from the goal name and scaffold `goals\u002F\u003Cslug>\u002F` with:\n\n   ```bash\n   python3 \u003Cskill_dir>\u002Fscripts\u002Fscaffold_goal.py --root . --slug \u003Cslug> --title \"\u003Cgoal title>\" --objective \"\u003Cone sentence outcome>\"\n   ```\n\n5. Draft and refine the critical documents in this order:\n   - `brief.md`\n   - `plan.md`\n   - `verification.md`\n   - `blockers.md`\n   - `goal-prompt.md`\n6. Gate each critical document with Plannotator before moving on:\n\n   ```bash\n   plannotator annotate goals\u002F\u003Cslug>\u002F\u003Cdocument.md> --gate\n   ```\n\n7. If Plannotator returns denial, comments, or markup, treat that as user feedback. Revise the document, then run the same gate again. Continue until approved.\n8. After all gates pass, present the final path and the exact `\u002Fgoal` prompt from `goal-prompt.md`.\n\n## Document Standards\n\n`brief.md` must state the mission, context, constraints, non-goals, ask-before rules, and concise done condition.\n\n`plan.md` is the central reviewed planning artifact. It must read like a clear solution narrative, not just a technical checklist. Include what is being built, why this approach is appropriate, how the solution will work, the main implementation slices, risks, phase boundaries, and acceptance criteria. Every important acceptance item needs observable evidence. For large missions, prefer several sequential goals over one endless goal.\n\n`verification.md` must list exact verification commands and manual checks. Include expected pass conditions and where evidence should be recorded.\n\n`blockers.md` must capture open questions, user-decision points, dangerous operations that require approval, and conditions that should pause the goal.\n\n`goal-prompt.md` must contain the final command the user can paste into Codex. It should reference the goal package files as the durable source of truth, tell Codex to append evidence to `progress.jsonl`, and define when to stop or ask.\n\n`progress.jsonl` is append-only evidence. Do not gate it. During execution, append concrete progress and proof, not summaries of intent.\n\n## Plannotator Rules\n\nUse Plannotator as the review surface, not as a passive preview. The command `plannotator annotate \u003Cdocument.md> --gate` presents the document to the user and captures approval or denial feedback.\n\nDo not skip gates for critical documents. Do not mark a document ready because it seems reasonable. The user must approve it through the gate.\n\nIf a document is denied, update the document from the captured feedback and rerun the gate. Keep the loop tight: one document, one review, one revision cycle.\n\n## Goal Prompt Rules\n\nWrite the final `\u002Fgoal` prompt as a compact product brief, not a raw todo dump.\n\nInclude:\n- outcome\n- relevant files\n- constraints and non-goals\n- plan acceptance criteria and evidence\n- verification commands\n- ask-before rules\n- instruction to use `goals\u002F\u003Cslug>\u002F` as the durable plan and append evidence to `progress.jsonl`\n\nAvoid:\n- open-ended improvement loops\n- mixed unrelated missions\n- vague words like \"improve\" without measurable proof\n- instructions to keep working forever\n- hidden assumptions that are not written into the files\n\n## Quality Checks\n\nBefore finalizing, verify:\n- The goal has one clear finish line.\n- The plan explains what, why, and how before listing work slices.\n- The plan acceptance criteria can be audited from real artifacts.\n- Verification commands are concrete.\n- Risky actions have ask-before rules.\n- The final `\u002Fgoal` prompt tells Codex where the goal files live.\n- All critical documents have passed Plannotator gates.\n",{"name":5,"description":7},"master","427f62a9fc82624977516767979411f885161ac5","agents\u002Fskills\u002Fplannotator-setup-goal",4,"https:\u002F\u002Fgithub.com\u002Fdrn\u002Fdots","https:\u002F\u002Fgithub.com\u002Fdrn","https:\u002F\u002Fdrn.dev","CTO & Co-Founder @thanx","2026-11-12 16:13:13",{"source":8,"skillName":5,"commands":50,"prompt":60,"zipAvailable":61},[51,54,57],{"tool":52,"command":53},"npx","npx skills add drn\u002Fdots --skill plannotator-setup-goal",{"tool":55,"command":56},"bunx","bunx skills add drn\u002Fdots --skill plannotator-setup-goal",{"tool":58,"command":59},"pnpm","pnpm dlx skills add drn\u002Fdots --skill plannotator-setup-goal","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fdrn\u002Fdots\u002Fblob\u002Fmaster\u002Fagents\u002Fskills\u002Fplannotator-setup-goal\u002FSKILL.md",true,[63,69],{"path":64,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":67,"sourceHtmlUrl":68},"agents\u002Fopenai.yaml","REFERENCE","参考文档",210,"https:\u002F\u002Fgithub.com\u002Fdrn\u002Fdots\u002Fblob\u002Fmaster\u002Fagents\u002Fskills\u002Fplannotator-setup-goal\u002Fagents\u002Fopenai.yaml",{"path":70,"resourceType":71,"resourceTypeDesc":72,"sizeBytes":73,"sourceHtmlUrl":74},"scripts\u002Fscaffold_goal.py","SCRIPT","脚本",6890,"https:\u002F\u002Fgithub.com\u002Fdrn\u002Fdots\u002Fblob\u002Fmaster\u002Fagents\u002Fskills\u002Fplannotator-setup-goal\u002Fscripts\u002Fscaffold_goal.py",[76,105,117,143,161,176],{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":85,"publishedAt":35},"01M70KJSG2P5Y3N95MGSGKJ8VA","batch-pr-review","Review a batch of pull requests together, describe every change in plain language, and build a private Claude artifact that eases human review, with a severity-tagged and verified findings list. Use when asked to review several PRs, a stack of PRs, PRs listed in a Slack thread or message, or to summarize a batch of PRs for a reviewer.","https:\u002F\u002Fgithub.com\u002Fdrn\u002Fdots\u002Fblob\u002Fmaster\u002Fagents\u002Fskills\u002Fbatch-pr-review\u002FSKILL.md",[82],{"categoryNo":83,"categoryName":84,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000005","邮件与沟通",[86,26,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104],"batch pr review","pr review","pr","batch","reviewer","when","parse","scripts","human","artifact","message","write","read","stack","gh pr","Bash","change","pull requests","slack",{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":35},"01M6BV26Y6GTDMQZYXFRWKEC08","plannotator-annotate","Open Plannotator's annotation UI for a markdown file, converted HTML file, URL, or folder and then respond to the returned annotations.","https:\u002F\u002Fgithub.com\u002Fdrn\u002Fdots\u002Fblob\u002Fmaster\u002Fagents\u002Fskills\u002Fplannotator-annotate\u002FSKILL.md",[],[112,113,114,115,116],"plannotator annotate","markdown","open","ui","file",{"skillNo":118,"name":119,"nameZh":6,"description":120,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":121,"categories":122,"keywords":124,"publishedAt":35},"01M6BV44RGGTRRFGWMYCR3BQ1P","write-skill","Create or improve a Claude Code skill\u002Fslash command with best practices for structure, dynamic context, and safety. Use for creating new skills, improving existing ones, or learning skill authoring.","https:\u002F\u002Fgithub.com\u002Fdrn\u002Fdots\u002Fblob\u002Fmaster\u002Fagents\u002Fskills\u002Fwrite-skill\u002FSKILL.md",[123],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[97,125,126,127,128,129,130,131,132,29,133,134,135,136,137,138,139,140,141,142],"write skill","code","with","authoring","code skill","skill authoring","structure","claude code skill","use","context","best practices","command","improve","learning","Safety","for","new","Existing",{"skillNo":144,"name":145,"nameZh":6,"description":146,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":147,"categories":148,"keywords":149,"publishedAt":35},"01M6BV4390BFK30F1T51SAJPAV","wrapup","End-of-session checklist that detects loose ends — uncommitted changes, unmerged branches, learnings to capture, handoffs needed — and routes to the right skills. Use for session closeout, wrapping up, end of day, or \"anything else to capture\".","https:\u002F\u002Fgithub.com\u002Fdrn\u002Fdots\u002Fblob\u002Fmaster\u002Fagents\u002Fskills\u002Fwrapup\u002FSKILL.md",[],[145,140,150,151,152,153,154,155,156,157,133,158,159,160],"session","changes","end of day","end","branches","learnings","checklist","up","session closeout","closeout","capture",{"skillNo":162,"name":163,"nameZh":6,"description":164,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":165,"categories":166,"keywords":167,"publishedAt":35},"01M6BV41ZZ051JX2B3CB5WARZM","tts","Read text aloud using text-to-speech. Use when the user says \"speak to me\", \"read to me\", \"read this aloud\", \"say this\", \"speak the summary\", or asks to hear something spoken.","https:\u002F\u002Fgithub.com\u002Fdrn\u002Fdots\u002Fblob\u002Fmaster\u002Fagents\u002Fskills\u002Ftts\u002FSKILL.md",[],[163,168,169,170,98,91,171,172,173,174,133,175],"speak","text","speech","text-to-speech","me","summary","say","user",{"skillNo":177,"name":178,"nameZh":6,"description":179,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":180,"categories":181,"keywords":185,"publishedAt":35},"01M6BV3ZV9N13PZ1EDZPJ4BEJX","test","Intelligent test runner that targets changed code and identifies coverage gaps. Use for running tests, finding coverage gaps, or testing changed code.","https:\u002F\u002Fgithub.com\u002Fdrn\u002Fdots\u002Fblob\u002Fmaster\u002Fagents\u002Fskills\u002Ftest\u002FSKILL.md",[182],{"categoryNo":183,"categoryName":184,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",[178,133,186,187,140,188,189,190,191,192,126,193,194,195],"running","gaps","targets","tests","runner","coverage","running tests","coverage gaps","test runner","testing"]