@shoalrun/cli 0.1.0-alpha.17 → 0.1.0-alpha.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AUTHORING.md +29 -0
- package/CHANGELOG.md +54 -0
- package/DEPLOYMENT-PROFILES.md +96 -5
- package/README.md +106 -25
- package/agent-docs/.well-known/shoalrun/navigation/project-updates-50f26fe22670.txt +23 -17
- package/agent-docs/SNAPSHOT.json +5 -5
- package/agent-docs/api-docs/focused-contracts.md +4 -4
- package/agent-docs/api-docs/generate.md +11 -11
- package/agent-docs/api-docs/generate.sections/add-useful-examples.md +3 -3
- package/agent-docs/api-docs/generate.sections/choose-generated-references-or-mdx.md +4 -4
- package/agent-docs/api-docs/generate.sections/describe-filters-that-do-not-use-their-openapi-parameter-name.md +1 -1
- package/agent-docs/api-docs/generate.sections/generate-many-pages-selectively.md +2 -2
- package/agent-docs/api-docs/generate.sections/link-guides-to-api-references.md +1 -1
- package/agent-docs/api-docs/generate.sections/map-extension-values-to-shoalrun-status.md +1 -1
- package/agent-docs/api-docs/generate.sections/override-generated-reference-order-in-navigation.md +4 -4
- package/agent-docs/api-docs/generate.sections/related-reading.md +1 -1
- package/agent-docs/api-docs/generate.sections/use-a-template-for-editorial-context.md +2 -2
- package/agent-docs/api-docs/support.md +7 -7
- package/agent-docs/author/add-page.md +3 -3
- package/agent-docs/author/agent-overview.md +3 -3
- package/agent-docs/author/agent-workflow.md +7 -7
- package/agent-docs/author/analytics.md +27 -27
- package/agent-docs/author/analytics.sections/adapter-exports-and-consent.md +3 -3
- package/agent-docs/author/analytics.sections/built-in-events.md +15 -15
- package/agent-docs/author/analytics.sections/configure-an-adapter.md +1 -1
- package/agent-docs/author/analytics.sections/custom-interactions.md +2 -2
- package/agent-docs/author/analytics.sections/event-format.md +2 -2
- package/agent-docs/author/analytics.sections/html-markdown-and-agents.md +4 -4
- package/agent-docs/author/analytics.sections/inspect-events-locally.md +2 -2
- package/agent-docs/author/analytics.sections/map-events-to-your-service.md +3 -3
- package/agent-docs/author/analytics.sections/posthog-example.md +3 -3
- package/agent-docs/author/analytics.sections/related-reading.md +1 -1
- package/agent-docs/author/authoring-agent.md +3 -3
- package/agent-docs/author/coding-agent.md +4 -4
- package/agent-docs/author/components/api-embeds.md +6 -6
- package/agent-docs/author/components/api-embeds.sections/apiexample.md +3 -3
- package/agent-docs/author/components/api-embeds.sections/html-markdown-and-agents.md +1 -1
- package/agent-docs/author/components/api-embeds.sections/related-reading.md +1 -1
- package/agent-docs/author/components/badge.md +2 -2
- package/agent-docs/author/components/callout.md +2 -2
- package/agent-docs/author/components/cards.md +16 -16
- package/agent-docs/author/components/cards.sections/add-a-lucide-icon.md +4 -4
- package/agent-docs/author/components/cards.sections/build-a-collection.md +7 -7
- package/agent-docs/author/components/cards.sections/curate-a-reading-list.md +9 -9
- package/agent-docs/author/components/cards.sections/html-markdown-and-agents.md +3 -3
- package/agent-docs/author/components/cards.sections/link-to-one-document.md +3 -3
- package/agent-docs/author/components/cards.sections/override-card-text.md +5 -5
- package/agent-docs/author/components/cards.sections/related-reading.md +3 -3
- package/agent-docs/author/components/code-blocks.md +2 -2
- package/agent-docs/author/components/collapsible.md +3 -3
- package/agent-docs/author/components/cookbook-chooser.md +5 -5
- package/agent-docs/author/components/custom/react.md +8 -8
- package/agent-docs/author/components/custom/react.sections/html-markdown-and-agents.md +3 -3
- package/agent-docs/author/components/custom/react.sections/interactive-react-example.md +2 -2
- package/agent-docs/author/components/custom/react.sections/registration.md +1 -1
- package/agent-docs/author/components/custom/react.sections/related-reading.md +1 -1
- package/agent-docs/author/components/custom/react.sections/share-the-model-with-the-browser.md +3 -3
- package/agent-docs/author/components/custom/react.sections/where-the-content-lives.md +3 -3
- package/agent-docs/author/components/custom.md +7 -7
- package/agent-docs/author/components/definition-list.md +2 -2
- package/agent-docs/author/components/diagrams/d2-gallery.md +2 -2
- package/agent-docs/author/components/diagrams/d2-gallery.sections/basic-shapes.md +2 -2
- package/agent-docs/author/components/diagrams/d2-gallery.sections/flows-and-structures.md +2 -2
- package/agent-docs/author/components/diagrams/d2-gallery.sections/html-markdown-and-agents.md +2 -2
- package/agent-docs/author/components/diagrams/d2-gallery.sections/layout-engines.md +2 -2
- package/agent-docs/author/components/diagrams/d2-gallery.sections/related-reading.md +2 -2
- package/agent-docs/author/components/diagrams/d2-gallery.sections/sequences-and-grids.md +2 -2
- package/agent-docs/author/components/diagrams/d2-gallery.sections/styles-and-code.md +2 -2
- package/agent-docs/author/components/diagrams/pele-gallery.md +3 -3
- package/agent-docs/author/components/diagrams/pele-gallery.sections/charts-and-planning.md +2 -2
- package/agent-docs/author/components/diagrams/pele-gallery.sections/flowchart-shapes.md +2 -2
- package/agent-docs/author/components/diagrams/pele-gallery.sections/flows-and-behavior.md +2 -2
- package/agent-docs/author/components/diagrams/pele-gallery.sections/html-markdown-and-agents.md +3 -3
- package/agent-docs/author/components/diagrams/pele-gallery.sections/related-reading.md +2 -2
- package/agent-docs/author/components/diagrams/pele-gallery.sections/specialized-diagrams.md +2 -2
- package/agent-docs/author/components/diagrams/pele-gallery.sections/systems-and-structures.md +2 -2
- package/agent-docs/author/components/diagrams.md +8 -8
- package/agent-docs/author/components/doc-link.md +3 -3
- package/agent-docs/author/components/fields.md +18 -18
- package/agent-docs/author/components/file-tree.md +2 -2
- package/agent-docs/author/components/images.md +5 -5
- package/agent-docs/author/components/info-hint.md +3 -3
- package/agent-docs/author/components/kbd.md +2 -2
- package/agent-docs/author/components/math.md +2 -2
- package/agent-docs/author/components/only.md +3 -3
- package/agent-docs/author/components/progress.md +3 -3
- package/agent-docs/author/components/steps.md +2 -2
- package/agent-docs/author/components/tables.md +2 -2
- package/agent-docs/author/components/tabs.md +5 -5
- package/agent-docs/author/components/timeline.md +2 -2
- package/agent-docs/author/components/tooltips.md +2 -2
- package/agent-docs/author/components/walkthroughs.md +2 -2
- package/agent-docs/author/components/walkthroughs.sections/attributes.md +1 -1
- package/agent-docs/author/components/walkthroughs.sections/build-up-code.md +1 -1
- package/agent-docs/author/components/walkthroughs.sections/choose-a-layout.md +2 -2
- package/agent-docs/author/components/walkthroughs.sections/explain-one-file.md +1 -1
- package/agent-docs/author/components/walkthroughs.sections/html-markdown-and-agents.md +1 -1
- package/agent-docs/author/components/walkthroughs.sections/related-reading.md +1 -1
- package/agent-docs/author/components/walkthroughs.sections/syntax.md +1 -1
- package/agent-docs/author/components/walkthroughs.sections/take-code-from-a-file.md +1 -1
- package/agent-docs/author/components.md +2 -2
- package/agent-docs/author/content.md +3 -3
- package/agent-docs/author/cookbooks.md +9 -9
- package/agent-docs/author/css.md +4 -4
- package/agent-docs/author/css.sections/borders-fields-and-navigation-tokens.md +3 -3
- package/agent-docs/author/css.sections/core-color-tokens.md +3 -3
- package/agent-docs/author/css.sections/html-markdown-and-agents.md +4 -4
- package/agent-docs/author/css.sections/page-attributes.md +3 -3
- package/agent-docs/author/css.sections/page-transitions.md +3 -3
- package/agent-docs/author/css.sections/responsive-behavior.md +3 -3
- package/agent-docs/author/css.sections/status-code-and-callout-tokens.md +3 -3
- package/agent-docs/author/css.sections/typography-shape-and-width-tokens.md +3 -3
- package/agent-docs/author/custom-metadata.md +13 -13
- package/agent-docs/author/custom-metadata.sections/add-a-custom-page-field.md +4 -4
- package/agent-docs/author/custom-metadata.sections/choose-text-for-each-surface.md +3 -3
- package/agent-docs/author/custom-metadata.sections/preview-changes-to-metadata-providers.md +2 -2
- package/agent-docs/author/custom-metadata.sections/read-metadata-from-a-project-module.md +3 -3
- package/agent-docs/author/custom-metadata.sections/related-reading.md +1 -1
- package/agent-docs/author/design-templates.md +3 -3
- package/agent-docs/author/design-writing-guides.md +3 -3
- package/agent-docs/author/frontmatter-reference.md +45 -6
- package/agent-docs/author/frontmatter-reference.sections/categorize-connect-and-present-the-page.md +64 -0
- package/agent-docs/author/frontmatter-reference.sections/choose-a-publication-and-visibility.md +2 -2
- package/agent-docs/author/frontmatter-reference.sections/control-output-details.md +2 -2
- package/agent-docs/author/frontmatter-reference.sections/feature-availability.md +59 -0
- package/agent-docs/author/frontmatter-reference.sections/global-defaults-and-enforced-values.md +2 -2
- package/agent-docs/author/frontmatter-reference.sections/html-markdown-and-agents.md +3 -3
- package/agent-docs/author/frontmatter-reference.sections/identify-and-route-a-page.md +2 -2
- package/agent-docs/author/frontmatter-reference.sections/point-agents-to-it.md +2 -2
- package/agent-docs/author/frontmatter-reference.sections/product-publication-fields.md +37 -0
- package/agent-docs/author/frontmatter-reference.sections/project-defined-fields.md +2 -2
- package/agent-docs/author/frontmatter-reference.sections/related-reading.md +2 -2
- package/agent-docs/author/frontmatter-reference.sections/use-the-local-files-while-authoring.md +4 -4
- package/agent-docs/author/frontmatter-reference.sections/when-the-files-update.md +2 -2
- package/agent-docs/author/frontmatter.md +13 -13
- package/agent-docs/author/frontmatter.sections/audience-badges.md +3 -3
- package/agent-docs/author/frontmatter.sections/give-deprecation-guidance.md +4 -4
- package/agent-docs/author/frontmatter.sections/global-defaults-and-enforced-values.md +1 -1
- package/agent-docs/author/frontmatter.sections/optional-native-fields.md +4 -4
- package/agent-docs/author/frontmatter.sections/publication-fields.md +2 -2
- package/agent-docs/author/frontmatter.sections/publishing-policy.md +1 -1
- package/agent-docs/author/frontmatter.sections/related-metadata-tasks.md +1 -1
- package/agent-docs/author/frontmatter.sections/related-reading.md +1 -1
- package/agent-docs/author/frontmatter.sections/required-after-inheritance.md +1 -1
- package/agent-docs/author/frontmatter.sections/seo-fields.md +2 -2
- package/agent-docs/author/frontmatter.sections/validation-rules.md +3 -3
- package/agent-docs/author/markdown-metadata.md +20 -20
- package/agent-docs/author/navigation.md +12 -12
- package/agent-docs/author/navigation.sections/arrange-authored-pages.md +4 -4
- package/agent-docs/author/navigation.sections/fill-an-api-tag-group.md +2 -2
- package/agent-docs/author/navigation.sections/hide-group-page-counts.md +4 -4
- package/agent-docs/author/navigation.sections/html-markdown-and-agents.md +4 -4
- package/agent-docs/author/navigation.sections/local-api-preview.md +2 -2
- package/agent-docs/author/navigation.sections/mix-guides-and-api-references.md +3 -3
- package/agent-docs/author/navigation.sections/optionally-split-a-large-menu-into-files.md +2 -2
- package/agent-docs/author/navigation.sections/reach-navigation-while-reading.md +2 -2
- package/agent-docs/author/navigation.sections/related-reading.md +2 -2
- package/agent-docs/author/navigation.sections/split-navigation-into-tabs.md +4 -4
- package/agent-docs/author/navigation.sections/subject-lifecycle-labels.md +3 -3
- package/agent-docs/author/reader-views.md +9 -9
- package/agent-docs/author/reader-views.sections/configure-the-choices.md +2 -2
- package/agent-docs/author/reader-views.sections/connect-your-own-control.md +1 -1
- package/agent-docs/author/reader-views.sections/how-it-works-for-agents.md +3 -3
- package/agent-docs/author/reader-views.sections/mark-pages.md +3 -3
- package/agent-docs/author/reader-views.sections/mark-sections-and-add-an-entry-choice.md +2 -2
- package/agent-docs/author/reader-views.sections/place-filter-controls.md +2 -2
- package/agent-docs/author/reader-views.sections/try-the-controls-here.md +2 -2
- package/agent-docs/author/recipe-drafts.md +5 -5
- package/agent-docs/author/recipe-drafts.sections/1-write-one-reusable-step.md +2 -2
- package/agent-docs/author/recipe-drafts.sections/2-list-the-steps-for-one-complete-goal.md +2 -2
- package/agent-docs/author/recipe-drafts.sections/3-generate-a-draft-and-review-it.md +1 -1
- package/agent-docs/author/recipe-drafts.sections/4-maintain-shoalrun-s-published-recipe-snapshots.md +2 -2
- package/agent-docs/author/recipe-drafts.sections/related-reading.md +1 -1
- package/agent-docs/author/recipe-drafts.sections/start-an-ingredient-from-an-api-example.md +2 -2
- package/agent-docs/author/recipes.md +7 -7
- package/agent-docs/author/recipes.sections/how-agents-use-this.md +2 -2
- package/agent-docs/author/recipes.sections/one-example-from-shoalrun.md +2 -2
- package/agent-docs/author/recipes.sections/related-reading.md +1 -1
- package/agent-docs/author/recipes.sections/try-a-complete-workflow.md +1 -1
- package/agent-docs/author/recipes.sections/use-recipes-for-task-oriented-how-tos.md +3 -3
- package/agent-docs/author/recipes.sections/what-changing-an-ingredient-updates.md +2 -2
- package/agent-docs/author/recipes.sections/what-each-file-does.md +1 -1
- package/agent-docs/author/recipes.sections/what-happens-and-when.md +2 -2
- package/agent-docs/author/related-reading.md +11 -11
- package/agent-docs/author/related-reading.sections/automatic-footers.md +3 -3
- package/agent-docs/author/related-reading.sections/declare-relationships.md +3 -3
- package/agent-docs/author/related-reading.sections/display-related-documents.md +3 -3
- package/agent-docs/author/related-reading.sections/html-markdown-and-agents.md +1 -1
- package/agent-docs/author/related-reading.sections/inspect-output-and-changes.md +2 -2
- package/agent-docs/author/related-reading.sections/reading-paths-in-section-markdown.md +3 -3
- package/agent-docs/author/related-reading.sections/related-reading.md +1 -1
- package/agent-docs/author/related-reading.sections/where-relationship-explanations-come-from.md +2 -2
- package/agent-docs/author/release-notes.md +8 -8
- package/agent-docs/author/search.md +43 -39
- package/agent-docs/author/search.sections/agent-and-mcp-search-scope.md +12 -8
- package/agent-docs/author/search.sections/choose-a-provider.md +8 -8
- package/agent-docs/author/search.sections/cli-and-mcp-ranking-details.md +4 -4
- package/agent-docs/author/search.sections/enable-included-semantic-search.md +5 -5
- package/agent-docs/author/search.sections/hosted-semantic-search-limits.md +3 -3
- package/agent-docs/author/search.sections/html-markdown-and-agents.md +3 -3
- package/agent-docs/author/search.sections/lexical-search.md +6 -6
- package/agent-docs/author/search.sections/local-semantic-preview.md +3 -3
- package/agent-docs/author/search.sections/read-a-search-result-with-an-agent.md +2 -2
- package/agent-docs/author/search.sections/related-reading.md +2 -2
- package/agent-docs/author/search.sections/reuse-the-lexical-index.md +5 -5
- package/agent-docs/author/search.sections/turn-search-off.md +3 -3
- package/agent-docs/author/search.sections/use-the-search-box.md +2 -2
- package/agent-docs/author/search.sections/write-a-custom-provider.md +11 -11
- package/agent-docs/author/snippets.md +3 -3
- package/agent-docs/author/taxonomy.md +3 -3
- package/agent-docs/author/templates.md +16 -14
- package/agent-docs/author/templates.sections/built-in-feature-templates.md +2 -2
- package/agent-docs/author/templates.sections/built-in-templates.md +2 -2
- package/agent-docs/author/templates.sections/choose-formatting-enforcement-for-your-project.md +7 -7
- package/agent-docs/author/templates.sections/create-or-edit-a-project-template.md +8 -6
- package/agent-docs/author/templates.sections/keep-the-four-shapes-distinct.md +2 -2
- package/agent-docs/author/templates.sections/project-added-templates.md +3 -3
- package/agent-docs/author/templates.sections/related-reading.md +2 -2
- package/agent-docs/author/templates.sections/scaffold-a-page.md +2 -2
- package/agent-docs/author/templates.sections/short-cli-and-derived-values.md +3 -3
- package/agent-docs/author/templates.sections/what-every-template-gives-you.md +3 -3
- package/agent-docs/author/workspace/commands.md +4 -4
- package/agent-docs/author/workspace.md +7 -7
- package/agent-docs/author/writing-style.md +33 -18
- package/agent-docs/author/writing-style.sections/adapt-this-example.md +2 -2
- package/agent-docs/author/writing-style.sections/choose-components-by-reader-need.md +3 -3
- package/agent-docs/author/writing-style.sections/evidence-and-uncertainty.md +4 -4
- package/agent-docs/author/writing-style.sections/example-audience-and-scope.md +2 -2
- package/agent-docs/author/writing-style.sections/feature-availability.md +20 -7
- package/agent-docs/author/writing-style.sections/ingredients-recipes-and-cookbooks.md +5 -5
- package/agent-docs/author/writing-style.sections/page-purpose-and-structure.md +4 -4
- package/agent-docs/author/writing-style.sections/procedures-and-examples.md +4 -4
- package/agent-docs/author/writing-style.sections/related-reading.md +2 -2
- package/agent-docs/author/writing-style.sections/review-a-draft.md +3 -3
- package/agent-docs/author/writing-style.sections/reviewed-writing-examples.md +2 -2
- package/agent-docs/author/writing-style.sections/voice-and-explanations.md +4 -2
- package/agent-docs/changelog/2026-10-14-agent-readiness.md +2 -2
- package/agent-docs/changelog/2026-10-15-evaluation-builds.md +9 -9
- package/agent-docs/changelog/2026-10-16-navigation-layouts.md +4 -4
- package/agent-docs/changelog/2026-10-17-mcp-hosting.md +2 -2
- package/agent-docs/changelog/2026-10-18-search-and-tooltips.md +3 -3
- package/agent-docs/changelog/2026-10-19-visual-navigation.md +3 -3
- package/agent-docs/changelog/2026-10-25.md +2 -2
- package/agent-docs/changelog/2026-10-26.md +4 -4
- package/agent-docs/changelog/2026-10-27.md +1 -1
- package/agent-docs/changelog/2026-10-28.md +3 -3
- package/agent-docs/changelog/2026-10-30.md +1 -1
- package/agent-docs/changelog/2026-11-03.md +5 -5
- package/agent-docs/changelog/2026-11-04-runtime-packaging.md +46 -0
- package/agent-docs/changelog/authoring-preview.md +3 -3
- package/agent-docs/changelog/authoring-search.md +1 -1
- package/agent-docs/changelog/authoring-tools.md +2 -2
- package/agent-docs/changelog/branding-security.md +66 -0
- package/agent-docs/changelog/product-publications.md +60 -0
- package/agent-docs/changelog/working-tree-skill.md +1 -1
- package/agent-docs/changelog.md +25 -1
- package/agent-docs/chat/checks.md +11 -11
- package/agent-docs/chat/checks.sections/answer-ahead-of-time.md +1 -1
- package/agent-docs/chat/checks.sections/answer-for-one-audience.md +2 -2
- package/agent-docs/chat/checks.sections/answer-without-a-model.md +2 -2
- package/agent-docs/chat/checks.sections/follow-up-questions.md +2 -2
- package/agent-docs/chat/checks.sections/how-an-answer-is-checked.md +3 -3
- package/agent-docs/chat/checks.sections/questions-with-several-parts.md +3 -3
- package/agent-docs/chat/checks.sections/related-reading.md +1 -1
- package/agent-docs/chat/checks.sections/reuse-answers.md +4 -4
- package/agent-docs/chat/host.md +28 -10
- package/agent-docs/chat/host.sections/cap-the-daily-spend.md +2 -2
- package/agent-docs/chat/host.sections/keep-a-record-of-questions.md +3 -3
- package/agent-docs/chat/host.sections/related-reading.md +2 -2
- package/agent-docs/chat/passage-index.md +17 -17
- package/agent-docs/chat/passage-index.sections/build-the-index.md +2 -2
- package/agent-docs/chat/passage-index.sections/embed-passages.md +3 -3
- package/agent-docs/chat/passage-index.sections/how-the-default-chunker-splits-a-page.md +2 -2
- package/agent-docs/chat/passage-index.sections/limits.md +2 -2
- package/agent-docs/chat/passage-index.sections/passage-ids-and-links.md +3 -3
- package/agent-docs/chat/passage-index.sections/related-reading.md +2 -2
- package/agent-docs/chat/passage-index.sections/what-a-passage-contains.md +15 -15
- package/agent-docs/chat/prepared-answers.md +4 -4
- package/agent-docs/chat/settings.md +4 -4
- package/agent-docs/chat/settings.sections/choose-the-scorer.md +1 -1
- package/agent-docs/chat/settings.sections/configure-chat.md +2 -2
- package/agent-docs/chat/settings.sections/configure-retrieval.md +1 -1
- package/agent-docs/chat/settings.sections/related-reading.md +1 -1
- package/agent-docs/chat/settings.sections/send-extra-request-fields.md +2 -2
- package/agent-docs/chat/settings.sections/use-more-than-one-model.md +2 -2
- package/agent-docs/chat/settings.sections/when-the-scorer-is-down.md +1 -1
- package/agent-docs/chat/setup.md +2 -2
- package/agent-docs/chat.md +3 -3
- package/agent-docs/cli.md +73 -59
- package/agent-docs/cli.sections/audit-a-project-and-api-sources.md +11 -7
- package/agent-docs/cli.sections/author-pages.md +16 -12
- package/agent-docs/cli.sections/build-and-serve.md +30 -18
- package/agent-docs/cli.sections/inspect-config-and-operations.md +13 -9
- package/agent-docs/cli.sections/npm-scripts-in-this-repository.md +7 -3
- package/agent-docs/cli.sections/related-reading.md +6 -2
- package/agent-docs/cli.sections/search-and-chat.md +24 -18
- package/agent-docs/cli.sections/start-a-project.md +7 -3
- package/agent-docs/cli.sections/working-tree-authoring-tools.md +7 -3
- package/agent-docs/concepts.md +2 -2
- package/agent-docs/config/apis.md +2 -2
- package/agent-docs/config/content.md +3 -3
- package/agent-docs/config/content.sections/authoring.md +3 -3
- package/agent-docs/config/content.sections/badges.md +1 -1
- package/agent-docs/config/content.sections/callouts.md +1 -1
- package/agent-docs/config/content.sections/cookbooks.md +1 -1
- package/agent-docs/config/content.sections/frontmatter.md +1 -1
- package/agent-docs/config/content.sections/readerfilters.md +1 -1
- package/agent-docs/config/content.sections/related-reading.md +1 -1
- package/agent-docs/config/content.sections/relationships.md +1 -1
- package/agent-docs/config/content.sections/snippets.md +1 -1
- package/agent-docs/config/content.sections/templates.md +1 -1
- package/agent-docs/config/content.sections/variables.md +1 -1
- package/agent-docs/config/examples.md +4 -4
- package/agent-docs/config/examples.sections/feature-showcase.md +4 -4
- package/agent-docs/config/examples.sections/minimal-site.md +2 -2
- package/agent-docs/config/examples.sections/multilingual-help-center.md +2 -2
- package/agent-docs/config/examples.sections/parcel-api-documentation.md +2 -2
- package/agent-docs/config/examples.sections/related-reading.md +2 -2
- package/agent-docs/config/examples.sections/shared-company-preset.md +2 -2
- package/agent-docs/config/integrations.md +4 -4
- package/agent-docs/config/outputs.md +22 -16
- package/agent-docs/config/outputs.sections/exports.md +19 -13
- package/agent-docs/config/outputs.sections/metadata.md +2 -2
- package/agent-docs/config/outputs.sections/related-reading.md +1 -1
- package/agent-docs/config/publishing.md +29 -19
- package/agent-docs/config/publishing.sections/navigation.md +2 -2
- package/agent-docs/config/publishing.sections/redirects.md +8 -8
- package/agent-docs/config/publishing.sections/related-reading.md +2 -2
- package/agent-docs/config/site.md +42 -18
- package/agent-docs/config/site.sections/related-reading.md +1 -1
- package/agent-docs/config/site.sections/theme.md +1 -1
- package/agent-docs/config.md +2 -2
- package/agent-docs/configuration.md +19 -19
- package/agent-docs/configuration.sections/build-several-sites-from-shared-content.md +1 -1
- package/agent-docs/configuration.sections/change-inherited-lists-deliberately.md +5 -5
- package/agent-docs/configuration.sections/extract-a-section-with-include.md +1 -1
- package/agent-docs/configuration.sections/inspect-and-validate-changes.md +5 -5
- package/agent-docs/configuration.sections/related-reading.md +1 -1
- package/agent-docs/configuration.sections/separate-config-inheritance-from-page-metadata.md +5 -5
- package/agent-docs/configuration.sections/share-defaults-through-extends.md +3 -3
- package/agent-docs/configuration.sections/start-with-one-working-file.md +2 -2
- package/agent-docs/configuration.sections/understand-the-three-stages.md +3 -3
- package/agent-docs/configuration.sections/understand-where-paths-point.md +2 -2
- package/agent-docs/connect/mcp.md +24 -15
- package/agent-docs/content-delivery/agents.md +6 -6
- package/agent-docs/content-delivery/api.md +29 -16
- package/agent-docs/content-delivery/client.md +14 -8
- package/agent-docs/content-delivery/http-api/operations/get-content-representation-fa1d2e3f.md +10 -2
- package/agent-docs/content-delivery/http-api/operations/get-content-representation-head-4052375c.md +10 -2
- package/agent-docs/content-delivery/http-api/operations/get-content-resource-849f1c49.md +537 -3
- package/agent-docs/content-delivery/http-api/operations/get-content-resource-head-0a352acd.md +10 -2
- package/agent-docs/content-delivery/http-api/operations/list-content-resources-8e977ec7.md +545 -3
- package/agent-docs/content-delivery/http-api/operations/list-content-resources-head-b67cbad9.md +10 -2
- package/agent-docs/content-delivery/http-api.md +21 -7
- package/agent-docs/content-delivery/manifest.md +30 -8
- package/agent-docs/content-delivery/publish.md +5 -5
- package/agent-docs/content-delivery/render.md +6 -6
- package/agent-docs/content-delivery/rest.md +16 -8
- package/agent-docs/content-delivery/sections.md +11 -11
- package/agent-docs/content-delivery/select.md +6 -6
- package/agent-docs/content-delivery.md +4 -4
- package/agent-docs/contribute/agent-skills.md +3 -3
- package/agent-docs/cookbooks/authoring.md +3 -3
- package/agent-docs/cookbooks/site-workflows.md +2 -2
- package/agent-docs/cookbooks/welcome-email.md +3 -3
- package/agent-docs/documents.json +2500 -1927
- package/agent-docs/example-api/cedar.md +4 -4
- package/agent-docs/features.md +49 -0
- package/agent-docs/glossary.md +22 -22
- package/agent-docs/index.md +5 -5
- package/agent-docs/ingredients/audit-site.md +2 -2
- package/agent-docs/ingredients/build-site.md +2 -2
- package/agent-docs/ingredients/complete-page.md +2 -2
- package/agent-docs/ingredients/refresh-agent-bundle.md +2 -2
- package/agent-docs/non-goals.md +4 -4
- package/agent-docs/provenance.json +10 -4
- package/agent-docs/publish/agent-discovery.md +8 -2
- package/agent-docs/publish/agent-friendliness.md +21 -21
- package/agent-docs/publish/agent-friendliness.sections/discover-a-page-with-a-small-context-budget.md +5 -5
- package/agent-docs/publish/agent-friendliness.sections/distinguish-examples-from-a-real-service.md +5 -5
- package/agent-docs/publish/agent-friendliness.sections/evidence-has-a-scope.md +5 -5
- package/agent-docs/publish/agent-friendliness.sections/keep-shared-instructions-complete.md +5 -5
- package/agent-docs/publish/agent-friendliness.sections/related-reading.md +3 -3
- package/agent-docs/publish/agent-friendliness.sections/secret-handshake.md +3 -3
- package/agent-docs/publish/agent-friendliness.sections/try-the-page-controls.md +3 -3
- package/agent-docs/publish/agent-friendliness.sections/use-the-transport-your-client-supports.md +4 -4
- package/agent-docs/publish/agent-friendliness.sections/verify-the-page-and-detect-changes.md +9 -9
- package/agent-docs/publish/agent-friendliness.sections/what-an-agent-reads.md +5 -5
- package/agent-docs/publish/agent-friendliness.sections/what-happens-to-an-unsupported-component.md +4 -4
- package/agent-docs/publish/api-references.md +5 -5
- package/agent-docs/publish/api-references.sections/author-the-reference-page.md +2 -2
- package/agent-docs/publish/api-references.sections/build-and-verify-the-output.md +3 -3
- package/agent-docs/publish/api-references.sections/inspect-the-machine-readable-contract.md +2 -2
- package/agent-docs/publish/api-references.sections/next-steps.md +2 -2
- package/agent-docs/publish/api-references.sections/preview-a-small-api-reference.md +2 -2
- package/agent-docs/publish/api-references.sections/put-the-spec-in-your-project.md +2 -2
- package/agent-docs/publish/api-references.sections/register-the-operation.md +2 -2
- package/agent-docs/publish/api-references.sections/related-reading.md +2 -2
- package/agent-docs/publish/api-references.sections/review-imported-content-before-publishing.md +3 -3
- package/agent-docs/publish/api-references.sections/what-readers-get.md +3 -3
- package/agent-docs/publish/audit.md +8 -8
- package/agent-docs/publish/audit.sections/add-project-tests.md +2 -2
- package/agent-docs/publish/audit.sections/check-agent-evaluation-reports.md +2 -2
- package/agent-docs/publish/audit.sections/check-before-pushing.md +3 -3
- package/agent-docs/publish/audit.sections/connect-a-documentation-test-suite.md +2 -2
- package/agent-docs/publish/audit.sections/read-the-report.md +3 -3
- package/agent-docs/publish/audit.sections/related-reading.md +1 -1
- package/agent-docs/publish/content-export.md +37 -15
- package/agent-docs/publish/content-export.sections/assets-downloads-and-notices.md +4 -4
- package/agent-docs/publish/content-export.sections/check-the-result.md +2 -2
- package/agent-docs/publish/content-export.sections/inspect-the-manifest.md +3 -3
- package/agent-docs/publish/content-export.sections/prerequisites.md +4 -4
- package/agent-docs/publish/content-export.sections/related-reading.md +2 -2
- package/agent-docs/publish/content-export.sections/review-exported-api-material.md +3 -3
- package/agent-docs/publish/content-export.sections/try-the-help-drawer-example.md +2 -2
- package/agent-docs/publish/content-export.sections/what-the-representations-retain.md +4 -4
- package/agent-docs/publish/content-negotiation.md +10 -10
- package/agent-docs/publish/content-negotiation.sections/hosting-contract.md +2 -2
- package/agent-docs/publish/content-negotiation.sections/missing-pages.md +3 -3
- package/agent-docs/publish/content-negotiation.sections/related-reading.md +1 -1
- package/agent-docs/publish/content-negotiation.sections/validators-and-manifest-links.md +2 -2
- package/agent-docs/publish/content-negotiation.sections/verify-the-deployed-url.md +2 -2
- package/agent-docs/publish/content-negotiation.sections/what-if-the-host-cannot-negotiate.md +3 -3
- package/agent-docs/publish/content-negotiation.sections/what-shoalrun-builds-and-what-the-host-does.md +2 -2
- package/agent-docs/publish/content-negotiation.sections/why-this-matters.md +2 -2
- package/agent-docs/publish/deployment-check.md +6 -6
- package/agent-docs/publish/deployment-profiles.md +60 -26
- package/agent-docs/publish/deployment-profiles.sections/before-you-begin.md +5 -5
- package/agent-docs/publish/deployment-profiles.sections/build-and-inspect-the-edition.md +9 -9
- package/agent-docs/publish/deployment-profiles.sections/check-the-result.md +7 -7
- package/agent-docs/publish/deployment-profiles.sections/choose-navigation-labels.md +6 -6
- package/agent-docs/publish/deployment-profiles.sections/current-limits.md +7 -7
- package/agent-docs/publish/deployment-profiles.sections/define-the-shared-sku-manifest.md +6 -6
- package/agent-docs/publish/deployment-profiles.sections/html-markdown-and-agents.md +7 -7
- package/agent-docs/publish/deployment-profiles.sections/mark-pages-and-shared-sections.md +13 -13
- package/agent-docs/publish/deployment-profiles.sections/preview-and-edit-a-customer-edition.md +55 -0
- package/agent-docs/publish/deployment-profiles.sections/related-reading.md +6 -6
- package/agent-docs/publish/deployment-profiles.sections/select-each-product-release.md +55 -0
- package/agent-docs/publish/deployment-profiles.sections/supply-the-profile-from-the-deployment.md +6 -6
- package/agent-docs/publish/evals.md +16 -16
- package/agent-docs/publish/evals.sections/add-the-audit-hook.md +5 -5
- package/agent-docs/publish/evals.sections/check-the-report.md +4 -4
- package/agent-docs/publish/evals.sections/define-a-task-file.md +5 -5
- package/agent-docs/publish/evals.sections/diagnose-a-different-build.md +5 -5
- package/agent-docs/publish/evals.sections/prepare-a-report-for-the-built-site.md +5 -5
- package/agent-docs/publish/evals.sections/related-reading.md +3 -3
- package/agent-docs/publish/evals.sections/run-and-review-the-tasks.md +4 -4
- package/agent-docs/publish/evals.sections/shoalrun-s-own-example.md +6 -6
- package/agent-docs/publish/host-adapters.md +6 -6
- package/agent-docs/publish/manni.md +16 -16
- package/agent-docs/publish/manni.sections/check-the-result.md +3 -3
- package/agent-docs/publish/manni.sections/how-this-site-uses-manni.md +6 -6
- package/agent-docs/publish/manni.sections/optional-custom-policies.md +4 -4
- package/agent-docs/publish/manni.sections/prerequisites.md +2 -2
- package/agent-docs/publish/mcp-analytics.md +12 -12
- package/agent-docs/publish/mcp-analytics.sections/adapter-exports.md +4 -4
- package/agent-docs/publish/mcp-analytics.sections/enable-analytics.md +4 -4
- package/agent-docs/publish/mcp-analytics.sections/event-fields-and-service-mappings.md +4 -4
- package/agent-docs/publish/mcp-analytics.sections/optionally-collect-intent-and-group-calls.md +4 -4
- package/agent-docs/publish/mcp-analytics.sections/optionally-identify-the-client-and-model.md +5 -5
- package/agent-docs/publish/mcp-analytics.sections/related-reading.md +3 -3
- package/agent-docs/publish/mcp-analytics.sections/safeguards-and-limits.md +5 -5
- package/agent-docs/publish/mcp.md +56 -29
- package/agent-docs/publish/mcp.sections/check-budgets-and-errors.md +8 -8
- package/agent-docs/publish/mcp.sections/choose-the-documentation-source.md +4 -4
- package/agent-docs/publish/mcp.sections/configure-the-client.md +4 -4
- package/agent-docs/publish/mcp.sections/discover-product-releases-before-searching.md +52 -0
- package/agent-docs/publish/mcp.sections/generate-a-vercel-endpoint.md +6 -6
- package/agent-docs/publish/mcp.sections/html-markdown-and-agents.md +38 -0
- package/agent-docs/publish/mcp.sections/related-reading.md +3 -3
- package/agent-docs/publish/mcp.sections/search-then-read.md +13 -12
- package/agent-docs/publish/mcp.sections/serve-a-public-endpoint-on-node.md +12 -8
- package/agent-docs/publish/mcp.sections/verify-the-connection.md +4 -4
- package/agent-docs/publish/mcp.sections/why-offer-mcp-for-public-docs.md +4 -4
- package/agent-docs/publish/openapi-extension-mappings.md +12 -12
- package/agent-docs/publish/output.md +20 -20
- package/agent-docs/publish/output.sections/api-contracts.md +1 -1
- package/agent-docs/publish/output.sections/code-highlighting.md +1 -1
- package/agent-docs/publish/output.sections/current-limits.md +1 -1
- package/agent-docs/publish/output.sections/incremental-sync.md +4 -4
- package/agent-docs/publish/output.sections/manifest-records-and-sections.md +3 -3
- package/agent-docs/publish/output.sections/navigation-section-indexes.md +1 -1
- package/agent-docs/publish/output.sections/page-formats.md +2 -2
- package/agent-docs/publish/output.sections/published-output-contract.md +5 -5
- package/agent-docs/publish/output.sections/reader-appearance-and-controls.md +1 -1
- package/agent-docs/publish/output.sections/related-reading.md +1 -1
- package/agent-docs/publish/output.sections/response-identity.md +1 -1
- package/agent-docs/publish/output.sections/site-files.md +6 -6
- package/agent-docs/publish/output.sections/validate-an-existing-build-locally.md +3 -3
- package/agent-docs/publish/output.sections/where-files-go.md +3 -3
- package/agent-docs/publish/publications.md +108 -19
- package/agent-docs/publish/publications.sections/add-a-language.md +60 -0
- package/agent-docs/publish/publications.sections/change-just-one-part-of-a-shared-page.md +63 -0
- package/agent-docs/publish/publications.sections/give-each-api-version-its-own-contract.md +34 -0
- package/agent-docs/publish/publications.sections/keep-an-unchanged-page-in-one-file.md +53 -0
- package/agent-docs/publish/publications.sections/publish-versions-without-a-product-catalog.md +49 -0
- package/agent-docs/publish/publications.sections/related-reading.md +42 -0
- package/agent-docs/publish/publications.sections/version-products-independently.md +115 -0
- package/agent-docs/publish/publications.sections/what-agents-receive.md +38 -0
- package/agent-docs/publish/revisions.md +4 -4
- package/agent-docs/publish/seo.md +10 -10
- package/agent-docs/publish/seo.sections/related-reading.md +2 -2
- package/agent-docs/publish/seo.sections/set-the-public-address.md +3 -3
- package/agent-docs/publish/seo.sections/what-agents-receive.md +3 -3
- package/agent-docs/publish/seo.sections/what-the-build-adds.md +2 -2
- package/agent-docs/publish/seo.sections/write-the-page-title-and-summary.md +2 -2
- package/agent-docs/publish/single-source-sites.md +5 -5
- package/agent-docs/publish/troubleshooting.md +10 -10
- package/agent-docs/publish/vercel.md +5 -5
- package/agent-docs/publish/vercel.sections/check-the-deployment.md +1 -1
- package/agent-docs/publish/vercel.sections/include-an-mcp-endpoint.md +2 -2
- package/agent-docs/publish/vercel.sections/prepare-your-project.md +2 -2
- package/agent-docs/publish/vercel.sections/related-reading.md +1 -1
- package/agent-docs/publish.md +2 -2
- package/agent-docs/recipes/add-page.md +5 -5
- package/agent-docs/recipes/add-page.sections/audit-the-shoalrun-docs-project.md +2 -2
- package/agent-docs/recipes/add-page.sections/before-you-start.md +1 -1
- package/agent-docs/recipes/add-page.sections/build-the-shoalrun-docs-site.md +2 -2
- package/agent-docs/recipes/add-page.sections/check-agent-search-and-page-lookup.md +1 -1
- package/agent-docs/recipes/add-page.sections/check-the-built-page-artifacts.md +1 -1
- package/agent-docs/recipes/add-page.sections/check-the-outcome.md +1 -1
- package/agent-docs/recipes/add-page.sections/complete-the-guide-and-add-navigation.md +2 -2
- package/agent-docs/recipes/add-page.sections/install-the-site-dependencies.md +1 -1
- package/agent-docs/recipes/add-page.sections/regenerate-the-agent-documentation-bundle.md +2 -2
- package/agent-docs/recipes/add-page.sections/related-reading.md +1 -1
- package/agent-docs/recipes/add-page.sections/scaffold-a-new-guide.md +1 -1
- package/agent-docs/recipes/audit-docs.md +4 -4
- package/agent-docs/recipes/build-docs.md +2 -2
- package/agent-docs/recipes/preview-hybrid-search.md +5 -5
- package/agent-docs/recipes/preview-page.md +2 -2
- package/agent-docs/recipes/queue-email.md +2 -2
- package/agent-docs/recipes/refresh-agent-docs.md +4 -4
- package/agent-docs/recipes/send-welcome-email.md +13 -13
- package/agent-docs/reference/agent-skills.md +7 -7
- package/agent-docs/search-and-chat.md +4 -4
- package/agent-docs/search-index.json +1 -1
- package/agent-docs/start.md +5 -5
- package/agent-docs/start.sections/add-the-page-to-navigation.md +3 -3
- package/agent-docs/start.sections/build-and-check-both-outputs.md +3 -3
- package/agent-docs/start.sections/build-this-site.md +2 -2
- package/agent-docs/start.sections/check-writing-style.md +2 -2
- package/agent-docs/start.sections/create-a-page.md +2 -2
- package/agent-docs/start.sections/make-it-yours.md +2 -2
- package/agent-docs/start.sections/migrating-from-github-packages.md +2 -2
- package/agent-docs/start.sections/prerequisites.md +2 -2
- package/agent-docs/start.sections/related-reading.md +2 -2
- package/agent-docs/start.sections/start-your-own-project.md +3 -3
- package/agent-docs/status.md +14 -4
- package/agent-docs/styling/color-modes.md +2 -2
- package/agent-docs/styling/footer.md +2 -2
- package/agent-docs/styling/header.md +2 -2
- package/agent-docs/styling/layouts.md +3 -3
- package/agent-docs/styling/layouts.sections/build-a-landing-page.md +1 -1
- package/agent-docs/styling/layouts.sections/build-a-splash-page.md +1 -1
- package/agent-docs/styling/layouts.sections/control-navigation-tabs.md +2 -2
- package/agent-docs/styling/layouts.sections/customize-the-hero.md +1 -1
- package/agent-docs/styling/layouts.sections/hero.md +1 -1
- package/agent-docs/styling/layouts.sections/hide-the-table-of-contents-or-give-content-more-room.md +1 -1
- package/agent-docs/styling/layouts.sections/html-markdown-and-agents.md +2 -2
- package/agent-docs/styling/layouts.sections/related-reading.md +1 -1
- package/agent-docs/styling/palettes.md +3 -3
- package/agent-docs/styling/share-images.md +3 -3
- package/agent-docs/styling/themes.md +2 -2
- package/agent-docs/styling/try.md +2 -2
- package/agent-docs/what-is-shoalrun.md +7 -3
- package/assets/ask-widget.js +21 -7
- package/assets/navigation.js +5 -0
- package/dist/api-materialize.d.ts +2 -1
- package/dist/api-materialize.js +21 -9
- package/dist/api-publication-plan.d.ts +2 -0
- package/dist/api-publication-plan.js +23 -7
- package/dist/api-publication-review.js +4 -3
- package/dist/api-selection.d.ts +5 -2
- package/dist/api-selection.js +18 -11
- package/dist/artifact-bundle.js +9 -6
- package/dist/ask-function.js +5 -2
- package/dist/ask-runtime.d.ts +1 -0
- package/dist/ask-runtime.js +7 -2
- package/dist/authored-change.js +2 -1
- package/dist/authoring-project.js +1 -1
- package/dist/cards.js +2 -1
- package/dist/chat-config.d.ts +2 -0
- package/dist/chat-config.js +10 -2
- package/dist/cli-discovery.d.ts +2 -2
- package/dist/cli-discovery.js +9 -4
- package/dist/cli.js +50 -25
- package/dist/compiler-config.d.ts +17 -0
- package/dist/compiler-config.js +43 -2
- package/dist/compiler.d.ts +21 -0
- package/dist/compiler.js +16 -12
- package/dist/component-transform.d.ts +2 -4
- package/dist/component-transform.js +20 -7
- package/dist/config.d.ts +1 -0
- package/dist/config.js +2 -1
- package/dist/content-delivery-contract.d.ts +2 -1
- package/dist/content-delivery-validation.d.ts +2 -2
- package/dist/content-delivery-validation.js +6 -4
- package/dist/content-export-command.d.ts +1 -1
- package/dist/content-export-command.js +4 -4
- package/dist/content-export-comparison.js +6 -5
- package/dist/content-export-config.js +3 -1
- package/dist/content-export.js +9 -8
- package/dist/content-rest-client.js +4 -2
- package/dist/content-rest-contract.d.ts +2 -2
- package/dist/content-rest-server.js +11 -6
- package/dist/content-source.d.ts +13 -0
- package/dist/content-source.js +5 -2
- package/dist/content-workspace.d.ts +12 -0
- package/dist/content-workspace.js +2 -1
- package/dist/content.js +3 -2
- package/dist/cookbook-chooser.js +2 -1
- package/dist/deployment-profile.d.ts +2 -1
- package/dist/deployment-profile.js +38 -8
- package/dist/dev.d.ts +3 -1
- package/dist/dev.js +99 -12
- package/dist/docs-author.js +2 -1
- package/dist/docs-command.js +2 -2
- package/dist/docs-eval.d.ts +1 -0
- package/dist/docs-eval.js +2 -2
- package/dist/docs-mcp.d.ts +1 -0
- package/dist/docs-mcp.js +10 -5
- package/dist/docs-tool.d.ts +4 -10
- package/dist/document-sync.d.ts +1 -0
- package/dist/document-sync.js +2 -2
- package/dist/documentation-core.d.ts +29 -10
- package/dist/documentation-core.js +38 -4
- package/dist/freshness.js +2 -2
- package/dist/frontmatter.js +13 -7
- package/dist/function-runtime.d.ts +1 -0
- package/dist/index-build.d.ts +1 -0
- package/dist/index-build.js +2 -2
- package/dist/ingredient-draft.js +20 -10
- package/dist/mcp-analytics.d.ts +1 -0
- package/dist/mcp-artifacts.js +13 -4
- package/dist/mcp-config.d.ts +1 -0
- package/dist/mcp-config.js +3 -1
- package/dist/mcp-http.js +1 -1
- package/dist/page-materialization.d.ts +3 -4
- package/dist/page-materialization.js +15 -8
- package/dist/page-renderer.d.ts +6 -0
- package/dist/page-renderer.js +16 -5
- package/dist/project-navigation.js +2 -1
- package/dist/publication-identity.d.ts +12 -0
- package/dist/publication-identity.js +17 -0
- package/dist/publication-manifest.d.ts +24 -1
- package/dist/publication-manifest.js +14 -6
- package/dist/publication-plan.js +21 -9
- package/dist/publication-render.js +24 -8
- package/dist/recipe-draft.js +9 -6
- package/dist/scaffold.d.ts +7 -4
- package/dist/scaffold.js +16 -16
- package/dist/search-query.d.ts +4 -10
- package/dist/search-query.js +10 -9
- package/dist/server.d.ts +8 -0
- package/dist/server.js +14 -3
- package/dist/subject-deprecation.js +2 -1
- package/dist/turnstile-policy.d.ts +2 -0
- package/dist/turnstile-policy.js +23 -0
- package/dist/turnstile.d.ts +7 -0
- package/dist/turnstile.js +29 -2
- package/dist/vercel-function.js +2 -2
- package/example-configs/products/README.md +37 -0
- package/example-configs/products/content/operations.mdx +50 -0
- package/example-configs/products/content/payments-v2.mdx +30 -0
- package/example-configs/products/content/payments-v3.mdx +38 -0
- package/example-configs/products/content/priority-settlement.mdx +23 -0
- package/example-configs/products/content/reporting-v1.mdx +36 -0
- package/example-configs/products/content/scheduled-exports.mdx +23 -0
- package/example-configs/products/docs.config.yaml +56 -0
- package/example-configs/products/profiles/all-releases.yaml +9 -0
- package/example-configs/products/profiles/customer-a.yaml +13 -0
- package/example-configs/products/profiles/customer-b.yaml +13 -0
- package/example-configs/products/skus.yaml +11 -0
- package/examples/content-delivery/preview.mjs +1 -1
- package/package.json +1 -1
- package/schemas/content-export.schema.json +41 -3
- package/schemas/content-rest.openapi.json +184 -37
- package/skills/shoalrun-author/SKILL.md +6 -2
- package/skills/shoalrun-author/references/customer-editions.md +34 -4
- package/skills/shoalrun-author/references/publications.md +60 -0
- package/skills/shoalrun-brand/SKILL.md +52 -0
- package/skills/shoalrun-recipes/SKILL.md +2 -0
- package/skills/shoalrun-setup/SKILL.md +3 -1
- package/styles/header.css +3 -0
- package/styles/site.css +3 -0
- package/agent-docs/publish/content-export.sections/export-selected-pages.md +0 -116
|
@@ -17,7 +17,7 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
17
17
|
|
|
18
18
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Configure and customize > Analytics
|
|
19
19
|
|
|
20
|
-
**Updated: 2026-
|
|
20
|
+
**Updated: 2026-11-05.**
|
|
21
21
|
|
|
22
22
|
Parent page: [Full Markdown page](/author/analytics.md)
|
|
23
23
|
|
|
@@ -38,7 +38,7 @@ Implement these exports in your browser module:
|
|
|
38
38
|
| `track(event)` | Yes | Receive an event; may return a promise. The adapter owns delivery, batching, retries, and flushing before navigation. |
|
|
39
39
|
| `init(context)` | No | Initialize the service or await consent; may return a promise. Events start after it resolves. |
|
|
40
40
|
|
|
41
|
-
The read-only context provides `page` properties, `setEnabled(boolean)`, and `track(name, properties, element?)`. Import or initialization failures disable analytics for the page. Thrown or rejected `track` calls are caught without interrupting controls or navigation; Shoalrun
|
|
41
|
+
The read-only context provides `page` properties, `setEnabled(boolean)`, and `track(name, properties, element?)`. Import or initialization failures disable analytics for the page. Thrown or rejected `track` calls are caught without interrupting controls or navigation; Shoalrun doesn't retry them.
|
|
42
42
|
|
|
43
43
|
Events are discarded while initialization is pending or delivery is disabled. After initialization, Shoalrun sends `page_view` if enabled. To delay collection, await consent in `init`, or call `setEnabled(false)` and enable delivery from your consent callback. In the latter case, call `track('page_view')` after enabling to count the current page.
|
|
44
44
|
|
|
@@ -48,4 +48,4 @@ You can also disable delivery through the public hook:
|
|
|
48
48
|
globalThis.shoalrunAnalytics?.setEnabled(false);
|
|
49
49
|
```
|
|
50
50
|
|
|
51
|
-
Connect consent changes to your SDK too. Disabling Shoalrun
|
|
51
|
+
Connect consent changes to your SDK too. Disabling Shoalrun doesn't stop SDK-generated events, unload the SDK, or revoke data already sent.
|
|
@@ -17,7 +17,7 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
17
17
|
|
|
18
18
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Configure and customize > Analytics
|
|
19
19
|
|
|
20
|
-
**Updated: 2026-
|
|
20
|
+
**Updated: 2026-11-05.**
|
|
21
21
|
|
|
22
22
|
Parent page: [Full Markdown page](/author/analytics.md)
|
|
23
23
|
|
|
@@ -33,20 +33,20 @@ Shoalrun sends documentation interactions to an analytics service through an **a
|
|
|
33
33
|
|
|
34
34
|
Use these events to measure browser interactions. Each includes the page properties above.
|
|
35
35
|
|
|
36
|
-
| Event | Additional properties | Trigger
|
|
37
|
-
| ------------------------- | --------------------------------------------- |
|
|
38
|
-
| `page_view` | None | Once after adapter initialization, when delivery is enabled.
|
|
39
|
-
| `navigation_click` | `region`, `targetPath`, `external` | A section, sidebar, outline, breadcrumb, related-reading, card, hero, footer, header, article, or Markdown-action link is activated.
|
|
40
|
-
| `content_tab_change` | `tabIndex`, `tabId` | A different content tab is selected by click or keyboard. Initial selection and hash reveals are excluded.
|
|
41
|
-
| `disclosure_toggle` | `open` | A reader opens or closes a Collapsible or article InfoHint through its summary. Programmatic initialization is excluded.
|
|
42
|
-
| `walkthrough_step_change` | `stepIndex`, `stepCount`, `layout`, `trigger` | A different walkthrough step becomes active through click, keyboard, or step scrolling. Initial selection and layout changes are excluded.
|
|
43
|
-
| `code_copy` | `language`, optional `stepIndex` | A code example or walkthrough pane is successfully written to the clipboard.
|
|
44
|
-
| `markdown_copy` | None | The full Markdown twin is successfully written to the clipboard.
|
|
45
|
-
| `section_link_copy` | `targetHeadingId` | A heading's link is successfully written to the clipboard.
|
|
46
|
-
| `search_results` | `queryLength`, `resultCount`, `status` | A completed search settles for 300 ms. Status is `results`, `empty`, or `error`; the count is the displayed result count.
|
|
47
|
-
| `search_result_click` | `queryLength`, `resultIndex`, `targetPath` | A search result is activated, including through the keyboard.
|
|
48
|
-
| `reader_filter_change` | `scope`, `filter_<facet>`, optional `inherit` | A site or page reader selection changes through the controls or reader-view API. Initialization
|
|
36
|
+
| Event | Additional properties | Trigger |
|
|
37
|
+
| ------------------------- | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
38
|
+
| `page_view` | None | Once after adapter initialization, when delivery is enabled. |
|
|
39
|
+
| `navigation_click` | `region`, `targetPath`, `external` | A section, sidebar, outline, breadcrumb, related-reading, card, hero, footer, header, article, or Markdown-action link is activated. |
|
|
40
|
+
| `content_tab_change` | `tabIndex`, `tabId` | A different content tab is selected by click or keyboard. Initial selection and hash reveals are excluded. |
|
|
41
|
+
| `disclosure_toggle` | `open` | A reader opens or closes a Collapsible or article InfoHint through its summary. Programmatic initialization is excluded. |
|
|
42
|
+
| `walkthrough_step_change` | `stepIndex`, `stepCount`, `layout`, `trigger` | A different walkthrough step becomes active through click, keyboard, or step scrolling. Initial selection and layout changes are excluded. |
|
|
43
|
+
| `code_copy` | `language`, optional `stepIndex` | A code example or walkthrough pane is successfully written to the clipboard. |
|
|
44
|
+
| `markdown_copy` | None | The full Markdown twin is successfully written to the clipboard. |
|
|
45
|
+
| `section_link_copy` | `targetHeadingId` | A heading's link is successfully written to the clipboard. |
|
|
46
|
+
| `search_results` | `queryLength`, `resultCount`, `status` | A completed search settles for 300 ms. Status is `results`, `empty`, or `error`; the count is the displayed result count. |
|
|
47
|
+
| `search_result_click` | `queryLength`, `resultIndex`, `targetPath` | A search result is activated, including through the keyboard. |
|
|
48
|
+
| `reader_filter_change` | `scope`, `filter_<facet>`, optional `inherit` | A site or page reader selection changes through the controls or reader-view API. Initialization doesn't emit it. Facet hyphens become underscores; values are choice-ID arrays. |
|
|
49
49
|
|
|
50
50
|
Indexes start at zero. Navigation regions are `sections`, `sidebar`, `toc`, `breadcrumbs`, `related`, `card`, `hero`, `footer`, `header`, `content`, and `formats`; only HTTP(S) links qualify. Target paths omit queries and fragments. Built-in payloads exclude raw search queries, copied text, article text, reader identifiers, and referrers. A service SDK may add its own properties.
|
|
51
51
|
|
|
52
|
-
Changing component attributes from a script
|
|
52
|
+
Changing component attributes from a script doesn't necessarily emit an event. Browser page loads emit page views; back-forward cache restoration has no separate built-in event.
|
|
@@ -17,7 +17,7 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
17
17
|
|
|
18
18
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Configure and customize > Analytics
|
|
19
19
|
|
|
20
|
-
**Updated: 2026-
|
|
20
|
+
**Updated: 2026-11-05.**
|
|
21
21
|
|
|
22
22
|
Parent page: [Full Markdown page](/author/analytics.md)
|
|
23
23
|
|
|
@@ -17,7 +17,7 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
17
17
|
|
|
18
18
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Configure and customize > Analytics
|
|
19
19
|
|
|
20
|
-
**Updated: 2026-
|
|
20
|
+
**Updated: 2026-11-05.**
|
|
21
21
|
|
|
22
22
|
Parent page: [Full Markdown page](/author/analytics.md)
|
|
23
23
|
|
|
@@ -43,7 +43,7 @@ globalThis.shoalrunAnalytics?.track(
|
|
|
43
43
|
|
|
44
44
|
The arguments are the event name, properties, and optional element for component context. Page properties are added automatically. The optional chain skips the call when analytics is unconfigured.
|
|
45
45
|
|
|
46
|
-
This hook
|
|
46
|
+
This hook doesn't register MDX components: unknown components fail the build. Use the [supported components](https://www.shoalrun.com/author/components.md) or register a [trusted component plugin](https://www.shoalrun.com/author/components/custom.md) with shared HTML and Markdown content.
|
|
47
47
|
|
|
48
48
|
Event names start with a lowercase letter and contain at most 64 lowercase letters, digits, or underscores.
|
|
49
49
|
|
|
@@ -17,7 +17,7 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
17
17
|
|
|
18
18
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Configure and customize > Analytics
|
|
19
19
|
|
|
20
|
-
**Updated: 2026-
|
|
20
|
+
**Updated: 2026-11-05.**
|
|
21
21
|
|
|
22
22
|
Parent page: [Full Markdown page](/author/analytics.md)
|
|
23
23
|
|
|
@@ -54,6 +54,6 @@ Each event has `schemaVersion`, `name`, and `properties`. For example:
|
|
|
54
54
|
}
|
|
55
55
|
```
|
|
56
56
|
|
|
57
|
-
Every event includes page identity and publication properties; `navigationSectionId` appears only for pages in a navigation tab. `pageUrl` is the published path without query or fragment. Custom properties
|
|
57
|
+
Every event includes page identity and publication properties; `navigationSectionId` appears only for pages in a navigation tab. `pageUrl` is the published path without query or fragment. Custom properties can't replace page identity.
|
|
58
58
|
|
|
59
59
|
Events associated with an element add component context. `componentId` uses `data-analytics-id`, then the element’s HTML ID, then its heading, kind, and position. Generated IDs can change when content moves. `componentType` is `tabs`, `walkthrough`, `disclosure`, `code`, or `control`; `headingId` identifies the preceding article heading when available.
|
|
@@ -17,7 +17,7 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
17
17
|
|
|
18
18
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Configure and customize > Analytics
|
|
19
19
|
|
|
20
|
-
**Updated: 2026-
|
|
20
|
+
**Updated: 2026-11-05.**
|
|
21
21
|
|
|
22
22
|
Parent page: [Full Markdown page](/author/analytics.md)
|
|
23
23
|
|
|
@@ -31,12 +31,12 @@ Shoalrun sends documentation interactions to an analytics service through an **a
|
|
|
31
31
|
|
|
32
32
|
## HTML, Markdown, and agents
|
|
33
33
|
|
|
34
|
-
Instrumentation runs only in the browser and leaves Markdown and discovery artifacts unchanged. Agents that fetch Markdown or call tools without running page JavaScript
|
|
34
|
+
Instrumentation runs only in the browser and leaves Markdown and discovery artifacts unchanged. Agents that fetch Markdown or call tools without running page JavaScript aren't counted.
|
|
35
35
|
|
|
36
|
-
To measure those requests, collect CDN or hosting logs, add a server request hook, or enable the separate [MCP analytics adapter](https://www.shoalrun.com/publish/mcp-analytics.md). Include cache hits: origin logs alone miss responses served by a CDN. Shoalrun
|
|
36
|
+
To measure those requests, collect CDN or hosting logs, add a server request hook, or enable the separate [MCP analytics adapter](https://www.shoalrun.com/publish/mcp-analytics.md). Include cache hits: origin logs alone miss responses served by a CDN. Shoalrun doesn't install a request collector.
|
|
37
37
|
|
|
38
38
|
Measure discovery indexes, Markdown pages and sections, negotiated responses, and tool calls. Record the actual response representation because HTML and Markdown can share a URL. Keep health checks, `HEAD`, failures, and cache revalidation separate from successful body responses.
|
|
39
39
|
|
|
40
40
|
Send a separate server event such as `documentation_request` with path, representation, status, cache status, page ID when known, and a request ID for deduplication. Keep these counts separate from browser page views. Avoid raw headers, IP addresses, query strings, and page bodies by default.
|
|
41
41
|
|
|
42
|
-
A user agent is a claimed identity, not a verified one. People can fetch Markdown, and agents can use ordinary browsers; classify representation and claimed client separately. Requests
|
|
42
|
+
A user agent is a claimed identity, not a verified one. People can fetch Markdown, and agents can use ordinary browsers; classify representation and claimed client separately. Requests don't prove reading, comprehension, or citation. Correlating them into sessions requires an explicit client or integration identifier; timing and IP address are unreliable.
|
|
@@ -17,7 +17,7 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
17
17
|
|
|
18
18
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Configure and customize > Analytics
|
|
19
19
|
|
|
20
|
-
**Updated: 2026-
|
|
20
|
+
**Updated: 2026-11-05.**
|
|
21
21
|
|
|
22
22
|
Parent page: [Full Markdown page](/author/analytics.md)
|
|
23
23
|
|
|
@@ -33,4 +33,4 @@ Shoalrun sends documentation interactions to an analytics service through an **a
|
|
|
33
33
|
|
|
34
34
|
Copy `framework/examples/analytics/inspector.js` beside your config and set `analytics.module` to `./inspector.js`. Its **Local events** panel and `window.shoalrunDebugEvents` show the latest 100 events in memory without sending requests. Use it only in local previews.
|
|
35
35
|
|
|
36
|
-
The inspector shows Shoalrun events before translation, so confirm service delivery separately. It
|
|
36
|
+
The inspector shows Shoalrun events before translation, so confirm service delivery separately. It can't show events generated by a provider SDK.
|
|
@@ -17,7 +17,7 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
17
17
|
|
|
18
18
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Configure and customize > Analytics
|
|
19
19
|
|
|
20
|
-
**Updated: 2026-
|
|
20
|
+
**Updated: 2026-11-05.**
|
|
21
21
|
|
|
22
22
|
Parent page: [Full Markdown page](/author/analytics.md)
|
|
23
23
|
|
|
@@ -37,6 +37,6 @@ Your adapter translates Shoalrun events into the service’s names, properties,
|
|
|
37
37
|
- Choose one source for each measurement. Disable equivalent automatic SDK events when the adapter supplies them.
|
|
38
38
|
- Keep content interactions as custom events unless a native event matches their meaning and required properties.
|
|
39
39
|
- Preserve page and component IDs, publication context, and `schemaVersion`. Check the destination’s limits on names and values.
|
|
40
|
-
- Use the SDK’s separate APIs for identification, grouping, exceptions, or replay; renaming an interaction
|
|
40
|
+
- Use the SDK’s separate APIs for identification, grouping, exceptions, or replay; renaming an interaction doesn't enable these features.
|
|
41
41
|
|
|
42
|
-
Document each source, destination, property conversion, and automatic SDK feature you enable. Shoalrun has no universal page-exit or scroll-depth event. Verify one page visit and one content interaction in the destination, check they
|
|
42
|
+
Document each source, destination, property conversion, and automatic SDK feature you enable. Shoalrun has no universal page-exit or scroll-depth event. Verify one page visit and one content interaction in the destination, check they're counted once, and confirm native events populate the intended dashboard.
|
|
@@ -17,7 +17,7 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
17
17
|
|
|
18
18
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Configure and customize > Analytics
|
|
19
19
|
|
|
20
|
-
**Updated: 2026-
|
|
20
|
+
**Updated: 2026-11-05.**
|
|
21
21
|
|
|
22
22
|
Parent page: [Full Markdown page](/author/analytics.md)
|
|
23
23
|
|
|
@@ -86,7 +86,7 @@ This example sends native page views and page leaves to PostHog, with custom eve
|
|
|
86
86
|
|
|
87
87
|
The adapter maps `page_view` to `$pageview` and keeps other Shoalrun event names. Automatic page views are off to avoid duplicates. PostHog supplies `$pageleave` with scroll depth and duration. Generic click capture, replay, and person profiles are disabled.
|
|
88
88
|
|
|
89
|
-
Use custom names in Product Analytics insights and funnels.
|
|
89
|
+
Use custom names in Product Analytics insights and funnels. Don't map them to `$autocapture`, which requires SDK-generated element metadata. PostHog adds properties and manages browser storage; review its [SDK configuration](https://posthog.com/docs/libraries/js/config) for consent and content security policy requirements.
|
|
90
90
|
|
|
91
91
|
3. ### Bundle and configure the module
|
|
92
92
|
|
|
@@ -121,6 +121,6 @@ This example sends native page views and page leaves to PostHog, with custom eve
|
|
|
121
121
|
| `$prev_pageview_max_content_percentage` | Fraction of document height reached by the viewport, from `0` to `1`. |
|
|
122
122
|
| `$prev_pageview_duration` | Seconds the page was open. |
|
|
123
123
|
|
|
124
|
-
These measure the document, excluding scrolling within code panes. Time open
|
|
124
|
+
These measure the document, excluding scrolling within code panes. Time open doesn't prove active reading, and page-leave delivery is best effort. For visual scrollmaps, configure [PostHog heatmaps](https://posthog.com/docs/toolbar/heatmaps) separately; some engagement metrics require generic autocapture.
|
|
125
125
|
|
|
126
126
|
If events are missing, check consent, browser blockers, and network requests. Exclude development traffic from production reports or use a separate development project.
|
|
@@ -17,7 +17,7 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
17
17
|
|
|
18
18
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Configure and customize > Analytics
|
|
19
19
|
|
|
20
|
-
**Updated: 2026-
|
|
20
|
+
**Updated: 2026-11-05.**
|
|
21
21
|
|
|
22
22
|
Parent page: [Full Markdown page](/author/analytics.md)
|
|
23
23
|
|
|
@@ -19,7 +19,7 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
19
19
|
|
|
20
20
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Write documentation > Write with agents > Advanced workflows > Checked edit plans
|
|
21
21
|
|
|
22
|
-
**Updated: 2026-
|
|
22
|
+
**Updated: 2026-11-05.**
|
|
23
23
|
|
|
24
24
|
**Status: Experimental.**
|
|
25
25
|
|
|
@@ -71,13 +71,13 @@ Use this optional workflow when your agent needs a digest-checked replacement pl
|
|
|
71
71
|
shoalrun audit docs.config.yaml
|
|
72
72
|
```
|
|
73
73
|
|
|
74
|
-
Applying repeats freshness and build checks before writing. Inspect the resulting HTML and Markdown. The plan
|
|
74
|
+
Applying repeats freshness and build checks before writing. Inspect the resulting HTML and Markdown. The plan doesn't run configured audit tests, commit changes, or deploy; those are separate steps.
|
|
75
75
|
|
|
76
76
|
## What checks establish
|
|
77
77
|
|
|
78
78
|
Compiler checks catch problems such as broken document links and invalid components. Vale checks the rules your team configures. Neither establishes factual accuracy or whether a procedure works. Ask your agent to explain what it verified and what still needs review.
|
|
79
79
|
|
|
80
|
-
Ordinary public builds exclude draft pages. Use the separate working-tree `docs validate` interface to render affected drafts in isolation without changing their authored access policy. This
|
|
80
|
+
Ordinary public builds exclude draft pages. Use the separate working-tree `docs validate` interface to render affected drafts in isolation without changing their authored access policy. This doesn't change the checked plan/apply contract described above.
|
|
81
81
|
|
|
82
82
|
## Related reading
|
|
83
83
|
|
|
@@ -18,15 +18,15 @@ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigat
|
|
|
18
18
|
|
|
19
19
|
Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Write documentation > Write with agents > Draft a page
|
|
20
20
|
|
|
21
|
-
**Updated: 2026-
|
|
21
|
+
**Updated: 2026-11-05.**
|
|
22
22
|
|
|
23
23
|
Use an agent that can read project files and run commands. It writes with its own model; Shoalrun requires no additional authoring API key.
|
|
24
24
|
|
|
25
25
|
## Prepare your agent
|
|
26
26
|
|
|
27
|
-
Install the [portable authoring skill](https://www.shoalrun.com/contribute/agent-skills.md) using your agent's supported skill setup. If it
|
|
27
|
+
Install the [portable authoring skill](https://www.shoalrun.com/contribute/agent-skills.md) using your agent's supported skill setup. If it can't load skills, give it the same project instructions and commands directly. Tell it where to find `docs.config.yaml`, your writing guide, and reviewed examples. The [example writing guide](https://www.shoalrun.com/author/writing-style.md) is a starting point you can adapt.
|
|
28
28
|
|
|
29
|
-
The CLI's `docs search` and `docs read` commands read bundled Shoalrun guidance. The [MCP server](https://www.shoalrun.com/cli.md) offers documentation search and reads for agents that support MCP; it
|
|
29
|
+
The CLI's `docs search` and `docs read` commands read bundled Shoalrun guidance. The [MCP server](https://www.shoalrun.com/cli.md) offers documentation search and reads for agents that support MCP; it doesn't write project files. Your agent uses its own file tools and the CLI for edits.
|
|
30
30
|
|
|
31
31
|
## Give a working-tree task
|
|
32
32
|
|
|
@@ -69,7 +69,7 @@ This uses the harness's own writer and execution permissions. Required navigatio
|
|
|
69
69
|
shoalrun docs preview /path/from/result/report.json --port 0
|
|
70
70
|
```
|
|
71
71
|
|
|
72
|
-
Use the actual report path returned by validation. It renders affected drafts in a separate capture while preserving their authored access policy. Review findings, coverage, and skipped checks; use `--run-checks` only for applicable trusted commands under the harness's permissions. A stale, failed, incomplete, or unavailable result
|
|
72
|
+
Use the actual report path returned by validation. It renders affected drafts in a separate capture while preserving their authored access policy. Review findings, coverage, and skipped checks; use `--run-checks` only for applicable trusted commands under the harness's permissions. A stale, failed, incomplete, or unavailable result isn't a pass. After edits, revalidate and restart the preview from the new report. Stop the foreground preview with Ctrl-C when finished.
|
|
73
73
|
|
|
74
74
|
4. ## Prepare publication
|
|
75
75
|
|
|
@@ -20,7 +20,7 @@ Navigation section: [Reference](https://www.shoalrun.com/.well-known/shoalrun/na
|
|
|
20
20
|
|
|
21
21
|
Breadcrumbs: [Reference](https://www.shoalrun.com/cli.md) > Components > ApiExample and ApiSchema
|
|
22
22
|
|
|
23
|
-
**Updated: 2026-
|
|
23
|
+
**Updated: 2026-11-05.**
|
|
24
24
|
|
|
25
25
|
`ApiExample` and `ApiSchema` reuse OpenAPI content in authored pages. Examples stay synchronized with named payloads; schemas expose selected field definitions in HTML and Markdown.
|
|
26
26
|
|
|
@@ -46,7 +46,7 @@ Use these attributes to configure the component.
|
|
|
46
46
|
| `example` | Yes | Key in that media type's OpenAPI `examples` map. |
|
|
47
47
|
| `status` | For responses | Response status, such as `201`. |
|
|
48
48
|
|
|
49
|
-
The element is standalone and empty, with literal string attributes. It resolves in the page's publication. HTML and Markdown show the example title, original key, context, description when present, provenance, and value. A missing selector fails the build. API includes
|
|
49
|
+
The element is standalone and empty, with literal string attributes. It resolves in the page's publication. HTML and Markdown show the example title, original key, context, description when present, provenance, and value. A missing selector fails the build. API includes can't be nested inside snippets. See [API references](https://www.shoalrun.com/publish/api-references.md) for source configuration and [example presentation](https://www.shoalrun.com/api-docs/generate.md) in reference pages.
|
|
50
50
|
|
|
51
51
|
The fictional Notes API returns a saved note with its author, labels, and display metadata. The response includes a required but nullable `archivedAt` field: `null` means the note is active.
|
|
52
52
|
|
|
@@ -79,7 +79,7 @@ An active note with a nested author, two labels, and optional display metadata.
|
|
|
79
79
|
|
|
80
80
|
### Markdown twin
|
|
81
81
|
|
|
82
|
-
During the build, Shoalrun selects the named example from the OpenAPI source for this page's publication and replaces `<ApiExample>` with ordinary content. An agent reading the generated `.md` page
|
|
82
|
+
During the build, Shoalrun selects the named example from the OpenAPI source for this page's publication and replaces `<ApiExample>` with ordinary content. An agent reading the generated `.md` page doesn't need to resolve the component or fetch the OpenAPI file. The example above renders as:
|
|
83
83
|
|
|
84
84
|
````md
|
|
85
85
|
### Created release note
|
|
@@ -135,7 +135,7 @@ These attributes select the source schema.
|
|
|
135
135
|
| `status` | For response bodies | Response status, such as `201`. |
|
|
136
136
|
| `schema` | With `api` | Local OpenAPI `$ref` selector. With `operation`, omitted uses the selected media type's schema. |
|
|
137
137
|
|
|
138
|
-
Use `operation`, `kind`, `mediaType`, and `status` for a body schema. To select an object that
|
|
138
|
+
Use `operation`, `kind`, `mediaType`, and `status` for a body schema. To select an object that isn't a body, use `api` and `schema` without the operation attributes. A pointer ending in `/properties/<name>` selects a single field. Both forms use the API source for the page's publication.
|
|
139
139
|
|
|
140
140
|
```mdx
|
|
141
141
|
<ApiSchema api="notes" schema="#/components/schemas/NoteMetadata" />
|
|
@@ -164,7 +164,7 @@ string
|
|
|
164
164
|
|
|
165
165
|
Where the note came from.
|
|
166
166
|
|
|
167
|
-
The element is standalone and empty, with literal string attributes. A missing or invalid selector fails the build. API includes
|
|
167
|
+
The element is standalone and empty, with literal string attributes. A missing or invalid selector fails the build. API includes can't be nested inside snippets. See [API references](https://www.shoalrun.com/publish/api-references.md) for source setup and focused contracts.
|
|
168
168
|
|
|
169
169
|
### Response 201 schema · application/json
|
|
170
170
|
|
|
@@ -254,7 +254,7 @@ string
|
|
|
254
254
|
Where the note came from.
|
|
255
255
|
```
|
|
256
256
|
|
|
257
|
-
`<ApiSchema>` includes the full selected schema, including nested objects. It
|
|
257
|
+
`<ApiSchema>` includes the full selected schema, including nested objects. It doesn't shorten or collapse large schemas in either output. For a large object, include it in a guide only when readers need the whole field tree there. Otherwise, select a relevant field, use authored [Fields](https://www.shoalrun.com/author/components/fields.md) for a short explanation, or link to the API reference. A field pointer selects its definition; it doesn't infer whether that field is required by its parent. Recursive references stop with a visible recursive-reference note rather than repeating forever.
|
|
258
258
|
|
|
259
259
|
## HTML, Markdown, and agents
|
|
260
260
|
|
|
@@ -20,7 +20,7 @@ Navigation section: [Reference](https://www.shoalrun.com/.well-known/shoalrun/na
|
|
|
20
20
|
|
|
21
21
|
Breadcrumbs: [Reference](https://www.shoalrun.com/cli.md) > Components > ApiExample and ApiSchema
|
|
22
22
|
|
|
23
|
-
**Updated: 2026-
|
|
23
|
+
**Updated: 2026-11-05.**
|
|
24
24
|
|
|
25
25
|
Parent page: [Full Markdown page](/author/components/api-embeds.md)
|
|
26
26
|
|
|
@@ -54,7 +54,7 @@ Use these attributes to configure the component.
|
|
|
54
54
|
| `example` | Yes | Key in that media type's OpenAPI `examples` map. |
|
|
55
55
|
| `status` | For responses | Response status, such as `201`. |
|
|
56
56
|
|
|
57
|
-
The element is standalone and empty, with literal string attributes. It resolves in the page's publication. HTML and Markdown show the example title, original key, context, description when present, provenance, and value. A missing selector fails the build. API includes
|
|
57
|
+
The element is standalone and empty, with literal string attributes. It resolves in the page's publication. HTML and Markdown show the example title, original key, context, description when present, provenance, and value. A missing selector fails the build. API includes can't be nested inside snippets. See [API references](https://www.shoalrun.com/publish/api-references.md) for source configuration and [example presentation](https://www.shoalrun.com/api-docs/generate.md) in reference pages.
|
|
58
58
|
|
|
59
59
|
The fictional Notes API returns a saved note with its author, labels, and display metadata. The response includes a required but nullable `archivedAt` field: `null` means the note is active.
|
|
60
60
|
|
|
@@ -87,7 +87,7 @@ An active note with a nested author, two labels, and optional display metadata.
|
|
|
87
87
|
|
|
88
88
|
### Markdown twin
|
|
89
89
|
|
|
90
|
-
During the build, Shoalrun selects the named example from the OpenAPI source for this page's publication and replaces `<ApiExample>` with ordinary content. An agent reading the generated `.md` page
|
|
90
|
+
During the build, Shoalrun selects the named example from the OpenAPI source for this page's publication and replaces `<ApiExample>` with ordinary content. An agent reading the generated `.md` page doesn't need to resolve the component or fetch the OpenAPI file. The example above renders as:
|
|
91
91
|
|
|
92
92
|
````md
|
|
93
93
|
### Created release note
|
|
@@ -20,7 +20,7 @@ Navigation section: [Reference](https://www.shoalrun.com/.well-known/shoalrun/na
|
|
|
20
20
|
|
|
21
21
|
Breadcrumbs: [Reference](https://www.shoalrun.com/cli.md) > Components > ApiExample and ApiSchema
|
|
22
22
|
|
|
23
|
-
**Updated: 2026-
|
|
23
|
+
**Updated: 2026-11-05.**
|
|
24
24
|
|
|
25
25
|
Parent page: [Full Markdown page](/author/components/api-embeds.md)
|
|
26
26
|
|
|
@@ -20,7 +20,7 @@ Navigation section: [Reference](https://www.shoalrun.com/.well-known/shoalrun/na
|
|
|
20
20
|
|
|
21
21
|
Breadcrumbs: [Reference](https://www.shoalrun.com/cli.md) > Components > ApiExample and ApiSchema
|
|
22
22
|
|
|
23
|
-
**Updated: 2026-
|
|
23
|
+
**Updated: 2026-11-05.**
|
|
24
24
|
|
|
25
25
|
Parent page: [Full Markdown page](/author/components/api-embeds.md)
|
|
26
26
|
|
|
@@ -16,7 +16,7 @@ Navigation section: [Reference](https://www.shoalrun.com/.well-known/shoalrun/na
|
|
|
16
16
|
|
|
17
17
|
Breadcrumbs: [Reference](https://www.shoalrun.com/cli.md) > Components > Badges
|
|
18
18
|
|
|
19
|
-
**Updated: 2026-
|
|
19
|
+
**Updated: 2026-11-05.**
|
|
20
20
|
|
|
21
21
|
`<Badge>` adds a compact label inside prose, a heading, or a table cell. Write the state in its text; color and the optional icon only reinforce it.
|
|
22
22
|
|
|
@@ -44,7 +44,7 @@ The built-in variants follow the selected palette and color mode. A project can
|
|
|
44
44
|
|
|
45
45
|
## Add a custom color
|
|
46
46
|
|
|
47
|
-
For example, this site registers a teal `partner` variant. It
|
|
47
|
+
For example, this site registers a teal `partner` variant. It's a custom example, not one of the built-in variants. Give a custom variant `background` and `text` hex colors for light mode, and for dark mode if the site shows dark mode. `border` is optional and defaults to the text color. The build rejects unknown variant names and checks badge text against its background at 4.5:1 in each shown mode.
|
|
48
48
|
|
|
49
49
|
```yaml title="docs.config.yaml"
|
|
50
50
|
badges:
|
|
@@ -16,7 +16,7 @@ Navigation section: [Reference](https://www.shoalrun.com/.well-known/shoalrun/na
|
|
|
16
16
|
|
|
17
17
|
Breadcrumbs: [Reference](https://www.shoalrun.com/cli.md) > Components > Callouts
|
|
18
18
|
|
|
19
|
-
**Updated: 2026-
|
|
19
|
+
**Updated: 2026-11-05.**
|
|
20
20
|
|
|
21
21
|
`<Callout>` highlights a short message in the reading flow. Use a type that matches the message's purpose. The type sets the HTML color and decorative icon, while a visible label carries the meaning in both HTML and Markdown.
|
|
22
22
|
|
|
@@ -114,7 +114,7 @@ Use the registered name in MDX:
|
|
|
114
114
|
|
|
115
115
|
Each custom tone needs `line` (left rule), `background`, and `text` (label and icon), all as hex colors. Multiple types can share a tone.
|
|
116
116
|
|
|
117
|
-
A tone's `dark` block sets the same three colors for [dark mode](https://www.shoalrun.com/styling/color-modes.md). It
|
|
117
|
+
A tone's `dark` block sets the same three colors for [dark mode](https://www.shoalrun.com/styling/color-modes.md). It's optional on a light-only site. When `theme.mode` is `dark` or `system`, every tone in use needs `dark`, or the build fails. The build checks each tone against the site's [palette](https://www.shoalrun.com/styling/palettes.md) in every mode the site shows. Body text, links, and the label need 4.5:1 against the tone's background.
|
|
118
118
|
|
|
119
119
|
You can also use `callouts.tones` to replace a built-in tone's colors. The five built-in types have default labels and Lucide icons; you can override their `label`, `tone`, or `icon` in `callouts.types`. A registered type without an icon displays its label without an icon. Icons are decorative and hidden from assistive technology; the label stays in HTML and Markdown. Invalid names, colors, icons, and definitions fail the build.
|
|
120
120
|
|
|
@@ -16,13 +16,13 @@ Navigation section: [Reference](https://www.shoalrun.com/.well-known/shoalrun/na
|
|
|
16
16
|
|
|
17
17
|
Breadcrumbs: [Reference](https://www.shoalrun.com/cli.md) > Components > Cards and collections
|
|
18
18
|
|
|
19
|
-
**Updated: 2026-
|
|
19
|
+
**Updated: 2026-11-05.**
|
|
20
20
|
|
|
21
21
|
A card is a linked preview of another documentation page: it shows a title and short preview so readers can decide where to go next. Cards use the target page's title, the project's configured `outputs.text.card` field, and its current URL. The target is the page the reader will open when they select the card.
|
|
22
22
|
|
|
23
|
-
Authors maintain those details in the target page's frontmatter, the YAML metadata at the top of the file. A card references the page's stable `id`, so renaming its file or changing its URL
|
|
23
|
+
Authors maintain those details in the target page's frontmatter, the YAML metadata at the top of the file. A card references the page's stable `id`, so renaming its file or changing its URL doesn't break the card. HTML displays a card layout; Markdown displays the same links, descriptions, subject lifecycle status, and relationship reasons as a readable list.
|
|
24
24
|
|
|
25
|
-
Use these components as standalone, empty blocks in `.md` or `.mdx` pages or registered snippets. Literal attributes are accepted; arbitrary JavaScript expressions
|
|
25
|
+
Use these components as standalone, empty blocks in `.md` or `.mdx` pages or registered snippets. Literal attributes are accepted; arbitrary JavaScript expressions aren't evaluated.
|
|
26
26
|
|
|
27
27
|
## Link to one document
|
|
28
28
|
|
|
@@ -60,12 +60,12 @@ The array controls the order. Duplicate IDs fail validation. An empty array rend
|
|
|
60
60
|
<DocCards relation="next-step" relatedTo="guide.cards" />
|
|
61
61
|
```
|
|
62
62
|
|
|
63
|
-
| Attribute | Required | Meaning
|
|
64
|
-
| ----------- | ---------------------- |
|
|
65
|
-
| `docs` | For a curated list | Literal array of unique document IDs in display order.
|
|
66
|
-
| `relation` | For relationship cards | One declared relationship type;
|
|
67
|
-
| `relatedTo` | No | Source document for `relation`; defaults to this page.
|
|
68
|
-
| `empty` | No | Message for no results; default is “No matching documents.”
|
|
63
|
+
| Attribute | Required | Meaning |
|
|
64
|
+
| ----------- | ---------------------- | -------------------------------------------------------------- |
|
|
65
|
+
| `docs` | For a curated list | Literal array of unique document IDs in display order. |
|
|
66
|
+
| `relation` | For relationship cards | One declared relationship type; can't be combined with `docs`. |
|
|
67
|
+
| `relatedTo` | No | Source document for `relation`; defaults to this page. |
|
|
68
|
+
| `empty` | No | Message for no results; default is “No matching documents.” |
|
|
69
69
|
|
|
70
70
|
Use [RelatedReading](https://www.shoalrun.com/author/components/related-reading.md) when a plain link list grouped by purpose fits better than cards.
|
|
71
71
|
|
|
@@ -73,7 +73,7 @@ Use [RelatedReading](https://www.shoalrun.com/author/components/related-reading.
|
|
|
73
73
|
|
|
74
74
|
By default, a card shows the target page's `title` and `summary`. These are the resolved values after global defaults, page frontmatter, and enforced values have been applied. Add an optional `card` object to the target page's frontmatter when its card needs different wording.
|
|
75
75
|
|
|
76
|
-
An **eyebrow** is a short label above the card title, such as “Integration guide” or “Tutorial.” It helps readers recognize the kind of content before reading the title. It
|
|
76
|
+
An **eyebrow** is a short label above the card title, such as “Integration guide” or “Tutorial.” It helps readers recognize the kind of content before reading the title. It's optional display text; it doesn't set the document's type, add a tag, or affect collection filters. In this example, “Integration guide” appears above “Send your first payment”:
|
|
77
77
|
|
|
78
78
|
```yaml
|
|
79
79
|
title: Create a payment
|
|
@@ -92,7 +92,7 @@ card:
|
|
|
92
92
|
| `card.eyebrow` | A small label above the title. | No label. |
|
|
93
93
|
| `card.icon` | A decorative Lucide symbol above the text. | No icon, unless inherited from global frontmatter. |
|
|
94
94
|
|
|
95
|
-
These overrides affect cards only. The page heading, SEO, and navigation keep their existing values. A card's destination always comes from the stable ID; `href` overrides
|
|
95
|
+
These overrides affect cards only. The page heading, SEO, and navigation keep their existing values. A card's destination always comes from the stable ID; `href` overrides aren't supported. Values must be nonempty strings. Images, arbitrary badges, and other card fields aren't implemented and fail with a diagnostic. Subject lifecycle status comes from the target document, including authoritative OpenAPI deprecation.
|
|
96
96
|
|
|
97
97
|
## Add a Lucide icon
|
|
98
98
|
|
|
@@ -105,7 +105,7 @@ card:
|
|
|
105
105
|
|
|
106
106
|
Names use hyphens, such as `book-open`, `credit-card`, `terminal`, or `sliders-horizontal`. The pinned Lucide package supplies the icons at build time. An unknown name or URL fails with a file-specific diagnostic, so typos never silently produce an empty icon. New icons from a later Lucide release need a dependency update first.
|
|
107
107
|
|
|
108
|
-
The icon appears in every card for that page, including curated lists, collections, and relationship views. It
|
|
108
|
+
The icon appears in every card for that page, including curated lists, collections, and relationship views. It doesn't change the page heading or sidebar. Omit `card.icon` for a text-only card. Global `frontmatter.defaults.card.icon` and `frontmatter.enforced.card.icon` use the same precedence rules as other card metadata; a page can override a default with another icon name.
|
|
109
109
|
|
|
110
110
|
Icons are inline SVGs with `aria-hidden="true"` and `focusable="false"`. The visible card title remains the link's accessible name. Icons are decorative, omitted from Markdown, and require no browser JavaScript, font download, or CDN. Only the selected SVG shapes appear in each page. Adjust their color and size with `.doc-card-icon` in `styles/site.css`.
|
|
111
111
|
|
|
@@ -113,9 +113,9 @@ Lucide is open source under the [ISC license](https://lucide.dev/license), with
|
|
|
113
113
|
|
|
114
114
|
## Build a collection
|
|
115
115
|
|
|
116
|
-
A **collection** automatically finds pages that match your filters and displays them as cards. Use it when the list should follow the site's content, such as all authoring guides or pages associated with a payment operation. Unlike a curated list, you
|
|
116
|
+
A **collection** automatically finds pages that match your filters and displays them as cards. Use it when the list should follow the site's content, such as all authoring guides or pages associated with a payment operation. Unlike a curated list, you don't have to maintain an array of every matching page ID.
|
|
117
117
|
|
|
118
|
-
`DocCollection` re-runs its filters during each build. Adding a matching page adds its card on the next build; removing the tag or making that page a draft removes it. A collection
|
|
118
|
+
`DocCollection` re-runs its filters during each build. Adding a matching page adds its card on the next build; removing the tag or making that page a draft removes it. A collection doesn't create pages, change their metadata, or add them to sidebar navigation.
|
|
119
119
|
|
|
120
120
|
This example displays up to six other guides tagged `authoring`, sorted by title:
|
|
121
121
|
|
|
@@ -130,7 +130,7 @@ No matching documents.
|
|
|
130
130
|
| `type` | Matches the document kind in frontmatter, such as `guide` or `api-reference`. |
|
|
131
131
|
| `tag` | Matches a topic label in the target's `tags` array, such as `authoring`. |
|
|
132
132
|
| `operation` | Membership in its stable `operations` IDs; unknown operation IDs fail. |
|
|
133
|
-
| `audience` | Membership in its `audiences` array; this filters metadata and
|
|
133
|
+
| `audience` | Membership in its `audiences` array; this filters metadata and doesn't grant access. |
|
|
134
134
|
| `orderBy` | `title` by default, `id`, `date`, or `releaseVersion`. Date sorts newest first; version uses numeric label ordering. Every match needs the chosen field. Stable IDs break ties. |
|
|
135
135
|
| `pin` | Promotes selected matching pages to the front of the collection, in the given order. Supply a literal array of document IDs. |
|
|
136
136
|
| `exclude` | A literal array of IDs to remove. IDs absent from this publication are ignored. |
|
|
@@ -145,7 +145,7 @@ For example, in the API fixture:
|
|
|
145
145
|
<DocCollection operation="payments.create" pin={["reference.create-payment"]} />
|
|
146
146
|
```
|
|
147
147
|
|
|
148
|
-
Pinned documents must be visible and satisfy all filters, including exclusions. Invalid pins stop the build. The `pin` and `exclude` arrays require unique document IDs. Collection ordering is deterministic and
|
|
148
|
+
Pinned documents must be visible and satisfy all filters, including exclusions. Invalid pins stop the build. The `pin` and `exclude` arrays require unique document IDs. Collection ordering is deterministic and doesn't depend on filenames.
|
|
149
149
|
|
|
150
150
|
## HTML, Markdown, and agents
|
|
151
151
|
|
|
@@ -16,7 +16,7 @@ Navigation section: [Reference](https://www.shoalrun.com/.well-known/shoalrun/na
|
|
|
16
16
|
|
|
17
17
|
Breadcrumbs: [Reference](https://www.shoalrun.com/cli.md) > Components > Cards and collections
|
|
18
18
|
|
|
19
|
-
**Updated: 2026-
|
|
19
|
+
**Updated: 2026-11-05.**
|
|
20
20
|
|
|
21
21
|
Parent page: [Full Markdown page](/author/components/cards.md)
|
|
22
22
|
|
|
@@ -28,9 +28,9 @@ Parent page: [Full Markdown page](/author/components/cards.md)
|
|
|
28
28
|
|
|
29
29
|
A card is a linked preview of another documentation page: it shows a title and short preview so readers can decide where to go next. Cards use the target page's title, the project's configured `outputs.text.card` field, and its current URL. The target is the page the reader will open when they select the card.
|
|
30
30
|
|
|
31
|
-
Authors maintain those details in the target page's frontmatter, the YAML metadata at the top of the file. A card references the page's stable `id`, so renaming its file or changing its URL
|
|
31
|
+
Authors maintain those details in the target page's frontmatter, the YAML metadata at the top of the file. A card references the page's stable `id`, so renaming its file or changing its URL doesn't break the card. HTML displays a card layout; Markdown displays the same links, descriptions, subject lifecycle status, and relationship reasons as a readable list.
|
|
32
32
|
|
|
33
|
-
Use these components as standalone, empty blocks in `.md` or `.mdx` pages or registered snippets. Literal attributes are accepted; arbitrary JavaScript expressions
|
|
33
|
+
Use these components as standalone, empty blocks in `.md` or `.mdx` pages or registered snippets. Literal attributes are accepted; arbitrary JavaScript expressions aren't evaluated.
|
|
34
34
|
|
|
35
35
|
## Add a Lucide icon
|
|
36
36
|
|
|
@@ -43,7 +43,7 @@ card:
|
|
|
43
43
|
|
|
44
44
|
Names use hyphens, such as `book-open`, `credit-card`, `terminal`, or `sliders-horizontal`. The pinned Lucide package supplies the icons at build time. An unknown name or URL fails with a file-specific diagnostic, so typos never silently produce an empty icon. New icons from a later Lucide release need a dependency update first.
|
|
45
45
|
|
|
46
|
-
The icon appears in every card for that page, including curated lists, collections, and relationship views. It
|
|
46
|
+
The icon appears in every card for that page, including curated lists, collections, and relationship views. It doesn't change the page heading or sidebar. Omit `card.icon` for a text-only card. Global `frontmatter.defaults.card.icon` and `frontmatter.enforced.card.icon` use the same precedence rules as other card metadata; a page can override a default with another icon name.
|
|
47
47
|
|
|
48
48
|
Icons are inline SVGs with `aria-hidden="true"` and `focusable="false"`. The visible card title remains the link's accessible name. Icons are decorative, omitted from Markdown, and require no browser JavaScript, font download, or CDN. Only the selected SVG shapes appear in each page. Adjust their color and size with `.doc-card-icon` in `styles/site.css`.
|
|
49
49
|
|