| name | seo-guide |
| description | Draft a tight-SEO Trek Guide JSON file ready for Admin → Trek Guides → Import JSON (content type "Trek Guide"). Use when the user gives raw how-to / trekking-advice facts and wants a long-form guide page, or runs /seo-guide.
|
SEO Trek Guide Generator
Turn raw trekking knowledge (route advice, gear lists, training tips,
permit info, etc.) into a JSON file matching boilerplates/guide.json,
written for topical-authority SEO — guides exist to rank for informational
queries and cross-link into tour pages, not to sell directly.
Step 1: Gather facts
Use whatever the user supplied in the skill args. If the topic is too thin
to fill first_paragraph + content + a few content_blocks with real
substance, ask for more specifics rather than padding with generic filler.
Step 2: Read the template
Read boilerplates/guide.json for the exact field shape, and
boilerplates/README.md for the content-block type table.
Step 3: Write the JSON
Strip all _note* keys. Respect these hard DB limits:
| Field | Model limit | SEO target |
|---|
title | 200 chars | |
excerpt | 300 chars | |
seo.meta_title | 60 chars | under 60, keyword near the front |
seo.meta_description | 155 chars | under 155 |
seo.focus_keyword | 100 chars | informational intent, e.g. "how to acclimatize Kilimanjaro" |
seo.secondary_keywords | 300 chars | |
seo.og_title | 95 chars | |
seo.og_description | 200 chars | |
content_blocks[].heading | 300 chars | |
content_blocks[].anchor_id | 100 chars, slug format | only lowercase/hyphens |
SEO writing rules:
first_paragraph is what Google often pulls as the snippet — answer the implied question in the first two sentences.
- Use
content_blocks of type heading/paragraph/faq/checklist to break up long guides; a wall of one content blob hurts readability and dwell time.
schema_type defaults to Article — switch to FAQPage only if the guide is structured as Q&A, or HowTo for step-by-step content.
related_tours: link to tours this guide should funnel traffic toward (must already exist by slug).
- Leave
"slug": "" unless updating an existing legacy URL.
Step 4: Validate before writing
Count characters on every SEO field yourself. Rewrite tighter rather than
truncate mid-word.
Step 5: Save and hand off
Write the finished JSON to boilerplates/generated/<slug-or-title>.json.
Tell the user:
- Where the file was saved.
- To upload at Admin → Trek Guides → Import JSON, content type "Trek Guide", Dry run first.
- That related tour/tag slugs must already exist or they're silently skipped.