{"id":"aed445cd-b2e3-4901-bbaf-2b1c67d19271","shortId":"t5KCkA","kind":"skill","title":"recipe-update-doc","tagline":"Update existing design documents (Design Doc / PRD / ADR) with review","description":"**Context**: Dedicated to updating existing design documents.\n\n## Orchestrator Definition\n\n**Core Identity**: \"I am an orchestrator.\" (see subagents-orchestration-guide skill)\n\n**First Action**: Register Steps 1-6 using TaskCreate before any execution.\n\n**Execution Protocol**:\n1. **Delegate all work through Agent tool** — invoke sub-agents, pass deliverable paths between them, and report results (permitted tools: see subagents-orchestration-guide \"Orchestrator's Permitted Tools\")\n2. **Execute update flow**:\n   - Identify target → Clarify changes → Update document → Review → Consistency check\n   - **Stop at every `[Stop: ...]` marker** → Wait for user approval before proceeding\n3. **Scope**: Complete when updated document receives approval\n\n**CRITICAL**: Execute document-reviewer and all stopping points — each serves as a quality gate for document accuracy.\n\n## Workflow Overview\n\n```\nTarget document → [Stop: Confirm changes]\n                        ↓\n              technical-designer / technical-designer-frontend / prd-creator (update mode)\n                        ↓ (Design Doc only)\n              code-verifier → document-reviewer → [Stop: Review approval]\n                        ↓ (Design Doc only)\n              design-sync → [Stop: Final approval]\n```\n\n## Scope Boundaries\n\n**Included in this skill**:\n- Existing document identification and selection\n- Change content clarification with user\n- Document update with appropriate agent (update mode)\n- Document review with document-reviewer\n- Consistency verification with design-sync (Design Doc only)\n\n**Out of scope** (redirect to appropriate skills):\n- New requirement analysis\n- Work planning or implementation\n\n**Responsibility Boundary**: This skill completes with updated document approval.\n\nTarget document: $ARGUMENTS\n\n## Execution Flow\n\n### Step 1: Target Document Identification\n\n```bash\n# Check existing documents\nls docs/design/*.md docs/prd/*.md docs/adr/*.md 2>/dev/null | grep -v template\n```\n\n**Decision flow**:\n\n| Situation | Action |\n|-----------|--------|\n| $ARGUMENTS specifies a path | Use specified document |\n| $ARGUMENTS describes a topic | Search documents matching the topic |\n| Multiple candidates found | Present options with AskUserQuestion |\n| No documents found | Report and end (document creation is out of scope) |\n\n### Step 2: Document Type and Layer Determination\n\nDetermine type from document path, then determine the layer to select the correct update agent:\n\n| Path Pattern | Type | Update Agent | Notes |\n|-------------|------|--------------|-------|\n| `docs/design/*.md` | Design Doc | technical-designer or technical-designer-frontend | See layer detection below |\n| `docs/prd/*.md` | PRD | prd-creator | - |\n| `docs/adr/*.md` | ADR | technical-designer or technical-designer-frontend | See layer detection below |\n\n**Layer detection** (for Design Doc and ADR):\nRead the document and determine its layer from content signals:\n- **Frontend** (→ technical-designer-frontend): Document title/scope mentions React, components, UI, frontend; or file contains component hierarchy, state management, UI interactions\n- **Backend** (→ technical-designer): All other cases (API, data layer, business logic, infrastructure)\n\n**ADR Update Guidance**:\n- **Minor changes** (clarification, typo fix, small scope adjustment): Update the existing ADR file\n- **Major changes** (decision reversal, significant scope change): Create a new ADR that supersedes the original\n\n### Step 3: Change Content Clarification [Stop]\n\nUse AskUserQuestion to clarify what changes are needed:\n- What sections need updating\n- Reason for the change (bug fix findings, spec change, review feedback, etc.)\n- Expected outcome after the update\n\nConfirm understanding of changes with user before proceeding.\n\n### Step 4: Document Update\n\nInvoke the update agent determined in Step 2:\n```\nsubagent_type: [Update Agent from Step 2]\ndescription: \"Update [Type from Step 2]\"\nprompt: |\n  Operation Mode: update\n  Existing Document: [path from Step 1]\n\n  ## Changes Required\n  [Changes clarified in Step 3]\n\n  Update the document to reflect the specified changes.\n  Add change history entry.\n```\n\n### Step 5: Document Review [Stop]\n\n**For Design Doc updates only**: Before document-reviewer, invoke code-verifier:\n```\nsubagent_type: code-verifier\ndescription: \"Verify updated Design Doc\"\nprompt: |\n  doc_type: design-doc\n  document_path: [path from Step 1]\n  Verify the updated Design Doc against current codebase.\n\n  Verification focus: Pay special attention to literal identifier referential\n  integrity in the updated sections (paths, endpoints, type names, config keys).\n```\n\n**Store output as**: `$CODE_VERIFICATION_OUTPUT`\n\nInvoke document-reviewer:\n```\nsubagent_type: document-reviewer\ndescription: \"Review updated document\"\nprompt: |\n  Review the following updated document.\n\n  doc_type: [Design Doc / PRD / ADR]\n  target: [path from Step 1]\n  mode: standard\n  code_verification: $CODE_VERIFICATION_OUTPUT (Design Doc only, omit for PRD/ADR)\n\n  Focus on:\n  - Consistency of updated sections with rest of document\n  - No contradictions introduced by changes\n  - Completeness of change history\n```\n\n**Store output as**: `$STEP_5_OUTPUT`\n\n**On review result**:\n- Approved → Proceed to Step 6\n- Needs revision → Return to Step 4 with the following prompt (max 2 iterations):\n  ```\n  subagent_type: [Update Agent from Step 2]\n  description: \"Revise [Type from Step 2]\"\n  prompt: |\n    Operation Mode: update\n    Existing Document: [path from Step 1]\n\n    ## Review Feedback to Address\n    $STEP_5_OUTPUT\n\n    Address each issue raised in the review feedback.\n  ```\n- **After 2 rejections** → Flag for human review, present accumulated feedback to user and end\n\nPresent review result to user for approval.\n\n### Step 6: Consistency Verification (Design Doc only) [Stop]\n\n**Skip condition**: Document type is PRD or ADR → Proceed to completion.\n\nFor Design Doc, invoke design-sync:\n```\nsubagent_type: design-sync\ndescription: \"Verify consistency\"\nprompt: |\n  Verify consistency of the updated Design Doc with other design documents.\n\n  Updated document: [path from Step 1]\n```\n\n**On consistency result**:\n- No conflicts → Present result to user for final approval\n- Conflicts detected → Present conflicts to user with AskUserQuestion:\n  - A: Return to Step 4 to resolve conflicts in this document\n  - B: End and address conflicts separately\n\n## Error Handling\n\n| Error | Action |\n|-------|--------|\n| Target document not found | Report and end (document creation is out of scope) |\n| Sub-agent update fails | Log failure, present error to user, retry once |\n| Review rejects after 2 revisions | Stop loop, flag for human intervention |\n| design-sync detects conflicts | Present to user for resolution decision |\n\n## Completion Criteria\n\n- [ ] Identified target document\n- [ ] Clarified change content with user\n- [ ] Updated document with appropriate agent (update mode)\n- [ ] Executed code-verifier before document-reviewer (Design Doc only)\n- [ ] Executed document-reviewer and addressed feedback\n- [ ] Executed design-sync for consistency verification (Design Doc only)\n- [ ] Obtained user approval for updated document\n\n## Output Example\nDocument update completed.\n- Updated document: docs/design/[document-name].md\n- Approval status: User approved","tags":["recipe","update","doc","claude","code","workflows","shinpr","agent-skills","agentic-ai","ai-agents","automation","claude-code"],"capabilities":["skill","source-shinpr","skill-recipe-update-doc","topic-agent-skills","topic-agentic-ai","topic-ai-agents","topic-automation","topic-claude-code","topic-claude-code-plugin","topic-code-quality","topic-developer-tools","topic-development-workflow","topic-llm-orchestration","topic-productivity","topic-prompt-engineering"],"categories":["claude-code-workflows"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/shinpr/claude-code-workflows/recipe-update-doc","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add shinpr/claude-code-workflows","source_repo":"https://github.com/shinpr/claude-code-workflows","install_from":"skills.sh"}},"qualityScore":"0.613","qualityRationale":"deterministic score 0.61 from registry signals: · indexed on github topic:agent-skills · 327 github stars · SKILL.md body (7,314 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-05-02T18:53:53.187Z","embedding":null,"createdAt":"2026-04-18T22:03:17.592Z","updatedAt":"2026-05-02T18:53:53.187Z","lastSeenAt":"2026-05-02T18:53:53.187Z","tsv":"'-6':41 '/dev/null':252 '1':40,49,236,519,578,642,724,812 '2':79,251,296,496,503,509,700,708,714,741,883 '3':103,443,526 '4':486,694,837 '5':540,679,730 '6':688,762 'accumul':748 'accuraci':128 'action':37,259,853 'add':535 'address':728,732,847,935 'adjust':421 'adr':12,347,366,411,425,437,637,776 'agent':54,59,189,316,321,492,500,705,869,916 'analysi':216 'api':405 'appropri':188,212,915 'approv':100,110,159,168,229,684,760,824,949,965,968 'argument':232,260,267 'askuserquest':282,449,832 'attent':591 'b':844 'backend':398 'bash':240 'boundari':170,222 'bug':464 'busi':408 'candid':277 'case':404 'chang':86,135,180,415,428,433,444,453,463,468,480,520,522,534,536,670,673,908 'check':91,241 'clarif':182,416,446 'clarifi':85,451,523,907 'code':152,555,560,610,645,647,921 'code-verifi':151,554,559,920 'codebas':586 'complet':105,225,671,779,902,957 'compon':386,392 'condit':770 'config':605 'confirm':134,477 'conflict':817,825,828,840,848,895 'consist':90,198,658,763,794,797,814,942 'contain':391 'content':181,375,445,909 'context':15 'contradict':667 'core':24 'correct':314 'creat':434 'creation':290,862 'creator':145,344 'criteria':903 'critic':111 'current':585 'data':406 'decis':256,429,901 'dedic':16 'definit':23 'deleg':50 'deliver':61 'describ':268 'descript':504,562,622,709,792 'design':7,9,20,138,141,148,160,164,202,204,325,329,333,350,354,363,380,401,545,565,571,582,634,650,765,781,785,790,801,805,892,927,939,944 'design-doc':570 'design-sync':163,201,784,789,891,938 'detect':337,358,361,826,894 'determin':301,302,308,371,493 'doc':4,10,149,161,205,326,364,546,566,568,572,583,632,635,651,766,782,802,928,945 'docs/adr':249,345 'docs/design':245,323,960 'docs/prd':247,339 'document':8,21,88,108,114,127,132,155,176,185,192,196,228,231,238,243,266,272,284,289,297,305,369,382,487,515,529,541,551,573,615,620,625,631,665,720,771,806,808,843,855,861,906,913,925,932,952,955,959,962 'document-nam':961 'document-review':113,154,195,550,614,619,924,931 'end':288,753,845,860 'endpoint':602 'entri':538 'error':850,852,875 'etc':471 'everi':94 'exampl':954 'execut':46,47,80,112,233,919,930,937 'exist':6,19,175,242,424,514,719 'expect':472 'fail':871 'failur':873 'feedback':470,726,739,749,936 'file':390,426 'final':167,823 'find':466 'first':36 'fix':418,465 'flag':743,887 'flow':82,234,257 'focus':588,656 'follow':629,697 'found':278,285,857 'frontend':142,334,355,377,381,388 'gate':125 'grep':253 'guid':34,74 'guidanc':413 'handl':851 'hierarchi':393 'histori':537,674 'human':745,889 'ident':25 'identif':177,239 'identifi':83,594,904 'implement':220 'includ':171 'infrastructur':410 'integr':596 'interact':397 'intervent':890 'introduc':668 'invok':56,489,553,613,783 'issu':734 'iter':701 'key':606 'layer':300,310,336,357,360,373,407 'liter':593 'log':872 'logic':409 'loop':886 'ls':244 'major':427 'manag':395 'marker':96 'match':273 'max':699 'md':246,248,250,324,340,346,964 'mention':384 'minor':414 'mode':147,191,512,643,717,918 'multipl':276 'name':604,963 'need':455,458,689 'new':214,436 'note':322 'obtain':947 'omit':653 'oper':511,716 'option':280 'orchestr':22,29,33,73,75 'origin':441 'outcom':473 'output':608,612,649,676,680,731,953 'overview':130 'pass':60 'path':62,263,306,317,516,574,575,601,639,721,809 'pattern':318 'pay':589 'permit':68,77 'plan':218 'point':119 'prd':11,144,341,343,636,774 'prd-creator':143,342 'prd/adr':655 'present':279,747,754,818,827,874,896 'proceed':102,484,685,777 'prompt':510,567,626,698,715,795 'protocol':48 'qualiti':124 'rais':735 'react':385 'read':367 'reason':460 'receiv':109 'recip':2 'recipe-update-doc':1 'redirect':210 'referenti':595 'reflect':531 'regist':38 'reject':742,881 'report':66,286,858 'requir':215,521 'resolut':900 'resolv':839 'respons':221 'rest':663 'result':67,683,756,815,819 'retri':878 'return':691,834 'revers':430 'review':14,89,115,156,158,193,197,469,542,552,616,621,623,627,682,725,738,746,755,880,926,933 'revis':690,710,884 'scope':104,169,209,294,420,432,866 'search':271 'section':457,600,661 'see':30,70,335,356 'select':179,312 'separ':849 'serv':121 'signal':376 'signific':431 'situat':258 'skill':35,174,213,224 'skill-recipe-update-doc' 'skip':769 'small':419 'source-shinpr' 'spec':467 'special':590 'specifi':261,265,533 'standard':644 'state':394 'status':966 'step':39,235,295,442,485,495,502,508,518,525,539,577,641,678,687,693,707,713,723,729,761,811,836 'stop':92,95,118,133,157,166,447,543,768,885 'store':607,675 'sub':58,868 'sub-ag':57,867 'subag':32,72,497,557,617,702,787 'subagents-orchestration-guid':31,71 'supersed':439 'sync':165,203,786,791,893,940 'target':84,131,230,237,638,854,905 'taskcreat':43 'technic':137,140,328,332,349,353,379,400 'technical-design':136,327,348,399 'technical-designer-frontend':139,331,352,378 'templat':255 'title/scope':383 'tool':55,69,78 'topic':270,275 'topic-agent-skills' 'topic-agentic-ai' 'topic-ai-agents' 'topic-automation' 'topic-claude-code' 'topic-claude-code-plugin' 'topic-code-quality' 'topic-developer-tools' 'topic-development-workflow' 'topic-llm-orchestration' 'topic-productivity' 'topic-prompt-engineering' 'type':298,303,319,498,506,558,569,603,618,633,703,711,772,788 'typo':417 'ui':387,396 'understand':478 'updat':3,5,18,81,87,107,146,186,190,227,315,320,412,422,459,476,488,491,499,505,513,527,547,564,581,599,624,630,660,704,718,800,807,870,912,917,951,956,958 'use':42,264,448 'user':99,184,482,751,758,821,830,877,898,911,948,967 'v':254 'verif':199,587,611,646,648,764,943 'verifi':153,556,561,563,579,793,796,922 'wait':97 'work':52,217 'workflow':129","prices":[{"id":"a0f059b5-33e4-495f-81cc-c78931d357f6","listingId":"aed445cd-b2e3-4901-bbaf-2b1c67d19271","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"shinpr","category":"claude-code-workflows","install_from":"skills.sh"},"createdAt":"2026-04-18T22:03:17.592Z"}],"sources":[{"listingId":"aed445cd-b2e3-4901-bbaf-2b1c67d19271","source":"github","sourceId":"shinpr/claude-code-workflows/recipe-update-doc","sourceUrl":"https://github.com/shinpr/claude-code-workflows/tree/main/skills/recipe-update-doc","isPrimary":false,"firstSeenAt":"2026-04-18T22:03:17.592Z","lastSeenAt":"2026-05-02T18:53:53.187Z"}],"details":{"listingId":"aed445cd-b2e3-4901-bbaf-2b1c67d19271","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"shinpr","slug":"recipe-update-doc","github":{"repo":"shinpr/claude-code-workflows","stars":327,"topics":["agent-skills","agentic-ai","ai-agents","automation","claude-code","claude-code-plugin","code-quality","developer-tools","development-workflow","llm-orchestration","productivity","prompt-engineering","skills"],"license":"mit","html_url":"https://github.com/shinpr/claude-code-workflows","pushed_at":"2026-05-02T15:39:17Z","description":"Production-ready development workflows for Claude Code, powered by specialized AI agents.","skill_md_sha":"bc7e4dd2be98a5d05d63afe404df292d8ce162f4","skill_md_path":"skills/recipe-update-doc/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/shinpr/claude-code-workflows/tree/main/skills/recipe-update-doc"},"layout":"multi","source":"github","category":"claude-code-workflows","frontmatter":{"name":"recipe-update-doc","description":"Update existing design documents (Design Doc / PRD / ADR) with review"},"skills_sh_url":"https://skills.sh/shinpr/claude-code-workflows/recipe-update-doc"},"updatedAt":"2026-05-02T18:53:53.187Z"}}