Commit Graph

18 Commits

Author SHA1 Message Date
Sam Julien ca95475607 fix(shell-docs): IA, sidebar, and HITL cleanup
Sidebar / IA / HITL cleanup from the shell-docs QA triage:

- Add `absent` mode to `<WhenFrameworkHas>` so MDX pages can declare a
  fallback branch for frameworks where a flag is null/missing, instead
  of collapsing to an empty middle.
- Use the new `absent` branch on `useInterrupt.mdx` and `headless.mdx`
  to point readers without `interrupt_pattern` at `useHumanInTheLoop`.
- Wrap the `useHeadlessInterrupt`-using "Driving it from plain UI"
  section in `headless.mdx` inside the native gate where the symbol is
  actually defined.
- Add `multi-agent/meta.json` so breadcrumbs / section labelling for
  `/multi-agent/subagents` use the explicit "Multi-Agent" title.
- Add a shared lead-in between `<InlineDemo>` and the gated branches in
  `agent-config.mdx`.
- Move `ag-ui-middleware.mdx` into `agentic-protocols/`, register it in
  the section's `meta.json`, link to the upstream AG-UI guide, and add
  a 302 from the old `/ag-ui-middleware` path.
2026-04-30 08:55:49 -07:00
Sam Julien 7e0853daef chore(shell-docs): hide and clean up stale pages
Drop orphaned/broken/AI-slop pages from nav, add 302 redirects, and
delete dead per-framework override stragglers. Items addressed:

- 1.1: Tutorials section hidden (broken end-to-end; rewrite post-launch)
- 6.1: coding-agent-setup.mdx (rename straggler -> /coding-agents)
- 10.1: copilot-suggestions.mdx (orphaned broken stub)
- 11.1: generative-ui/open-json-ui.mdx (AI-slop placeholder)
- 21.1: migrate/1.10.X.mdx (~1yr-old migration target)
- 16.1: 3 orphan shared-state files in adk/langgraph/llamaindex
  (each meta.json wires only one of state-inputs-outputs vs
  workflow-execution; the other was a dead duplicate)

All redirects use permanent: false (302) so URLs can be restored at
the same paths once the affected pages are properly authored.
2026-04-30 06:17:28 -07:00
github-actions[bot] bbbf45702b style: auto-fix formatting 2026-04-28 20:30:40 +00:00
Sam Julien 232a965888 revert(shell-docs): un-promote Agentic Protocols from top-level section
The previous commit (993746111) bundled image fixes with a structural
nav change that wasn't asked for. The ask was simply "rename the page
to Overview so there is no duplicated item in the nav" — a frontmatter
title change, nothing more.

Reverting just the structural pieces:

- agentic-protocols/overview.mdx → index.mdx (back to original filename)
- agentic-protocols/meta.json: pages list back to ["index", ...]
- top-level meta.json: drop "---Agentic Protocols---" section header so
  agentic-protocols stays as a subgroup under Get Started
- next.config.ts: drop the new /agentic-protocols → /overview redirect;
  restore /concepts/agentic-protocols and /learn/agentic-protocols
  redirect targets to /agentic-protocols (not /overview)

The page's frontmatter title stays "Overview" — that part of 993746111
was the actual ask and it solves the duplicate-label problem on its own.

Image fixes from 993746111 are kept.
2026-04-28 13:28:52 -07:00
Sam Julien eb859a846c fix(shell-docs): pull real images from production CDN, restructure Agentic Protocols nav
## Replaced 11 LFS-pointer-stub images with real binaries

The repo stores several diagram PNGs in Git LFS and the local clone
didn't have them resolved (git-lfs not installed). They were 131-byte
text-pointer files on disk, so every page that referenced them
showed a broken-image icon. Affected images:

- any-agentic-backend-{light,dark}.png (used on /agentic-protocols
  overview, /agentic-protocols/a2a, /agentic-protocols/mcp)
- agui-ecosystem-{light,dark}.png (/agentic-protocols/ag-ui)
- mcp-and-a2a-through-agui-{light,dark}.png (overview)
- gen-ui-specs-{light,dark}.png (/concepts/generative-ui-overview)
- ai-protocol-stack.png, ag-ui-overview-with-partners-dark.png,
  a2ui-composer.png (referenced from various promoted pages)
- generative-ui/{chat,chat-plus,chatless}-surface.png (the surfaces
  section in /concepts/generative-ui-overview — these were missing
  from public/images entirely after the gen-UI merge; copied from
  upstream first, then replaced with the real binaries from the live
  docs site since upstream's copies are also LFS stubs)

Source: production docs site at docs.copilotkit.ai/images/* (HTTP 200
on every file). Pulled via curl, sizes range 128KB–714KB — real
binaries, not pointers.

## Agentic Protocols promoted to its own section

Per design call: "Agentic Protocols" is now a top-level section
between Get Started and Build Chat UIs (was wedged into Get Started
as a spread group, which produced an awkward duplicate label —
"Agentic Protocols" group label with an "Agentic Protocols" page
entry inside it).

Changes:

- `agentic-protocols/index.mdx` renamed to `overview.mdx` so the
  nav slug is `/agentic-protocols/overview` (was the ugly
  `/agentic-protocols/index` because buildNavTree pushed `"index"`
  through as a literal slug).
- The page's frontmatter title is now "Overview" (was "Agentic
  Protocols", which duplicated the section header in the nav).
- `agentic-protocols/meta.json` lists `["overview", "ag-ui", "mcp",
  "a2a"]`.
- Top-level `meta.json` adds `---Agentic Protocols---` section header
  before the spread, dropping the wedged `...agentic-protocols` from
  inside Get Started.
- `next.config.ts` adds `/agentic-protocols → /agentic-protocols/overview`
  redirect (the bare path used to resolve via `index.mdx`; now needs
  to land on the renamed overview page). The earlier `/learn/...`
  and `/concepts/...` redirects for the same target updated to point
  at `/overview` directly.

## Sidebar reads cleanly now

  GET STARTED
    Quickstart, Coding Agents, Concepts (3-page subgroup)

  AGENTIC PROTOCOLS
    Overview, AG-UI, MCP, A2A

  BUILD CHAT UIS
    ...
2026-04-28 13:28:52 -07:00
Sam Julien 2f98b4a194 feat(shell-docs): split protocols into Agentic Protocols section, move Intelligence Platform + Threads to Enterprise, merge gen-UI overview pages
Tightens the Concepts subgroup (which had ballooned to 10 entries
after the /learn/ consolidation) and gives the protocol pages and
Enterprise-flavoured explanation pages the homes they actually
belong in.

## Structural changes

**New `Agentic Protocols` section under Get Started.** The four
protocol-related pages move from `/concepts/*` into a dedicated
`/agentic-protocols/` folder so they live as a coherent section
rather than as four siblings inside Concepts. Titles drop the
`(Agents<->X)` parenthetical — folder + section context already
disambiguates.

  /concepts/agentic-protocols  → /agentic-protocols (now the section overview)
  /concepts/ag-ui-protocol     → /agentic-protocols/ag-ui
  /concepts/mcp-servers        → /agentic-protocols/mcp
  /concepts/a2a-protocol       → /agentic-protocols/a2a

`agentic-protocols/meta.json` lists the four pages with the section
overview as `index`. Top-level `meta.json` adds `...agentic-protocols`
under Get Started.

**Intelligence Platform + Threads explanation pages move to
Enterprise.** Both pages document Premium-only architecture
(threads + the platform that hosts them); they belong next to the
how-to and self-hosting pages, not in framework-agnostic Concepts.

  /concepts/intelligence-platform → /premium/intelligence-platform
  /concepts/threads               → /premium/threads-explained
                                    (renamed to disambiguate from
                                     the existing how-to /threads)

`premium/meta.json` reordered so the explanation pages sit between
the overview and the how-to pages.

**Generative UI Overview merged.** The old
`concepts/generative-ui-overview.mdx` (long, with surfaces /
attributes / patterns / ecosystem mapping sections, but using
inconsistent terminology — "Static" vs "Controlled") and
`concepts/three-types-of-gen-ui.mdx` (concise, sharp prose, canonical
"Controlled / Declarative / Open-Ended" terminology that matches the
Build Generative UI nav section names) overlapped substantially.

Merged into a single `concepts/generative-ui-overview.mdx` with:

- Tight intro from three-types
- Application Surfaces section (chat / chat+ / chatless) from overview
  — unique value, not duplicated elsewhere
- Three types section using three-types' prose + terminology, with
  the tradeoff bullets borrowed from overview's PatternCard component
- Ecosystem Mapping table from overview, retitled with the unified
  terminology
- "AG-UI / CopilotKit are gen-UI agnostic" closer with the dual
  light/dark image
- "Where to go next" pointers for downstream guides

three-types-of-gen-ui deleted; redirect catches any inbound link.

## `<Image>` registry fix (load-bearing)

The MDX `<Image>` component was registered to destructure only `src`
and `alt`, silently dropping `className`. Every page that ships dual
light/dark variants (`block dark:hidden` / `hidden dark:block`)
rendered both versions stacked — the user-visible "duplicate image"
on agentic-protocols (and the same shape on ag-ui, a2a, mcp, the
gen-UI overview).

Updated the registry component to forward `className`, `width`, and
`height`. The dark/light Tailwind toggling now works as authored.

## Concepts post-restructure

After the moves, the Concepts subgroup is back to a focused set:

  architecture
  generative-ui-overview
  oss-vs-enterprise

These are the framework-agnostic 5-minute primers under Get Started.
Everything that was specifically about a protocol, the Intelligence
Platform, or threads has a more accurate home.

## Redirects

Per-path rules in `next.config.ts` for every URL that was live
between the /learn/ consolidation pass and this restructure:

  /concepts/agentic-protocols    → /agentic-protocols
  /concepts/ag-ui-protocol       → /agentic-protocols/ag-ui
  /concepts/mcp-servers          → /agentic-protocols/mcp
  /concepts/a2a-protocol         → /agentic-protocols/a2a
  /concepts/intelligence-platform → /premium/intelligence-platform
  /concepts/threads              → /premium/threads-explained
  /concepts/three-types-of-gen-ui → /concepts/generative-ui-overview

The earlier /learn/ rules also rewritten to point straight at the
new canonical homes (avoiding 308→308 chains).

## Inbound link rewrites

All cross-page links in the moved pages, plus the architecture
concept page, oss-vs-enterprise concept page, threads how-to,
premium/self-hosting, useCapabilities reference, and the snippets
that referenced the old `/concepts/*` paths. Verified zero remaining
references to the old URLs (except the irrelevant external
`learn.microsoft.com` URLs in MS Agent Framework integration pages).

## Smoke tested

All 9 new canonical URLs return 200. All 10 sampled redirects
(7 /concepts/* + 3 /learn/*) hit the right destination in one hop.
2026-04-28 13:28:52 -07:00
Sam Julien e4878b4a5f feat(shell-docs): consolidate /learn/* into Concepts, /tutorials/, /generative-ui/, /whats-new/
The upstream `/learn/*` tree was largely a Diátaxis explanation-tier
parallel to the rest of the docs, and after the IA restructure shipped
the Concepts subgroup under Get Started in PR #4329, /learn/* read as
visible duplication: two "Threads" entries, two "Architecture"
entries, two "AG-UI" pages, etc. The earlier Notion plan kept the
split and proposed a nav-label fix; this PR reverses that call and
folds the explanation pages into Concepts where they belong.

## What moved

**Promoted to /concepts/** (7 files):
- learn/threads.mdx              → concepts/threads.mdx
- learn/intelligence-platform.mdx → concepts/intelligence-platform.mdx
- learn/agentic-protocols.mdx    → concepts/agentic-protocols.mdx
- learn/ag-ui-protocol.mdx       → concepts/ag-ui-protocol.mdx
- learn/a2a-protocol.mdx         → concepts/a2a-protocol.mdx
- learn/connect-mcp-servers.mdx  → concepts/mcp-servers.mdx (renamed)
- learn/generative-ui/index.mdx  → concepts/generative-ui-overview.mdx

The new Concepts subgroup is a 10-page cluster covering architecture,
the Intelligence Platform, the three gen-UI types + a deep overview,
the four agentic protocols (AG-UI, MCP, A2A, plus the meta page), and
threads + OSS-vs-Enterprise. Ordered by topic flow rather than
alphabetically.

**Moved to natural homes**:
- learn/tutorials/multi-conversation-chat.mdx → tutorials/multi-conversation-chat.mdx
- learn/generative-ui/specs/open-json-ui.mdx → generative-ui/open-json-ui.mdx (added under "Declarative" in the gen-UI nav alongside A2UI)

**Promoted to top-level /whats-new/**: 7 files. New top-level
nav section between Tutorials and Migrate. Release-cadence content
doesn't belong inside Concepts; promoting it gives it room to grow as
a real changelog.

**Deleted** (5 files, all stubs or duplicates):
- learn/index.mdx (the Learn landing — its card grid pointed at the
  pages above, all of which now live elsewhere)
- learn/architecture.mdx (15L stub: just a heading + the same
  ImageZoom that already lives in /concepts/architecture)
- learn/generative-ui/specs/{index, a2ui, mcp-apps}.mdx (7-line
  component-stubs already covered by their canonical
  /generative-ui/* pages)
- learn/generative-ui/{meta.json, specs/meta.json} + learn/meta.json
  (now-empty meta scaffolding)

## Nav updates

- concepts/meta.json grows to 10 pages, ordered by topic cluster
- tutorials/meta.json adds multi-conversation-chat
- generative-ui/meta.json adds open-json-ui under "Declarative"
- whats-new/meta.json gets a clean "What's New" title (was a dated
  "Updates - Jan 22, 2025") + the full file list in reverse-chrono
- top-level meta.json gets a new "What's New" section between
  Tutorials and Migrate

## Redirects

15 redirect rules in next.config.ts cover every /learn/* path that
existed (literal pages + the /learn/whats-new/:path* and
/learn/generative-ui/specs/* sets). Plus a generic /learn → /concepts/architecture
catch-all so the old root URL doesn't 404.

## Inbound link rewrites

22 inbound /learn/* references rewritten across the docs tree
(snippets, threads.mdx, premium/self-hosting.mdx, useCapabilities,
useThreads, the existing Concepts pages that linked to /learn/*, and
internal cross-links inside the moved files themselves). Verified zero
remaining /learn/ references except the unrelated `learn.microsoft.com`
external URLs in the MS Agent Framework integration pages.

## Smoke tested

All 12 new canonical URLs return 200. All 8 sampled /learn/* legacy
URLs 308-redirect to the correct canonical home (/concepts/*, /tutorials/*,
/generative-ui/*, /whats-new/*).

Closes PDX-69.
2026-04-28 13:28:52 -07:00
Sam Julien a0e1768356 fix(shell-docs): unpromote interrupt-based — it's LangGraph-specific, not framework-agnostic
The earlier `unselected/` cleanup pass categorized
`unselected/generative-ui/your-components/interrupt-based.mdx` as
D-promote (unique content, needs new home at root). On closer
inspection the file is byte-identical to
`integrations/langgraph/human-in-the-loop/interrupt-flow.mdx` (modulo
title), and references LangGraph's `interrupt()` API + LangChain
interrupt docs throughout — it's LangGraph-specific, not a
framework-agnostic generative-UI feature.

Mastra has its own different interrupt-flow.mdx (264L vs 403L). Other
frameworks (ag2, agno, adk, llamaindex, etc.) don't have an interrupt
flow at all because their agent runtimes don't expose the concept.
Putting it at root would mislead users on other frameworks into
expecting an API that doesn't exist for them.

Reversing the promotion:

- Delete `generative-ui/your-components/interrupt-based.mdx` from the
  root tree
- Drop `interrupt-based` from `generative-ui/your-components/meta.json`
- Repoint the `/unselected/.../interrupt-based` redirect to
  `/human-in-the-loop` (the framework-agnostic HITL page) instead of
  the now-deleted root location

LangGraph's interrupt page stays reachable at
`/langgraph-python/human-in-the-loop/interrupt-flow` (sidebar entry
"Interrupts" under the LangGraph framework block). Mastra's stays at
`/mastra/human-in-the-loop/interrupt-flow`. The `unselected/` copy was
just a redundant fork that was never visible in nav anyway.

Updates the verified-audit framing recorded in PDX-49 — the "13
unique promotions" count drops to 12 (the tutorials), and a new
D-delete entry replaces the interrupt-based promotion.
2026-04-28 13:28:52 -07:00
Sam Julien b1f2538720 feat(shell-docs): retire unselected/ tree, redirect /unselected/* to canonical homes
Final commit of the `unselected/` editorial cleanup. Promotions and
moves landed in earlier commits on this branch — this one removes the
remaining files and adds the redirect rules so old URLs resolve to
the right place.

Removes 33 .mdx files (Cat A: 15 root-canonical, Cat B: 8 BIA-canonical,
Cat D-delete: 1 framework-only `agent-app-context`, plus
duplicate-of-BIA `index.mdx`) and the surrounding `unselected/`
directory scaffolding.

Adds /unselected/* redirect rules in next.config.ts:

- BIA-canonical paths → `/built-in-agent/<path>` (quickstart,
  advanced-configuration, mcp-servers, model-selection, server-tools,
  shared-state, generative-ui/mcp-apps)
- Backend-promoted paths → `/backend/<path>` (ag-ui, copilot-runtime)
- Migrate-to-* → /migrate/* (matches the existing
  /troubleshooting/migrate-to-* redirects from the JTBD work)
- Tutorials → /tutorials/* (catch-all `:path*` rewrite)
- interrupt-based → /generative-ui/your-components/interrupt-based
- agent-app-context → / (concept is per-framework only; legacy URL
  lands on docs root)
- /unselected → /
- Catch-all `/unselected/:path*` → `/:path*` for the Cat A files
  (coding-agents, custom-look-and-feel/*, frontend-tools,
  generative-ui/{a2ui, tool-rendering}, generative-ui/your-components/display-only,
  prebuilt-components/*, programmatic-control,
  troubleshooting/{common-issues, error-debugging})

Inbound link rewrites in MDX content (4 places):

- snippets/shared/backend/custom-agent.mdx — `/unselected/quickstart`
  → `/built-in-agent/quickstart`; `/unselected/ag-ui` → `/backend/ag-ui`
- docs/faq.mdx — `/unselected/model-selection` → `/built-in-agent/model-selection`
- docs/learn/connect-mcp-servers.mdx — `/unselected/copilot-runtime`
  → `/backend/copilot-runtime`
- docs/learn/meta.json — Tutorial: AI Todo App link path

Verified all redirect chains resolve to 200 with the right canonical
final URL: /unselected, /unselected/quickstart, /unselected/coding-agents,
/unselected/mcp-servers, /unselected/ag-ui, /unselected/copilot-runtime,
/unselected/tutorials/ai-todo-app/overview, /unselected/agent-app-context.

Closes editorial pass tracked under PDX-49.
2026-04-28 13:28:52 -07:00
Sam Julien 8adbebd30b feat(shell-docs): merge docs landing + /quickstart picker into one page
The docs landing at `/` and the standalone `/quickstart` picker did
overlapping jobs and confused first-time users. "Quickstart" as a
top-level URL was misleading: clicking it from the shell landing or
the docs overview's top-card list led to a 23-line picker rather than
the actual quickstart guide (which lives at `/<framework>/quickstart`,
117–527 lines per framework).

Merge them. `/` becomes the single docs-side landing:

  - Always shown: hero + product positioning, the `npx copilotkit@latest
    create` CLI command (moved up from /quickstart), and three utility
    cards (Concepts, API Reference, Generative UI).
  - Conditional below: a new `DocsLandingNext` client component that
    branches on `storedFramework`. Null → "Pick your agent framework"
    + the integrations grid (the picker). Set → "Continue with
    {name}" + three pointer cards (quickstart for that framework,
    framework landing, switch frameworks).

The standalone `/quickstart` page is deleted; `/quickstart` 301-redirects
to `/`. `/<framework>/quickstart` is unchanged — that's the canonical
per-framework quickstart guide.

Side effects of the merge:

  - The unscoped catch-all's `DocsOverview` was rewritten to drop the
    former two-step "Pick a backend / Or jump into a topic" panels.
    The framework picker is now in `DocsLandingNext` (only when there's
    no stored choice); the topic cards (DOCS_SECTIONS) were a flatter
    duplicate of the new JTBD sidebar and got deleted entirely.
  - `content/docs/index.mdx` was the file that rendered at `/index`
    (reachable from a sidebar entry under Get Started). With the
    merged `/` landing serving as the canonical overview, the
    `/index` URL stops being meaningful — `index.mdx` is deleted and
    the entry is removed from the top-level `meta.json`.
  - `DocsLandingNext` is registered in the MDX components map so
    future pages can drop it inline if useful, but its primary use is
    inside `DocsOverview` itself.

Pairs with PDX-46 (BIA-as-default). Once BIA defaults are in, the
"no framework" branch of `DocsLandingNext` becomes rare and the page
reads as the "what's next" experience for nearly every visitor.

Closes PDX-58.
2026-04-27 16:23:40 -07:00
Sam Julien 3600c1f6cc chore(shell-docs): strip narrative comments from redirects block
The redirect entries are self-describing — source, destination, and
permanent flag say everything the runtime needs. The block comments
were rationale that belongs in commit messages, not in a config file
that future readers scan for shape.
2026-04-27 16:23:40 -07:00
Sam Julien 133264f615 fix(shell-docs): 301 /concepts/oss-vs-cloud → /concepts/oss-vs-enterprise
The previous commit renamed the file but didn't add a redirect, so
any open browser tab or external link to /concepts/oss-vs-cloud now
404s — surfacing as a "sidebar disappeared" experience because the
404 page doesn't render the docs shell. Add the 301 redirect alongside
the migrate-to-* and frontend-actions ones.
2026-04-27 16:23:40 -07:00
Sam Julien c119768195 feat(shell-docs): JTBD information-architecture restructure
Restructures the top-level sidebar from feature-primitive sections
(Basics / App Control / Backend / Generative UI / Platform / Premium
Features / Troubleshooting) into 9 jobs-to-be-done sections that match
how readers describe what they want to build. Decisions captured in
the IA Restructure plan.

Section structure:

  1. Get Started — index, quickstart, coding-agents, + concepts subtree
     (placeholders for what-is-copilotkit, architecture,
     three-types-of-gen-ui, oss-vs-cloud)
  2. Build Chat UIs — prebuilt-components, custom-look-and-feel,
     multimodal-attachments
  3. Build Generative UI — nested Controlled / Declarative / Open
     subgroups (tool-based, tool-rendering, state-rendering, reasoning,
     your-components / a2ui + dynamic-schema + fixed-schema / mcp-apps)
  4. Give Your App Agent Powers — frontend-tools, shared-state,
     multi-agent/subagents, programmatic-control
  5. Agents & Backends — built-in-agent (new), copilot-runtime,
     custom-agent, ag-ui, runtime-server-adapter
  6. Observe & Operate — inspector, vs-code-extension, +
     troubleshooting subgroup (event-inspector, hook-explorer,
     debug-mode, observability-connectors, common-issues,
     error-debugging)
  7. Enterprise — premium/overview, premium/observability,
     premium/self-hosting, threads (merged from former Threads section
     per product call: threads + persistence are part of Enterprise)
  8. Migrate — v2, 1.10.X, 1.8.2 (moved out of Troubleshooting and
     renamed to drop the redundant 'migrate-to-' prefix)
  9. Other — contributing, telemetry (unchanged)

  Reference stays as a separate root-true tree, not surfaced through the
  top-level meta. Its v1/v2 treatment is a follow-up decision.

Page moves and new files:

  - Migration guides moved from troubleshooting/migrate-to-{v2,1.10.X,
    1.8.2}.mdx to migrate/{v2,1.10.X,1.8.2}.mdx with 301 redirects from
    the old URLs in next.config.ts. Migrate gets its own first-class
    section with a lucide/RefreshCw icon — separate from
    Troubleshooting per IA-analysis pillar ("I'm upgrading deliberately"
    ≠ "something broke").
  - 4 concept placeholders + index under content/docs/concepts/. Each
    has frontmatter (title, description, icon, doc_type: explanation)
    and a TODO body referencing where the content will come from
    (existing repo material + blog posts). Slot exists; content
    backfills later.
  - New built-in-agent.mdx at root — 1-page summary that places BIA in
    Agents & Backends as a peer to copilot-runtime / custom-agent / etc,
    with a link out to the full BIA-scoped docs at /built-in-agent.

Other meta moves:

  - programmatic-control: Basics → Give Your App Agent Powers
  - inspector: Basics → Observe & Operate
  - vs-code-extension: Platform → Observe & Operate
  - multimodal-attachments: Platform → Build Chat UIs
  - runtime-server-adapter: Platform → Agents & Backends
  - The 3 migration pages: Troubleshooting → Migrate (with file moves)

Removed dead code: the `...unselected` line in top-level meta.json
was a no-op (unselected/meta.json has `root: true` so the spread
produced nothing). Stripped during the rewrite.

Multiple new visible labels are intentional. The renderer renders
sections (uppercase tracking-widest) and groups (medium-weight regular
case) at the same level when a section spreads a sub-meta with a
matching title — same pattern that's been live for 'Generative UI'
through every prior PR. The Build Generative UI nesting (Controlled /
Declarative / Open) is a deliberate three-types-of-gen-UI subgrouping
inside the section, surfaced via subsection headers in
generative-ui/meta.json's pages array.
2026-04-27 16:23:40 -07:00
Sam Julien 0ff9ebc51e fix(shell-docs): collapse legacy /frontend-actions into /frontend-tools
content/docs/frontend-actions.mdx was a 33-line stub from when the
feature was called "Frontend Actions." The product API is now
exclusively useFrontendTool, the canonical page is /frontend-tools
(1967 bytes, snippet_cell-driven, in the App Control sidebar
section), and the orphan stub had no entry in any meta.json — it
only rendered if you typed /frontend-actions directly.

Per the IA analysis: "redirect or delete; pick one." Picked both:
delete the orphan file + add a 301 redirect /frontend-actions →
/frontend-tools so any external link (search results, blog posts,
customer docs) lands cleanly on the canonical page.

Other 'frontend-actions' references in the repo are stable HTML
anchor IDs (`id="frontend-actions-example"` in 12 integration
`frontend-tools.mdx` files) and external links to the legacy
docs.copilotkit.ai site — neither breaks.
2026-04-27 09:33:58 -07:00
Sam Julien a5e5ef52a0 fix(shell-docs): route /integrations and /matrix to the shell host
Shell owns /integrations (live explorer) and /matrix (feature matrix),
mirroring shell's existing redirect table that sends /docs/*, /ag-ui/*,
/reference/*, and /<framework>/* to the docs host. Adds the reverse
redirects in shell-docs' next.config so /integrations and /matrix jump
out to showcase.copilotkit.ai at the edge.

Removes the redundant shell-docs framework-picker page at
showcase/shell-docs/src/content/docs/integrations/index.mdx. All internal
links can now use bare /integrations hrefs — the redirect handles the
cross-host jump in production, and in dev it 404s cleanly (no local
page to render). Legacy per-framework subtrees under integrations/* are
unchanged.
2026-04-23 15:38:20 -07:00
Jordan Ritter 06309d9dbb fix(showcase/shell-docs): next.config build detection uses NEXT_PHASE
Replace the argv-sniffing 'process.argv.includes("build")' check with
process.env.NEXT_PHASE === "phase-production-build", the Next.js
canonical signal for a production build. The argv approach is fragile:
it breaks under wrappers, programmatic invocation, or any tool that
invokes next via a different argv shape.
2026-04-20 17:23:51 -07:00
Jordan Ritter 6a355693ea fix(showcase/shell-docs): drop redundant env block in next.config.ts; validate NEXT_PUBLIC_BASE_URL at build time 2026-04-20 16:37:01 -07:00
Jordan Ritter dc73b9f334 chore(showcase): scaffold shell-docs package 2026-04-20 13:59:48 -07:00