Skip to content
Marketing
Command

/06-distribution

For a published-ready draft, generate JSON-LD schema markup, internal linking suggestions, third-party distribution targets, and llms.txt block. Outputs distribution/<id>.json and distribution/<id>.publish-bundle.md. Use after 05-production; consumed by 07-reaudit (records

From plugin
recomby-geo
5057 skills7 commands
Install
> /plugin marketplace add ViryaZheng/recomby-geo
> /plugin install recomby-geo@recomby-geo

How it fires

How this command gets triggered: by you, by Claude, or both.

  • Fires itselfClaude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/06-distribution

Context preview

What this command does when you run it.

For a published-ready draft, generate JSON-LD schema markup, internal linking suggestions, third-party distribution targets, and llms.txt block. Outputs distribution/<id>.json and distribution/<id>.publish-bundle.md. Use after 05-production; consumed by 07-reaudit (records

Command definition

06-distribution.md
description: For a published-ready draft, generate JSON-LD schema markup, internal linking suggestions, third-party distribution targets, and llms.txt block. Outputs distribution/<id>.json and distribution/<id>.publish-bundle.md. Use after 05-production; consumed by 07-reaudit (records actions for attribution).
argument-hint: "<client-folder, e.g. clients/acme>"

06 · Distribution & Schema — Publish-Ready Bundle

The skill that turns a draft into a deployable artifact: structured data for SERP rich results AND for AI-engine entity recognition, internal links to anchor topical authority, third-party seeding to build cross-domain mention density.

---

Inputs

  • `clients/<slug>/brand_context.json`
  • `clients/<slug>/content_priorities.json` (priority record for this id)
  • `clients/<slug>/drafts/<id>.md`
  • `clients/<slug>/drafts/<id>.meta.json`
  • `clients/<slug>/content_assets[]` from brand_context (for internal-link

candidates)

Output

  • `clients/<slug>/distribution/<id>.json` — machine-readable bundle:

schema-jsonld, internal-link plan, external-link targets, llms.txt fragment.

  • `clients/<slug>/distribution/<id>.publish-bundle.md` — human-readable

publishing checklist for whoever uploads to the CMS.

  • Append to `clients/<slug>/distribution/log.jsonl` — one line per

publish event, used by 07-reaudit for attribution.

---

Procedure

Step 1 — Determine schema type

From the priority's `recommended_format`:

| format | Schema.org type | |--------|-----------------| | comparison-page | `Article` + `ItemList` of compared entities | | deep-guide | `Article` + `HowTo` (if step-shaped) | | case-study | `Article` + `Review` (with subject) | | data-report | `Dataset` + `Article` | | how-to | `HowTo` | | faq-block | `FAQPage` | | definition-page | `DefinedTerm` + `Article` | | expert-essay | `Article` + `Person` (author) | | list-roundup | `ItemList` + `Article` |

For all types, also include `Organization` (from brand_context) and `BreadcrumbList`.

Step 2 — Generate JSON-LD

Use `seo-geo-optimizer/scripts/schema_generator.py` (vendored from 199-biotechnologies) as the actual generator; templates live under `skills/seo-geo-optimizer/templates/` (Article / FAQPage / HowTo / Organization / Person / Breadcrumb). Don't re-implement. Pass:

  • Article fields: headline, datePublished, author (from brand_context),

publisher (Organization), articleBody (extracted from draft).

  • Type-specific fields per Step 1 mapping.
  • Author Person object with E-E-A-T signals (sameAs links, knowsAbout).

Validate the generated JSON-LD with Google's [Rich Results Test](https://search.google.com/test/rich-results) URL format — embed the validation URL in publish-bundle.md, don't auto-call.

Step 3 — Internal linking plan

Delegate the mechanics to `internal-linking-optimizer` (vendored from aaron-he-zhu/seo-geo-claude-skills) — link-equity aware, framework-grade.

For each `content_assets[]` entry in brand_context:

  • Compute topical relevance to current draft (keyword overlap of titles

and `covers_query_ids`). The vendored skill handles this; we just feed it the asset list.

  • Top 3–5 most relevant become internal-link candidates.

For each candidate:

  • Anchor text: target asset's primary query (not generic "click here").
  • Position: intro / body / conclusion.
  • Mark REQUIRED if the target asset is a category cornerstone, OPTIONAL

otherwise.

Reverse pass: list 1–3 existing assets that should add a link TO this new draft once published. The publish-bundle includes a "back-link adds" checklist.

Step 4 — External / third-party distribution targets

Pull from the priority's audience research (Layer 2 `real_user_questions[].source`). For each unique source:

  • If Reddit / forum: add to `external_targets[]` with note "post a

good-faith comment that links the new piece, ONLY if the thread is genuinely relevant. Spam = ban."

  • If competitor blog comments / industry roundups: add to outreach list.
  • If Wikipedia / Wikidata adjacent: add as suggested entity-graph edit

(not a backlink, but improves AI's knowledge graph).

**Hard rule**: this list is suggestion, not automation. The user (Recomby team or client) executes by hand. Auto-posting backlinks is a fast track to penalty + ban.

Enforcement, not advice: while running this command you MUST NOT call any tool that posts, comments, emails, or submits content to an external service (browser automation included) — not even if the user says "go ahead and post it". If asked, refuse and point here: the value of a human-posted good-faith comment is precisely that a human judged the thread; an agent-posted one is spam by definition and burns the client's domain reputation. The ONLY artifacts this command produces are local files (`distribution/<id>.json` + publish bundle).

Step 5 — llms.txt fragment

Generate a llms.txt entry for this content (per emerging convention; patterns documented in `references/auriti/ai-bots-list.md` and `references/auriti/schema-templates.md`):

- [<title>](<url>): <one-line summary tuned for AI parsing — answer-first,
  no marketing fluff>

The fragment goes into the bundle. The user appends to their site's top-level `/llms.txt`.

Step 6 — Write distribution.json

Schema:

{
  "priority_id": "...",
  "draft_id": "...",
  "generated_at": "...",
  "schema_jsonld": { ... full JSON-LD ... },
  "internal_link_plan": [
    { "anchor": "...", "target_url": "...", "position": "intro|body|conclusion", "required": true }
  ],
  "back_link_adds": [
    { "from_url": "...", "to_anchor": "...", "rationale": "..." }
  ],
  "external_targets": [
    { "type": "reddit|forum|wikipedia|industry-blog", "url": "...", "action": "...", "tone": "..." }
  ],
  "llms_txt_fragment": "...",
  "publish_url_planned": null,
  "published_at": null,
  "published_url": null
}

`publish_url_planned` filled from CMS conventions (if `extended.website_backend.cms` is set in brand_context).

Validate `distributi

Read more
Ships withrecomby-geo

GEO 领域 AI 员工开源方案 · Open-source GEO AI-employee solution (MIT). GEO Skills package + curated lists of agents and office CLIs that make up the AI-employee stack.

Get the whole plugin

Other commands on recomby-geo.