8.8 KiB
8.8 KiB
name, description
| name | description |
|---|---|
| seo-context | Manage per-project context files (brand voice, keywords, guidelines). Each website has its own context/ folder in the website repo. |
📝 SEO Context - Per-Project Configuration
Skill Name: seo-context
Category: quick
Load Skills: []
🚀 Purpose
Manage context files for each website project:
- ✅ brand-voice.md - Brand voice, tone, messaging (Thai + English)
- ✅ target-keywords.md - Keyword clusters by intent
- ✅ seo-guidelines.md - SEO requirements (Thai-specific)
- ✅ internal-links-map.md - Key pages for internal linking
- ✅ data-services.json - Analytics service configurations
- ✅ style-guide.md - Writing style, formality levels
Location: Each website has its own context/ folder in the repo root.
Use Cases:
- Create context files for new website project
- Update context from existing content
- Analyze current brand voice from published content
- Generate keyword clusters from performance data
- Export/import context between projects
📁 Context File Structure
website-name/
└── context/
├── brand-voice.md # Brand voice, tone, formality
├── target-keywords.md # Keyword clusters, search intent
├── seo-guidelines.md # Thai SEO requirements
├── internal-links-map.md # Priority pages for linking
├── data-services.json # Analytics configurations
└── style-guide.md # Writing style, examples
🔧 Context File Templates
brand-voice.md
# Brand Voice & Messaging
## Voice Pillars
### 1. เป็นกันเอง (Casual/Friendly)
- **What it means**: พูดเหมือนเพื่อนช่วยเพื่อน ไม่ทางการเกินไป
- **Example**: "มาเริ่ม podcast กันเลย! ไม่ต้องรอให้พร้อม 100%"
- **Avoid**: ภาษาทางการแบบเอกสารราชการ
### 2. น่าเชื่อถือ (Trustworthy)
- **What it means**: ให้ข้อมูลที่ถูกต้อง มีหลักฐานรองรับ
- **Example**: "จากการทดสอบ 10+ แพลตฟอร์ม เราพบว่า..."
- **Avoid**: อ้างอิงไม่มีแหล่งที่มา
## Tone Guidelines
**General Tone**: เป็นกันเอง แต่ยังคงความน่าเชื่อถือ
**Content Types**:
- How-To Guides: สอนเป็นขั้นตอน ใช้ภาษาง่ายๆ
- Review Content: เปรียบเทียบตรงไปตรงมา มีข้อมูลสนับสนุน
- News/Updates: กระชับ ได้ใจความ
## Formality Level
**Default**: ปกติ (Normal) - ผสมกันเองและทางการตามเหมาะสม
**For Social Media**: กันเอง (Casual) - ใช้คำฟุ่มเฟือยได้บ้าง
**For Blog**: ปกติ (Normal) - อ่านง่ายแต่ยังคงความน่าเชื่อถือ
target-keywords.md
# Target Keywords
## Primary Keyword Clusters
### Cluster: Podcast Hosting
**Intent**: Commercial Investigation
**Keywords (Thai)**:
- บริการ podcast
- host podcast
- แพลตฟอร์ม podcast
- podcast hosting ที่ดีที่สุด
**Keywords (English)**:
- podcast hosting
- best podcast platform
- podcast host
**Search Volume**: 2,900/month (TH)
**Difficulty**: Medium
## Secondary Clusters
### Cluster: Podcast Equipment
[Similar structure]
seo-guidelines.md
# SEO Guidelines (Thai-Specific)
## Content Requirements
### Word Count
- **Thai**: 1,500-3,000 words
- **English**: 2,000-3,000 words
### Keyword Density
- **Thai**: 1.0-1.5%
- **English**: 1.5-2.0%
### Readability
- **Thai Grade Level**: ม.6-ม.12
- **Formality**:Auto-detect from brand-voice.md
## Meta Elements
### Title
- Length: 50-60 characters
- Must include primary keyword
- Thai-friendly (no truncation issues)
### Description
- Length: 150-160 characters
- Include CTA
- Thai or English matching content language
## URL Slug
- Format: lowercase-with-hyphens
- Thai: Keep Thai or use transliteration
- Max 5 words
data-services.json
{
"ga4": {
"enabled": true,
"property_id": "G-XXXXXXXXXX",
"credentials_path": "./credentials/ga4.json"
},
"gsc": {
"enabled": true,
"site_url": "https://yoursite.com",
"credentials_path": "./credentials/gsc.json"
},
"dataforseo": {
"enabled": false,
"login": "your_login",
"password": "your_password"
},
"umami": {
"enabled": true,
"api_url": "https://analytics.yoursite.com",
"api_key": "your_api_key"
}
}
🔄 Workflows
Workflow 1: Create Context for New Project
Input: Website name, industry, target audience
Process:
1. Create context/ folder
2. Generate brand-voice.md from industry standards
3. Create target-keywords.md with initial research
4. Set up seo-guidelines.md with Thai-specific rules
5. Create empty data-services.json
Output:
- Complete context/ folder structure
- Ready for customization
Workflow 2: Analyze Existing Content
Input: Website URL or content files
Process:
1. Scrape published content
2. Analyze brand voice (formality, tone)
3. Extract keyword usage
4. Identify top-performing topics
5. Update context files
Output:
- Updated brand-voice.md (data-driven)
- target-keywords.md with actual usage
- Recommendations
📁 Commands
Create Context for New Project:
python3 skills/seo-context/scripts/context_manager.py \
--create \
--project "./my-website" \
--industry "podcast" \
--audience "Thai podcasters" \
--formality "normal"
Analyze Existing Content:
python3 skills/seo-context/scripts/context_manager.py \
--analyze \
--project "./my-website" \
--content-path "./published-articles/" \
--language th
Update from Performance Data:
python3 skills/seo-context/scripts/context_manager.py \
--update-keywords \
--project "./my-website" \
--gsc-data "./gsc-export.csv"
⚙️ Environment Variables
None required - all configuration is per-project in context files.
📊 Output Examples
Create Context Output:
✅ Context created for: my-website
📁 Location: ./my-website/context/
Created files:
✓ brand-voice.md (industry: podcast, formality: normal)
✓ target-keywords.md (3 initial clusters)
✓ seo-guidelines.md (Thai-specific)
✓ internal-links-map.md (empty, ready to populate)
✓ data-services.json (all services disabled)
✓ style-guide.md (templates)
Next steps:
1. Customize brand-voice.md with your actual voice
2. Add target keywords based on your research
3. Configure analytics services in data-services.json
Analyze Content Output:
📊 Analyzing existing content...
Found 25 articles (Thai: 18, English: 7)
Brand Voice Analysis:
- Formality: 65% Normal, 30% Casual, 5% Formal
- Recommended: ปกติ (Normal)
- Tone: เป็นกันเอง, น่าเชื่อถือ
Top Keywords:
1. บริการ podcast (42 occurrences)
2. podcast hosting (38 occurrences)
3. แพลตฟอร์ม podcast (25 occurrences)
Recommendations:
• เพิ่มคำหลัก "podcast hosting" ใน H2 มากขึ้น
• รักษาระดับความเป็นกันแบบนี้ไว้
• เพิ่ม internal links ระหว่างบทความ podcast
✅ Context files updated
✅ Context File Checklist
For each project, ensure:
- brand-voice.md - Voice pillars, tone guidelines, formality level
- target-keywords.md - At least 3 keyword clusters with search intent
- seo-guidelines.md - Thai word count, density, readability targets
- internal-links-map.md - Top 10 pages to link to
- data-services.json - At least one analytics service configured
- style-guide.md - Writing examples (good and bad)
🔄 Integration with Other Skills
- seo-multi-channel: Loads brand voice for content generation
- seo-analyzers: Uses seo-guidelines for quality scoring
- seo-data: Reads data-services.json for analytics connections
- website-creator: Context in website repo root
Use this skill when you need to set up or update context files for a website project.
Each website should have its own context/ folder with all configuration files.