# 45 listings on launch day, then a cap of 8: how Evan Kennedy runs an almost-autonomous Etsy shop

Evan Kennedy runs The Cozy Bow Company, a seasonal print-on-demand Etsy shop that sells sweatshirts, tees and mugs. It is a side project, so it has to run on very few hours. He built most of the pipeline with Claude Code as the engineer. Codex CLI generates designs, QA checks and listing copy. A Cloudflare phone app is where he approves each design. Printify and the Etsy API handle products and publishing. He published 45 listings on launch day. Etsy flags sudden bursts of AI-heavy listings, so the publisher now caps at 8 a day. The shop had 85 live listings by the end of week one. He says the pipeline "didn't bring anyone to it."

| | |
|---|---|
| **Who** | Evan Kennedy, Long Beach, CA production and creative operations leader (per his home page). His role on this project is "Producer, creative director, and builder". Shop: [etsy.com/shop/TheCozyBowCompany](https://www.etsy.com/shop/TheCozyBowCompany) |
| **Problem** | Running a seasonal print-on-demand shop as a side project on very few hours, with every stage automated except the creative call |
| **Stack** | Claude Code, Codex CLI (GPT Image), Runway, Seedance 2.5, Kling O3 Pro, Real-ESRGAN (Upscayl), Apple Vision, Cloudflare Workers, Cloudflare D1, Cloudflare R2, Cloudflare Access, Printify API, Etsy Open API v3 |
| **Confidence** | High for the process (first-person, his own site). No sales or revenue figures stated |
| **Last verified** | 2026-10-26 |

## The problem
He wanted a seasonal print-on-demand shop for sweatshirts, tees and mugs. Every product is in one consistent "coquette cozy" style: soft bows, pearls and hearts on cozy Christmas and winter motifs. He writes, "It's a side project, so it has to run on very few hours." He chose to automate everything except one step: "I approve or deny every design."

## The blueprint (as he describes it)
1. **Build with a coding agent.** Most of the pipeline was built with Claude Code as the engineer, working from one shared instruction file and a running task list.
2. **Write concepts as one-liners, then generate designs with Codex CLI.** Each concept is one line with a subject, a phrase, a lettering style and a season. A banned-terms list blocks films, characters, brands and celebrities. His original plan was to pay for OpenAI's image API. Instead, a script runs the official Codex command-line tool on his ChatGPT plan, which has GPT Image built in. Each run handles one concept and outputs a transparent PNG. The prompt is saved next to the image. One style guide is appended to every prompt so the designs read as one shop.
3. **Review on his phone.** Designs go to a small phone app on Cloudflare. The app uses a Worker, a D1 database and R2 storage, and it sits behind Cloudflare Access. It shows one design at a time, previewed on the real garment colors. He can approve, deny, or regenerate with a note. The note goes back to Codex, which rewrites the concept and makes a new version. The app then shows the new version next to the old one.
4. **Make print files.** Approved art is cleaned up and upscaled 4× on his Mac with Real-ESRGAN through Upscayl's engine. The output is a 300 DPI print file.
5. **Run automated QA.** A second Codex pass reads every lettered design back against the exact phrase and looks for stray marks.
6. **Create products through Printify.** The Printify API creates one draft each for sweatshirt, tee and mug, and pulls real base costs back in.
7. **Place the real print on AI-generated photos.** AI generates a blank scene, such as an empty sweatshirt on a plaid blanket or a mug by the fire. Code then places the exact print file on it, with the fabric's shading. Each photo has to pass a placement check against Printify's own mockup before upload. Scenes also have to pass a symmetry check. Apple Vision finds the mug in each scene so the print can be wrapped around it.
8. **Write listing copy with Codex.** Codex writes a title, 13 tags and a description. Code checks the copy against Etsy's limits, his SEO rules, the banned-terms list and the AI disclosure line every listing must carry.
9. **Publish on a schedule.** A scheduled Cloudflare Worker publishes up to 8 listings a day through Printify. It then sets the Etsy-only fields (shipping profile, attributes, section) through Etsy's API. It also logs daily views per listing.
10. **Add a listing video.** Etsy allows one short video per listing. He built a recurring AI-generated model, Claire, from a written brief, and Runway turned it into a character sheet. His Runway workflow feeds the character sheet and a living-room reference into Seedance 2.5, rendered silent. A script lays sound effects from Runway's generator (fire, mug, sip) on at set times and burns in an "AI model" label. Seedance refused Claire's face as a "public figure," so her reference clips were made in Kling. One video is live on the Merry Mama sweatshirt listing.
11. **Keep an authorship log.** He says Etsy requires the seller to be the creative author of AI-assisted designs. Every approve, deny and regenerate note goes into a log that is never edited or deleted. He writes, "That log is the authorship record." He also signs off on Claire's look, every video, prices, and anything that changes the public shop.

## Stated results
- He wrote the plan on September 27. The first listing went live the next day.
- 45 listings published on launch day. The publisher now caps at 8 a day.
- The shop passed 80 live listings in its first week and had 85 by the end of week one.
- Codex CLI used 1% of the weekly limit after 19 images.
- A written style guide got the next test to 8 of 8 on-style.
- First review pass: 4 approved, 1 denied, 3 sent back.
- Sales and revenue: None stated. He writes, "The pipeline built the shop; it didn't bring anyone to it."

## Caveats
- This is a write-up on his own site about his own Etsy shop, which sells products. The page does not sell a course or kit.
- The source covers the first week or so. The page says the project started September 2026.
- What he says broke:
  - When AI drew the product with the design on it, the design drifted. He now generates scenes blank and places the print in code.
  - Early designs drifted semi-realistic even when the prompt said "doodle."
  - A shadowed sleeve threw one print about 11% off-center.
  - Etsy quietly drops alt text sent with an image upload, so none of his photos had alt text until he caught it.
  - A database sync reported success while syncing nothing.
  - Seedance redrew the cow on Claire's sweatshirt in a simpler style. His automated check failed it, and he approved it anyway.
- The claims that Etsy flags bursts of AI-heavy listings and requires creative authorship are his statements. The source does not cite Etsy policy.
- Next steps he lists include scripting the video recipe, starting Etsy Ads and pivoting to Valentine's Day and Mother's Day in January. He names Pinterest pins as the next build.
- Handles: LinkedIn linkedin.com/in/evanwkennedy and GitHub revevan (verified 2026-10-26 from links on his own site). No X, Bluesky, Threads, Instagram, Mastodon or TikTok account linked from his site or found, so none tagged.

## Sources
- https://www.evanwkennedy.com/lab/cozy-bow-pipeline/ (primary: first-person build write-up on his own Lab page)

---
*Want agents like these working your distribution? [Get It Built](/get-it-built). Get new teardowns weekly: [subscribe](/subscribe) (double opt-in).*