Imported from huynhpeter/skills (
dry-clean-skits/SKILL.md). Install upstream withnpx skills add huynhpeter/skills --skill dry-clean-skits. Copyright stays with the author.
Dry Clean Skit Writer
Dry Clean is a cut-and-sew apparel brand (dryclean.love, tagline "Well taken care of.") built around a real-dry-cleaner concept: hanger motif, "Dry Clean Only" double meaning, workwear/Americana aesthetic (Aimé Leon Dore, Kith, Larry June references). The skits are 1-minute counter comedies set in an Atlanta dry cleaner, made for subliminal brand awareness — the comedy carries the brand, never the other way around.
This skill has three modes. Figure out which one the user wants (ask if unclear):
- IDEAS — pitch premises
- SCRIPT — write a full episode with shot list
- CRITIQUE — review/punch up an existing script
Whatever the mode, first ask the user for (or locate in the conversation) their latest scripts and any prior critique docs — continuity with existing episodes matters (character lore, used end-card stamps, episode numbering).
The Engine (every episode runs on this)
Ordinary counter errand + one vivid mess + a confession that lands in two beats + Marcus totally unmoved.
- Marcus is the anchor: one volume, never matches a customer's energy, infinitely patient, morally flexible in the customer's favor ("Say less"). His signature joke shape is the professional reframe — reducing a human catastrophe to a fabric question ("I don't need the police report, I need to know if these are cotton or a blend," "We clean clothes, not opinions," "It's a pocket square, not a personality transplant"). When a scene stalls, write one of these.
- Customers come in hot; Marcus stays flat. That volume differential IS the comedic timing.
- The confession breaks in two beats, and Marcus's silence is beat one. ("It's not what you think." / beat / "It's exactly what I think.")
- Offscreen is funnier than onscreen. Never show the mess. A fly SFX, a "tell him about the car ride!" from off-camera, a slow bag-close — implication beats image every time.
Format Spec (SCRIPT mode output)
Match the established episode template exactly:
EPISODE N — "TITLE"
1-minute skit | INT. DRY CLEAN COUNTER | DAY
[0:00] OPEN
Bell DINGS. [Customer enters with visible situation.]
[Dialogue — the mess reveal, the confession, the tag.]
[0:40] TIME CARD: "[TIME JUMP]"
[Return scene: hand-off, ONE joke, exit line. 15 seconds max.]
[CUT TO BLACK — END CARD] DRY CLEAN. [STAMP ≤6 WORDS]. DRYCLEAN.LOVE — WELL TAKEN CARE OF.
Then a shot list table (columns: #, Shot Type, Description) using the house key: WIDE = establishing · MEDIUM = waist-up · CLOSE-UP = face/reaction · INSERT = tight cutaway on object (tag, sign, rack) · OTS = over-the-shoulder · CUTAWAY = brief beat away from scene · TITLE CARD · END CARD. 14–16 shots is the norm. Flag the one shot the episode lives or dies on in a director's note.
Structural rules:
- Act one gets ~40 seconds, act two ~15. The time card sits at [0:40] ± 5s.
- The bell DING opens every episode. The tag (rush tag, hazard tag, custom tag) is the recurring prop — tags are where lore lives (e.g., Derrick's pre-printed "STANDING HAZARD" tag).
- Every episode ends with Marcus getting the last word, ideally under six words ("Get out my store," "April.").
- Include a director's note when a beat needs protecting (e.g., a sincere moment that must not get a punchline stacked on it).
Brand Integration Rules (the ones that keep it from becoming an ad)
- A merch beat earns its place only if it's a joke or a story beat first, product second. Gold standard: "This one ever lost a game?" / "It's brand new." / "Then it's undefeated." Worn > sold. Background rack > insert shot. Never write dialogue that evaluates or praises the product.
- One merch beat per episode, max. Silent merch (character just wearing it) is always safe.
- Product-extension props (garment bags, lint rollers, air fresheners, candles) are fair game and best when motivated — the lint roller exists because there's a veil, the garment bag because it's pollen season.
- End cards are Marcus's voice, six words or fewer. If it sounds like marketing wrote it, rewrite it. Each episode gets its OWN stamp — never reuse a previous episode's ("WE'VE SEEN THINGS" belongs to Ep 4 alone). Track used stamps.
- Real-world references (sports, events): dialogue and handwritten signs only — no logos, no player likenesses, no league branding, nothing to clear legally. Verify real events with a web search before scripting around them.
Camera Language (introduced Ep 8+)
- Fourth wall, two tiers. Tier 1, THE LOOK: Marcus glances dead into the lens for half a second, says nothing, returns to work — max 1–2 per episode, only at peak absurdity, dead-eyed (never smiling). Tier 2, THE WORD: Marcus speaks to camera, one word or line ("Atlanta." Ep 5, "April." Ep 9) — ration one per 2–3 episodes. Only Marcus gets the camera; customers never know it exists. That's what makes the shop his.
- Snap zooms: fast punch-in (4–6 frames, a blink not a TikTok effect), 2–3 per episode max. Snap onto the deadpan — Marcus's non-reaction or a prop punchline (a tag, a sign) — never onto the loud customer; their volume doesn't need help. Save the hardest snap for the episode's core joke. Mark snap zooms and Looks in both the script body and the shot list.
Series Continuity
- Ration Marcus's cracks. One emotional break (a smile, a moment of whimsy, a Tier 2 to-camera) per 3–4 episodes. The drought is what makes it land.
- Recurring characters accrue lore through the shop's systems (pre-printed tags, protocols like "CODE YELLOW," a fresh tag-book page for expected trouble). Known recurring: Derrick (crawfish incident, standing hazard), Tasha (off-screen, filming, optional — budget-dependent; her lines can be reassigned to Marcus as implication), Destiny, Reggie, Malik, Keisha.
- "CODE ___" titles are a franchise-within-the-franchise. Atlanta specificity (pollen season, crawfish spots, neighborhood references) is a strength — use texture, not tourism.
IDEAS mode
Pitch 8–12 premises as one-to-two-liners: the errand, the mess, the confession, and the Marcus line if you have one. Range across lanes: gross-out/secret-keeping (the bread and butter), big life event (wedding, interview, funeral, prom), Atlanta-seasonal, recurring-character lore, and at most one sincere-turn pitch per batch (those are rationed like Marcus's smiles). Mark which lane each pitch sits in. A good pitch makes the reader hear Marcus's deadpan already.
CRITIQUE mode
Deliver notes + punch-ups, keeping the user's script as the master copy (don't rewrite wholesale unless asked). For each script:
- Protect first. Name what's working before what isn't — specifically flag lines that must not be touched.
- Check against the engine: Is the volume differential intact? Does the confession land in two beats with Marcus's silence as beat one? Is the mess offscreen? Does Marcus get the last word?
- Check brand integration: Does any merch beat read as a commercial? Does the end card sound like Marcus or like marketing? Stamp reuse?
- Check timing: Read it at natural pace — anything over ~70 seconds needs cuts named specifically. Act two over 20 seconds is too long.
- Punch-ups are offered as options (2 alternatives per weak line, keeping the original's shape) — take-it-or-leave-it framing.
- Watch for lines that are script flourishes rather than shootable ("smelling like victory") — convert to action or cut.
Quality bar (all modes)
Before delivering, self-check: Would this be funny with the brand name removed? (If the answer is no, the brand is carrying the comedy — flip it.) Does Marcus stay Marcus for the full 60 seconds? Is there exactly one big joke shape per episode, not three fighting? Read the dialogue aloud in your head for rhythm — beats written on the page ("(beat)") are direction, and every one should be earning its pause.