{"id":"cb99b41e-1ef2-42e5-965a-b95ee2cc6d03","shortId":"daUdRj","kind":"skill","title":"utility-pm-changelog-curator","tagline":"Draft CHANGELOG entries from git log via the pm-changelog-curator sub-agent. Dispatches natively on Claude Code with the pm-skills plugin (invokes @agent-pm-changelog-curator); on non-Claude clients (Codex CLI, Cursor, Windsurf, Copilot, Gemini CLI) reads subagents/pm-changelog-c","description":"<!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->\n# PM Changelog Curator (Dispatch Skill)\n\nCross-client dispatch wrapper for the `pm-changelog-curator` sub-agent. Detects runtime; dispatches to the native sub-agent on Claude Code; reads `subagents/pm-changelog-curator.md` and executes inline on non-Claude clients.\n\n## When to Use\n\n- You are preparing a release and want a CHANGELOG draft from git log between two tags\n- You are running on a non-Claude AI client without native pm-changelog-curator sub-agent support\n- You want a draft that respects pm-skills CHANGELOG hygiene rules (no internal-notes references, no em-dashes, public paths only) without manually applying them\n\n## When NOT to Use\n\n- You want to commit CHANGELOG entries directly (this skill produces a draft for review, not a commit)\n- You want to review a PM artifact -> use `utility-pm-critic` instead\n- You want a repo-wide governance audit -> use `utility-pm-skill-auditor`\n- You want a full guided release flow -> use `utility-pm-release-conductor` (which chains to this skill at gate G2)\n\n## Instructions\n\n**Runtime detection step.** Determine which AI client is invoking this skill.\n\n### If you are running in Claude Code with the pm-skills plugin installed\n\nInvoke `@agent-pm-changelog-curator` with the user's arguments. Pass `--since-tag`, `--target-version`, `--committed-only` from `$ARGUMENTS` if present. Return the sub-agent's draft to the user.\n\n### If you are running in any other AI client\n\nCodex CLI, Cursor, Windsurf, Copilot, Gemini CLI, or any other client without native pm-skills plugin sub-agent support:\n\n1. Read the canonical sub-agent definition at `subagents/pm-changelog-curator.md`\n2. Execute the system prompt body in that file as your operating instructions\n3. Run the 8-step drafting flow documented in the sub-agent definition (establish range -> read hygiene rules -> check working tree -> enumerate commits -> classify -> group -> rewrite -> determine target version -> emit draft)\n4. Apply `--since-tag`, `--target-version`, and `--committed-only` arguments from `$ARGUMENTS`\n5. Return the layered output per master plan D26 (full CHANGELOG draft + Status Summary + Status YAML)\n\n## Cross-Client Notes\n\nThe dispatch skill requires the AI client to:\n\n1. Execute Bash for `git log`, `git describe`, and `git status` invocations\n2. Read CLAUDE.md hygiene rules and existing CHANGELOG.md format reference\n3. Read the canonical sub-agent definition file\n4. Treat the agent body as operating instructions\n\nSee [Sub-Agent Compatibility Matrix](../../docs/reference/sub-agent-compatibility.md) for the canonical cross-client status. Summary for this skill as of v2.16.0: PRODUCTION on Claude Code + Codex CLI (Codex CLI successfully ran git log + read CLAUDE.md hygiene rules + drafted clean CHANGELOG entries + correct dirty-tree refusal); EXPERIMENTAL on Cursor / Windsurf / Copilot CLI / Gemini CLI. If a client is unreliable, fall back to manual `git log` + manual drafting using CLAUDE.md as the hygiene reference.\n\n## Reference Files\n\n- Canonical sub-agent definition: [`subagents/pm-changelog-curator.md`](../../subagents/pm-changelog-curator.md)\n- Behavioral spec: [`docs/internal/release-plans/v2.16.0/spec_pm-changelog-curator.md`](../../docs/internal/release-plans/v2.16.0/spec_pm-changelog-curator.md)\n- CHANGELOG hygiene rules source: `CLAUDE.md` (repo root)\n- Existing CHANGELOG.md format: `CHANGELOG.md` (root); v2.15.1 + v2.15.2 entries are canonical exemplars\n- Runtime components catalog: [`docs/reference/runtime-components.md`](../../docs/reference/runtime-components.md)\n- Output template: `references/TEMPLATE.md`\n- Worked example: `references/EXAMPLE.md`","tags":["utility","changelog","curator","skills","product-on-purpose","agent-skills","ai-skills","claude-code","claude-desktop","design-sprint","foundation-sprint","openskills"],"capabilities":["skill","source-product-on-purpose","skill-utility-pm-changelog-curator","topic-agent-skills","topic-ai-skills","topic-claude-code","topic-claude-desktop","topic-design-sprint","topic-foundation-sprint","topic-openskills","topic-product-management","topic-skill-families","topic-triple-diamond"],"categories":["pm-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/product-on-purpose/pm-skills/utility-pm-changelog-curator","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add product-on-purpose/pm-skills","source_repo":"https://github.com/product-on-purpose/pm-skills","install_from":"skills.sh"}},"qualityScore":"0.560","qualityRationale":"deterministic score 0.56 from registry signals: · indexed on github topic:agent-skills · 221 github stars · SKILL.md body (3,709 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-18T18:55:01.619Z","embedding":null,"createdAt":"2026-05-17T18:54:31.272Z","updatedAt":"2026-05-18T18:55:01.619Z","lastSeenAt":"2026-05-18T18:55:01.619Z","tsv":"'/../docs/internal/release-plans/v2.16.0/spec_pm-changelog-curator.md':542 '/../docs/reference/runtime-components.md':565 '/../docs/reference/sub-agent-compatibility.md':463 '/../subagents/pm-changelog-curator.md':538 '1':320,418 '2':330,430 '3':343,440 '4':375,449 '5':390 '8':346 'agent':20,34,70,79,130,257,284,318,326,355,446,452,460,535 'agent-pm-changelog-cur':33,256 'ai':120,235,297,415 'appli':158,376 'argument':265,277,387,389 'artifact':187 'audit':201 'auditor':207 'back':517 'bash':420 'behavior':539 'bodi':335,453 'canon':323,443,466,532,559 'catalog':563 'chain':222 'changelog':4,7,16,36,53,66,104,126,141,168,259,400,496,543 'changelog.md':437,551,553 'check':362 'classifi':367 'claud':24,41,81,91,119,246,480 'claude.md':432,491,525,547 'clean':495 'cli':44,49,300,305,483,485,508,510 'client':42,59,92,121,236,298,309,408,416,469,513 'code':25,82,247,481 'codex':43,299,482,484 'commit':167,180,274,366,385 'committed-on':273,384 'compat':461 'compon':562 'conductor':220 'copilot':47,303,507 'correct':498 'critic':192 'cross':58,407,468 'cross-client':57,406,467 'curat':5,17,37,54,67,127,260 'cursor':45,301,505 'd26':398 'dash':152 'definit':327,356,447,536 'describ':425 'detect':71,231 'determin':233,370 'direct':170 'dirti':500 'dirty-tre':499 'dispatch':21,55,60,73,411 'docs/internal/release-plans/v2.16.0/spec_pm-changelog-curator.md':541 'docs/reference/runtime-components.md':564 'document':350 'draft':6,105,135,175,286,348,374,401,494,523 'em':151 'em-dash':150 'emit':373 'entri':8,169,497,557 'enumer':365 'establish':357 'exampl':570 'execut':86,331,419 'exemplar':560 'exist':436,550 'experiment':503 'fall':516 'file':338,448,531 'flow':214,349 'format':438,552 'full':211,399 'g2':228 'gate':227 'gemini':48,304,509 'git':10,107,422,424,427,488,520 'govern':200 'group':368 'guid':212 'hygien':142,360,433,492,528,544 'inlin':87 'instal':254 'instead':193 'instruct':229,342,456 'intern':146 'internal-not':145 'invoc':429 'invok':32,238,255 'layer':393 'log':11,108,423,489,521 'manual':157,519,522 'master':396 'matrix':462 'nativ':22,76,123,311 'non':40,90,118 'non-claud':39,89,117 'note':147,409 'oper':341,455 'output':394,566 'pass':266 'path':154 'per':395 'plan':397 'plugin':31,253,315 'pm':3,15,29,35,52,65,125,139,186,191,205,218,251,258,313 'pm-changelog-cur':14,64,124 'pm-skill':28,138,250,312 'prepar':98 'present':279 'produc':173 'product':478 'prompt':334 'public':153 'ran':487 'rang':358 'read':50,83,321,359,431,441,490 'refer':148,439,529,530 'references/example.md':571 'references/template.md':568 'refus':502 'releas':100,213,219 'repo':198,548 'repo-wid':197 'requir':413 'respect':137 'return':280,391 'review':177,184 'rewrit':369 'root':549,554 'rule':143,361,434,493,545 'run':114,244,293,344 'runtim':72,230,561 'see':457 'sinc':268,378 'since-tag':267,377 'skill':30,56,140,172,206,225,240,252,314,412,474 'skill-utility-pm-changelog-curator' 'sourc':546 'source-product-on-purpose' 'spec':540 'status':402,404,428,470 'step':232,347 'sub':19,69,78,129,283,317,325,354,445,459,534 'sub-ag':18,68,77,128,282,316,324,353,444,458,533 'subagents/pm-changelog-c':51 'subagents/pm-changelog-curator.md':84,329,537 'success':486 'summari':403,471 'support':131,319 'system':333 'tag':111,269,379 'target':271,371,381 'target-vers':270,380 'templat':567 'topic-agent-skills' 'topic-ai-skills' 'topic-claude-code' 'topic-claude-desktop' 'topic-design-sprint' 'topic-foundation-sprint' 'topic-openskills' 'topic-product-management' 'topic-skill-families' 'topic-triple-diamond' 'treat':450 'tree':364,501 'two':110 'unreli':515 'use':95,163,188,202,215,524 'user':263,289 'util':2,190,204,217 'utility-pm-changelog-cur':1 'utility-pm-crit':189 'utility-pm-release-conductor':216 'utility-pm-skill-auditor':203 'v2.15.1':555 'v2.15.2':556 'v2.16.0':477 'version':272,372,382 'via':12 'want':102,133,165,182,195,209 'wide':199 'windsurf':46,302,506 'without':122,156,310 'work':363,569 'wrapper':61 'yaml':405","prices":[{"id":"5254fb09-13e0-4500-9cbd-650a7fa1c5a0","listingId":"cb99b41e-1ef2-42e5-965a-b95ee2cc6d03","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"product-on-purpose","category":"pm-skills","install_from":"skills.sh"},"createdAt":"2026-05-17T18:54:31.272Z"}],"sources":[{"listingId":"cb99b41e-1ef2-42e5-965a-b95ee2cc6d03","source":"github","sourceId":"product-on-purpose/pm-skills/utility-pm-changelog-curator","sourceUrl":"https://github.com/product-on-purpose/pm-skills/tree/main/skills/utility-pm-changelog-curator","isPrimary":false,"firstSeenAt":"2026-05-17T18:54:31.272Z","lastSeenAt":"2026-05-18T18:55:01.619Z"}],"details":{"listingId":"cb99b41e-1ef2-42e5-965a-b95ee2cc6d03","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"product-on-purpose","slug":"utility-pm-changelog-curator","github":{"repo":"product-on-purpose/pm-skills","stars":221,"topics":["agent-skills","ai-skills","claude-code","claude-desktop","design-sprint","foundation-sprint","openskills","product-management","skill-families","triple-diamond"],"license":"apache-2.0","html_url":"https://github.com/product-on-purpose/pm-skills","pushed_at":"2026-05-18T18:13:01Z","description":"55 plug-and-play PM skills for AI agents: 26 Triple Diamond phase + 8 foundation (persona, OKR writer, meeting family, lean canvas) + 6 utility (skill lifecycle) + 15 tool implementing canonical Foundation Sprint + Design Sprint methodologies. Templates, workflows, samples, CI-enforced family contracts. Apache 2.0.","skill_md_sha":"87f4156138655b2782a9bfcc7fa0fa6682fa8491","skill_md_path":"skills/utility-pm-changelog-curator/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/product-on-purpose/pm-skills/tree/main/skills/utility-pm-changelog-curator"},"layout":"multi","source":"github","category":"pm-skills","frontmatter":{"name":"utility-pm-changelog-curator","license":"Apache-2.0","description":"Draft CHANGELOG entries from git log via the pm-changelog-curator sub-agent. Dispatches natively on Claude Code with the pm-skills plugin (invokes @agent-pm-changelog-curator); on non-Claude clients (Codex CLI, Cursor, Windsurf, Copilot, Gemini CLI) reads subagents/pm-changelog-curator.md and executes the system prompt inline. Applies CLAUDE.md hygiene rules (no internal-notes references, no em-dashes, no Claude attribution trailers, public paths only). Returns a layered draft (full CHANGELOG draft + Status Summary prose + Status YAML envelope per master plan D26) with hidden justification comments for maintainer audit. Refuses on dirty working tree unless --committed-only is passed."},"skills_sh_url":"https://skills.sh/product-on-purpose/pm-skills/utility-pm-changelog-curator"},"updatedAt":"2026-05-18T18:55:01.619Z"}}