- 9 mm* skills (orchestrator, article, social, publish, analytics) - 6 dependency skills (content-writer, geo-optimizer, etc.) - 3 analytics scripts (GSC, Google Ads, Meta Ads) - Config template + setup guide - SOUL-MM.md persona extension - OrbitOS integration reference
6.5 KiB
6.5 KiB
name, description
| name | description |
|---|---|
| mm-analytics-orchestrator | Pull SEO + Ad performance data for a client, analyze trends, and produce prioritized strategy recommendations. Saves report to vault and presents in chat. Use when: "วิเคราะห์ผล", "analytics report", "ดูสถิติ", "แนะนำกลยุทธ์", "strategy recommendations", "seo report", "ad performance", "content ideas from data", "เขียนอะไรดี", "analytics". |
mm-analytics-orchestrator
Pulls analytics data, analyzes trends, and produces prioritized strategy recommendations for a client.
When This Must Trigger
- "วิเคราะห์ผล", "analytics report", "ดูสถิติ"
- "แนะนำกลยุทธ์", "strategy recommendations"
- "seo report", "ad performance"
- "content ideas from data", "เขียนอะไรดี"
- "analytics"
Process
Step 1: Determine client
If not specified, ask:
วิเคราะห์ผลของลูกค้าไหน?
1. moreminimore
2. [other clients...]
Step 2: Pull data
Run analytics scripts from ~/Gitea/moreminimore-service-system/scripts/:
# GSC data
python3 mm_gsc.py --client <client-id> --days 30 --json
# Google Ads data (if available)
python3 mm_google_ads.py --client <client-id> stats --days 30 --json
# Meta Ads data (if available)
python3 mm_meta_ads.py --client <client-id> stats --days 30 --json
If a script fails (no data, API error), skip that source and note it.
Step 3: Analyze
SEO Analysis
a. Quick Wins (Position 4-10)
- Queries on page 1 but below top 3
- High impression, low CTR → title/description optimization
- Action: ปรับ meta title/description
b. Content Gaps (Position 11-30)
- Queries with impressions but no dedicated content
- Action: เขียนบทความใหม่
c. CTR Opportunities
- High impressions, low CTR (< expected for position)
- Action: ปรับ title/description, add schema
d. Declining Pages
- Pages with >30% traffic decline
- Action: Refresh content, update data
e. GEO Opportunities
- Question-format queries, definition queries
- Action: Optimize for AI citation
Ad Analysis (if data available)
a. High CPA Campaigns
- CPA > 2x target
- Action: ปรับ targeting, ทดสอบ creative ใหม่
b. Low QS Keywords
- Quality Score < 5
- Action: ปรับ ad relevance, landing page
c. Budget Optimization
- High spend, low conversion
- Action: ย้าย budget
d. Creative Fatigue
- CTR declining over time
- Action: Refresh creative
Cross-Channel
a. SEO + Ad Synergy
- Organic ranking well for paid keyword
- Action: ลด paid spend
b. Content → Ad Pipeline
- Article with good traffic → create ad
- Action: สร้าง campaign จาก content
c. Ad → Content Pipeline
- Keyword with good ad conversion → write article
- Action: เขียนบทความ SEO
Step 4: Prioritize recommendations
Rank by impact × effort:
| Priority | Criteria |
|---|---|
| 🔴 Priority 1 | High impact, low effort (quick wins) |
| 🟡 Priority 2 | High impact, medium effort (content opportunities) |
| 🟢 Priority 3 | Medium impact, optimization (ad tuning) |
| 🔵 Priority 4 | Cross-channel opportunities |
Step 5: Present and ask
Present the report in chat (match user's language):
📋 Strategy Report: [Client Name]
📅 Period: [date range]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 SEO Performance
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
| Metric | Value | Trend |
|--------|-------|-------|
| Clicks | X | ↑/↓ X% |
| Impressions | X | ↑/↓ X% |
| CTR | X% | ↑/↓ |
| Position | X | ↑/↓ |
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎯 Priority 1: Quick Wins
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. [Action]
Evidence: [data]
Expected: [outcome]
2. [Action]
...
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📝 Priority 2: Content Opportunities
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. เขียนบทความ: "[topic]"
Keyword: [kw], [X] impressions, position [X]
Search intent: [type]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📢 Priority 3: Ad Optimization
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
(ถ้ามีข้อมูล ads)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔄 Priority 4: Cross-Channel
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Then ask:
อยากทำตามแนะนำไหม?
1. ✅ ทำทั้งหมด — สร้าง brief / optimize ตามลำดับ
2. 📝 เฉพาะ content — สร้าง brief จาก content gaps
3. 📢 เฉพาะ ads — optimize campaigns
4. ⏭️ ข้าม — แค่ดูรายงาน
If user chooses to act:
- Content gaps → load
mm-article-idea-extractwith the recommended topic - Ad optimization → provide specific commands/changes
- SEO fixes → provide specific title/description rewrites
Step 6: Save report
Save to vault:
~/vault/50_Resources/Strategy for Customers/<client-id>/YYYY-MM-DD-report.md
Create the folder if it doesn't exist.
Report format:
---
type: strategy-report
client: <client-id>
period: <start-date> to <end-date>
generated: YYYY-MM-DD
---
# Strategy Report: [Client Name]
[full report content]
Step 7: Confirm
✅ รายงาน saved: ~/vault/50_Resources/Strategy for Customers/<client-id>/YYYY-MM-DD-report.md
Output
- Chat: full report with recommendations
- Vault:
~/vault/50_Resources/Strategy for Customers/<client-id>/YYYY-MM-DD-report.md
Notes
- Match user's language (Thai if they write Thai, English if English)
- If GSC data is empty (new site), note it and focus on ad data
- If no ad data, focus on SEO only
- Always ask before taking action (creating briefs, optimizing)
- Reports are cumulative — each report builds on previous data