ワンクリックで
heading-tree
Generates H1-H4 heading structure for a page. SEO-optimized hierarchy. Stateless, deterministic.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Generates H1-H4 heading structure for a page. SEO-optimized hierarchy. Stateless, deterministic.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Canonical lead-gen tracking for Astro.js on Cloudflare Workers (v6, Run 6 contract). Drop-in components: <Tracking/>, <TrackedForm/>, <PhoneLink/>, <CallbackButton/>. Two channels with a SHARED event_id: browser (GTM → GA4 / Meta Pixel / Google Ads) + server-side via the Soborbo event-gateway worker. Model 2: the browser OWNS on-site GA4 + Google Ads; the server sends Meta CAPI on-site (+ TikTok/LinkedIn/Microsoft click-ID forwarders, event_id-deduped) and Google Ads ONLY offline (CRM lead lifecycle, Google Data Manager API); the server sends NO GA4. Two gateway ingress paths: tokenless browser path for low-risk clicks (Origin allow-list + rate limit), authenticated server path (per-site token, service binding) for form/lead/purchase conversions dispatched by the site BACKEND. No Turnstile. Daily synthetic smoke-lead cron + digest guard. Consent Mode v2 + CookieYes, gclid/gbraid/wbraid/fbclid + full UTM capture, calculator funnel, form abandonment, phone dedup, first/last touch attribution. Bilingual / multi-
DEPRECATED (legacy, in old/) — use the `soborbo-tracking` skill instead for GA4 + Meta + Google Ads tracking on Astro. Kept for reference only.
Audit and strengthen visible E-E-A-T signals and AI-search (GEO) readiness on Astro lead-gen sites. Use when a page or site needs Experience/Expertise/Authoritativeness/Trust signals, author credibility, first-hand-experience proof, trust pages (about/contact/privacy/returns), NAP + company registration display, review/trust-mark surfacing, AI-crawler access in robots.txt, or answer-first content for ChatGPT/Gemini/Perplexity/AI Overviews. Also triggers on "EEAT", "E-E-A-T", "GEO", "AEO", "AI search visibility", "get cited by AI", "trust signals", "author bio", "local trust", or making a small/niche business outrank larger competitors. Runs a deterministic auditor with runnable tests. Delegates JSON-LD generation to schema-entity-graph and JSON-LD validation to schema-audit; delegates copy voice to humanise-copy.
Width-based responsive image patterns for Astro. Local build-time processing, per-format quality (AVIF/WebP/JPG/PNG), alpha-aware fallback, art direction, face-focus, OG generation, image SEO. Picture, ArtPicture, FixedImage components.
Per-site client tracker and Astro endpoint for the centralised soborbo-error-pipeline workers. Captures client JS errors via sendBeacon, forwards via console.error → Tail Worker. Server-side uncaught exceptions are captured automatically. ~1.5KB client bundle, no external deps. Email throttled to 1 per (site, code) per 4 hours by the notifier worker.
Form infrastructure for Astro projects. Contact forms, booking forms, quote requests. Zod validation, email delivery (Resend/Brevo), rate limiting, Google Sheets, postcode lookup, spam protection.
| name | heading-tree |
| description | Generates H1-H4 heading structure for a page. SEO-optimized hierarchy. Stateless, deterministic. |
Outputs H1-H4 heading hierarchy for a page. Structure only, no body copy.
Single deterministic heading tree. No alternatives, no variants.
headings:
- level: h1
section: hero
text: "House Removals Bristol - Stress-Free Moving"
- level: h2
section: benefits
text: "Why Families Choose Our Moving Service"
children:
- level: h3
text: "Fully Insured & Protected"
Output contains text only. Patterns/examples are documentation only.
page_type: landing | service | service-area | article
primary_keyword: "house removals bristol" # Required
secondary_keywords: ["moving company"] # Optional
location: "Bristol" # Required for local
sections: [hero, benefits, faq, final-cta] # From allowed list
faq_questions: ["How much..."] # Optional
| Condition | Result |
|---|---|
Missing primary_keyword | STOP - no output |
Missing page_type | STOP - no output |
| Unknown section in list | IGNORE section |
| Empty sections list | STOP - no output |
| Section | H2 | H3s |
|---|---|---|
hero | No (H1 only) | No |
trust-strip | No | No |
problem | Yes | No |
solution | Yes | No |
benefits | Yes | 3 typical |
how-it-works | Yes | 3 (steps) |
social-proof | Yes | No |
pricing | Yes | 2-3 (tiers) |
faq | Yes | 6 (questions) |
final-cta | Yes | No |
gallery | Yes | No |
coverage | Yes | Optional |
Unknown section → ignored, no error.
| Rule | Requirement |
|---|---|
| Count | Exactly 1 per page |
| Keyword | Primary keyword at START |
| Location | Include if local business |
| Length | Max 60 characters |
| Section | Always hero |
| Rule | Requirement |
|---|---|
| Count | 1 per section (except hero, trust-strip) |
| Order | Follow sections order |
| Primary keyword | In 1-2 H2s max |
| Location | In 2-3 H2s for local |
| Rule | Requirement |
|---|---|
| Parent | Always under H2 (never orphaned) |
| Count | 3-6 per parent H2 |
| Keyword | Rarely, natural only |
| Rule | Requirement |
|---|---|
| Page type | Article ONLY |
| Count | Max 5 per page |
| Forbidden | Landing, service, service-area pages |
| Scenario | Behavior |
|---|---|
faq_questions provided | Use provided questions as H3s |
faq_questions empty | Use generic templates |
| No FAQ section | Skip |
Generic FAQ templates:
For local business pages:
| Level | Location Required |
|---|---|
| H1 | Always |
| H2 | 2-3 headings |
| H3 | Rarely |
keyword_density: primary | secondary | location | none
This is annotation only — helps downstream skills, not a rule.
| Density | Max Count |
|---|---|
| primary | 3 total (H1 + 1-2 H2s) |
| secondary | No limit |
| location | H1 + 2-3 H2s |
page_type: landing
primary_keyword: "house removals bristol"
headings:
- level: h1
section: hero
text: "House Removals Bristol - Stress-Free Moving From £299"
- level: h2
section: benefits
text: "Why Families Choose Our Moving Service"
children:
- { level: h3, text: "Fully Insured & Protected" }
- { level: h3, text: "Fixed Price, No Hidden Fees" }
- { level: h3, text: "Professional Packing Service" }
- level: h2
section: faq
text: "House Removals FAQs"
children:
- { level: h3, text: "How much do Bristol removals cost?" }
- { level: h3, text: "What areas around Bristol do you cover?" }
- level: h2
section: final-cta
text: "Ready for a Stress-Free Move?"