{"id":"5eca3f9f-7002-4e81-9365-e157b064a12b","shortId":"5RAr2t","kind":"skill","title":"Sprint Summary Generator","tagline":"Converts a list of completed tickets or commits into a clear sprint summary for stakeholders.","description":"# Sprint Summary Generator\n\n## What this skill does\n\nThis skill takes a raw list of completed tickets, commit messages, or PR titles from a sprint and produces a polished sprint summary document suitable for stakeholders, leadership, or the whole team. It groups work into meaningful themes, translates technical changes into business language, flags blockers and carryover items, and formats everything for a Slack post, email, or wiki page.\n\nUse this at the end of every sprint to save time writing the sprint review, or to quickly communicate what shipped to non-technical stakeholders.\n\n## How to use\n\n### Claude Code / Cline\n\nCopy this file to `.agents/skills/sprint-summary-generator/SKILL.md` in your project root.\n\nThen ask:\n- *\"Use the Sprint Summary Generator skill. Here are our completed tickets: [paste list].\"*\n- *\"Generate a sprint summary from this git log using the Sprint Summary Generator skill.\"*\n\nProvide:\n- Sprint number or name\n- Sprint dates (or just the duration, e.g., \"2-week sprint ending 2026-03-15\")\n- List of completed tickets, PRs, or commits\n- Any blockers or incomplete items\n- Anything notable (incidents, team changes, major decisions)\n\n### Cursor\n\nAdd the instructions below to your `.cursorrules` or paste them into the Cursor AI pane. Paste the ticket list and any context before asking for the summary.\n\n### Codex\n\nPaste all available information (ticket list, sprint dates, blockers) and ask Codex to follow the instructions below.\n\n## The Prompt / Instructions for the Agent\n\nWhen asked to generate a sprint summary, follow these steps:\n\n### Step 1 — Parse and understand the work\n\nFor each completed item:\n- Identify the user-facing or business impact (what changed for a user or the business?)\n- Identify the theme or area (user-facing product, internal tooling, infrastructure, bug fixes, technical debt, etc.)\n- Filter out noise (dependency bumps, formatting fixes, CI tweaks) — mention them briefly but don't feature them\n- Note any items that were started but not completed (carryover)\n\n### Step 2 — Group into themes\n\nGroup the completed items into 2–5 themes based on similarity. Good theme names are:\n- Feature areas (\"Checkout improvements\", \"Dashboard\")\n- Work types (\"Bug fixes\", \"Performance\", \"Infrastructure\")\n- Team goals (\"Sprint goal: faster onboarding\")\n\nDon't create more themes than there are meaningful groups — it's fine to have just two.\n\n### Step 3 — Write the summary\n\nFollow these writing principles:\n- **Audience is non-technical** — translate \"fixed N+1 query on the orders endpoint\" to \"improved orders page load time by 60%\"\n- **Lead with outcomes** — what improved, what users can now do, what risk was eliminated\n- **Be specific but brief** — include the key detail (the metric, the feature name) but don't over-explain\n- **Avoid jargon** — no \"refactored\", \"migrated\", or \"deprecated\" without explaining the impact\n\n### Step 4 — Format the output\n\nProduce two versions: a short Slack/chat version and a full written version.\n\n**Slack version (short)**:\n```\n*Sprint [N] — [Date Range]* ✓ Shipped\n\n*[Theme 1]*\n• [Item 1 — one sentence, outcome-focused]\n• [Item 2]\n\n*[Theme 2]*\n• [Item 1]\n\n*Carried over*: [Item or \"Nothing — clean sprint!\"]\n\n*Next sprint focus*: [1 sentence on what's coming]\n```\n\n**Full written version**:\n```markdown\n# Sprint [N] Summary — [Date Range]\n\n## Highlights\n[2–3 sentence paragraph describing the most important things that shipped this sprint and why they matter]\n\n## What We Shipped\n\n### [Theme 1]\n- **[Feature/fix name]**: [1–2 sentences describing the change and its impact]\n- ...\n\n### [Theme 2]\n- ...\n\n## Bug Fixes & Reliability\n[List significant bug fixes with a brief note on impact]\n\n## Infrastructure & Technical Work\n[List infra/tech debt items briefly — these are real but less exciting to stakeholders]\n\n## Metrics\n| Metric | Sprint start | Sprint end |\n|--------|-------------|------------|\n| [e.g., Page load time] | [value] | [value] |\n[Only include if metrics were provided]\n\n## Carryover\n- [Item 1] — [brief reason it didn't make it]\n- [or \"None — clean sprint\"]\n\n## Blockers & Risks\n[Any blockers encountered and how they were resolved, or ongoing risks]\n\n## Next Sprint Preview\n[1–3 bullet points on planned priorities]\n```\n\n## Example\n\n**Input to Agent:**\n> \"Use the Sprint Summary Generator skill. Sprint 14, March 3–14 2026.\n>\n> Completed:\n> - Add email notifications for order status changes\n> - Fix broken pagination on /admin/users\n> - Upgrade Next.js from 13 to 14\n> - Add skeleton loading states to dashboard\n> - Fix memory leak in the WebSocket handler\n> - Improve DB query on reports page (was timing out for large accounts)\n> - Add CSV download to reports page\n> - Fix typo in welcome email subject line\n>\n> Carried over: Stripe billing portal integration (blocked on Stripe API access)\n> Notable: memory leak fix resolved the nightly crash that had been affecting ~5% of users\"\n\n**Output from Agent:**\n\n> **Sprint 14 — March 3–14, 2026** ✓ Shipped\n>\n> **Reports & Dashboard**\n> • Added CSV download to the reports page\n> • Reports page now loads correctly for large accounts (was timing out before)\n> • Added loading skeletons to the dashboard for a smoother experience\n>\n> **Notifications & Emails**\n> • Users now receive email notifications when their order status changes\n> • Fixed a typo in the welcome email subject line\n>\n> **Reliability**\n> • Fixed a memory leak that was causing ~5% of users to experience nightly service disruptions\n> • Fixed broken pagination in the admin user list\n>\n> **Carried over**: Stripe billing portal integration — blocked on Stripe API access approval\n>\n> ---\n>\n> **Full Summary:**\n>\n> # Sprint 14 Summary — March 3–14, 2026\n>\n> ## Highlights\n> Sprint 14 delivered meaningful improvements to the reports experience and fixed a longstanding reliability issue. The memory leak fix in our WebSocket handler eliminates the nightly crash that was affecting roughly 5% of active users. We also shipped two highly-requested reports features: CSV export and a fix for timeouts on large accounts.\n>\n> ## What We Shipped\n>\n> ### Reports & Dashboard\n> - **CSV Export for Reports**: Users can now download any report as a CSV file directly from the reports page\n> - **Reports timeout fix**: Optimized the database query behind the reports page — large accounts that were previously seeing timeouts now load in under 2 seconds\n> - **Dashboard loading skeletons**: Added skeleton loading states so the dashboard feels snappy while data loads\n>\n> ### Notifications\n> - **Order status email notifications**: Users now automatically receive an email when their order status changes to processing, shipped, or delivered\n>\n> ## Bug Fixes & Reliability\n> - Fixed a memory leak in the WebSocket handler that was causing nightly service disruptions for ~5% of users\n> - Fixed broken pagination in the admin user management page\n> - Fixed a typo in the welcome email subject line\n>\n> ## Infrastructure & Technical Work\n> - Upgraded Next.js from v13 to v14 — improves build times and enables future performance features\n>\n> ## Carryover\n> - **Stripe billing portal integration** — blocked on Stripe API access approval; expected next sprint\n>\n> ## Next Sprint Preview\n> - Complete Stripe billing portal integration\n> - Begin work on mobile app notifications\n\n## Notes\n\n- If you don't have metrics, omit the metrics table — don't pad it with guesses.\n- Non-technical stakeholders care about \"users can now...\" and \"we fixed the thing that was causing...\" — lead with that language.\n- Internal tooling and refactoring work is real and worth mentioning briefly, but shouldn't dominate a stakeholder summary.","tags":["sprint","summary","generator","openagentskills","notysoty","agent-skills","claude","claude-code","claude-skills","cline","cursor","llm"],"capabilities":["skill","source-notysoty","skill-sprint-summary-generator","topic-agent-skills","topic-claude","topic-claude-code","topic-claude-skills","topic-cline","topic-cursor","topic-llm","topic-llm-skills","topic-skills"],"categories":["openagentskills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/Notysoty/openagentskills/sprint-summary-generator","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add Notysoty/openagentskills","source_repo":"https://github.com/Notysoty/openagentskills","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 8 github stars · SKILL.md body (7,651 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-18T19:13:24.758Z","embedding":null,"createdAt":"2026-05-18T13:20:46.678Z","updatedAt":"2026-05-18T19:13:24.758Z","lastSeenAt":"2026-05-18T19:13:24.758Z","tsv":"'+1':398 '-03':173 '-15':174 '/admin/users':669 '1':257,482,484,495,506,543,546,606,634 '13':673 '14':652,655,675,744,747,841,845,849 '2':168,328,337,491,493,522,547,556,948 '2026':172,656,748,846 '3':382,523,635,654,746,844 '4':457 '5':338,737,810,879,1004 '60':411 'access':724,836,1051 'account':700,766,901,938 'activ':881 'ad':752,771,953 'add':195,658,676,701 'admin':823,1012 'affect':736,877 'agent':245,644,742 'agents/skills/sprint-summary-generator/skill.md':122 'ai':208 'also':884 'anyth':187 'api':723,835,1050 'app':1068 'approv':837,1052 'area':287,348 'ask':128,218,233,247 'audienc':390 'automat':972 'avail':225 'avoid':445 'base':340 'begin':1064 'behind':933 'bill':717,829,1044,1061 'block':720,832,1047 'blocker':71,183,231,618,621 'brief':429,566,607 'briefli':311,577,1118 'broken':666,819,1008 'bug':295,354,557,562,986 'build':1035 'bullet':636 'bump':304 'busi':68,273,282 'care':1091 'carri':496,714,826 'carryov':73,326,604,1042 'caus':809,999,1103 'chang':66,191,276,551,664,792,980 'checkout':349 'ci':307 'claud':115 'clean':501,616 'clear':14 'cline':117 'code':116 'codex':222,234 'come':511 'commit':11,35,181 'communic':104 'complet':8,33,138,177,265,325,334,657,1059 'context':216 'convert':4 'copi':118 'correct':763 'crash':732,874 'creat':366 'csv':702,753,892,907,919 'cursor':194,207 'cursorrul':201 'dashboard':351,681,751,776,906,950,959 'data':963 'databas':931 'date':162,230,478,519 'db':690 'debt':298,575 'decis':193 'deliv':850,985 'depend':303 'deprec':451 'describ':526,549 'detail':433 'didn':610 'direct':921 'disrupt':817,1002 'document':49 'domin':1122 'download':703,754,914 'durat':166 'e.g':167,592 'elimin':425,871 'email':82,659,711,782,786,799,968,975,1022 'enabl':1038 'encount':622 'end':90,171,591 'endpoint':403 'etc':299 'everi':92 'everyth':77 'exampl':641 'excit':583 'expect':1053 'experi':780,814,856 'explain':444,453 'export':893,908 'face':271,290 'faster':362 'featur':315,347,437,891,1041 'feature/fix':544 'feel':960 'file':120,920 'filter':300 'fine':376 'fix':296,306,355,396,558,563,665,682,707,728,793,803,818,858,866,896,928,987,989,1007,1016,1098 'flag':70 'focus':489,505 'follow':236,253,386 'format':76,305,458 'full':470,512,838 'futur':1039 'generat':3,21,133,142,154,249,649 'git':148 'goal':359,361 'good':343 'group':59,329,332,373 'guess':1086 'handler':688,870,996 'high':888 'highlight':521,847 'highly-request':887 'identifi':267,283 'impact':274,455,554,569 'import':529 'improv':350,405,416,689,852,1034 'incid':189 'includ':430,599 'incomplet':185 'inform':226 'infra/tech':574 'infrastructur':294,357,570,1025 'input':642 'instruct':197,238,242 'integr':719,831,1046,1063 'intern':292,1108 'issu':862 'item':74,186,266,319,335,483,490,494,498,576,605 'jargon':446 'key':432 'languag':69,1107 'larg':699,765,900,937 'lead':412,1104 'leadership':53 'leak':684,727,806,865,992 'less':582 'line':713,801,1024 'list':6,31,141,175,213,228,560,573,825 'load':408,594,678,762,772,945,951,955,964 'log':149 'longstand':860 'major':192 'make':612 'manag':1014 'march':653,745,843 'markdown':515 'matter':538 'meaning':62,372,851 'memori':683,726,805,864,991 'mention':309,1117 'messag':36 'metric':435,586,587,601,1076,1079 'migrat':449 'mobil':1067 'n':397,477,517 'name':160,345,438,545 'next':503,631,1054,1056 'next.js':671,1029 'night':731,815,873,1000 'nois':302 'non':109,393,1088 'non-techn':108,392,1087 'none':615 'notabl':188,725 'note':317,567,1070 'noth':500 'notif':660,781,787,965,969,1069 'number':158 'omit':1077 'onboard':363 'one':485 'ongo':629 'optim':929 'order':402,406,662,790,966,978 'outcom':414,488 'outcome-focus':487 'output':460,740 'over-explain':442 'pad':1083 'page':85,407,593,694,706,758,760,925,936,1015 'pagin':667,820,1009 'pane':209 'paragraph':525 'pars':258 'past':140,203,210,223 'perform':356,1040 'plan':639 'point':637 'polish':46 'portal':718,830,1045,1062 'post':81 'pr':38 'preview':633,1058 'previous':941 'principl':389 'prioriti':640 'process':982 'produc':44,461 'product':291 'project':125 'prompt':241 'provid':156,603 'prs':179 'queri':399,691,932 'quick':103 'rang':479,520 'raw':30 'real':580,1114 'reason':608 'receiv':785,973 'refactor':448,1111 'reliabl':559,802,861,988 'report':693,705,750,757,759,855,890,905,910,916,924,926,935 'request':889 'resolv':627,729 'review':100 'risk':423,619,630 'root':126 'rough':878 'save':95 'second':949 'see':942 'sentenc':486,507,524,548 'servic':816,1001 'ship':106,480,532,541,749,885,904,983 'short':465,475 'shouldn':1120 'signific':561 'similar':342 'skeleton':677,773,952,954 'skill':24,27,134,155,650 'skill-sprint-summary-generator' 'slack':80,473 'slack/chat':466 'smoother':779 'snappi':961 'source-notysoty' 'specif':427 'sprint':1,15,19,42,47,93,99,131,144,152,157,161,170,229,251,360,476,502,504,516,534,588,590,617,632,647,651,743,840,848,1055,1057 'stakehold':18,52,111,585,1090,1124 'start':322,589 'state':679,956 'status':663,791,967,979 'step':255,256,327,381,456 'stripe':716,722,828,834,1043,1049,1060 'subject':712,800,1023 'suitabl':50 'summari':2,16,20,48,132,145,153,221,252,385,518,648,839,842,1125 'tabl':1080 'take':28 'team':57,190,358 'technic':65,110,297,394,571,1026,1089 'theme':63,285,331,339,344,368,481,492,542,555 'thing':530,1100 'ticket':9,34,139,178,212,227 'time':96,409,595,696,768,1036 'timeout':898,927,943 'titl':39 'tool':293,1109 'topic-agent-skills' 'topic-claude' 'topic-claude-code' 'topic-claude-skills' 'topic-cline' 'topic-cursor' 'topic-llm' 'topic-llm-skills' 'topic-skills' 'translat':64,395 'tweak':308 'two':380,462,886 'type':353 'typo':708,795,1018 'understand':260 'upgrad':670,1028 'use':86,114,129,150,645 'user':270,279,289,418,739,783,812,824,882,911,970,1006,1013,1093 'user-fac':269,288 'v13':1031 'v14':1033 'valu':596,597 'version':463,467,472,474,514 'websocket':687,869,995 'week':169 'welcom':710,798,1021 'whole':56 'wiki':84 'without':452 'work':60,262,352,572,1027,1065,1112 'worth':1116 'write':97,383,388 'written':471,513","prices":[{"id":"5ebfb835-98e6-427d-b124-281ea5f20fba","listingId":"5eca3f9f-7002-4e81-9365-e157b064a12b","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"Notysoty","category":"openagentskills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:20:46.678Z"}],"sources":[{"listingId":"5eca3f9f-7002-4e81-9365-e157b064a12b","source":"github","sourceId":"Notysoty/openagentskills/sprint-summary-generator","sourceUrl":"https://github.com/Notysoty/openagentskills/tree/main/skills/sprint-summary-generator","isPrimary":false,"firstSeenAt":"2026-05-18T13:20:46.678Z","lastSeenAt":"2026-05-18T19:13:24.758Z"}],"details":{"listingId":"5eca3f9f-7002-4e81-9365-e157b064a12b","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"Notysoty","slug":"sprint-summary-generator","github":{"repo":"Notysoty/openagentskills","stars":8,"topics":["agent-skills","claude","claude-code","claude-skills","cline","cursor","llm","llm-skills","skills"],"license":"mit","html_url":"https://github.com/Notysoty/openagentskills","pushed_at":"2026-03-28T06:50:19Z","description":"A  community-driven library of reusable AI agent skills for Claude Code, Cursor, Codex, Cline, and more.","skill_md_sha":"1e0e96b2c47c5aebbe01550c0776d606bf8ab2c1","skill_md_path":"skills/sprint-summary-generator/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/Notysoty/openagentskills/tree/main/skills/sprint-summary-generator"},"layout":"multi","source":"github","category":"openagentskills","frontmatter":{"name":"Sprint Summary Generator","description":"Converts a list of completed tickets or commits into a clear sprint summary for stakeholders."},"skills_sh_url":"https://skills.sh/Notysoty/openagentskills/sprint-summary-generator"},"updatedAt":"2026-05-18T19:13:24.758Z"}}