@shoalrun/cli 0.0.0-stage → 0.1.0-alpha.12

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.
Files changed (1012) hide show
  1. package/AUTHORING.md +269 -0
  2. package/CHANGELOG.md +89 -0
  3. package/LICENSE +202 -0
  4. package/README.md +191 -2
  5. package/agent-docs/.well-known/shoalrun/navigation/docs-50f26fe22670.txt +24 -0
  6. package/agent-docs/.well-known/shoalrun/navigation/examples-tab-50f26fe22670.txt +22 -0
  7. package/agent-docs/.well-known/shoalrun/navigation/project-updates-50f26fe22670.txt +37 -0
  8. package/agent-docs/.well-known/shoalrun/navigation/reference-tab-50f26fe22670.txt +22 -0
  9. package/agent-docs/SNAPSHOT.json +9 -0
  10. package/agent-docs/about.md +49 -0
  11. package/agent-docs/api-docs/focused-contracts.md +68 -0
  12. package/agent-docs/api-docs/generate.md +189 -0
  13. package/agent-docs/api-docs/generate.sections/add-useful-examples.md +47 -0
  14. package/agent-docs/api-docs/generate.sections/choose-generated-references-or-mdx.md +50 -0
  15. package/agent-docs/api-docs/generate.sections/describe-filters-that-do-not-use-their-openapi-parameter-name.md +52 -0
  16. package/agent-docs/api-docs/generate.sections/generate-many-pages-selectively.md +71 -0
  17. package/agent-docs/api-docs/generate.sections/link-guides-to-api-references.md +48 -0
  18. package/agent-docs/api-docs/generate.sections/map-extension-values-to-shoalrun-status.md +52 -0
  19. package/agent-docs/api-docs/generate.sections/override-generated-reference-order-in-navigation.md +60 -0
  20. package/agent-docs/api-docs/generate.sections/related-reading.md +38 -0
  21. package/agent-docs/api-docs/generate.sections/use-a-template-for-editorial-context.md +45 -0
  22. package/agent-docs/api-docs/support.md +97 -0
  23. package/agent-docs/author/add-page.md +126 -0
  24. package/agent-docs/author/agent-overview.md +59 -0
  25. package/agent-docs/author/agent-workflow.md +65 -0
  26. package/agent-docs/author/agents.md +53 -0
  27. package/agent-docs/author/analytics.md +286 -0
  28. package/agent-docs/author/analytics.sections/adapter-exports-and-consent.md +51 -0
  29. package/agent-docs/author/analytics.sections/built-in-events.md +52 -0
  30. package/agent-docs/author/analytics.sections/configure-an-adapter.md +51 -0
  31. package/agent-docs/author/analytics.sections/custom-interactions.md +57 -0
  32. package/agent-docs/author/analytics.sections/event-format.md +59 -0
  33. package/agent-docs/author/analytics.sections/html-markdown-and-agents.md +42 -0
  34. package/agent-docs/author/analytics.sections/inspect-events-locally.md +36 -0
  35. package/agent-docs/author/analytics.sections/map-events-to-your-service.md +42 -0
  36. package/agent-docs/author/analytics.sections/posthog-example.md +126 -0
  37. package/agent-docs/author/analytics.sections/related-reading.md +42 -0
  38. package/agent-docs/author/authoring-agent.md +102 -0
  39. package/agent-docs/author/coding-agent.md +90 -0
  40. package/agent-docs/author/components/action-link.md +47 -0
  41. package/agent-docs/author/components/api-embeds.md +271 -0
  42. package/agent-docs/author/components/api-embeds.sections/apiexample.md +121 -0
  43. package/agent-docs/author/components/api-embeds.sections/html-markdown-and-agents.md +37 -0
  44. package/agent-docs/author/components/api-embeds.sections/related-reading.md +37 -0
  45. package/agent-docs/author/components/badge.md +80 -0
  46. package/agent-docs/author/components/breadcrumbs.md +57 -0
  47. package/agent-docs/author/components/callout.md +135 -0
  48. package/agent-docs/author/components/cards.md +168 -0
  49. package/agent-docs/author/components/cards.sections/add-a-lucide-icon.md +50 -0
  50. package/agent-docs/author/components/cards.sections/build-a-collection.md +69 -0
  51. package/agent-docs/author/components/cards.sections/curate-a-reading-list.md +66 -0
  52. package/agent-docs/author/components/cards.sections/html-markdown-and-agents.md +37 -0
  53. package/agent-docs/author/components/cards.sections/link-to-one-document.md +45 -0
  54. package/agent-docs/author/components/cards.sections/override-card-text.md +58 -0
  55. package/agent-docs/author/components/cards.sections/related-reading.md +43 -0
  56. package/agent-docs/author/components/code-blocks.md +121 -0
  57. package/agent-docs/author/components/collapsible.md +103 -0
  58. package/agent-docs/author/components/cookbook-chooser.md +90 -0
  59. package/agent-docs/author/components/custom/react.md +190 -0
  60. package/agent-docs/author/components/custom/react.sections/html-markdown-and-agents.md +36 -0
  61. package/agent-docs/author/components/custom/react.sections/interactive-react-example.md +88 -0
  62. package/agent-docs/author/components/custom/react.sections/registration.md +41 -0
  63. package/agent-docs/author/components/custom/react.sections/related-reading.md +30 -0
  64. package/agent-docs/author/components/custom/react.sections/share-the-model-with-the-browser.md +47 -0
  65. package/agent-docs/author/components/custom/react.sections/where-the-content-lives.md +100 -0
  66. package/agent-docs/author/components/custom.md +183 -0
  67. package/agent-docs/author/components/definition-list.md +56 -0
  68. package/agent-docs/author/components/diagrams/d2-gallery.md +861 -0
  69. package/agent-docs/author/components/diagrams/d2-gallery.sections/basic-shapes.md +163 -0
  70. package/agent-docs/author/components/diagrams/d2-gallery.sections/flows-and-structures.md +375 -0
  71. package/agent-docs/author/components/diagrams/d2-gallery.sections/html-markdown-and-agents.md +33 -0
  72. package/agent-docs/author/components/diagrams/d2-gallery.sections/layout-engines.md +169 -0
  73. package/agent-docs/author/components/diagrams/d2-gallery.sections/related-reading.md +37 -0
  74. package/agent-docs/author/components/diagrams/d2-gallery.sections/sequences-and-grids.md +123 -0
  75. package/agent-docs/author/components/diagrams/d2-gallery.sections/styles-and-code.md +125 -0
  76. package/agent-docs/author/components/diagrams/pele-gallery.md +1317 -0
  77. package/agent-docs/author/components/diagrams/pele-gallery.sections/charts-and-planning.md +341 -0
  78. package/agent-docs/author/components/diagrams/pele-gallery.sections/flowchart-shapes.md +269 -0
  79. package/agent-docs/author/components/diagrams/pele-gallery.sections/flows-and-behavior.md +273 -0
  80. package/agent-docs/author/components/diagrams/pele-gallery.sections/html-markdown-and-agents.md +31 -0
  81. package/agent-docs/author/components/diagrams/pele-gallery.sections/related-reading.md +35 -0
  82. package/agent-docs/author/components/diagrams/pele-gallery.sections/specialized-diagrams.md +229 -0
  83. package/agent-docs/author/components/diagrams/pele-gallery.sections/systems-and-structures.md +291 -0
  84. package/agent-docs/author/components/diagrams.md +163 -0
  85. package/agent-docs/author/components/doc-link.md +62 -0
  86. package/agent-docs/author/components/fields.md +123 -0
  87. package/agent-docs/author/components/file-tree.md +88 -0
  88. package/agent-docs/author/components/images.md +105 -0
  89. package/agent-docs/author/components/info-hint.md +65 -0
  90. package/agent-docs/author/components/kbd.md +47 -0
  91. package/agent-docs/author/components/math.md +43 -0
  92. package/agent-docs/author/components/only.md +69 -0
  93. package/agent-docs/author/components/progress.md +57 -0
  94. package/agent-docs/author/components/related-reading.md +52 -0
  95. package/agent-docs/author/components/steps.md +127 -0
  96. package/agent-docs/author/components/tables.md +68 -0
  97. package/agent-docs/author/components/tabs.md +133 -0
  98. package/agent-docs/author/components/timeline.md +80 -0
  99. package/agent-docs/author/components/tooltips.md +62 -0
  100. package/agent-docs/author/components/walkthroughs.md +392 -0
  101. package/agent-docs/author/components/walkthroughs.sections/attributes.md +45 -0
  102. package/agent-docs/author/components/walkthroughs.sections/build-up-code.md +133 -0
  103. package/agent-docs/author/components/walkthroughs.sections/choose-a-layout.md +141 -0
  104. package/agent-docs/author/components/walkthroughs.sections/explain-one-file.md +126 -0
  105. package/agent-docs/author/components/walkthroughs.sections/html-markdown-and-agents.md +38 -0
  106. package/agent-docs/author/components/walkthroughs.sections/related-reading.md +36 -0
  107. package/agent-docs/author/components/walkthroughs.sections/syntax.md +51 -0
  108. package/agent-docs/author/components/walkthroughs.sections/take-code-from-a-file.md +34 -0
  109. package/agent-docs/author/components.md +81 -0
  110. package/agent-docs/author/content.md +74 -0
  111. package/agent-docs/author/cookbooks.md +119 -0
  112. package/agent-docs/author/css.md +241 -0
  113. package/agent-docs/author/css.sections/borders-fields-and-navigation-tokens.md +70 -0
  114. package/agent-docs/author/css.sections/core-color-tokens.md +71 -0
  115. package/agent-docs/author/css.sections/html-markdown-and-agents.md +54 -0
  116. package/agent-docs/author/css.sections/page-attributes.md +69 -0
  117. package/agent-docs/author/css.sections/page-transitions.md +60 -0
  118. package/agent-docs/author/css.sections/responsive-behavior.md +58 -0
  119. package/agent-docs/author/css.sections/status-code-and-callout-tokens.md +89 -0
  120. package/agent-docs/author/css.sections/typography-shape-and-width-tokens.md +71 -0
  121. package/agent-docs/author/custom-metadata.md +177 -0
  122. package/agent-docs/author/custom-metadata.sections/add-a-custom-page-field.md +68 -0
  123. package/agent-docs/author/custom-metadata.sections/choose-text-for-each-surface.md +54 -0
  124. package/agent-docs/author/custom-metadata.sections/preview-changes-to-metadata-providers.md +33 -0
  125. package/agent-docs/author/custom-metadata.sections/read-metadata-from-a-project-module.md +57 -0
  126. package/agent-docs/author/custom-metadata.sections/related-reading.md +29 -0
  127. package/agent-docs/author/design-templates.md +49 -0
  128. package/agent-docs/author/design-writing-guides.md +73 -0
  129. package/agent-docs/author/frontmatter-reference.md +150 -0
  130. package/agent-docs/author/frontmatter-reference.sections/choose-a-publication-and-visibility.md +44 -0
  131. package/agent-docs/author/frontmatter-reference.sections/control-output-details.md +41 -0
  132. package/agent-docs/author/frontmatter-reference.sections/global-defaults-and-enforced-values.md +31 -0
  133. package/agent-docs/author/frontmatter-reference.sections/html-markdown-and-agents.md +31 -0
  134. package/agent-docs/author/frontmatter-reference.sections/identify-and-route-a-page.md +40 -0
  135. package/agent-docs/author/frontmatter-reference.sections/point-agents-to-it.md +37 -0
  136. package/agent-docs/author/frontmatter-reference.sections/project-defined-fields.md +41 -0
  137. package/agent-docs/author/frontmatter-reference.sections/related-reading.md +35 -0
  138. package/agent-docs/author/frontmatter-reference.sections/use-the-local-files-while-authoring.md +33 -0
  139. package/agent-docs/author/frontmatter-reference.sections/when-the-files-update.md +31 -0
  140. package/agent-docs/author/frontmatter.md +255 -0
  141. package/agent-docs/author/frontmatter.sections/audience-badges.md +66 -0
  142. package/agent-docs/author/frontmatter.sections/give-deprecation-guidance.md +88 -0
  143. package/agent-docs/author/frontmatter.sections/global-defaults-and-enforced-values.md +75 -0
  144. package/agent-docs/author/frontmatter.sections/optional-native-fields.md +90 -0
  145. package/agent-docs/author/frontmatter.sections/publication-fields.md +85 -0
  146. package/agent-docs/author/frontmatter.sections/publishing-policy.md +71 -0
  147. package/agent-docs/author/frontmatter.sections/related-metadata-tasks.md +72 -0
  148. package/agent-docs/author/frontmatter.sections/related-reading.md +72 -0
  149. package/agent-docs/author/frontmatter.sections/required-after-inheritance.md +84 -0
  150. package/agent-docs/author/frontmatter.sections/seo-fields.md +79 -0
  151. package/agent-docs/author/frontmatter.sections/validation-rules.md +75 -0
  152. package/agent-docs/author/markdown-metadata.md +207 -0
  153. package/agent-docs/author/navigation.md +269 -0
  154. package/agent-docs/author/navigation.sections/arrange-authored-pages.md +58 -0
  155. package/agent-docs/author/navigation.sections/fill-an-api-tag-group.md +48 -0
  156. package/agent-docs/author/navigation.sections/hide-group-page-counts.md +45 -0
  157. package/agent-docs/author/navigation.sections/html-markdown-and-agents.md +40 -0
  158. package/agent-docs/author/navigation.sections/local-api-preview.md +47 -0
  159. package/agent-docs/author/navigation.sections/mix-guides-and-api-references.md +65 -0
  160. package/agent-docs/author/navigation.sections/optionally-split-a-large-menu-into-files.md +97 -0
  161. package/agent-docs/author/navigation.sections/reach-navigation-while-reading.md +38 -0
  162. package/agent-docs/author/navigation.sections/related-reading.md +44 -0
  163. package/agent-docs/author/navigation.sections/split-navigation-into-tabs.md +67 -0
  164. package/agent-docs/author/navigation.sections/subject-lifecycle-labels.md +42 -0
  165. package/agent-docs/author/reader-views.md +200 -0
  166. package/agent-docs/author/reader-views.sections/configure-the-choices.md +65 -0
  167. package/agent-docs/author/reader-views.sections/connect-your-own-control.md +59 -0
  168. package/agent-docs/author/reader-views.sections/how-it-works-for-agents.md +41 -0
  169. package/agent-docs/author/reader-views.sections/mark-pages.md +49 -0
  170. package/agent-docs/author/reader-views.sections/mark-sections-and-add-an-entry-choice.md +49 -0
  171. package/agent-docs/author/reader-views.sections/place-filter-controls.md +43 -0
  172. package/agent-docs/author/reader-views.sections/try-the-controls-here.md +64 -0
  173. package/agent-docs/author/recipe-drafts.md +181 -0
  174. package/agent-docs/author/recipe-drafts.sections/1-write-one-reusable-step.md +82 -0
  175. package/agent-docs/author/recipe-drafts.sections/2-list-the-steps-for-one-complete-goal.md +60 -0
  176. package/agent-docs/author/recipe-drafts.sections/3-generate-a-draft-and-review-it.md +55 -0
  177. package/agent-docs/author/recipe-drafts.sections/4-maintain-shoalrun-s-published-recipe-snapshots.md +66 -0
  178. package/agent-docs/author/recipe-drafts.sections/related-reading.md +45 -0
  179. package/agent-docs/author/recipe-drafts.sections/start-an-ingredient-from-an-api-example.md +50 -0
  180. package/agent-docs/author/recipes.md +127 -0
  181. package/agent-docs/author/recipes.sections/how-agents-use-this.md +50 -0
  182. package/agent-docs/author/recipes.sections/one-example-from-shoalrun.md +64 -0
  183. package/agent-docs/author/recipes.sections/related-reading.md +36 -0
  184. package/agent-docs/author/recipes.sections/try-a-complete-workflow.md +42 -0
  185. package/agent-docs/author/recipes.sections/use-recipes-for-task-oriented-how-tos.md +52 -0
  186. package/agent-docs/author/recipes.sections/what-changing-an-ingredient-updates.md +44 -0
  187. package/agent-docs/author/recipes.sections/what-each-file-does.md +48 -0
  188. package/agent-docs/author/recipes.sections/what-happens-and-when.md +45 -0
  189. package/agent-docs/author/related-reading.md +147 -0
  190. package/agent-docs/author/related-reading.sections/automatic-footers.md +35 -0
  191. package/agent-docs/author/related-reading.sections/declare-relationships.md +68 -0
  192. package/agent-docs/author/related-reading.sections/display-related-documents.md +54 -0
  193. package/agent-docs/author/related-reading.sections/html-markdown-and-agents.md +28 -0
  194. package/agent-docs/author/related-reading.sections/inspect-output-and-changes.md +32 -0
  195. package/agent-docs/author/related-reading.sections/reading-paths-in-section-markdown.md +32 -0
  196. package/agent-docs/author/related-reading.sections/related-reading.md +34 -0
  197. package/agent-docs/author/related-reading.sections/where-relationship-explanations-come-from.md +34 -0
  198. package/agent-docs/author/release-notes.md +153 -0
  199. package/agent-docs/author/search.md +299 -0
  200. package/agent-docs/author/search.sections/choose-a-provider.md +52 -0
  201. package/agent-docs/author/search.sections/cli-and-mcp-ranking-details.md +49 -0
  202. package/agent-docs/author/search.sections/hosted-semantic-search-limits.md +55 -0
  203. package/agent-docs/author/search.sections/html-markdown-and-agents.md +37 -0
  204. package/agent-docs/author/search.sections/lexical-search.md +78 -0
  205. package/agent-docs/author/search.sections/local-semantic-preview.md +43 -0
  206. package/agent-docs/author/search.sections/read-a-search-result-with-an-agent.md +41 -0
  207. package/agent-docs/author/search.sections/related-reading.md +45 -0
  208. package/agent-docs/author/search.sections/reuse-the-lexical-index.md +81 -0
  209. package/agent-docs/author/search.sections/turn-search-off.md +46 -0
  210. package/agent-docs/author/search.sections/use-the-search-box.md +39 -0
  211. package/agent-docs/author/search.sections/write-a-custom-provider.md +98 -0
  212. package/agent-docs/author/snippets.md +122 -0
  213. package/agent-docs/author/taxonomy.md +121 -0
  214. package/agent-docs/author/templates.md +231 -0
  215. package/agent-docs/author/templates.sections/built-in-feature-templates.md +52 -0
  216. package/agent-docs/author/templates.sections/built-in-templates.md +48 -0
  217. package/agent-docs/author/templates.sections/choose-formatting-enforcement-for-your-project.md +69 -0
  218. package/agent-docs/author/templates.sections/create-or-edit-a-project-template.md +76 -0
  219. package/agent-docs/author/templates.sections/keep-the-four-shapes-distinct.md +46 -0
  220. package/agent-docs/author/templates.sections/project-added-templates.md +39 -0
  221. package/agent-docs/author/templates.sections/related-reading.md +47 -0
  222. package/agent-docs/author/templates.sections/scaffold-a-page.md +53 -0
  223. package/agent-docs/author/templates.sections/short-cli-and-derived-values.md +56 -0
  224. package/agent-docs/author/templates.sections/what-every-template-gives-you.md +44 -0
  225. package/agent-docs/author/workspace/commands.md +92 -0
  226. package/agent-docs/author/workspace.md +104 -0
  227. package/agent-docs/author/writing-style.md +147 -0
  228. package/agent-docs/author/writing-style.sections/adapt-this-example.md +28 -0
  229. package/agent-docs/author/writing-style.sections/choose-components-by-reader-need.md +44 -0
  230. package/agent-docs/author/writing-style.sections/evidence-and-uncertainty.md +32 -0
  231. package/agent-docs/author/writing-style.sections/example-audience-and-scope.md +28 -0
  232. package/agent-docs/author/writing-style.sections/ingredients-recipes-and-cookbooks.md +36 -0
  233. package/agent-docs/author/writing-style.sections/page-purpose-and-structure.md +49 -0
  234. package/agent-docs/author/writing-style.sections/procedures-and-examples.md +32 -0
  235. package/agent-docs/author/writing-style.sections/related-reading.md +32 -0
  236. package/agent-docs/author/writing-style.sections/review-a-draft.md +30 -0
  237. package/agent-docs/author/writing-style.sections/reviewed-writing-examples.md +39 -0
  238. package/agent-docs/author/writing-style.sections/voice-and-explanations.md +39 -0
  239. package/agent-docs/changelog/2026-10-14-agent-readiness.md +29 -0
  240. package/agent-docs/changelog/2026-10-15-evaluation-builds.md +84 -0
  241. package/agent-docs/changelog/2026-10-16-navigation-layouts.md +72 -0
  242. package/agent-docs/changelog/2026-10-17-mcp-hosting.md +60 -0
  243. package/agent-docs/changelog/2026-10-18-search-and-tooltips.md +46 -0
  244. package/agent-docs/changelog/2026-10-19-visual-navigation.md +44 -0
  245. package/agent-docs/changelog/2026-10-25.md +45 -0
  246. package/agent-docs/changelog/2026-10-26.md +66 -0
  247. package/agent-docs/changelog/2026-10-27.md +85 -0
  248. package/agent-docs/changelog/authoring-preview.md +40 -0
  249. package/agent-docs/changelog/authoring-search.md +39 -0
  250. package/agent-docs/changelog/authoring-tools.md +34 -0
  251. package/agent-docs/changelog/working-tree-skill.md +38 -0
  252. package/agent-docs/changelog.md +115 -0
  253. package/agent-docs/chat/checks.md +175 -0
  254. package/agent-docs/chat/checks.sections/answer-ahead-of-time.md +38 -0
  255. package/agent-docs/chat/checks.sections/answer-for-one-audience.md +66 -0
  256. package/agent-docs/chat/checks.sections/answer-without-a-model.md +54 -0
  257. package/agent-docs/chat/checks.sections/follow-up-questions.md +54 -0
  258. package/agent-docs/chat/checks.sections/how-an-answer-is-checked.md +67 -0
  259. package/agent-docs/chat/checks.sections/questions-with-several-parts.md +44 -0
  260. package/agent-docs/chat/checks.sections/related-reading.md +42 -0
  261. package/agent-docs/chat/checks.sections/reuse-answers.md +50 -0
  262. package/agent-docs/chat/host.md +222 -0
  263. package/agent-docs/chat/host.sections/cap-the-daily-spend.md +78 -0
  264. package/agent-docs/chat/host.sections/keep-a-record-of-questions.md +64 -0
  265. package/agent-docs/chat/host.sections/related-reading.md +43 -0
  266. package/agent-docs/chat/passage-index.md +228 -0
  267. package/agent-docs/chat/passage-index.sections/build-the-index.md +72 -0
  268. package/agent-docs/chat/passage-index.sections/embed-passages.md +103 -0
  269. package/agent-docs/chat/passage-index.sections/how-the-default-chunker-splits-a-page.md +53 -0
  270. package/agent-docs/chat/passage-index.sections/limits.md +45 -0
  271. package/agent-docs/chat/passage-index.sections/passage-ids-and-links.md +52 -0
  272. package/agent-docs/chat/passage-index.sections/related-reading.md +42 -0
  273. package/agent-docs/chat/passage-index.sections/what-a-passage-contains.md +91 -0
  274. package/agent-docs/chat/prepared-answers.md +116 -0
  275. package/agent-docs/chat/settings.md +213 -0
  276. package/agent-docs/chat/settings.sections/choose-the-scorer.md +63 -0
  277. package/agent-docs/chat/settings.sections/configure-chat.md +80 -0
  278. package/agent-docs/chat/settings.sections/configure-retrieval.md +62 -0
  279. package/agent-docs/chat/settings.sections/related-reading.md +32 -0
  280. package/agent-docs/chat/settings.sections/send-extra-request-fields.md +42 -0
  281. package/agent-docs/chat/settings.sections/use-more-than-one-model.md +62 -0
  282. package/agent-docs/chat/settings.sections/when-the-scorer-is-down.md +42 -0
  283. package/agent-docs/chat/setup.md +97 -0
  284. package/agent-docs/chat.md +102 -0
  285. package/agent-docs/cli.md +445 -0
  286. package/agent-docs/cli.sections/audit-a-project-and-api-sources.md +102 -0
  287. package/agent-docs/cli.sections/author-pages.md +94 -0
  288. package/agent-docs/cli.sections/build-and-serve.md +144 -0
  289. package/agent-docs/cli.sections/inspect-config-and-operations.md +41 -0
  290. package/agent-docs/cli.sections/npm-scripts-in-this-repository.md +45 -0
  291. package/agent-docs/cli.sections/related-reading.md +33 -0
  292. package/agent-docs/cli.sections/search-and-chat.md +132 -0
  293. package/agent-docs/cli.sections/start-a-project.md +37 -0
  294. package/agent-docs/cli.sections/working-tree-authoring-tools.md +35 -0
  295. package/agent-docs/concepts.md +133 -0
  296. package/agent-docs/config/apis.md +136 -0
  297. package/agent-docs/config/content.md +264 -0
  298. package/agent-docs/config/content.sections/authoring.md +58 -0
  299. package/agent-docs/config/content.sections/badges.md +34 -0
  300. package/agent-docs/config/content.sections/callouts.md +34 -0
  301. package/agent-docs/config/content.sections/cookbooks.md +38 -0
  302. package/agent-docs/config/content.sections/frontmatter.md +75 -0
  303. package/agent-docs/config/content.sections/readerfilters.md +44 -0
  304. package/agent-docs/config/content.sections/related-reading.md +34 -0
  305. package/agent-docs/config/content.sections/relationships.md +76 -0
  306. package/agent-docs/config/content.sections/snippets.md +61 -0
  307. package/agent-docs/config/content.sections/templates.md +57 -0
  308. package/agent-docs/config/content.sections/variables.md +55 -0
  309. package/agent-docs/config/examples.md +362 -0
  310. package/agent-docs/config/examples.sections/feature-showcase.md +63 -0
  311. package/agent-docs/config/examples.sections/minimal-site.md +85 -0
  312. package/agent-docs/config/examples.sections/multilingual-help-center.md +115 -0
  313. package/agent-docs/config/examples.sections/parcel-api-documentation.md +158 -0
  314. package/agent-docs/config/examples.sections/related-reading.md +55 -0
  315. package/agent-docs/config/examples.sections/shared-company-preset.md +123 -0
  316. package/agent-docs/config/integrations.md +76 -0
  317. package/agent-docs/config/outputs.md +160 -0
  318. package/agent-docs/config/outputs.sections/exports.md +57 -0
  319. package/agent-docs/config/outputs.sections/metadata.md +42 -0
  320. package/agent-docs/config/outputs.sections/related-reading.md +34 -0
  321. package/agent-docs/config/publishing.md +219 -0
  322. package/agent-docs/config/publishing.sections/navigation.md +92 -0
  323. package/agent-docs/config/publishing.sections/redirects.md +79 -0
  324. package/agent-docs/config/publishing.sections/related-reading.md +33 -0
  325. package/agent-docs/config/site.md +193 -0
  326. package/agent-docs/config/site.sections/related-reading.md +33 -0
  327. package/agent-docs/config/site.sections/theme.md +74 -0
  328. package/agent-docs/config.md +195 -0
  329. package/agent-docs/configuration.md +386 -0
  330. package/agent-docs/configuration.sections/build-several-sites-from-shared-content.md +36 -0
  331. package/agent-docs/configuration.sections/change-inherited-lists-deliberately.md +76 -0
  332. package/agent-docs/configuration.sections/extract-a-section-with-include.md +75 -0
  333. package/agent-docs/configuration.sections/inspect-and-validate-changes.md +77 -0
  334. package/agent-docs/configuration.sections/related-reading.md +42 -0
  335. package/agent-docs/configuration.sections/separate-config-inheritance-from-page-metadata.md +54 -0
  336. package/agent-docs/configuration.sections/share-defaults-through-extends.md +121 -0
  337. package/agent-docs/configuration.sections/start-with-one-working-file.md +83 -0
  338. package/agent-docs/configuration.sections/understand-the-three-stages.md +59 -0
  339. package/agent-docs/configuration.sections/understand-where-paths-point.md +53 -0
  340. package/agent-docs/connect/mcp.md +85 -0
  341. package/agent-docs/contribute/agent-skills.md +72 -0
  342. package/agent-docs/cookbooks/authoring.md +72 -0
  343. package/agent-docs/cookbooks/site-workflows.md +63 -0
  344. package/agent-docs/cookbooks/welcome-email.md +59 -0
  345. package/agent-docs/documents.json +19807 -0
  346. package/agent-docs/example-api/cedar/create-enrollment-7af3e5d2.md +594 -0
  347. package/agent-docs/example-api/cedar/get-legacy-parcel-6758d051.md +122 -0
  348. package/agent-docs/example-api/cedar/get-parcel-edee10e6.md +122 -0
  349. package/agent-docs/example-api/cedar/list-parcels-0345fb5f.md +271 -0
  350. package/agent-docs/example-api/cedar/parcel-delivered-7d1ba6db.md +122 -0
  351. package/agent-docs/example-api/cedar/upload-manifest-1af17891.md +101 -0
  352. package/agent-docs/example-api/cedar.md +39 -0
  353. package/agent-docs/example-api/create-note.md +344 -0
  354. package/agent-docs/example-api/generated/get-note-cbedb319.md +165 -0
  355. package/agent-docs/example-api/write-note.md +55 -0
  356. package/agent-docs/explore.md +54 -0
  357. package/agent-docs/glossary.md +823 -0
  358. package/agent-docs/index.md +249 -0
  359. package/agent-docs/ingredients/audit-site.md +27 -0
  360. package/agent-docs/ingredients/build-site.md +29 -0
  361. package/agent-docs/ingredients/compile-framework.md +28 -0
  362. package/agent-docs/ingredients/complete-page.md +30 -0
  363. package/agent-docs/ingredients/inspect-agent-bundle.md +28 -0
  364. package/agent-docs/ingredients/inspect-build.md +41 -0
  365. package/agent-docs/ingredients/preview-site.md +31 -0
  366. package/agent-docs/ingredients/refresh-agent-bundle.md +29 -0
  367. package/agent-docs/ingredients/scaffold-page.md +28 -0
  368. package/agent-docs/non-goals.md +58 -0
  369. package/agent-docs/provenance.json +10 -0
  370. package/agent-docs/publish/agent-discovery.md +79 -0
  371. package/agent-docs/publish/agent-friendliness.md +201 -0
  372. package/agent-docs/publish/agent-friendliness.sections/discover-a-page-with-a-small-context-budget.md +61 -0
  373. package/agent-docs/publish/agent-friendliness.sections/distinguish-examples-from-a-real-service.md +48 -0
  374. package/agent-docs/publish/agent-friendliness.sections/evidence-has-a-scope.md +46 -0
  375. package/agent-docs/publish/agent-friendliness.sections/keep-shared-instructions-complete.md +48 -0
  376. package/agent-docs/publish/agent-friendliness.sections/related-reading.md +52 -0
  377. package/agent-docs/publish/agent-friendliness.sections/secret-handshake.md +50 -0
  378. package/agent-docs/publish/agent-friendliness.sections/try-the-page-controls.md +62 -0
  379. package/agent-docs/publish/agent-friendliness.sections/use-the-transport-your-client-supports.md +50 -0
  380. package/agent-docs/publish/agent-friendliness.sections/verify-the-page-and-detect-changes.md +58 -0
  381. package/agent-docs/publish/agent-friendliness.sections/what-an-agent-reads.md +68 -0
  382. package/agent-docs/publish/agent-friendliness.sections/what-happens-to-an-unsupported-component.md +60 -0
  383. package/agent-docs/publish/api-references.md +219 -0
  384. package/agent-docs/publish/api-references.sections/author-the-reference-page.md +65 -0
  385. package/agent-docs/publish/api-references.sections/build-and-verify-the-output.md +48 -0
  386. package/agent-docs/publish/api-references.sections/inspect-the-machine-readable-contract.md +36 -0
  387. package/agent-docs/publish/api-references.sections/next-steps.md +62 -0
  388. package/agent-docs/publish/api-references.sections/preview-a-small-api-reference.md +38 -0
  389. package/agent-docs/publish/api-references.sections/put-the-spec-in-your-project.md +62 -0
  390. package/agent-docs/publish/api-references.sections/register-the-operation.md +64 -0
  391. package/agent-docs/publish/api-references.sections/related-reading.md +42 -0
  392. package/agent-docs/publish/api-references.sections/review-imported-content-before-publishing.md +54 -0
  393. package/agent-docs/publish/api-references.sections/what-readers-get.md +38 -0
  394. package/agent-docs/publish/audit.md +160 -0
  395. package/agent-docs/publish/audit.sections/add-project-tests.md +57 -0
  396. package/agent-docs/publish/audit.sections/check-agent-evaluation-reports.md +52 -0
  397. package/agent-docs/publish/audit.sections/check-before-pushing.md +80 -0
  398. package/agent-docs/publish/audit.sections/connect-a-documentation-test-suite.md +54 -0
  399. package/agent-docs/publish/audit.sections/read-the-report.md +67 -0
  400. package/agent-docs/publish/audit.sections/related-reading.md +47 -0
  401. package/agent-docs/publish/content-export.md +208 -0
  402. package/agent-docs/publish/content-export.sections/assets-downloads-and-notices.md +40 -0
  403. package/agent-docs/publish/content-export.sections/check-the-result.md +27 -0
  404. package/agent-docs/publish/content-export.sections/export-selected-pages.md +113 -0
  405. package/agent-docs/publish/content-export.sections/inspect-the-manifest.md +29 -0
  406. package/agent-docs/publish/content-export.sections/prerequisites.md +29 -0
  407. package/agent-docs/publish/content-export.sections/related-reading.md +35 -0
  408. package/agent-docs/publish/content-export.sections/review-exported-api-material.md +44 -0
  409. package/agent-docs/publish/content-export.sections/try-the-help-drawer-example.md +34 -0
  410. package/agent-docs/publish/content-export.sections/what-the-representations-retain.md +43 -0
  411. package/agent-docs/publish/content-negotiation.md +121 -0
  412. package/agent-docs/publish/content-negotiation.sections/hosting-contract.md +60 -0
  413. package/agent-docs/publish/content-negotiation.sections/missing-pages.md +51 -0
  414. package/agent-docs/publish/content-negotiation.sections/related-reading.md +45 -0
  415. package/agent-docs/publish/content-negotiation.sections/validators-and-manifest-links.md +49 -0
  416. package/agent-docs/publish/content-negotiation.sections/verify-the-deployed-url.md +62 -0
  417. package/agent-docs/publish/content-negotiation.sections/what-if-the-host-cannot-negotiate.md +47 -0
  418. package/agent-docs/publish/content-negotiation.sections/what-shoalrun-builds-and-what-the-host-does.md +49 -0
  419. package/agent-docs/publish/content-negotiation.sections/why-this-matters.md +47 -0
  420. package/agent-docs/publish/deployment-check.md +72 -0
  421. package/agent-docs/publish/evals.md +175 -0
  422. package/agent-docs/publish/evals.sections/add-the-audit-hook.md +63 -0
  423. package/agent-docs/publish/evals.sections/check-the-report.md +36 -0
  424. package/agent-docs/publish/evals.sections/define-a-task-file.md +47 -0
  425. package/agent-docs/publish/evals.sections/diagnose-a-different-build.md +42 -0
  426. package/agent-docs/publish/evals.sections/prepare-a-report-for-the-built-site.md +39 -0
  427. package/agent-docs/publish/evals.sections/related-reading.md +36 -0
  428. package/agent-docs/publish/evals.sections/run-and-review-the-tasks.md +54 -0
  429. package/agent-docs/publish/evals.sections/shoalrun-s-own-example.md +42 -0
  430. package/agent-docs/publish/host-adapters.md +60 -0
  431. package/agent-docs/publish/manni.md +227 -0
  432. package/agent-docs/publish/manni.sections/check-the-result.md +40 -0
  433. package/agent-docs/publish/manni.sections/how-this-site-uses-manni.md +83 -0
  434. package/agent-docs/publish/manni.sections/optional-custom-policies.md +42 -0
  435. package/agent-docs/publish/manni.sections/prerequisites.md +40 -0
  436. package/agent-docs/publish/mcp-analytics.md +356 -0
  437. package/agent-docs/publish/mcp-analytics.sections/adapter-exports.md +50 -0
  438. package/agent-docs/publish/mcp-analytics.sections/enable-analytics.md +45 -0
  439. package/agent-docs/publish/mcp-analytics.sections/event-fields-and-service-mappings.md +53 -0
  440. package/agent-docs/publish/mcp-analytics.sections/optionally-collect-intent-and-group-calls.md +62 -0
  441. package/agent-docs/publish/mcp-analytics.sections/optionally-identify-the-client-and-model.md +54 -0
  442. package/agent-docs/publish/mcp-analytics.sections/related-reading.md +36 -0
  443. package/agent-docs/publish/mcp-analytics.sections/safeguards-and-limits.md +46 -0
  444. package/agent-docs/publish/mcp.md +190 -0
  445. package/agent-docs/publish/mcp.sections/check-budgets-and-errors.md +52 -0
  446. package/agent-docs/publish/mcp.sections/choose-the-documentation-source.md +51 -0
  447. package/agent-docs/publish/mcp.sections/configure-the-client.md +55 -0
  448. package/agent-docs/publish/mcp.sections/generate-a-vercel-endpoint.md +50 -0
  449. package/agent-docs/publish/mcp.sections/related-reading.md +42 -0
  450. package/agent-docs/publish/mcp.sections/search-then-read.md +53 -0
  451. package/agent-docs/publish/mcp.sections/serve-a-public-endpoint-on-node.md +79 -0
  452. package/agent-docs/publish/mcp.sections/verify-the-connection.md +40 -0
  453. package/agent-docs/publish/mcp.sections/why-offer-mcp-for-public-docs.md +42 -0
  454. package/agent-docs/publish/openapi-extension-mappings.md +84 -0
  455. package/agent-docs/publish/output.md +220 -0
  456. package/agent-docs/publish/output.sections/api-contracts.md +48 -0
  457. package/agent-docs/publish/output.sections/code-highlighting.md +38 -0
  458. package/agent-docs/publish/output.sections/current-limits.md +40 -0
  459. package/agent-docs/publish/output.sections/incremental-sync.md +69 -0
  460. package/agent-docs/publish/output.sections/manifest-records-and-sections.md +46 -0
  461. package/agent-docs/publish/output.sections/navigation-section-indexes.md +42 -0
  462. package/agent-docs/publish/output.sections/page-formats.md +46 -0
  463. package/agent-docs/publish/output.sections/published-output-contract.md +58 -0
  464. package/agent-docs/publish/output.sections/reader-appearance-and-controls.md +44 -0
  465. package/agent-docs/publish/output.sections/related-reading.md +34 -0
  466. package/agent-docs/publish/output.sections/response-identity.md +38 -0
  467. package/agent-docs/publish/output.sections/site-files.md +64 -0
  468. package/agent-docs/publish/output.sections/validate-an-existing-build-locally.md +48 -0
  469. package/agent-docs/publish/output.sections/where-files-go.md +49 -0
  470. package/agent-docs/publish/publications.md +153 -0
  471. package/agent-docs/publish/revisions.md +104 -0
  472. package/agent-docs/publish/seo.md +119 -0
  473. package/agent-docs/publish/single-source-sites.md +168 -0
  474. package/agent-docs/publish/troubleshooting.md +112 -0
  475. package/agent-docs/publish/vercel.md +130 -0
  476. package/agent-docs/publish/vercel.sections/check-the-deployment.md +54 -0
  477. package/agent-docs/publish/vercel.sections/include-an-mcp-endpoint.md +38 -0
  478. package/agent-docs/publish/vercel.sections/prepare-your-project.md +52 -0
  479. package/agent-docs/publish/vercel.sections/related-reading.md +38 -0
  480. package/agent-docs/publish.md +95 -0
  481. package/agent-docs/recipes/add-page.md +194 -0
  482. package/agent-docs/recipes/add-page.sections/audit-the-shoalrun-docs-project.md +40 -0
  483. package/agent-docs/recipes/add-page.sections/before-you-start.md +32 -0
  484. package/agent-docs/recipes/add-page.sections/build-the-shoalrun-docs-site.md +42 -0
  485. package/agent-docs/recipes/add-page.sections/check-agent-search-and-page-lookup.md +42 -0
  486. package/agent-docs/recipes/add-page.sections/check-the-built-page-artifacts.md +54 -0
  487. package/agent-docs/recipes/add-page.sections/check-the-outcome.md +28 -0
  488. package/agent-docs/recipes/add-page.sections/complete-the-guide-and-add-navigation.md +42 -0
  489. package/agent-docs/recipes/add-page.sections/install-the-site-dependencies.md +41 -0
  490. package/agent-docs/recipes/add-page.sections/regenerate-the-agent-documentation-bundle.md +43 -0
  491. package/agent-docs/recipes/add-page.sections/related-reading.md +30 -0
  492. package/agent-docs/recipes/add-page.sections/scaffold-a-new-guide.md +42 -0
  493. package/agent-docs/recipes/audit-docs.md +121 -0
  494. package/agent-docs/recipes/build-docs.md +104 -0
  495. package/agent-docs/recipes/preview-hybrid-search.md +84 -0
  496. package/agent-docs/recipes/preview-page.md +123 -0
  497. package/agent-docs/recipes/queue-email.md +49 -0
  498. package/agent-docs/recipes/refresh-agent-docs.md +127 -0
  499. package/agent-docs/recipes/send-welcome-email.md +92 -0
  500. package/agent-docs/reference/agent-skills.md +73 -0
  501. package/agent-docs/search-and-chat.md +87 -0
  502. package/agent-docs/search-index.json +1 -0
  503. package/agent-docs/start.md +201 -0
  504. package/agent-docs/start.sections/add-the-page-to-navigation.md +50 -0
  505. package/agent-docs/start.sections/build-and-check-both-outputs.md +50 -0
  506. package/agent-docs/start.sections/build-this-site.md +35 -0
  507. package/agent-docs/start.sections/check-writing-style.md +35 -0
  508. package/agent-docs/start.sections/create-a-page.md +105 -0
  509. package/agent-docs/start.sections/make-it-yours.md +37 -0
  510. package/agent-docs/start.sections/migrating-from-github-packages.md +35 -0
  511. package/agent-docs/start.sections/prerequisites.md +37 -0
  512. package/agent-docs/start.sections/related-reading.md +45 -0
  513. package/agent-docs/start.sections/start-your-own-project.md +53 -0
  514. package/agent-docs/status.md +75 -0
  515. package/agent-docs/styling/color-modes.md +89 -0
  516. package/agent-docs/styling/footer.md +69 -0
  517. package/agent-docs/styling/header.md +67 -0
  518. package/agent-docs/styling/layouts.md +197 -0
  519. package/agent-docs/styling/layouts.sections/build-a-landing-page.md +61 -0
  520. package/agent-docs/styling/layouts.sections/build-a-splash-page.md +88 -0
  521. package/agent-docs/styling/layouts.sections/control-navigation-tabs.md +51 -0
  522. package/agent-docs/styling/layouts.sections/customize-the-hero.md +50 -0
  523. package/agent-docs/styling/layouts.sections/hero.md +83 -0
  524. package/agent-docs/styling/layouts.sections/html-markdown-and-agents.md +40 -0
  525. package/agent-docs/styling/layouts.sections/related-reading.md +42 -0
  526. package/agent-docs/styling/palettes.md +144 -0
  527. package/agent-docs/styling/share-images.md +109 -0
  528. package/agent-docs/styling/themes.md +128 -0
  529. package/agent-docs/styling/try.md +94 -0
  530. package/agent-docs/what-is-shoalrun.md +56 -0
  531. package/assets/analytics.js +72 -0
  532. package/assets/ask-widget.js +320 -0
  533. package/assets/code-samples.js +28 -0
  534. package/assets/components.js +32 -0
  535. package/assets/cookbook-chooser.js +170 -0
  536. package/assets/copy-markdown.js +24 -0
  537. package/assets/example-panel.js +77 -0
  538. package/assets/file-tree.js +49 -0
  539. package/assets/image-viewer.js +41 -0
  540. package/assets/mode.js +26 -0
  541. package/assets/navigation.js +233 -0
  542. package/assets/reader-filters.js +305 -0
  543. package/assets/reader.js +111 -0
  544. package/assets/search-highlight.js +32 -0
  545. package/assets/search-lexical.js +66 -0
  546. package/assets/search.js +150 -0
  547. package/assets/table-filter.js +63 -0
  548. package/assets/tabs.js +80 -0
  549. package/assets/theme-preview.css +17 -0
  550. package/assets/theme-preview.js +135 -0
  551. package/assets/theme-switcher.js +113 -0
  552. package/assets/tooltips.js +81 -0
  553. package/assets/walkthrough.js +233 -0
  554. package/dist/agent-discovery.d.ts +11 -0
  555. package/dist/agent-discovery.js +37 -0
  556. package/dist/analytics.d.ts +2 -0
  557. package/dist/analytics.js +13 -0
  558. package/dist/answer-cache.d.ts +24 -0
  559. package/dist/answer-cache.js +55 -0
  560. package/dist/answer-cards.d.ts +71 -0
  561. package/dist/answer-cards.js +148 -0
  562. package/dist/api-embeds.d.ts +22 -0
  563. package/dist/api-embeds.js +84 -0
  564. package/dist/api-identity.d.ts +6 -0
  565. package/dist/api-identity.js +7 -0
  566. package/dist/api-materialize.d.ts +12 -0
  567. package/dist/api-materialize.js +120 -0
  568. package/dist/api-publication-plan.d.ts +86 -0
  569. package/dist/api-publication-plan.js +187 -0
  570. package/dist/api-publication-review.d.ts +23 -0
  571. package/dist/api-publication-review.js +58 -0
  572. package/dist/api-selection.d.ts +21 -0
  573. package/dist/api-selection.js +84 -0
  574. package/dist/api.d.ts +74 -0
  575. package/dist/api.js +782 -0
  576. package/dist/artifact-bundle.d.ts +96 -0
  577. package/dist/artifact-bundle.js +306 -0
  578. package/dist/ask-function.d.ts +19 -0
  579. package/dist/ask-function.js +139 -0
  580. package/dist/ask-handler.d.ts +38 -0
  581. package/dist/ask-handler.js +157 -0
  582. package/dist/ask-log-kv.d.ts +14 -0
  583. package/dist/ask-log-kv.js +69 -0
  584. package/dist/ask-log.d.ts +106 -0
  585. package/dist/ask-log.js +159 -0
  586. package/dist/ask-setup.d.ts +43 -0
  587. package/dist/ask-setup.js +99 -0
  588. package/dist/ask.d.ts +152 -0
  589. package/dist/ask.js +532 -0
  590. package/dist/audit.d.ts +29 -0
  591. package/dist/audit.js +171 -0
  592. package/dist/authored-change.d.ts +22 -0
  593. package/dist/authored-change.js +47 -0
  594. package/dist/authoring-api.d.ts +18 -0
  595. package/dist/authoring-api.js +15 -0
  596. package/dist/authoring-findings.d.ts +31 -0
  597. package/dist/authoring-findings.js +104 -0
  598. package/dist/authoring-guidance.d.ts +15 -0
  599. package/dist/authoring-guidance.js +57 -0
  600. package/dist/authoring-preview.d.ts +24 -0
  601. package/dist/authoring-preview.js +160 -0
  602. package/dist/authoring-project-command.d.ts +7 -0
  603. package/dist/authoring-project-command.js +52 -0
  604. package/dist/authoring-project.d.ts +104 -0
  605. package/dist/authoring-project.js +287 -0
  606. package/dist/authoring-review-command.d.ts +1 -0
  607. package/dist/authoring-review-command.js +68 -0
  608. package/dist/authoring-review.d.ts +72 -0
  609. package/dist/authoring-review.js +71 -0
  610. package/dist/authoring-snapshot.d.ts +66 -0
  611. package/dist/authoring-snapshot.js +293 -0
  612. package/dist/authoring-validation-command.d.ts +1 -0
  613. package/dist/authoring-validation-command.js +54 -0
  614. package/dist/authoring-validation.d.ts +101 -0
  615. package/dist/authoring-validation.js +348 -0
  616. package/dist/badges.d.ts +16 -0
  617. package/dist/badges.js +57 -0
  618. package/dist/budget-store.d.ts +21 -0
  619. package/dist/budget-store.js +90 -0
  620. package/dist/budget.d.ts +45 -0
  621. package/dist/budget.js +128 -0
  622. package/dist/build-info.d.ts +10 -0
  623. package/dist/build-info.js +15 -0
  624. package/dist/callouts.d.ts +18 -0
  625. package/dist/callouts.js +63 -0
  626. package/dist/cards.d.ts +35 -0
  627. package/dist/cards.js +237 -0
  628. package/dist/chat-config.d.ts +117 -0
  629. package/dist/chat-config.js +400 -0
  630. package/dist/chat-pause.d.ts +1 -0
  631. package/dist/chat-pause.js +3 -0
  632. package/dist/chat.d.ts +46 -0
  633. package/dist/chat.js +78 -0
  634. package/dist/cli-discovery.d.ts +4 -0
  635. package/dist/cli-discovery.js +86 -0
  636. package/dist/cli.d.ts +2 -0
  637. package/dist/cli.js +750 -0
  638. package/dist/code-samples.d.ts +50 -0
  639. package/dist/code-samples.js +181 -0
  640. package/dist/compact-discovery.d.ts +15 -0
  641. package/dist/compact-discovery.js +78 -0
  642. package/dist/compiler-config.d.ts +67 -0
  643. package/dist/compiler-config.js +66 -0
  644. package/dist/compiler.d.ts +208 -0
  645. package/dist/compiler.js +524 -0
  646. package/dist/component-bundle.d.ts +4 -0
  647. package/dist/component-bundle.js +32 -0
  648. package/dist/component-content.d.ts +78 -0
  649. package/dist/component-content.js +47 -0
  650. package/dist/component-manifest.d.ts +15 -0
  651. package/dist/component-manifest.js +84 -0
  652. package/dist/component-names.d.ts +1 -0
  653. package/dist/component-names.js +1 -0
  654. package/dist/component-plugins.d.ts +28 -0
  655. package/dist/component-plugins.js +141 -0
  656. package/dist/component-transform.d.ts +10 -0
  657. package/dist/component-transform.js +697 -0
  658. package/dist/components.d.ts +2 -0
  659. package/dist/components.js +1 -0
  660. package/dist/config.d.ts +29 -0
  661. package/dist/config.js +149 -0
  662. package/dist/content-export-assets.d.ts +23 -0
  663. package/dist/content-export-assets.js +103 -0
  664. package/dist/content-export-command.d.ts +20 -0
  665. package/dist/content-export-command.js +57 -0
  666. package/dist/content-export-config.d.ts +16 -0
  667. package/dist/content-export-config.js +50 -0
  668. package/dist/content-export-render.d.ts +12 -0
  669. package/dist/content-export-render.js +132 -0
  670. package/dist/content-export.d.ts +30 -0
  671. package/dist/content-export.js +307 -0
  672. package/dist/content-filter.d.ts +4 -0
  673. package/dist/content-filter.js +16 -0
  674. package/dist/content-source.d.ts +100 -0
  675. package/dist/content-source.js +42 -0
  676. package/dist/content-workspace.d.ts +293 -0
  677. package/dist/content-workspace.js +69 -0
  678. package/dist/content.d.ts +41 -0
  679. package/dist/content.js +176 -0
  680. package/dist/cookbook-chooser.d.ts +19 -0
  681. package/dist/cookbook-chooser.js +56 -0
  682. package/dist/dev.d.ts +2 -0
  683. package/dist/dev.js +113 -0
  684. package/dist/diagram-svg.d.ts +1 -0
  685. package/dist/diagram-svg.js +44 -0
  686. package/dist/diagrams.d.ts +7 -0
  687. package/dist/diagrams.js +102 -0
  688. package/dist/docs-author.d.ts +86 -0
  689. package/dist/docs-author.js +380 -0
  690. package/dist/docs-command.d.ts +8 -0
  691. package/dist/docs-command.js +62 -0
  692. package/dist/docs-eval.d.ts +146 -0
  693. package/dist/docs-eval.js +231 -0
  694. package/dist/docs-mcp.d.ts +12 -0
  695. package/dist/docs-mcp.js +82 -0
  696. package/dist/docs-tool.d.ts +81 -0
  697. package/dist/docs-tool.js +7 -0
  698. package/dist/document-sync.d.ts +36 -0
  699. package/dist/document-sync.js +58 -0
  700. package/dist/documentation-core.d.ts +148 -0
  701. package/dist/documentation-core.js +160 -0
  702. package/dist/embeddings.d.ts +68 -0
  703. package/dist/embeddings.js +198 -0
  704. package/dist/focused-audit.d.ts +10 -0
  705. package/dist/focused-audit.js +69 -0
  706. package/dist/focused-openapi.d.ts +2 -0
  707. package/dist/focused-openapi.js +140 -0
  708. package/dist/fonts.d.ts +54 -0
  709. package/dist/fonts.js +92 -0
  710. package/dist/freshness.d.ts +7 -0
  711. package/dist/freshness.js +58 -0
  712. package/dist/frontmatter.d.ts +24 -0
  713. package/dist/frontmatter.js +342 -0
  714. package/dist/function-package.d.ts +1 -0
  715. package/dist/function-package.js +58 -0
  716. package/dist/highlight.d.ts +14 -0
  717. package/dist/highlight.js +114 -0
  718. package/dist/html-renderer.d.ts +10 -0
  719. package/dist/html-renderer.js +63 -0
  720. package/dist/icons.d.ts +8 -0
  721. package/dist/icons.js +40 -0
  722. package/dist/index-build.d.ts +55 -0
  723. package/dist/index-build.js +227 -0
  724. package/dist/ingredient-draft.d.ts +17 -0
  725. package/dist/ingredient-draft.js +94 -0
  726. package/dist/ingredient-workflow.d.ts +8 -0
  727. package/dist/ingredient-workflow.js +25 -0
  728. package/dist/init.d.ts +8 -0
  729. package/dist/init.js +66 -0
  730. package/dist/jev.d.ts +62 -0
  731. package/dist/jev.js +190 -0
  732. package/dist/link-audit.d.ts +12 -0
  733. package/dist/link-audit.js +146 -0
  734. package/dist/llms-discovery.d.ts +11 -0
  735. package/dist/llms-discovery.js +23 -0
  736. package/dist/markdown-sections.d.ts +15 -0
  737. package/dist/markdown-sections.js +60 -0
  738. package/dist/markdown-size.d.ts +7 -0
  739. package/dist/markdown-size.js +6 -0
  740. package/dist/mcp-analytics.d.ts +38 -0
  741. package/dist/mcp-analytics.js +35 -0
  742. package/dist/mcp-artifacts.d.ts +2 -0
  743. package/dist/mcp-artifacts.js +78 -0
  744. package/dist/mcp-client-metadata.d.ts +18 -0
  745. package/dist/mcp-client-metadata.js +69 -0
  746. package/dist/mcp-config.d.ts +23 -0
  747. package/dist/mcp-config.js +56 -0
  748. package/dist/mcp-http.d.ts +19 -0
  749. package/dist/mcp-http.js +157 -0
  750. package/dist/mcp-integrity.d.ts +3 -0
  751. package/dist/mcp-integrity.js +4 -0
  752. package/dist/mcp-node.d.ts +4 -0
  753. package/dist/mcp-node.js +68 -0
  754. package/dist/mcp-vercel-runtime.d.ts +3 -0
  755. package/dist/mcp-vercel-runtime.js +36 -0
  756. package/dist/mcp-vercel.d.ts +15 -0
  757. package/dist/mcp-vercel.js +65 -0
  758. package/dist/metadata-provider.d.ts +19 -0
  759. package/dist/metadata-provider.js +38 -0
  760. package/dist/negotiation.d.ts +10 -0
  761. package/dist/negotiation.js +35 -0
  762. package/dist/not-found.d.ts +16 -0
  763. package/dist/not-found.js +25 -0
  764. package/dist/output-commit.d.ts +1 -0
  765. package/dist/output-commit.js +133 -0
  766. package/dist/output-location.d.ts +3 -0
  767. package/dist/output-location.js +30 -0
  768. package/dist/page-materialization.d.ts +78 -0
  769. package/dist/page-materialization.js +132 -0
  770. package/dist/page-renderer.d.ts +71 -0
  771. package/dist/page-renderer.js +177 -0
  772. package/dist/palettes.d.ts +41 -0
  773. package/dist/palettes.js +160 -0
  774. package/dist/procedure-components.d.ts +2 -0
  775. package/dist/procedure-components.js +94 -0
  776. package/dist/project-navigation.d.ts +41 -0
  777. package/dist/project-navigation.js +190 -0
  778. package/dist/provider-http.d.ts +10 -0
  779. package/dist/provider-http.js +60 -0
  780. package/dist/publication-manifest.d.ts +229 -0
  781. package/dist/publication-manifest.js +53 -0
  782. package/dist/publication-plan.d.ts +34 -0
  783. package/dist/publication-plan.js +85 -0
  784. package/dist/publication-render.d.ts +71 -0
  785. package/dist/publication-render.js +92 -0
  786. package/dist/reader-filters.d.ts +30 -0
  787. package/dist/reader-filters.js +105 -0
  788. package/dist/recipe-draft.d.ts +17 -0
  789. package/dist/recipe-draft.js +147 -0
  790. package/dist/reference-audit.d.ts +18 -0
  791. package/dist/reference-audit.js +169 -0
  792. package/dist/remote-import.d.ts +62 -0
  793. package/dist/remote-import.js +292 -0
  794. package/dist/representation-tree.d.ts +3 -0
  795. package/dist/representation-tree.js +320 -0
  796. package/dist/retrieval-config.d.ts +30 -0
  797. package/dist/retrieval-config.js +83 -0
  798. package/dist/retrieval.d.ts +60 -0
  799. package/dist/retrieval.js +228 -0
  800. package/dist/scaffold.d.ts +39 -0
  801. package/dist/scaffold.js +167 -0
  802. package/dist/search-config.d.ts +8 -0
  803. package/dist/search-config.js +26 -0
  804. package/dist/search-handler.d.ts +16 -0
  805. package/dist/search-handler.js +111 -0
  806. package/dist/search-identifier.d.ts +3 -0
  807. package/dist/search-identifier.js +25 -0
  808. package/dist/search-literal.d.ts +1 -0
  809. package/dist/search-literal.js +28 -0
  810. package/dist/search-query.d.ts +54 -0
  811. package/dist/search-query.js +120 -0
  812. package/dist/search-results.d.ts +6 -0
  813. package/dist/search-results.js +45 -0
  814. package/dist/search-snippet.d.ts +11 -0
  815. package/dist/search-snippet.js +93 -0
  816. package/dist/search-synonyms.d.ts +8 -0
  817. package/dist/search-synonyms.js +46 -0
  818. package/dist/semantic-markdown.d.ts +10 -0
  819. package/dist/semantic-markdown.js +39 -0
  820. package/dist/server.d.ts +10 -0
  821. package/dist/server.js +223 -0
  822. package/dist/share-images.d.ts +24 -0
  823. package/dist/share-images.js +187 -0
  824. package/dist/site-path.d.ts +2 -0
  825. package/dist/site-path.js +15 -0
  826. package/dist/sitemap.d.ts +8 -0
  827. package/dist/sitemap.js +58 -0
  828. package/dist/snippets.d.ts +19 -0
  829. package/dist/snippets.js +84 -0
  830. package/dist/structured-model-output.d.ts +6 -0
  831. package/dist/structured-model-output.js +21 -0
  832. package/dist/subject-deprecation.d.ts +21 -0
  833. package/dist/subject-deprecation.js +57 -0
  834. package/dist/surface-text.d.ts +4 -0
  835. package/dist/surface-text.js +42 -0
  836. package/dist/taxonomy.d.ts +14 -0
  837. package/dist/taxonomy.js +88 -0
  838. package/dist/turnstile.d.ts +21 -0
  839. package/dist/turnstile.js +52 -0
  840. package/dist/vale.d.ts +28 -0
  841. package/dist/vale.js +103 -0
  842. package/dist/vercel-function.d.ts +21 -0
  843. package/dist/vercel-function.js +108 -0
  844. package/dist/vercel.d.ts +11 -0
  845. package/dist/vercel.js +103 -0
  846. package/dist/walkthrough.d.ts +25 -0
  847. package/dist/walkthrough.js +336 -0
  848. package/dist/yaml-value.d.ts +2 -0
  849. package/dist/yaml-value.js +36 -0
  850. package/example-configs/api-docs/README.md +59 -0
  851. package/example-configs/api-docs/apis/cedar-parcel.yaml +413 -0
  852. package/example-configs/api-docs/content/create-enrollment.mdx +11 -0
  853. package/example-configs/api-docs/content/overview.mdx +36 -0
  854. package/example-configs/api-docs/content/quickstart.mdx +52 -0
  855. package/example-configs/api-docs/docs.config.yaml +104 -0
  856. package/example-configs/faceted-sites/README.md +31 -0
  857. package/example-configs/faceted-sites/base.yaml +30 -0
  858. package/example-configs/faceted-sites/content/api.md +12 -0
  859. package/example-configs/faceted-sites/content/home.md +10 -0
  860. package/example-configs/faceted-sites/content/operations.md +12 -0
  861. package/example-configs/faceted-sites/developers.config.yaml +8 -0
  862. package/example-configs/faceted-sites/docs.config.yaml +7 -0
  863. package/example-configs/faceted-sites/europe.config.yaml +9 -0
  864. package/example-configs/minimal/content/install.mdx +12 -0
  865. package/example-configs/minimal/content/welcome.mdx +8 -0
  866. package/example-configs/minimal/docs.config.yaml +31 -0
  867. package/example-configs/multilingual/content/de/home.mdx +9 -0
  868. package/example-configs/multilingual/content/de/reset-password.mdx +9 -0
  869. package/example-configs/multilingual/content/home.mdx +10 -0
  870. package/example-configs/multilingual/content/reset-password.mdx +12 -0
  871. package/example-configs/multilingual/docs.config.yaml +61 -0
  872. package/example-configs/multilingual/snippets/contact.mdx +1 -0
  873. package/example-configs/notifications/apis/notifications.yaml +132 -0
  874. package/example-configs/notifications/content/cookbook.mdx +17 -0
  875. package/example-configs/notifications/content/get-message.mdx +14 -0
  876. package/example-configs/notifications/content/queue-email.mdx +42 -0
  877. package/example-configs/notifications/content/queue-push.mdx +33 -0
  878. package/example-configs/notifications/content/queue-sms.mdx +33 -0
  879. package/example-configs/notifications/content/send-email.mdx +14 -0
  880. package/example-configs/notifications/content/send-push.mdx +14 -0
  881. package/example-configs/notifications/content/send-sms.mdx +14 -0
  882. package/example-configs/notifications/content/start.mdx +13 -0
  883. package/example-configs/notifications/content/welcome-cookbook.mdx +21 -0
  884. package/example-configs/notifications/content/welcome-email.mdx +82 -0
  885. package/example-configs/notifications/demo.mjs +43 -0
  886. package/example-configs/notifications/docs.config.yaml +88 -0
  887. package/example-configs/notifications/ingredient-drafts/README.md +41 -0
  888. package/example-configs/notifications/ingredient-drafts/check-delivery.mdx +13 -0
  889. package/example-configs/notifications/ingredient-drafts/queue-welcome-email.mdx +48 -0
  890. package/example-configs/notifications/ingredient-specs/queue-welcome-email.yaml +7 -0
  891. package/example-configs/notifications/ingredients/check-delivery.mdx +42 -0
  892. package/example-configs/notifications/ingredients/queue-welcome-email.mdx +37 -0
  893. package/example-configs/notifications/recipe-drafts/send-welcome-email.mdx +91 -0
  894. package/example-configs/notifications/recipe-specs/send-welcome-email.yaml +11 -0
  895. package/example-configs/reference-stress/README.md +32 -0
  896. package/example-configs/reference-stress/apis/cedar-parcel.yaml +413 -0
  897. package/example-configs/reference-stress/content/enrollment-shapes.mdx +16 -0
  898. package/example-configs/reference-stress/content/overview.mdx +14 -0
  899. package/example-configs/reference-stress/docs.config.yaml +55 -0
  900. package/example-configs/shared-preset/shared/company-docs.yaml +46 -0
  901. package/example-configs/shared-preset/shared/runbook.mdx +7 -0
  902. package/example-configs/shared-preset/site/content/failed-invoices.mdx +15 -0
  903. package/example-configs/shared-preset/site/content/start.mdx +9 -0
  904. package/example-configs/shared-preset/site/docs.config.yaml +18 -0
  905. package/example-configs/showcase/README.md +20 -0
  906. package/example-configs/showcase/apis/cedar-parcel.yaml +413 -0
  907. package/example-configs/showcase/content/assets/collection.svg +1 -0
  908. package/example-configs/showcase/content/code.mdx +100 -0
  909. package/example-configs/showcase/content/create-enrollment.mdx +11 -0
  910. package/example-configs/showcase/content/features.mdx +39 -0
  911. package/example-configs/showcase/content/landing.mdx +36 -0
  912. package/example-configs/showcase/content/overview.mdx +42 -0
  913. package/example-configs/showcase/content/personalization.mdx +38 -0
  914. package/example-configs/showcase/content/preview.mdx +35 -0
  915. package/example-configs/showcase/content/procedures.mdx +88 -0
  916. package/example-configs/showcase/content/quickstart.mdx +64 -0
  917. package/example-configs/showcase/content/reading.mdx +99 -0
  918. package/example-configs/showcase/content/verify.mdx +27 -0
  919. package/example-configs/showcase/content/visuals.mdx +47 -0
  920. package/example-configs/showcase/content/workflows.mdx +12 -0
  921. package/example-configs/showcase/docs.config.yaml +149 -0
  922. package/example-configs/showcase/snippets/sandbox.mdx +1 -0
  923. package/examples/analytics/README.md +56 -0
  924. package/examples/analytics/inspector.js +25 -0
  925. package/examples/analytics/posthog.js +36 -0
  926. package/examples/components/comparison.mjs +8 -0
  927. package/examples/components/components.json +6 -0
  928. package/examples/components/copy-text/LICENSE.react-dom.txt +21 -0
  929. package/examples/components/copy-text/LICENSE.react.txt +21 -0
  930. package/examples/components/copy-text/LICENSE.scheduler.txt +21 -0
  931. package/examples/components/copy-text/browser.jsx +21 -0
  932. package/examples/components/copy-text/components.json +6 -0
  933. package/examples/components/copy-text/package-lock.json +41 -0
  934. package/examples/components/copy-text/package.json +9 -0
  935. package/examples/components/copy-text/plugin.mjs +5 -0
  936. package/examples/components/retry-budget/LICENSE.react-dom.txt +21 -0
  937. package/examples/components/retry-budget/LICENSE.react.txt +21 -0
  938. package/examples/components/retry-budget/LICENSE.scheduler.txt +21 -0
  939. package/examples/components/retry-budget/browser.jsx +50 -0
  940. package/examples/components/retry-budget/components.json +6 -0
  941. package/examples/components/retry-budget/model.js +22 -0
  942. package/examples/components/retry-budget/package-lock.json +41 -0
  943. package/examples/components/retry-budget/package.json +9 -0
  944. package/examples/components/retry-budget/plugin.mjs +31 -0
  945. package/examples/components/retry-budget/policy.json +9 -0
  946. package/examples/components/retry-budget/style.css +25 -0
  947. package/examples/diagrams/d2-gallery.json +138 -0
  948. package/examples/diagrams/gallery.json +236 -0
  949. package/examples/help-drawer/README.md +44 -0
  950. package/examples/help-drawer/app.js +53 -0
  951. package/examples/help-drawer/components/components.json +1 -0
  952. package/examples/help-drawer/components/support.mjs +10 -0
  953. package/examples/help-drawer/content/account.md +8 -0
  954. package/examples/help-drawer/content/billing.mdx +29 -0
  955. package/examples/help-drawer/content/keys.mdx +46 -0
  956. package/examples/help-drawer/content/settings.svg +1 -0
  957. package/examples/help-drawer/docs.config.yaml +30 -0
  958. package/examples/help-drawer/index.html +26 -0
  959. package/examples/help-drawer/preview.mjs +33 -0
  960. package/examples/mcp-analytics/README.md +59 -0
  961. package/examples/mcp-analytics/posthog.mjs +159 -0
  962. package/package.json +100 -4
  963. package/schemas/content-export.schema.json +55 -0
  964. package/skills/shoalrun-author/SKILL.md +52 -0
  965. package/skills/shoalrun-component-author/SKILL.md +24 -0
  966. package/skills/shoalrun-recipes/SKILL.md +25 -0
  967. package/skills/shoalrun-setup/SKILL.md +34 -0
  968. package/skills/shoalrun-walkthrough/SKILL.md +18 -0
  969. package/styles/fonts/figtree-LICENSE.txt +93 -0
  970. package/styles/fonts/figtree-italic.woff2 +0 -0
  971. package/styles/fonts/figtree.woff2 +0 -0
  972. package/styles/fonts/inter-LICENSE.txt +93 -0
  973. package/styles/fonts/inter-italic.woff2 +0 -0
  974. package/styles/fonts/inter.woff2 +0 -0
  975. package/styles/fonts/jetbrains-mono-LICENSE.txt +93 -0
  976. package/styles/fonts/jetbrains-mono.woff2 +0 -0
  977. package/styles/fonts/jost-LICENSE.txt +93 -0
  978. package/styles/fonts/jost-italic.woff2 +0 -0
  979. package/styles/fonts/jost.woff2 +0 -0
  980. package/styles/fonts/share/figtree-400.ttf +0 -0
  981. package/styles/fonts/share/figtree-700.ttf +0 -0
  982. package/styles/fonts/share/inter-400.ttf +0 -0
  983. package/styles/fonts/share/inter-700.ttf +0 -0
  984. package/styles/fonts/share/jetbrains-mono-700.ttf +0 -0
  985. package/styles/fonts/share/jost-italic-800.ttf +0 -0
  986. package/styles/fonts/share/metrics.json +1 -0
  987. package/styles/fonts/share/source-serif-4-400.ttf +0 -0
  988. package/styles/fonts/source-serif-4-LICENSE.txt +93 -0
  989. package/styles/fonts/source-serif-4-italic.woff2 +0 -0
  990. package/styles/fonts/source-serif-4.woff2 +0 -0
  991. package/styles/header.css +56 -0
  992. package/styles/site.css +825 -0
  993. package/styles/themes/ledger.css +93 -0
  994. package/styles/themes/palettes/amethyst.yaml +127 -0
  995. package/styles/themes/palettes/coral.yaml +127 -0
  996. package/styles/themes/palettes/harbor.yaml +127 -0
  997. package/styles/themes/palettes/ink.yaml +127 -0
  998. package/styles/themes/palettes/kelp.yaml +127 -0
  999. package/styles/themes/palettes/vice.yaml +127 -0
  1000. package/styles/themes/reef.css +68 -0
  1001. package/styles/themes/vice.css +56 -0
  1002. package/styles/tokens.css +91 -0
  1003. package/templates/api-reference.mdx +133 -0
  1004. package/templates/cookbook.mdx +38 -0
  1005. package/templates/explanation.mdx +76 -0
  1006. package/templates/guide.mdx +175 -0
  1007. package/templates/how-to.mdx +171 -0
  1008. package/templates/ingredient.mdx +53 -0
  1009. package/templates/recipe.mdx +76 -0
  1010. package/templates/reference.mdx +171 -0
  1011. package/templates/troubleshooting.mdx +159 -0
  1012. package/templates/tutorial.mdx +165 -0
@@ -0,0 +1,52 @@
1
+ ---
2
+ id: guide.audit
3
+ title: Audit a docs project
4
+ summary: Run project tests and local API representation checks with one CI command.
5
+ type: how-to
6
+ area: quality
7
+ subarea: quality-audits
8
+ canonical: /publish/audit
9
+ ---
10
+
11
+ # Audit a docs project
12
+
13
+ > Documentation index: [llms.min.txt](https://www.shoalrun.com/llms.min.txt) · Document manifest: [documents.json](https://www.shoalrun.com/documents.json)
14
+
15
+ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigation/docs-50f26fe22670.txt) (ID: docs). [All sections and pages](https://www.shoalrun.com/llms.min.txt)
16
+
17
+ Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Publish and maintain > Audit a docs project
18
+
19
+ **Updated: 2026-10-26.**
20
+
21
+ Parent page: [Full Markdown page](/publish/audit.md)
22
+
23
+ **Page reading path** — these links apply to the full page.
24
+
25
+ **Next steps**
26
+
27
+ - [Evaluate agent tasks against your docs](https://www.shoalrun.com/publish/evals.md) — Add task definitions and reviewed result reports to the audit.
28
+
29
+ - [Use Manni with Shoalrun](https://www.shoalrun.com/publish/manni.md) — Add conditional editorial metadata checks through an audit hook.
30
+
31
+ Run `shoalrun audit` from a project directory before publishing. The command combines tests that your project configures with Shoalrun's build and API representation checks. It reports each result as JSON and exits with code `1` if any result fails.
32
+
33
+ From `framework/`, this example needs no extra setup after `npm run build`:
34
+
35
+ ```sh
36
+ node dist/cli.js audit example/docs.config.yaml
37
+ ```
38
+
39
+ With no `audit` setting, Shoalrun runs the API source and focused-contract audits and builds the site. No project test commands run until you configure them.
40
+
41
+ ## Check agent evaluation reports
42
+
43
+ Use [`audit.evals`](https://www.shoalrun.com/publish/evals.md) to import reviewed task results and check them against the temporary build. Task definitions, build freshness, citation IDs and publications, criterion judgments, and required outcomes are checked mechanically. Your team runs the agent and owns the review of its answers.
44
+
45
+ ```yaml title="docs.config.yaml"
46
+ audit:
47
+ evals:
48
+ tasks: ./evals/tasks.yaml
49
+ report: ./evals/results.json
50
+ ```
51
+
52
+ An optional `audit.evals.run` command executes after the build and receives the temporary site path, task/report paths, and their digests through environment variables. This differs from ordinary `audit.tests`, which run before the build. The eval command's exit status and report checks are separate results; passing one does not bypass the other. See [evaluate agent tasks](https://www.shoalrun.com/publish/evals.md) for the format, preparation commands, optional-task behavior, and limits. No evals run unless configured.
@@ -0,0 +1,80 @@
1
+ ---
2
+ id: guide.audit
3
+ title: Audit a docs project
4
+ summary: Run project tests and local API representation checks with one CI command.
5
+ type: how-to
6
+ area: quality
7
+ subarea: quality-audits
8
+ canonical: /publish/audit
9
+ ---
10
+
11
+ # Audit a docs project
12
+
13
+ > Documentation index: [llms.min.txt](https://www.shoalrun.com/llms.min.txt) · Document manifest: [documents.json](https://www.shoalrun.com/documents.json)
14
+
15
+ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigation/docs-50f26fe22670.txt) (ID: docs). [All sections and pages](https://www.shoalrun.com/llms.min.txt)
16
+
17
+ Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Publish and maintain > Audit a docs project
18
+
19
+ **Updated: 2026-10-26.**
20
+
21
+ Parent page: [Full Markdown page](/publish/audit.md)
22
+
23
+ **Page reading path** — these links apply to the full page.
24
+
25
+ **Next steps**
26
+
27
+ - [Evaluate agent tasks against your docs](https://www.shoalrun.com/publish/evals.md) — Add task definitions and reviewed result reports to the audit.
28
+
29
+ - [Use Manni with Shoalrun](https://www.shoalrun.com/publish/manni.md) — Add conditional editorial metadata checks through an audit hook.
30
+
31
+ Run `shoalrun audit` from a project directory before publishing. The command combines tests that your project configures with Shoalrun's build and API representation checks. It reports each result as JSON and exits with code `1` if any result fails.
32
+
33
+ From `framework/`, this example needs no extra setup after `npm run build`:
34
+
35
+ ```sh
36
+ node dist/cli.js audit example/docs.config.yaml
37
+ ```
38
+
39
+ With no `audit` setting, Shoalrun runs the API source and focused-contract audits and builds the site. No project test commands run until you configure them.
40
+
41
+ ## Check before pushing
42
+
43
+ Run this from your docs project:
44
+
45
+ ```sh
46
+ shoalrun check
47
+ shoalrun check docs.config.yaml --json
48
+ ```
49
+
50
+ The first command discovers `docs.config.yaml` in the current directory or a parent and prints PASS/FAIL results. Use `--json` for a structured report in CI. A failed check exits with code 1. `shoalrun audit` runs the same checks and retains its JSON output.
51
+
52
+ Checks include configured test commands, local OpenAPI sources, a complete temporary build, focused contracts, and local links. The build validates config, frontmatter, and supported MDX. YAML duplicate keys, excessive alias expansion, and cyclic aliases fail with a source-file diagnostic. OpenAPI inputs must declare a supported 3.0 or 3.1 version, an info title and version, and mapping-shaped paths.
53
+
54
+ Link checks inspect generated HTML and Markdown. They verify local destinations and HTML fragments, including same-origin absolute links. Markdown fragments are not checked because heading rules vary between readers. Links in code samples are ignored. Built-in checks need no browser or running server and do not fetch external URLs. Existing site output is preserved; normal generated metadata can still be written under `.shoalrun/`.
55
+
56
+ Add a package script to make the check easy to run:
57
+
58
+ ```json
59
+ { "scripts": { "docs:check": "shoalrun check docs.config.yaml" } }
60
+ ```
61
+
62
+ An optional Git pre-push hook can run that script. Put these lines in `.git/hooks/pre-push` and make it executable with `chmod +x .git/hooks/pre-push`:
63
+
64
+ ```sh
65
+ #!/bin/sh
66
+ exec npm run docs:check
67
+ ```
68
+
69
+ The CLI does not install hooks. Configured test commands can perform their own network requests or writes.
70
+
71
+ To include a dependency check for a project with a package lock, configure:
72
+
73
+ ```yaml
74
+ audit:
75
+ tests:
76
+ - id: dependencies
77
+ run: [npm, audit, --omit=dev]
78
+ ```
79
+
80
+ This optional command contacts the npm registry. Omit `--omit=dev` to include development dependencies. Commands run beside the docs config; use npm's `--prefix` option when the package lives elsewhere.
@@ -0,0 +1,54 @@
1
+ ---
2
+ id: guide.audit
3
+ title: Audit a docs project
4
+ summary: Run project tests and local API representation checks with one CI command.
5
+ type: how-to
6
+ area: quality
7
+ subarea: quality-audits
8
+ canonical: /publish/audit
9
+ ---
10
+
11
+ # Audit a docs project
12
+
13
+ > Documentation index: [llms.min.txt](https://www.shoalrun.com/llms.min.txt) · Document manifest: [documents.json](https://www.shoalrun.com/documents.json)
14
+
15
+ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigation/docs-50f26fe22670.txt) (ID: docs). [All sections and pages](https://www.shoalrun.com/llms.min.txt)
16
+
17
+ Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Publish and maintain > Audit a docs project
18
+
19
+ **Updated: 2026-10-26.**
20
+
21
+ Parent page: [Full Markdown page](/publish/audit.md)
22
+
23
+ **Page reading path** — these links apply to the full page.
24
+
25
+ **Next steps**
26
+
27
+ - [Evaluate agent tasks against your docs](https://www.shoalrun.com/publish/evals.md) — Add task definitions and reviewed result reports to the audit.
28
+
29
+ - [Use Manni with Shoalrun](https://www.shoalrun.com/publish/manni.md) — Add conditional editorial metadata checks through an audit hook.
30
+
31
+ Run `shoalrun audit` from a project directory before publishing. The command combines tests that your project configures with Shoalrun's build and API representation checks. It reports each result as JSON and exits with code `1` if any result fails.
32
+
33
+ From `framework/`, this example needs no extra setup after `npm run build`:
34
+
35
+ ```sh
36
+ node dist/cli.js audit example/docs.config.yaml
37
+ ```
38
+
39
+ With no `audit` setting, Shoalrun runs the API source and focused-contract audits and builds the site. No project test commands run until you configure them.
40
+
41
+ ## Connect a documentation test suite
42
+
43
+ `audit.tests` is the hookup for an external test suite. We recommend [Doc Detective](https://docs.doc-detective.com/docs/get-started/how-testing-works) for testing documentation behavior, but you can run any installed command that exits nonzero on failure. Shoalrun passes the arguments and records the process exit status; the tool owns its test specifications, fixtures, assertions, and detailed results. For a project with Doc Detective installed locally and its configuration in `.doc-detective.json` beside `docs.config.yaml`:
44
+
45
+ ```yaml title="docs.config.yaml"
46
+ audit:
47
+ tests:
48
+ - id: doc-detective
49
+ run: [npx, --no-install, doc-detective, --config, .doc-detective.json, --exit-on-fail]
50
+ ```
51
+
52
+ The `--exit-on-fail` flag matters: Doc Detective's standalone CLI otherwise [can exit successfully when a test fails](https://docs.doc-detective.com/docs/ci/reporters-and-artifacts). `npx --no-install` uses the locally installed package without downloading one during the audit. Configure tests and report artifacts with Doc Detective. Shoalrun's audit report only records the command's success or failure and the end of its output on failure. To use another suite, replace the `run` list with its command and failure-exit option.
53
+
54
+ Configured test commands run before Shoalrun's temporary site build. If a tool needs a built or deployed site, run it as a separate step after building or deploying. Shoalrun does not define a competing documentation assertion format or CLI, HTTP, or browser test engine.
@@ -0,0 +1,67 @@
1
+ ---
2
+ id: guide.audit
3
+ title: Audit a docs project
4
+ summary: Run project tests and local API representation checks with one CI command.
5
+ type: how-to
6
+ area: quality
7
+ subarea: quality-audits
8
+ canonical: /publish/audit
9
+ ---
10
+
11
+ # Audit a docs project
12
+
13
+ > Documentation index: [llms.min.txt](https://www.shoalrun.com/llms.min.txt) · Document manifest: [documents.json](https://www.shoalrun.com/documents.json)
14
+
15
+ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigation/docs-50f26fe22670.txt) (ID: docs). [All sections and pages](https://www.shoalrun.com/llms.min.txt)
16
+
17
+ Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Publish and maintain > Audit a docs project
18
+
19
+ **Updated: 2026-10-26.**
20
+
21
+ Parent page: [Full Markdown page](/publish/audit.md)
22
+
23
+ **Page reading path** — these links apply to the full page.
24
+
25
+ **Next steps**
26
+
27
+ - [Evaluate agent tasks against your docs](https://www.shoalrun.com/publish/evals.md) — Add task definitions and reviewed result reports to the audit.
28
+
29
+ - [Use Manni with Shoalrun](https://www.shoalrun.com/publish/manni.md) — Add conditional editorial metadata checks through an audit hook.
30
+
31
+ Run `shoalrun audit` from a project directory before publishing. The command combines tests that your project configures with Shoalrun's build and API representation checks. It reports each result as JSON and exits with code `1` if any result fails.
32
+
33
+ From `framework/`, this example needs no extra setup after `npm run build`:
34
+
35
+ ```sh
36
+ node dist/cli.js audit example/docs.config.yaml
37
+ ```
38
+
39
+ With no `audit` setting, Shoalrun runs the API source and focused-contract audits and builds the site. No project test commands run until you configure them.
40
+
41
+ ## Read the report
42
+
43
+ The default example produces this shape (counts and source paths depend on the project):
44
+
45
+ ```json
46
+ {
47
+ "status": "ok",
48
+ "results": [
49
+ {
50
+ "id": "api:payments:default",
51
+ "status": "ok",
52
+ "findings": [],
53
+ "details": { "source": "/path/to/openapi.yaml", "operations": 1, "rendered": 1, "namedExamples": 7 }
54
+ },
55
+ { "id": "build", "status": "ok", "findings": [], "details": { "documents": 3 } },
56
+ { "id": "focused-contracts", "status": "ok", "findings": [], "details": { "contracts": 1 } }
57
+ ]
58
+ }
59
+ ```
60
+
61
+ Configured tests have IDs such as `test:project-tests`. Additional API publications use IDs such as `api:payments:publication-0`. A failing result has `status: "error"` and one or more `findings`, each with a `target` and `message`. The top-level status becomes `error`, and the process exits with code `1`. Config or command-line errors occur before a report can be produced; the CLI writes `{"status":"error","message":"..."}` to standard error instead.
62
+
63
+ Shoalrun audits each configured local OpenAPI source, including sources that are not published. It checks operation IDs, unique HTML field anchors, and named examples in both representations. The build checks project content and writes a temporary site. If the build succeeds, the focused-contract audit checks each generated contract and its Markdown link. If the build fails, the report keeps test and API results and adds a `build` finding; it cannot run the focused-contract audit.
64
+
65
+ The temporary site is removed after the audit. Like a normal build, this command also writes the generated frontmatter reference and schema to `.shoalrun/` beside the config. Add `.shoalrun/` to your project's `.gitignore`.
66
+
67
+ These checks cover the rules Shoalrun implements and any tests you supply. A passing audit does not establish the factual accuracy of prose, full OpenAPI semantic fidelity, accessibility conformance, or live deployment behavior. Use the [post-deploy checker](https://www.shoalrun.com/publish/deployment-check.md) for HTTP behavior on a hosted site.
@@ -0,0 +1,47 @@
1
+ ---
2
+ id: guide.audit
3
+ title: Audit a docs project
4
+ summary: Run project tests and local API representation checks with one CI command.
5
+ type: how-to
6
+ area: quality
7
+ subarea: quality-audits
8
+ canonical: /publish/audit
9
+ ---
10
+
11
+ # Audit a docs project
12
+
13
+ > Documentation index: [llms.min.txt](https://www.shoalrun.com/llms.min.txt) · Document manifest: [documents.json](https://www.shoalrun.com/documents.json)
14
+
15
+ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigation/docs-50f26fe22670.txt) (ID: docs). [All sections and pages](https://www.shoalrun.com/llms.min.txt)
16
+
17
+ Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Publish and maintain > Audit a docs project
18
+
19
+ **Updated: 2026-10-26.**
20
+
21
+ Parent page: [Full Markdown page](/publish/audit.md)
22
+
23
+ Run `shoalrun audit` from a project directory before publishing. The command combines tests that your project configures with Shoalrun's build and API representation checks. It reports each result as JSON and exits with code `1` if any result fails.
24
+
25
+ From `framework/`, this example needs no extra setup after `npm run build`:
26
+
27
+ ```sh
28
+ node dist/cli.js audit example/docs.config.yaml
29
+ ```
30
+
31
+ With no `audit` setting, Shoalrun runs the API source and focused-contract audits and builds the site. No project test commands run until you configure them.
32
+
33
+ ## Related reading
34
+
35
+ ### Next steps
36
+
37
+ - [Evaluate agent tasks against your docs](https://www.shoalrun.com/publish/evals.md) — Add task definitions and reviewed result reports to the audit.
38
+
39
+ - [Use Manni with Shoalrun](https://www.shoalrun.com/publish/manni.md) — Add conditional editorial metadata checks through an audit hook.
40
+
41
+ ### Reference while working
42
+
43
+ - [CLI reference](https://www.shoalrun.com/cli.md) — Look up the audit and api audit commands.
44
+
45
+ ### Often confused with
46
+
47
+ - [Check a deployed site](https://www.shoalrun.com/publish/deployment-check.md) — The audit checks project sources in CI; the deployment check tests the published site over HTTP.
@@ -0,0 +1,208 @@
1
+ ---
2
+ id: guide.content-export
3
+ title: Export content into your application
4
+ summary: Export shared content for application help.
5
+ type: how-to
6
+ area: publishing
7
+ subarea: publishing-builds
8
+ canonical: /publish/content-export
9
+ ---
10
+
11
+ # Export content into your application
12
+
13
+ > Documentation index: [llms.min.txt](https://www.shoalrun.com/llms.min.txt) · Document manifest: [documents.json](https://www.shoalrun.com/documents.json)
14
+
15
+ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigation/docs-50f26fe22670.txt) (ID: docs). [All sections and pages](https://www.shoalrun.com/llms.min.txt)
16
+
17
+ Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Publish and maintain > Export content into your application
18
+
19
+ **Updated: 2026-10-26.**
20
+
21
+ Keep application help and your documentation website in one content source. `shoalrun export` produces a directory of resolved Markdown, passive HTML fragments, referenced assets, and a manifest. Your application owns the help drawer, onboarding screen, or other interface that displays the content. It does not need a Shoalrun browser runtime.
22
+
23
+ ## Prerequisites
24
+
25
+ Content exports require Shoalrun CLI `0.1.0-alpha.6` or later.
26
+
27
+ Start with a Shoalrun project and public pages assigned to an enabled publication. Navigation, facets, a site title, and a previous website build are optional. A site origin is needed only when links must fall back to pages on the documentation website. The export does not generate embeddings or run documentation chat.
28
+
29
+ ## Export selected pages
30
+
31
+ 1. ## Define an export target
32
+
33
+ Add a named target to `docs.config.yaml`. These IDs refer to pages in the project's configured content directory:
34
+
35
+ ```yaml
36
+ exports:
37
+ app-help:
38
+ formats: [markdown, html]
39
+ documents: [guide.api-keys, guide.billing]
40
+ publicBase: /help/
41
+ ```
42
+
43
+ Omit `documents` to export all eligible public pages in one enabled publication. If more than one publication is enabled, select all three coordinates:
44
+
45
+ ```yaml
46
+ exports:
47
+ app-help:
48
+ formats: [html]
49
+ documents: [guide.api-keys, guide.billing]
50
+ publication: { channel: production, version: current, language: en }
51
+ publicBase: /help/
52
+ ```
53
+
54
+ Optional `contentFilter` uses configured reader facets. Every selected facet must match; choices within a facet are alternatives. Pages missing a selected facet are excluded. An explicitly requested ID that is absent, private, unavailable in the publication, or excluded by the export filter fails with a diagnostic.
55
+
56
+ Export selection is independent of the website's `site.contentFilter` and navigation. Changing a website menu does not change the app's help collection. See [separate sites from shared content](https://www.shoalrun.com/publish/single-source-sites.md) for website selection.
57
+
58
+ 2. ## Build the portable bundle
59
+
60
+ From the documentation project, run:
61
+
62
+ ```sh
63
+ shoalrun export docs.config.yaml --target app-help --out ../app/public/help
64
+ ```
65
+
66
+ Replace the output path with the directory your application will distribute. The command prints JSON with its publication, formats, selected document IDs, asset count, digest, API review requirements, and diagnostics. A successful export replaces an earlier export in that directory. A failure preserves it. Source directories, unrelated nonempty directories, and previous website builds cannot be used as the export destination.
67
+
68
+ The result has this structure:
69
+
70
+ ```text
71
+ help/
72
+ manifest.json
73
+ content/
74
+ ...HTML and Markdown files
75
+ assets/
76
+ ...referenced local files
77
+ NOTICES.txt
78
+ ```
79
+
80
+ File names derive from stable document identity and publication, not titles or source-file names. Read paths from the manifest rather than constructing them in your app.
81
+
82
+ For a one-off export without a named target:
83
+
84
+ ```sh
85
+ shoalrun export docs.config.yaml --out ../app/public/help \
86
+ --format html --document guide.api-keys --document guide.billing \
87
+ --public-base /help/
88
+ ```
89
+
90
+ 3. ## Mount and load the content in your app
91
+
92
+ `/help/` is an example value, not a required path. Choose any root-relative path ending with a slash, such as `/resources/`. Set `publicBase` to that path, serve the generated bundle there, and update the manifest URL in your app's loader to match (for example, `/resources/manifest.json`). The `--out` filesystem directory can have a different name from the URL path.
93
+
94
+ The examples below use `/help/`. This base locates content and assets; it does not define your application's routes.
95
+
96
+ Your app can find a page by ID and load its HTML fragment:
97
+
98
+ ```js
99
+ const manifest = await fetch('/help/manifest.json').then(response => response.json());
100
+ if (manifest.schemaVersion !== 1 || manifest.review.status !== 'ok') {
101
+ throw new Error('Unsupported or unreviewed help export');
102
+ }
103
+ const help = manifest.documents.find(document => document.id === 'guide.api-keys');
104
+ const html = await fetch(manifest.publicBase + help.representations.html.path)
105
+ .then(response => response.text());
106
+ helpContainer.innerHTML = html;
107
+ ```
108
+
109
+ Use this pattern for trusted output from your own documentation build. Handle missing documents and failed requests in your application's loading and error states. The manifest also provides Markdown paths if your app uses its own Markdown renderer.
110
+
111
+ Images use the configured mount. This matters when HTML fetched from `/help/content/` is inserted into an app page such as `/settings/account`: relative image URLs would otherwise resolve against the app page.
112
+
113
+ 4. ## Handle document links and check the result
114
+
115
+ Links to other exported pages have `data-export-link` markers. Each marker identifies a record in that representation's `links` array. For `kind: document`, your app can prevent ordinary navigation and open `documentId` in the drawer. `fragment` identifies the original heading or anchor; the HTML representation's `anchors` array maps it to its namespaced `exportedId`.
116
+
117
+ A link to an omitted document uses its canonical website URL only when that document is public, enabled, and selected for the website. Without an eligible destination and a configured origin, the export fails. Linked pages are never silently added to the export. Explicit external links retain their destinations.
118
+
119
+ ## Check the result
120
+
121
+ Check the app from a route unrelated to the export mount. Confirm that images load, document links stay in the drawer when intercepted, canonical links open the website, and all expected content is visible. Re-export after changing source content, and distribute the updated bundle with the application.
122
+
123
+ ## What the representations retain
124
+
125
+ Exports resolve snippets, supported components, and API material before rendering. Static output keeps the substantive content of interactive components:
126
+
127
+ | Source content | Export behavior |
128
+ | -------------------------------------------------- | -------------------------------------------------------------------------------------------- |
129
+ | Prose, tables, lists, callouts, and code | Preserve their content and structure. |
130
+ | Tabs, disclosures, and walkthroughs | Keep all panels, disclosure content, and steps as visible labeled content. |
131
+ | Reader sections | Keep every section with a readable audience or facet label. |
132
+ | Custom components | Keep shared documentation content; omit browser modules, browser data, and component styles. |
133
+ | Diagrams and images | Copy referenced local visuals; diagrams retain their source in Markdown. |
134
+ | Math | Preserve the LaTeX expression as readable code. |
135
+ | Browser filters, reader controls, and copy buttons | Omit the controls. |
136
+
137
+ HTML contains no site navigation, theme, required scripts, or app-wide stylesheet. It remains readable without CSS; your app styles its content container. HTML and Markdown are rendered independently from the same resolved source, so [representation-specific blocks](https://www.shoalrun.com/author/components/only.md) retain their intended differences.
138
+
139
+ HTML heading, footnote, and other IDs are namespaced per document. Mount each exported document once per DOM. Repeated simultaneous instances require the application to rewrite IDs and all corresponding fragment and ARIA references. Markdown heading anchors depend on the customer's renderer; the export does not promise identical anchor generation across Markdown libraries.
140
+
141
+ Whole pages are the supported units. The website's size-based section resources are not exported as stable application-help IDs.
142
+
143
+ ## Assets, downloads, and notices
144
+
145
+ Local assets must be inside the content directory or an explicitly configured `assetRoots` directory. Roots and notice paths resolve relative to the config file that declares them:
146
+
147
+ ```yaml
148
+ exports:
149
+ app-help:
150
+ documents: [guide.api-keys, guide.billing]
151
+ publicBase: /help/
152
+ assetRoots: [./downloads]
153
+ notices: [./CONTENT-LICENSE.txt]
154
+ ```
155
+
156
+ Supported files include PNG, JPEG, GIF, WebP, AVIF, passive SVG, PDF, plain text, CSV, JSON, and YAML. Local assets use content-hashed paths. Unsupported asset types, missing files, symlink escapes, active SVG, and unresolved local links fail the export. Asset directories are not copied wholesale. Self-contained focused OpenAPI downloads are included when referenced.
157
+
158
+ Remote images are not downloaded. The manifest records them in each document's `externalDependencies`, and the command reports them in diagnostics. A document with a remote image is not offline-complete. Explicit notice files and applicable diagram-renderer notices are retained in `NOTICES.txt`.
159
+
160
+ ## Review exported API material
161
+
162
+ The export preserves the API source-review gate. If its selected API material has no matching review digest, the normal command fails before replacing the previous bundle. Produce a candidate for inspection with:
163
+
164
+ ```sh
165
+ shoalrun export docs.config.yaml --target app-help --out review/app-help --review
166
+ ```
167
+
168
+ A candidate needing review reports `status: needs-review`, sets `manifest.review.status: required`, and exits with code 2. Inspect its references and downloads, then pin the reported API digests to the target:
169
+
170
+ ```yaml
171
+ exports:
172
+ app-help:
173
+ documents: [reference.catalog.listItems]
174
+ publicBase: /help/
175
+ apiReview:
176
+ catalog: "REPLACE_WITH_THE_REVIEWED_SHA256_DIGEST"
177
+ ```
178
+
179
+ Run the normal export command again. Changed source bytes or exposed API selections invalidate approval. An existing `apis.<id>.publicReview.digest` also applies when it exactly matches the export's review fingerprint. Do not distribute candidates with review still required.
180
+
181
+ ## Inspect the manifest
182
+
183
+ The versioned `manifest.json` identifies documents by ID and publication. It includes titles, summaries, types, eligible canonical URLs, representation paths and digests, typed links, HTML anchor maps, local assets, external image dependencies, and diagnostics. It does not copy raw source frontmatter, configuration, local dependency paths, or browser runtime payloads.
184
+
185
+ The bundle's `digest` is the SHA-256 of `JSON.stringify` of the parsed manifest with its own `digest` field removed. The `files` list records byte counts and SHA-256 digests for every payload file, including notices. All text is UTF-8. The manifest itself is excluded from that list. Deterministic output lets applications compare bundles and invalidate cached content.
186
+
187
+ ## Try the help-drawer example
188
+
189
+ The package's `examples/help-drawer` directory contains a small application with two help documents, an image, a diagram, reader sections, tabs, a walkthrough, and a custom component. Copy it into a project with Shoalrun installed, then run from that example directory:
190
+
191
+ ```sh
192
+ shoalrun export docs.config.yaml --target app-help --out public/help
193
+ node preview.mjs
194
+ ```
195
+
196
+ Open `http://127.0.0.1:8774/settings/account`. Choose **Help with API keys**, follow **Billing help** inside the drawer, then follow the API-key link back. The app remains on its settings route. No Shoalrun browser runtime is loaded. The omitted account guide uses the configured example documentation origin; replace that origin and deploy the corresponding docs page for a working external destination.
197
+
198
+ ## Related reading
199
+
200
+ ### Reference while working
201
+
202
+ - [Configuration reference](https://www.shoalrun.com/config.md) — Look up named export targets and selection settings.
203
+
204
+ - [Reader views](https://www.shoalrun.com/author/reader-views.md) — Understand why exported reader sections remain complete labeled content.
205
+
206
+ ### Related topics
207
+
208
+ - [Build separate sites from shared content](https://www.shoalrun.com/publish/single-source-sites.md) — Reuse the same authored content inside an application.
@@ -0,0 +1,40 @@
1
+ ---
2
+ id: guide.content-export
3
+ title: Export content into your application
4
+ summary: Export shared content for application help.
5
+ type: how-to
6
+ area: publishing
7
+ subarea: publishing-builds
8
+ canonical: /publish/content-export
9
+ ---
10
+
11
+ # Export content into your application
12
+
13
+ > Documentation index: [llms.min.txt](https://www.shoalrun.com/llms.min.txt) · Document manifest: [documents.json](https://www.shoalrun.com/documents.json)
14
+
15
+ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigation/docs-50f26fe22670.txt) (ID: docs). [All sections and pages](https://www.shoalrun.com/llms.min.txt)
16
+
17
+ Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Publish and maintain > Export content into your application
18
+
19
+ **Updated: 2026-10-26.**
20
+
21
+ Parent page: [Full Markdown page](/publish/content-export.md)
22
+
23
+ Keep application help and your documentation website in one content source. `shoalrun export` produces a directory of resolved Markdown, passive HTML fragments, referenced assets, and a manifest. Your application owns the help drawer, onboarding screen, or other interface that displays the content. It does not need a Shoalrun browser runtime.
24
+
25
+ ## Assets, downloads, and notices
26
+
27
+ Local assets must be inside the content directory or an explicitly configured `assetRoots` directory. Roots and notice paths resolve relative to the config file that declares them:
28
+
29
+ ```yaml
30
+ exports:
31
+ app-help:
32
+ documents: [guide.api-keys, guide.billing]
33
+ publicBase: /help/
34
+ assetRoots: [./downloads]
35
+ notices: [./CONTENT-LICENSE.txt]
36
+ ```
37
+
38
+ Supported files include PNG, JPEG, GIF, WebP, AVIF, passive SVG, PDF, plain text, CSV, JSON, and YAML. Local assets use content-hashed paths. Unsupported asset types, missing files, symlink escapes, active SVG, and unresolved local links fail the export. Asset directories are not copied wholesale. Self-contained focused OpenAPI downloads are included when referenced.
39
+
40
+ Remote images are not downloaded. The manifest records them in each document's `externalDependencies`, and the command reports them in diagnostics. A document with a remote image is not offline-complete. Explicit notice files and applicable diagram-renderer notices are retained in `NOTICES.txt`.
@@ -0,0 +1,27 @@
1
+ ---
2
+ id: guide.content-export
3
+ title: Export content into your application
4
+ summary: Export shared content for application help.
5
+ type: how-to
6
+ area: publishing
7
+ subarea: publishing-builds
8
+ canonical: /publish/content-export
9
+ ---
10
+
11
+ # Export content into your application
12
+
13
+ > Documentation index: [llms.min.txt](https://www.shoalrun.com/llms.min.txt) · Document manifest: [documents.json](https://www.shoalrun.com/documents.json)
14
+
15
+ Navigation section: [Docs](https://www.shoalrun.com/.well-known/shoalrun/navigation/docs-50f26fe22670.txt) (ID: docs). [All sections and pages](https://www.shoalrun.com/llms.min.txt)
16
+
17
+ Breadcrumbs: [Docs](https://www.shoalrun.com/what-is-shoalrun.md) > Publish and maintain > Export content into your application
18
+
19
+ **Updated: 2026-10-26.**
20
+
21
+ Parent page: [Full Markdown page](/publish/content-export.md)
22
+
23
+ Keep application help and your documentation website in one content source. `shoalrun export` produces a directory of resolved Markdown, passive HTML fragments, referenced assets, and a manifest. Your application owns the help drawer, onboarding screen, or other interface that displays the content. It does not need a Shoalrun browser runtime.
24
+
25
+ ## Check the result
26
+
27
+ Check the app from a route unrelated to the export mount. Confirm that images load, document links stay in the drawer when intercepted, canonical links open the website, and all expected content is visible. Re-export after changing source content, and distribute the updated bundle with the application.