Skip to content

chore(site-docs): GEO answer blocks, FAQ JSON-LD, internal links - #391

Merged
zxch3n merged 3 commits into
mainfrom
cursor/seo-geo-llms-internal-links-3144
Sep 4, 2026
Merged

chore(site-docs): GEO answer blocks, FAQ JSON-LD, internal links#391
zxch3n merged 3 commits into
mainfrom
cursor/seo-geo-llms-internal-links-3144

Conversation

@zxch3n

@zxch3n zxch3n commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

What changed

GEO / SEO follow-up rebased onto current main (includes #383, #387, #389, #390, #393, #394). Does not recreate those pages; keeps this PR’s answer blocks, FAQ JSON-LD, and internal links.

  1. llms.txt answer blocks (scripts/llms-answers.mjs + generate-llms.mjs)

    • Best way to hand off a coding agent session → /docs/session-handoff/, plus Sessions and Team Features
    • Parallel coding agents for teams → Agent Session Control, Worktrees, Team Features, Agent Config
    • Multi-model (Claude / Kimi / DeepSeek) + ACP in one workspace → Agent Config, CLI Runtime Types, Team Features
    • Generator fails if an answer link is not a current English docs path
  2. FAQ JSON-LD on session-handoff (en/zh)

    • Reuses pageHead({ jsonLd }) via faqJsonLd() in lib/json-ld.ts
    • scripts/generate-docs-faq.mjs extracts ### Q&A from the page’s ## FAQ / ## 常见问题 section (same generate pipeline as sitemap / reading time)
    • Any later docs page with that heading convention gets the same treatment (parallel-agents FAQ on main is picked up automatically)
  3. Internal links

    • Landing team/power section → session-handoff (How to hand off a session)
    • Landing orchestration section → session-orchestration (How one agent runs the others)
    • Cross-links from session.mdx, agents.mdx, session-orchestration.mdx, and the docs index (en/zh)
    • team.mdx already linked session-handoff; left as-is
  4. Sitemap / nav

    • Confirmed: session-handoff is in Features meta.json (sidebar) and is emitted by generate-sitemap.mjs as https://lody.ai/docs/session-handoff/ and the zh twin. No nav/sitemap gap to fix.

How to verify

pnpm --filter @lody/site-docs generate
pnpm --filter @lody/site-docs test
pnpm --filter @lody/site-docs typecheck
pnpm --filter @lody/site-docs build

Local verification after rebase onto main:

  • generate, test, typecheck, and build pass
  • /docs/session-handoff and /zh/docs/session-handoff prerender; FAQPage JSON-LD still matches the page FAQ
  • #394 UI labels on handoff/team/parallel-agents/blog and #393 Current workspace / New worktree fork text are preserved from main
  • llms.txt Answers links resolve to live docs; this PR still does not add /docs/parallel-agents/ or the blog: how to handoff a Claude Code session to a teammate (en/zh) #390 blog URL (scope)

Residual risks / notes

  • #389 (/docs/parallel-agents/) and #390 (/blog/handoff-claude-code-session/) are now on main. This rebase does not add those URLs to llms-answers.mjs; the parallel-agents answer still points at orchestration / worktrees / team / agents.
  • Landing orchestration links to session-orchestration rather than session-handoff. Handoff is the team/power story; stuffing it into agent fan-out would be the wrong product claim.
  • FAQ JSON-LD depends on the ## FAQ / ## 常见问题 + ### convention. A heading rename would drop schema until the extractor is updated (covered by tests against the current pages).
Open in Web Open in Cursor 

cursoragent and others added 3 commits September 4, 2026 12:31
Add llms.txt answer blocks for session handoff, parallel agents, and
multi-model ACP; emit FAQPage JSON-LD from session-handoff FAQ sections;
and add on-brand internal links from landing and related docs.

Model: cursor-grok-4.6

Co-authored-by: Zixuan Chen <zx@loro.dev>
Prerender cannot walk content/ from import.meta.url. Extract FAQ sections
during generate, matching the blog reading-time artifact.

Model: cursor-grok-4.6

Co-authored-by: Zixuan Chen <zx@loro.dev>
Model: cursor-grok-4.6

Co-authored-by: Zixuan Chen <zx@loro.dev>
@cursor
cursor Bot force-pushed the cursor/seo-geo-llms-internal-links-3144 branch from dd04f7c to a8b997e Compare September 4, 2026 12:33
@zxch3n
zxch3n marked this pull request as ready for review September 4, 2026 12:43
@zxch3n
zxch3n merged commit d109b6d into main Sep 4, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants