Install
Terminal · npx$
npx skills add https://github.com/buluslan/ecommerce-competitor-analyzer --skill ecommerce-competitor-analyzerWorks with Paperclip
How Ecommerce Competitor Analyzer fits into a Paperclip company.
Ecommerce Competitor Analyzer drops into any Paperclip agent that handles this kind of work. Assign it to a specialist inside a pre-configured PaperclipOrg company and the skill becomes available on every heartbeat — no prompt engineering, no tool wiring.
E
E-Commerce EmpirePaired
Pre-configured AI company — 20 agents, 9 skills, one-time purchase.
$59$89
Explore packSource file
SKILL.md347 linesExpandCollapse
---name: ecommerce-competitor-analyzerdescription: Multi-platform e-commerce competitor analysis skill that automatically scrapes product data from Amazon, Temu, Shopee and generates comprehensive analysis reports using AI. Use when you need to analyze competitor products, extract product insights, or batch analyze multiple product listings. Supports bulk processing with structured outputs including title, price, rating, reviews, and strategic analysis.version: 1.0.0author: Buluslan@新西楼Newest AIglobs: ["*.md", "platforms.yaml", "scripts/*.js", "prompts/*.md"]--- # E-commerce Competitor Analyzer Skill ## Quick Start (For AI) **When to use this skill**: When user asks to analyze, research, or extract insights from e-commerce products (Amazon, Temu, Shopee). **What you should do**:1. Extract product identifiers (ASINs or URLs) from user input2. Call the scraper script to get product data3. Call the AI analysis with the analysis prompt template4. Output results in BOTH formats: Google Sheets + Markdown **Input examples**:- "Analyze B0C4YT8S6H"- "Analyze these products: B0C4YT8S6H, B08N5WRQ1Y, B0CLFH7CCV"- "Research this competitor: https://amazon.com/dp/B0C4YT8S6H" **Output requirements**:- Google Sheets table with: ASIN, Title, Price, Rating, 4 analysis summaries- Markdown report with detailed 4-dimensional analysis --- ## How AI Should Process Requests ### Step 1: Extract Product Identifiers From user input, extract all ASINs and/or URLs: **Example inputs**:```"Analyze these Amazon products:B0C4YT8S6HB08N5WRQ1YB0CLFH7CCV"``` **Extract**: `['B0C4YT8S6H', 'B08N5WRQ1Y', 'B0CLFH7CCV']` **Mixed input handling**:```"Analyze B0C4YT8S6H and https://amazon.com/dp/B08N5WRQ1Y"``` **Extract**: `['B0C4YT8S6H', 'B08N5WRQ1Y']` (extract ASIN from URL) ### Step 2: Batch Scrape Product Data For each product identifier:1. Detect platform (use `scripts/detect-platform.js` if available)2. Call appropriate scraper (Amazon: `scripts/scrape-amazon.js`)3. Use Olostep API with configured API key from `.env` **Batch processing pattern**:```javascript// Process all products in parallelconst products = ['B0C4YT8S6H', 'B08N5WRQ1Y', 'B0CLFH7CCV'];const results = await Promise.allSettled( products.map(asin => scrapeAmazon(asin))); // Handle failures gracefullyconst successful = results.filter(r => r.status === 'fulfilled');const failed = results.filter(r => r.status === 'rejected');``` ### Step 3: Batch AI Analysis For each successfully scraped product:1. Read the analysis prompt from `prompts/analysis-prompt-base.md`2. Replace product data placeholders in the prompt3. Call Gemini API (model: gemini-3-flash-preview)4. Extract structured analysis results **Analysis framework** (4 dimensions):1. **文案构建逻辑与词频分析** (The Brain) - Copywriting strategy & keywords2. **视觉资产设计思路** (The Face) - Visual design methodology3. **评论定量与定性分析** (The Voice) - Review sentiment analysis4. **市场维态与盲区扫描** (The Pulse) - Market positioning & blind spots ### Step 4: Generate Dual Format Output **Format 1: Google Sheets** (Structured Data) Write to Google Sheets with columns:| ASIN | 产品标题 | 价格 | 评分 | 文案分析摘要 | 视觉分析摘要 | 评论分析摘要 | 市场分析摘要 | **Sheet selection priority**:1. User explicitly specified Sheet ID/Name/URL2. Default from `.env` (`GOOGLE_SHEETS_ID`)3. Ask user to provide Sheet ID **Format 2: Markdown Report** (Detailed Analysis) Generate file: `竞品分析-YYYY-MM-DD.md` Structure:```markdown# Amazon Competitor Analysis Report ## Analysis Overview- Products analyzed: 3- Analysis date: 2026-01-29- Total time: ~5 minutes --- ## Product 1: B0C4YT8S6H ### Basic Information- Title: [Product title]- Price: [Price]- Rating: [Rating] ### Copywriting Strategy & Keyword Analysis[Full analysis...] ### Visual Asset Design Methodology[Full analysis...] ### Customer Review Analysis[Full analysis...] ### Market Positioning & Competitive Intelligence[Full analysis...] ---``` --- ## File Structure ```ecommerce-competitor-analyzer.skill/├── SKILL.md # This file (AI instructions)├── platforms.yaml # Platform configurations (URL patterns, regex)├── .env.example # Configuration template (API keys)├── prompts/ # AI prompt templates│ └── analysis-prompt-base.md # Base analysis framework (from n8n)├── scripts/ # Processing scripts│ ├── detect-platform.js # Platform detection utility│ ├── scrape-amazon.js # Amazon scraper (Olostep API)│ └── batch-processor.js # Batch processing engine└── references/ # Documentation └── n8n-workflow-analysis.md # n8n workflow insights``` --- ## Configuration Files ### platforms.yaml Contains platform-specific configurations:- URL patterns for platform detection- ASIN extraction regex patterns- Scraper API endpoints- Data extraction patterns **Key sections**:```yamlplatforms: amazon: url_patterns: ["amazon.com", "amazon.co.uk", ...] asin_regex: standard: "/dp/([A-Z0-9]{10})" scraper: provider: "olostep" api_endpoint: "https://api.olostep.com/v2/agent/web-agent"``` ### .env.example Template for required API keys:```bashOLOSTEP_API_KEY=your_olostep_api_key_hereGEMINI_API_KEY=your_gemini_api_key_hereGOOGLE_SHEETS_ID=YOUR_GOOGLE_SHEETS_ID_HERE``` **Critical**: Always check if `.env` file exists and contains required keys before processing. --- ## Analysis Prompt Template The AI analysis uses a proven 4-dimensional framework. The exact prompt is stored in:`prompts/analysis-prompt-base.md` **Key sections**:1. **Role**: 10-year experienced Amazon Operations Director & Brand Strategist2. **Goal**: Deep scan of product listing to extract strategic insights3. **Output Structure**: - Part 1: 文案构建逻辑与词频分析 - Part 2: 视觉资产设计思路 - Part 3: 评论定量与定性分析 - Part 4: 市场维态与盲区扫描 **Important**: Use the prompt EXACTLY as provided in the template without modifications. --- ## API Services ### Olostep API (Web Scraping)- **Purpose**: Scrape Amazon product pages with rendered JavaScript- **Endpoint**: `https://api.olostep.com/v2/agent/web-agent`- **Cost**: 1000 free requests/month, then $0.002/request- **Key param**: `comments_to_scrape: 100` (matching n8n config) ### Google Gemini API (AI Analysis)- **Purpose**: Generate comprehensive product analysis- **Model**: `gemini-3-flash-preview` (cost-effective)- **Cost**: ~$0.001/product- **Alternative**: `gemini-2-flash-thinking` (for complex analysis) ### Google Sheets API (Data Storage)- **Purpose**: Export structured results- **Authentication**: OAuth2 service account- **Cost**: Free tier --- ## Error Handling ### Batch Processing with Error Isolation **Critical pattern from n8n workflow**:```javascriptconst items = productIdentifiers;const results = await Promise.allSettled( items.map(async (item, index) => { try { const data = await scrapeProduct(item); const analysis = await analyzeWithAI(data); return { success: true, index, data: analysis }; } catch (error) { // Single failure doesn't stop batch return { success: false, index, error: error.message }; } })); // Report resultsconst successful = results.filter(r => r.status === 'fulfilled' && r.value.success);const failed = results.filter(r => r.status === 'rejected' || !r.value.success); console.log(`Processed: ${successful.length} succeeded, ${failed.length} failed`);``` ### Common Errors & Solutions | Error | Cause | Solution ||-------|-------|----------|| `OLOSTEP_API_KEY not found` | Missing .env file | Check .env exists and contains key || `Invalid ASIN format` | Malformed ASIN | Validate ASIN: 10 alphanumeric chars || `Scraping timeout` | Slow page load | Increase timeout or retry || `Gemini rate limit` | Too many requests | Add delay between batches | --- ## Platform Detection Logic ```javascriptfunction detectPlatform(urlOrId) { // Direct ASIN if (/^[A-Z0-9]{10}$/.test(urlOrId)) { return { platform: 'amazon', id: urlOrId }; } // Amazon URL patterns if (/amazon\.(com|co\.uk|de|es|fr|it|ca|co\.jp)/i.test(urlOrId)) { const asinMatch = urlOrId.match(/\/dp\/([A-Z0-9]{10})/i); if (asinMatch) { return { platform: 'amazon', id: asinMatch[1] }; } } // Other platforms (future) // if (/temu\.com/i.test(urlOrId)) return { platform: 'temu', id: extractId(urlOrId) }; return null;}``` --- ## Implementation Notes ### Current Version: Phase 1 MVP **Supported Platforms**: Amazon (US only)**Input Method**: Dialog-based (ASINs or URLs)**Output Format**: Google Sheets table + Markdown report ### Roadmap - ✅ Phase 1: Amazon MVP (current)- 🔄 Phase 2: Add Temu & Shopee platforms- 🔄 Phase 3: Cross-platform comparison- 🔄 Phase 4: Historical tracking & price alerts ### Design Philosophy This skill follows the **error isolation pattern** from the n8n workflow:- Single product failure NEVER stops the entire batch- Always report both successes and failures- Provide detailed error messages for debugging ### Performance Benchmarks | Operation | Time | Cost ||-----------|------|------|| Single product scrape | ~30 seconds | $0.002 (Olostep) || Single product analysis | ~45 seconds | $0.001 (Gemini) || **Total per product** | **~1-2 minutes** | **~$0.003** || Batch of 10 products | ~10-15 minutes (parallel) | ~$0.03 | --- ## References - **n8n Workflow**: Based on v81 workflow logic- **Platform Config**: See `platforms.yaml` for URL patterns and extraction rules- **Analysis Prompt**: See `prompts/analysis-prompt-base.md` for exact prompt template --- ## Important Reminders for AI 1. **ALWAYS extract ALL product identifiers** from user input before processing2. **ALWAYS use batch processing with Promise.allSettled** for error isolation3. **ALWAYS generate BOTH output formats**: Google Sheets + Markdown4. **NEVER modify the analysis prompt** - use it exactly as provided5. **ALWAYS validate .env exists** before starting processing6. **ALWAYS report processing summary**: X succeeded, Y failed7. **If Google Sheets ID is missing**, ask user to provide it8. **Use the exact prompt from prompts/analysis-prompt-base.md** without any modificationsRelated skills
1password
Install 1password skill for Claude Code from steipete/clawdis.
3d Web Experience
Install 3d Web Experience skill for Claude Code from sickn33/antigravity-awesome-skills.
Ab Test Setup
This handles the full A/B testing workflow from hypothesis formation to statistical analysis. It walks you through proper test design, calculates sample sizes,