{"id":"6d254ed4-6246-465d-8331-4bb50ba47a66","shortId":"V6fT5A","kind":"skill","title":"shipping-products","tagline":"Plan product launch/release: rollout/rollback plan, comms, monitoring, post-launch review. See also: launch-marketing (marketing side).","description":"# Shipping Products\n\n## Scope\n\n**Covers**\n- Turning “we need to ship” into a concrete **release plan** with owners, dates, and a rollout strategy\n- Building a **Shipping & Launch Pack** that makes the release decision-ready (Go/No-go)\n- Shipping in **small, frequent increments** to improve both speed and stability\n- Defining a reusable **Product Quality List (PQL)** and iterating it based on escapes\n- Planning **measurement, monitoring, rollback**, and **post-launch learning**\n\n**When to use**\n- “We’re launching / releasing / deploying / going live—make a plan and ship.”\n- “Create a go/no-go checklist and rollout plan for this release.”\n- “We need to ship faster without breaking trust—set up small-batch shipping.”\n- “Write release notes + comms + enablement for an upcoming launch.”\n\n**When NOT to use**\n- You don’t yet agree on the problem or target user (use `problem-definition`)\n- You need to right-size scope to hit a date/appetite (use `scoping-cutting`)\n- You need a decision-ready PRD (use `writing-prds`) or build-ready spec/design doc (use `writing-specs-designs`)\n- You’re setting long-term strategy/vision (use `defining-product-vision`) or choosing among initiatives (use `prioritizing-roadmap`)\n- You need a timeline/milestone plan with stakeholder cadence but are not yet launching (use `managing-timelines`)\n- You need launch marketing copy, positioning, or campaign planning (use `launch-marketing`)\n- You’re running a post-incident review after something went wrong (use `post-mortems-retrospectives`)\n\n## Inputs\n\n**Minimum required**\n- What you’re shipping (feature/change), target users, and where it will be available (platforms, regions, plans)\n- Desired ship date/timebox + constraints (compliance, privacy, brand, uptime windows)\n- Success metric(s) + guardrails (trust/safety, performance, reliability, support load)\n- Rollout context (flags? staged rollout? beta? migration?) + key dependencies\n- Stakeholders + DRI (who decides go/no-go) + who is on point during the launch\n\n**Missing-info strategy**\n- Ask up to 5 questions from [references/INTAKE.md](references/INTAKE.md).\n- If answers aren’t available, proceed with explicit assumptions and list **Open questions** that would change the ship decision.\n\n## Outputs (deliverables)\n\nProduce a **Shipping & Launch Pack** in Markdown (in-chat; or as files if the user requests):\n\n1) **Release brief** (what/why now/who/when; DRI; scope + non-goals)\n2) **Rollout plan** (phases, eligibility, flags, sequencing, kill switch, rollback)\n3) **Quality plan (PQL)** (tests/acceptance, “must be true”, known risks, sign-offs)\n4) **Measurement + monitoring plan** (success metrics, dashboards, alerts, owner)\n5) **Comms + enablement plan** (internal/external messaging, docs, support readiness)\n6) **Launch day runbook** (timeline, checkpoints, go/no-go criteria, escalation)\n7) **Post-launch review plan** (what we’ll learn, retro prompts, follow-ups)\n8) **Risks / Open questions / Next steps** (always included)\n\nTemplates: [references/TEMPLATES.md](references/TEMPLATES.md)  \nExpanded guidance: [references/WORKFLOW.md](references/WORKFLOW.md)\n\n## Workflow (8 steps)\n\n### 1) Intake + define “what does shipped mean?”\n- **Inputs:** User request; [references/INTAKE.md](references/INTAKE.md).\n- **Actions:** Clarify the change, target users, ship date, DRI, constraints, and what “live” means (where/for whom).\n- **Outputs:** Release brief (draft).\n- **Checks:** You can state the release in one sentence: “We will ship <what> to <who> by <when> via <rollout>.”\n\n### 2) Choose the ship strategy (small batches by default)\n- **Inputs:** Release brief; constraints; dependency map.\n- **Actions:** Decide: internal → beta → GA (or phased rollout), flag strategy, and how to keep changes small. Identify the smallest safe increments.\n- **Outputs:** Rollout plan (draft) + incremental release slices.\n- **Checks:** Each increment has a clear user-visible outcome and a rollback path.\n\n### 3) Run the “maximally accelerated” forcing function\n- **Inputs:** Rollout plan (draft); slice list; blockers.\n- **Actions:** Ask: “If we had to ship tomorrow, what would we do?” Use this to identify critical path vs non-essential work. Convert into a realistic plan.\n- **Outputs:** Critical path list + cut/defer list + open questions.\n- **Checks:** Every blocker is categorized: remove, work around, accept risk, or change scope.\n\n### 4) Define the Product Quality List (PQL) + acceptance bar\n- **Inputs:** Known risks; guardrails; product surface area.\n- **Actions:** Create/extend a PQL (tests, UX states, security/privacy, reliability, performance). Explicitly list “must be true” to ship.\n- **Outputs:** Quality plan (PQL) + go/no-go criteria (draft).\n- **Checks:** PQL items are measurable/verifiable, not vibes; owners are assigned.\n\n### 5) Measurement, monitoring, rollback\n- **Inputs:** Success metrics/guardrails; rollout plan.\n- **Actions:** Define dashboards/queries, alert thresholds, and on-call/escalation. Write the rollback and “stop-the-line” triggers.\n- **Outputs:** Monitoring plan + rollback plan + launch runbook skeleton.\n- **Checks:** If the metric moves the wrong way, you know who acts, how fast, and what they do.\n\n### 6) Comms + enablement (internal first)\n- **Inputs:** Release brief; target audiences; launch tier (minor/major).\n- **Actions:** Draft internal announcement, release notes, help docs updates, sales/support enablement, and external messaging (if any).\n- **Outputs:** Comms + enablement plan.\n- **Checks:** Every audience has: what changed, why it matters, what to do next, where to get help.\n\n### 7) Go/No-go + launch execution\n- **Inputs:** Full pack draft; PQL; checklists.\n- **Actions:** Run a go/no-go review, finalize the runbook timeline, confirm roles, and ensure dependencies are ready.\n- **Outputs:** Final Shipping & Launch Pack (ready to execute).\n- **Checks:** [references/CHECKLISTS.md](references/CHECKLISTS.md) passes with no open “stop-ship” items.\n\n### 8) Post-launch review + iterate the system\n- **Inputs:** Launch outcomes; incident notes; feedback.\n- **Actions:** Run a short retro, capture learnings, update the PQL based on escapes, and define next iteration(s).\n- **Outputs:** Post-launch review notes + PQL updates + next steps.\n- **Checks:** At least 1 process improvement is identified and owners/dates are assigned.\n\n## Anti-patterns (common failure modes)\n\n1. **Big-bang launch with no rollback.** Shipping to 100% of users simultaneously with no kill switch or staged rollout. One regression impacts everyone and recovery is slow.\n2. **Go/no-go by gut feel.** Running a launch review without a concrete checklist or PQL. “It feels ready” replaces measurable stop-ship criteria, and known risks are hand-waved.\n3. **Monitoring as an afterthought.** Defining dashboards and alerts after launch day instead of before. The team discovers regressions from support tickets, not automated alerts.\n4. **Comms-last syndrome.** Internal teams (Support, Sales, CS) learn about the launch from customers. Enablement materials are written retroactively, creating a trust gap.\n5. **Ship and forget.** Declaring victory at launch without a post-launch review. Escapes, quality gaps, and process improvements go unrecorded and repeat next release.\n\n## Quality gate (required)\n- Use [references/CHECKLISTS.md](references/CHECKLISTS.md) and [references/RUBRIC.md](references/RUBRIC.md).\n- Always include: **Risks**, **Open questions**, **Next steps**.\n\n## Examples\n\n**Example 1 (B2B SaaS release):** “We’re launching role-based access control for admins next month. Create a Shipping & Launch Pack with a staged rollout, go/no-go criteria, and support enablement.”\nExpected: a phased rollout with clear eligibility, a PQL including permission edge cases, and a launch runbook + comms plan.\n\n**Example 2 (Consumer app iteration):** “Ship ‘saved searches’ to 10% of users behind a flag next week; define monitoring and rollback triggers.”\nExpected: a small-batch rollout plan, dashboards/alerts tied to guardrails, and explicit stop-the-line thresholds.\n\n**Boundary example (scope cutting):** “We need to cut scope so we can ship by the deadline.”\nResponse: use `scoping-cutting` to right-size the slice first; then return here to plan the actual launch.\n\n**Boundary example (post-mortem):** “The launch failed; let’s figure out what went wrong.”\nResponse: use `post-mortems-retrospectives` to run a structured incident review; this skill covers pre-launch planning, not post-incident analysis.\n\n**Boundary example (roadmap):** “Decide what we should build this quarter.”\nResponse: use `prioritizing-roadmap` (and/or `defining-product-vision`) first; then apply this skill to the chosen initiative’s release.","tags":["shipping","products","lenny","skills","plus","liqiongyu","agent-skills","ai-agents","automation","claude","codex","prompt-engineering"],"capabilities":["skill","source-liqiongyu","skill-shipping-products","topic-agent-skills","topic-ai-agents","topic-automation","topic-claude","topic-codex","topic-prompt-engineering","topic-refoundai","topic-skillpack"],"categories":["lenny_skills_plus"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/liqiongyu/lenny_skills_plus/shipping-products","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add liqiongyu/lenny_skills_plus","source_repo":"https://github.com/liqiongyu/lenny_skills_plus","install_from":"skills.sh"}},"qualityScore":"0.474","qualityRationale":"deterministic score 0.47 from registry signals: · indexed on github topic:agent-skills · 49 github stars · SKILL.md body (8,724 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-04-22T00:56:25.498Z","embedding":null,"createdAt":"2026-04-18T22:17:06.824Z","updatedAt":"2026-04-22T00:56:25.498Z","lastSeenAt":"2026-04-22T00:56:25.498Z","tsv":"'/escalation':696 '1':368,461,872,887,1041 '10':1099 '100':897 '2':378,508,916,1091 '3':388,565,947 '4':401,628,972 '5':325,410,678,997 '6':419,732 '7':428,782 '8':443,459,827 'acceler':569 'accept':623,635 'access':1051 'act':725 'action':473,523,579,644,687,745,792,841 'actual':1164 'admin':1054 'afterthought':951 'agre':145 'alert':408,690,955,971 'also':16 'alway':449,1032 'among':207 'analysi':1204 'and/or':1220 'announc':748 'answer':331 'anti':882 'anti-pattern':881 'app':1093 'appli':1227 'area':643 'aren':332 'around':622 'ask':322,580 'assign':677,880 'assumpt':338 'audienc':741,767 'autom':970 'avail':275,334 'b2b':1042 'bang':890 'bar':636 'base':77,851,1050 'batch':126,514,1116 'behind':1102 'beta':302,526 'big':889 'big-bang':888 'blocker':578,617 'boundari':1130,1166,1205 'brand':285 'break':120 'brief':370,491,519,739 'build':43,184,1212 'build-readi':183 'cadenc':220 'call':695 'campaign':237 'captur':846 'case':1083 'categor':619 'chang':345,476,537,626,770 'chat':360 'check':493,551,615,668,714,765,816,869 'checklist':107,791,928 'checkpoint':424 'choos':206,509 'chosen':1232 'clarifi':474 'clear':556,1076 'comm':9,131,411,733,762,974,1088 'common':884 'comms-last':973 'complianc':283 'concret':33,927 'confirm':801 'constraint':282,482,520 'consum':1092 'context':298 'control':1052 'convert':602 'copi':234 'cover':25,1195 'creat':104,993,1057 'create/extend':645 'criteria':426,666,939,1067 'critic':595,608 'cs':981 'custom':987 'cut':170,1133,1137,1150 'cut/defer':611 'dashboard':407,953 'dashboards/alerts':1119 'dashboards/queries':689 'date':38,480 'date/appetite':166 'date/timebox':281 'day':421,958 'deadlin':1145 'decid':309,524,1208 'decis':53,175,348 'decision-readi':52,174 'declar':1001 'default':516 'defin':67,202,463,629,688,855,952,1107,1222 'defining-product-vis':201,1221 'definit':155 'deliver':350 'depend':305,521,805 'deploy':96 'design':192 'desir':279 'discov':964 'doc':187,416,752 'draft':492,547,575,667,746,789 'dri':307,373,481 'edg':1082 'elig':382,1077 'enabl':132,412,734,755,763,988,1070 'ensur':804 'escal':427 'escap':79,853,1011 'essenti':600 'everi':616,766 'everyon':911 'exampl':1039,1040,1090,1131,1167,1206 'execut':785,815 'expand':454 'expect':1071,1112 'explicit':337,654,1124 'extern':757 'fail':1173 'failur':885 'fast':727 'faster':118 'feature/change':267 'feedback':840 'feel':920,932 'figur':1176 'file':363 'final':797,809 'first':736,1157,1225 'flag':299,383,531,1104 'follow':441 'follow-up':440 'forc':570 'forget':1000 'frequent':59 'full':787 'function':571 'ga':527 'gap':996,1013 'gate':1024 'get':780 'go':97,1017 'go/no-go':55,106,310,425,665,783,795,917,1066 'goal':377 'guardrail':291,640,1122 'guidanc':455 'gut':919 'hand':945 'hand-wav':944 'help':751,781 'hit':164 'identifi':539,594,876 'impact':910 'improv':62,874,1016 'in-chat':358 'incid':249,838,1191,1203 'includ':450,1033,1080 'increment':60,543,548,553 'info':320 'initi':208,1233 'input':260,468,517,572,637,682,737,786,835 'instead':959 'intak':462 'intern':525,735,747,977 'internal/external':414 'item':670,826 'iter':75,832,857,1094 'keep':536 'key':304 'kill':385,903 'know':723 'known':396,638,941 'last':975 'launch':13,18,46,87,94,136,225,232,241,317,354,420,431,711,742,784,811,830,836,862,891,923,957,985,1004,1009,1047,1060,1086,1165,1172,1198 'launch-market':17,240 'launch/release':6 'learn':88,437,847,982 'least':871 'let':1174 'line':704,1128 'list':72,340,577,610,612,633,655 'live':98,485 'll':436 'load':296 'long':197 'long-term':196 'make':49,99 'manag':228 'managing-timelin':227 'map':522 'markdown':357 'market':19,20,233,242 'materi':989 'matter':773 'maxim':568 'mean':467,486 'measur':81,402,679,935 'measurable/verifiable':672 'messag':415,758 'metric':289,406,717 'metrics/guardrails':684 'migrat':303 'minimum':261 'minor/major':744 'miss':319 'missing-info':318 'mode':886 'monitor':10,82,403,680,707,948,1108 'month':1056 'mortem':258,1170,1185 'move':718 'must':393,656 'need':28,115,157,172,214,231,1135 'next':447,777,856,867,1021,1037,1055,1105 'non':376,599 'non-essenti':598 'non-goal':375 'note':130,750,839,864 'now/who/when':372 'off':400 'on-cal':693 'one':500,908 'open':341,445,613,822,1035 'outcom':560,837 'output':349,489,544,607,661,706,761,808,859 'owner':37,409,675 'owners/dates':878 'pack':47,355,788,812,1061 'pass':819 'path':564,596,609 'pattern':883 'perform':293,653 'permiss':1081 'phase':381,529,1073 'plan':4,8,35,80,101,110,217,238,278,380,390,404,413,433,546,574,606,663,686,708,710,764,1089,1118,1162,1199 'platform':276 'point':314 'posit':235 'post':12,86,248,257,430,829,861,1008,1169,1184,1202 'post-incid':247,1201 'post-launch':11,85,429,828,860,1007 'post-mortem':1168 'post-mortems-retrospect':256,1183 'pql':73,391,634,647,664,669,790,850,865,930,1079 'prd':177 'prds':181 'pre':1197 'pre-launch':1196 'priorit':211,1218 'prioritizing-roadmap':210,1217 'privaci':284 'problem':148,154 'problem-definit':153 'proceed':335 'process':873,1015 'produc':351 'product':3,5,23,70,203,631,641,1223 'prompt':439 'qualiti':71,389,632,662,1012,1023 'quarter':1214 'question':326,342,446,614,1036 're':93,194,244,265,1046 'readi':54,176,185,418,807,813,933 'realist':605 'recoveri':913 'references/checklists.md':817,818,1027,1028 'references/intake.md':328,329,471,472 'references/rubric.md':1030,1031 'references/templates.md':452,453 'references/workflow.md':456,457 'region':277 'regress':909,965 'releas':34,51,95,113,129,369,490,498,518,549,738,749,1022,1044,1235 'reliabl':294,652 'remov':620 'repeat':1020 'replac':934 'request':367,470 'requir':262,1025 'respons':1146,1181,1215 'retro':438,845 'retroact':992 'retrospect':259,1186 'return':1159 'reusabl':69 'review':14,250,432,796,831,863,924,1010,1192 'right':160,1153 'right-siz':159,1152 'risk':397,444,624,639,942,1034 'roadmap':212,1207,1219 'role':802,1049 'role-bas':1048 'rollback':83,387,563,681,699,709,894,1110 'rollout':41,109,297,301,379,530,545,573,685,907,1065,1074,1117 'rollout/rollback':7 'run':245,566,793,842,921,1188 'runbook':422,712,799,1087 'saa':1043 'safe':542 'sale':980 'sales/support':754 'save':1096 'scope':24,162,169,374,627,1132,1138,1149 'scoping-cut':168,1148 'search':1097 'security/privacy':651 'see':15 'sentenc':501 'sequenc':384 'set':122,195 'ship':2,22,30,45,56,103,117,127,266,280,347,353,466,479,504,511,585,660,810,825,895,938,998,1059,1095,1142 'shipping-product':1 'short':844 'side':21 'sign':399 'sign-off':398 'simultan':900 'size':161,1154 'skeleton':713 'skill':1194,1229 'skill-shipping-products' 'slice':550,576,1156 'slow':915 'small':58,125,513,538,1115 'small-batch':124,1114 'smallest':541 'someth':252 'source-liqiongyu' 'spec':191 'spec/design':186 'speed':64 'stabil':66 'stage':300,906,1064 'stakehold':219,306 'state':496,650 'step':448,460,868,1038 'stop':702,824,937,1126 'stop-ship':823,936 'stop-the-lin':701,1125 'strategi':42,321,512,532 'strategy/vision':199 'structur':1190 'success':288,405,683 'support':295,417,967,979,1069 'surfac':642 'switch':386,904 'syndrom':976 'system':834 'target':150,268,477,740 'team':963,978 'templat':451 'term':198 'test':648 'tests/acceptance':392 'threshold':691,1129 'ticket':968 'tie':1120 'tier':743 'timelin':229,423,800 'timeline/milestone':216 'tomorrow':586 'topic-agent-skills' 'topic-ai-agents' 'topic-automation' 'topic-claude' 'topic-codex' 'topic-prompt-engineering' 'topic-refoundai' 'topic-skillpack' 'trigger':705,1111 'true':395,658 'trust':121,995 'trust/safety':292 'turn':26 'unrecord':1018 'up':442 'upcom':135 'updat':753,848,866 'uptim':286 'use':91,140,152,167,178,188,200,209,226,239,255,591,1026,1147,1182,1216 'user':151,269,366,469,478,558,899,1101 'user-vis':557 'ux':649 'via':507 'vibe':674 'victori':1002 'visibl':559 'vision':204,1224 'vs':597 'wave':946 'way':721 'week':1106 'went':253,1179 'what/why':371 'where/for':487 'window':287 'without':119,925,1005 'work':601,621 'workflow':458 'would':344,588 'write':128,180,190,697 'writing-prd':179 'writing-specs-design':189 'written':991 'wrong':254,720,1180 'yet':144,224","prices":[{"id":"a86fdeb1-28a1-4dad-be0d-da3c762acfc7","listingId":"6d254ed4-6246-465d-8331-4bb50ba47a66","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"liqiongyu","category":"lenny_skills_plus","install_from":"skills.sh"},"createdAt":"2026-04-18T22:17:06.824Z"}],"sources":[{"listingId":"6d254ed4-6246-465d-8331-4bb50ba47a66","source":"github","sourceId":"liqiongyu/lenny_skills_plus/shipping-products","sourceUrl":"https://github.com/liqiongyu/lenny_skills_plus/tree/main/skills/shipping-products","isPrimary":false,"firstSeenAt":"2026-04-18T22:17:06.824Z","lastSeenAt":"2026-04-22T00:56:25.498Z"}],"details":{"listingId":"6d254ed4-6246-465d-8331-4bb50ba47a66","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"liqiongyu","slug":"shipping-products","github":{"repo":"liqiongyu/lenny_skills_plus","stars":49,"topics":["agent-skills","ai-agents","automation","claude","codex","prompt-engineering","refoundai","skillpack"],"license":"apache-2.0","html_url":"https://github.com/liqiongyu/lenny_skills_plus","pushed_at":"2026-04-04T06:30:11Z","description":"86 agent-executable skill packs converted from RefoundAI’s Lenny skills (unofficial). Works with Codex + Claude Code.","skill_md_sha":"122f71276954eee657344968beaae8ce7759c710","skill_md_path":"skills/shipping-products/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/liqiongyu/lenny_skills_plus/tree/main/skills/shipping-products"},"layout":"multi","source":"github","category":"lenny_skills_plus","frontmatter":{"name":"shipping-products","description":"Plan product launch/release: rollout/rollback plan, comms, monitoring, post-launch review. See also: launch-marketing (marketing side)."},"skills_sh_url":"https://skills.sh/liqiongyu/lenny_skills_plus/shipping-products"},"updatedAt":"2026-04-22T00:56:25.498Z"}}