--- name: product-description-generator description: "E-commerce product description generator for any platform. Generates optimized titles, bullet points, descriptions, and backend keywords using competitor research + keyword scoring + FABE copywriting. Two modes: (A) Create โ€” generate listing from product specs with optional competitor analysis, (B) Optimize โ€” improve existing listing with keyword gap analysis. Supports Amazon, eBay, Walmart, Shopify, Etsy, TikTok Shop, Lazada, Shopee. No API key required. Use when: (1) writing a new product listing, (2) analyzing what makes competitors rank, (3) improving an underperforming listing." metadata: {"nexscope":{"emoji":"๐Ÿ“","category":"ecommerce"}} --- # Product Description Generator ๐Ÿ“ Generate platform-optimized product copy โ€” titles, bullet points, descriptions, and backend keywords โ€” for any major e-commerce platform. No API key required. ## Installation ```bash npx skills add nexscope-ai/eCommerce-Skills --skill product-description-generator -g ``` > **For Amazon listings**, use our dedicated skill with Cosmo algorithm optimization: > ```bash > npx skills add nexscope-ai/Amazon-Skills --skill amazon-listing-optimization -g > ``` > See: [amazon-listing-optimization](https://github.com/nexscope-ai/Amazon-Skills/tree/main/amazon-listing-optimization) ## Two Modes | Mode | When to Use | Input | |------|-------------|-------| | **A โ€” Create** | Writing a new listing | Product specs + optional competitor URLs | | **B โ€” Optimize** | Improving existing listing | Current listing or URL + optional competitor URLs | Both modes support competitor analysis โ€” just include competitor URLs to enable it. ## Supported Platforms | Platform | Output Components | |----------|-------------------| | **Amazon** | Title (โ‰ค200) + 5 Bullets (โ‰ค500 each) + Description (โ‰ค2000) + Backend (โ‰ค250 bytes) | | **eBay** | Title (โ‰ค80) + HTML Description | | **Walmart** | Title (โ‰ค75) + Short Desc (โ‰ค150) + 10 Features + Long Desc | | **Shopify/DTC** | SEO Title (โ‰ค60) + Meta Desc (โ‰ค160) + Product Description | | **Etsy** | Title (โ‰ค140) + Description + 13 Tags (โ‰ค20 each) | | **TikTok Shop** | Title (โ‰ค255) + Description (โ‰ค1000) | | **Lazada/Shopee** | Title (โ‰ค120) + 5 Highlights + Description | ## Usage Examples ### Mode A โ€” Create ``` Create a listing for my yoga mat on eBay UK. Competitors: https://www.ebay.co.uk/itm/123456789, https://www.ebay.co.uk/itm/987654321 My product: 6mm TPE, non-slip, carrying strap included. Brand: ZenMat. Tone: Friendly. ``` ``` Platform: Etsy. Product: hand-poured soy candle, lavender scent, 8oz glass jar, 40-hour burn time. Target audience: gift buyers. Tone: Luxury. ``` ### Mode B โ€” Optimize ``` Optimize this Shopify listing: https://mystore.com/products/portable-blender Beat these competitors: https://amazon.com/dp/B09V3KXJPB, https://walmart.com/ip/123456 ``` ``` Find keyword gaps and rewrite this Etsy listing: [paste current title, description, and tags] ``` --- ## Handling Incomplete Input If user doesn't provide enough info, ask upfront: ``` To generate your listing, I need: **Required:** - Platform (eBay / Walmart / Shopify / Etsy / TikTok Shop / Lazada / Shopee) - Product name and key features - Brand name **Recommended (better results):** - 1-3 competitor URLs to analyze - Target audience - Tone preference (Professional / Friendly / Urgent / Luxury) Which mode? - **A โ€” Create**: I'm writing a new listing from scratch - **B โ€” Optimize**: I have an existing listing to improve ๐Ÿ’ก For Amazon listings, I recommend using [amazon-listing-optimization](https://github.com/nexscope-ai/Amazon-Skills/tree/main/amazon-listing-optimization) โ€” it's optimized for Amazon's Cosmo algorithm. ``` --- ## Mode A Workflow โ€” Create New Listing ### Step 1: Collect Product Info | Field | Required | Example | |-------|----------|---------| | `product_name` | โœ… | Portable blender | | `platform` | โœ… | Etsy | | `brand` | โœ… | BlendJet | | `key_features` | โœ… | USB-C, 6 blades, BPA-free | | `specs` | โœ… | 380ml, 175W motor | | `target_audience` | ๐Ÿ‘ | Gym-goers, travelers | | `use_cases` | ๐Ÿ‘ | Smoothies, protein shakes | | `competitor_urls` | ๐Ÿ‘ | 1-3 URLs to analyze | | `tone` | Optional | Professional (default) / Friendly / Luxury / Urgent | ### Step 2: Gather Keywords **If competitor URLs provided:** 1. Fetch each competitor page: ``` Use web_fetch on each competitor URL. Extract: title, bullets/features, description, price, review count, brand name. ``` 2. If `web_fetch` fails or returns incomplete data: ``` Fallback: web_search for "[product title from URL]" site:[platform].com Extract data from search snippets. ``` 3. Parse competitor content and extract keywords in these categories: - **Product-type terms**: What it IS (yoga mat, exercise mat) - **Feature terms**: What it DOES (non-slip, eco-friendly) - **Use-case terms**: WHERE/WHEN used (home gym, yoga studio) - **Audience terms**: WHO buys (beginners, athletes) - **Attribute terms**: Specs (6mm, TPE material) 4. Expand beyond competitors: ``` web_search: "[product type]" best seller features what buyers want web_search: "[product type]" review complaints common issues web_search: site:[platform].com "[product type]" ``` **If no competitor URLs provided:** 1. Discover keywords via web search: ``` web_search: "[product name]" best seller [platform] features web_search: "[product name]" review what customers love web_search: "[product name]" vs alternatives comparison web_search: site:[platform].com "[product name]" ``` 2. Extract keywords from top 5 results following the same categories above. โš ๏ธ **Critical**: Remove all competitor brand names โ€” never include them in output. ### Step 3: Score and Prioritize Keywords Score each keyword (1-9 points): | Dimension | Scoring | |-----------|---------| | **Frequency** | In 3+ competitor titles = 3 pts / In 1-2 = 2 pts / Bullets only = 1 pt | | **Relevance** | Core descriptor = 3 pts / Feature = 2 pts / Peripheral = 1 pt | | **Opportunity** | Few competitors use = 3 pts / Most use = 2 pts / All use = 1 pt | Assign to tiers: ``` ๐Ÿ”ด Primary (7-9 pts) โ†’ Title ๐ŸŸก Secondary (4-6 pts) โ†’ Bullets / Features ๐ŸŸข Tertiary (2-3 pts) โ†’ Description โšช Backend (1 pt) โ†’ Tags / Search Terms ``` ### Step 4: Generate Copy Proceed to **Generate Copy** section. --- ## Mode B Workflow โ€” Optimize Existing Listing ### Step 1: Analyze Current Listing User may provide: - **Full listing copy** (title, bullets, description pasted directly) - **Product URL** (e.g., `https://www.etsy.com/listing/123456`) - **Platform + product identifier** (e.g., "Etsy listing 123456") **If user provides URL or identifier only:** ``` Use web_fetch on the provided URL. Extract: current title, bullets/features, description, tags (if visible), price. ``` If `web_fetch` fails: ``` Fallback: web_search for the product title or identifier. Ask user to paste the listing content manually if data is incomplete. ``` **Once listing content is obtained**, parse and extract: - All keywords currently present - Structure and format used - Obvious gaps (missing features, weak benefits, no FABE structure) ### Step 2: Gather Target Keywords **If competitor URLs provided:** Follow the same competitor analysis process as Mode A Step 2: 1. `web_fetch` each competitor URL 2. Extract their keywords 3. Expand via web search **If no competitor URLs provided:** Discover ideal keywords for the product type: ``` web_search: "[product type]" top keywords [platform] 2024 2025 web_search: "[product type]" best seller features web_search: site:[platform].com "[product type]" top listings ``` ### Step 3: Gap Analysis Compare current keywords vs. target keywords: ``` ## Keyword Gap Analysis ### โœ… Keywords You Already Have | Keyword | Title | Bullets | Description | |---------|-------|---------|-------------| | yoga mat | โœ… | โœ… | โœ… | | exercise mat | โŒ | โœ… | โŒ | ### โŒ Keywords You're Missing | Keyword | Priority | Recommendation | |---------|----------|----------------| | non-slip | ๐Ÿ”ด High | Add to title | | eco-friendly | ๐ŸŸก Medium | Add to bullet 2 | | extra thick | ๐ŸŸก Medium | Add to bullet 3 | Current Coverage: 12/20 keywords (60%) Target Coverage: 90%+ ``` ### Step 4: Rewrite Generate optimized copy incorporating missing keywords. Show **Before โ†’ After** for each component. Proceed to **Generate Copy** section. --- ## Generate Copy Final step for all modes after keyword priority table is built. ### Writing Framework: FABE Apply to every bullet: ``` F โ€” Feature: What the product HAS or DOES A โ€” Advantage: Why this is BETTER than alternatives B โ€” Benefit: What this MEANS for the customer E โ€” Evidence: Spec, number, or proof that backs the claim ``` **Lead with the Benefit** โ€” customers buy outcomes, not features. Example: ``` โŒ "Made with BPA-free Tritan plastic" โœ… "SAFE FOR YOUR FAMILY โ€” BPA-free Tritan plastic means no harmful chemicals leaching into your smoothies, even after 1000+ uses" ``` ### Platform-Specific Writing Rules #### Amazon (Cosmo Algorithm) - **Title**: Brand + Primary Keyword + Attribute + Attribute + Secondary Keyword, โ‰ค200 chars - **Bullets**: [CAPS HEADER] โ€” Benefit-led sentence with 1-2 keywords embedded - **Description**: Hook โ†’ Features โ†’ Use cases โ†’ What's in box โ†’ CTA - **Backend**: Space-separated keywords, no duplicates, โ‰ค250 bytes - โš ๏ธ **Cosmo tip**: Use situational language (when/where/why), cover multiple use cases - ๐Ÿ’ก For advanced Amazon optimization, consider [amazon-listing-optimization](https://github.com/nexscope-ai/Amazon-Skills/tree/main/amazon-listing-optimization) #### eBay (Cassini Algorithm) - **Title**: Front-load exact-match keywords, 80 chars max - **Description**: Repeat top 3 keywords naturally throughout, include specs table in HTML #### Walmart - **Title**: Brand + product name + primary attribute, โ‰ค75 chars - **Short Desc**: One-sentence value prop with primary keyword - **Features**: 10 attribute-focused bullets, one fact per bullet #### Shopify/DTC (Google SEO) - **SEO Title**: Primary keyword + brand, written for Google (not just product name) - **Meta Desc**: Keyword + benefit + CTA, drives CTR from search results - **Description**: Storytelling structure with `

`, `