@farming-labs/docs 0.2.120 → 0.2.121

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 (188) hide show
  1. package/README.md +8 -0
  2. package/dist/access.d.mts +13 -0
  3. package/dist/access.mjs +56 -0
  4. package/dist/agent-conformance.d.mts +60 -0
  5. package/dist/agent-conformance.mjs +538 -0
  6. package/dist/agent-contract.d.mts +47 -0
  7. package/dist/agent-contract.mjs +645 -0
  8. package/dist/agent-detection.d.mts +6 -0
  9. package/dist/agent-detection.mjs +83 -0
  10. package/dist/agent-evals.d.mts +224 -0
  11. package/dist/{agent-evals-BLNLvXbG.mjs → agent-evals.mjs} +7 -565
  12. package/dist/agent-feedback-evaluations-node.mjs +38 -0
  13. package/dist/agent-feedback-evaluations.d.mts +91 -0
  14. package/dist/{agent-feedback-evaluations-CcMGlgsO.mjs → agent-feedback-evaluations.mjs} +2 -2
  15. package/dist/agent-feedback-loop.d.mts +45 -0
  16. package/dist/{agent-feedback-loop-CcZL_sb1.mjs → agent-feedback-loop.mjs} +1 -1
  17. package/dist/agent-maintenance.d.mts +71 -0
  18. package/dist/{agent-maintenance-CuZ7iAKq.mjs → agent-maintenance.mjs} +1 -1
  19. package/dist/agent-provenance.d.mts +23 -0
  20. package/dist/agent-provenance.mjs +77 -0
  21. package/dist/agent-scope.mjs +321 -0
  22. package/dist/agent-skills-archive.mjs +86 -0
  23. package/dist/agent-skills-bundle.d.mts +1 -1
  24. package/dist/{agent-skills-progressive-disclosure-PjPtTYL-.mjs → agent-skills-progressive-disclosure.mjs} +2 -2
  25. package/dist/{agent-skills-server-D5IuvwM7.d.mts → agent-skills-server.d.mts} +3 -3
  26. package/dist/{agent-skills-server-BC7md56k.mjs → agent-skills-server.mjs} +2 -2
  27. package/dist/agent-skills-vite.d.mts +3 -3
  28. package/dist/agent-skills-vite.mjs +1 -2
  29. package/dist/agent-surface-drift.mjs +236 -0
  30. package/dist/{golden-evaluations-CLUViycJ.mjs → agent-usefulness.mjs} +5 -290
  31. package/dist/{content-change-hydration-wqXIZHp6.d.mts → agent.d.mts} +10 -411
  32. package/dist/agent.mjs +2729 -0
  33. package/dist/{analytics-w3FDOksr.d.mts → analytics.d.mts} +2 -2
  34. package/dist/{analytics-p8Vhhu2P.mjs → analytics.mjs} +2 -2
  35. package/dist/{sitemap-server-BUdPBcGs.d.mts → api-reference.d.mts} +2 -6
  36. package/dist/api-reference.mjs +1481 -0
  37. package/dist/{audience-exposure-DBrFWULA.d.mts → audience-exposure.d.mts} +1 -1
  38. package/dist/audience-exposure.mjs +8 -0
  39. package/dist/audience.d.mts +44 -0
  40. package/dist/audience.mjs +1654 -0
  41. package/dist/authoring-mcp.d.mts +44 -0
  42. package/dist/{authoring-mcp-CiCUQe3o.mjs → authoring-mcp.mjs} +3 -3
  43. package/dist/browser.d.mts +6 -4
  44. package/dist/browser.mjs +6 -7
  45. package/dist/build.d.mts +8 -0
  46. package/dist/build.mjs +8 -0
  47. package/dist/changelog.d.mts +20 -0
  48. package/dist/changelog.mjs +39 -0
  49. package/dist/{agent-export-CA6IUQ7T.mjs → cli/agent-export.mjs} +19 -45
  50. package/dist/{agent-CYk2DxY7.mjs → cli/agent.mjs} +6 -35
  51. package/dist/{agents-BUiVmj8i.mjs → cli/agents.mjs} +5 -18
  52. package/dist/cli/api-doctor.mjs +206 -0
  53. package/dist/{authoring-C2ymvYWl.mjs → cli/authoring.mjs} +2 -8
  54. package/dist/{cloud-6eKrlmKd.mjs → cli/cloud.mjs} +3 -3
  55. package/dist/{codeblocks-CHpgAwY-.mjs → cli/codeblocks.mjs} +2 -2
  56. package/dist/cli/config.d.mts +11 -0
  57. package/dist/{config-BZnKAj_Y.mjs → cli/config.mjs} +1 -1
  58. package/dist/cli/dev-banner.mjs +58 -0
  59. package/dist/{dev-Bnn-NUNa.mjs → cli/dev.mjs} +3 -57
  60. package/dist/{doctor-Bfkrkzad.mjs → cli/doctor.mjs} +41 -226
  61. package/dist/{downgrade-CHMta85e.mjs → cli/downgrade.mjs} +2 -2
  62. package/dist/cli/errors.d.mts +4 -0
  63. package/dist/{errors-BtnVLhNF.mjs → cli/errors.mjs} +1 -1
  64. package/dist/{feedback-evals-DMilg9pY.mjs → cli/feedback-evals.mjs} +3 -36
  65. package/dist/{feedback-DL4T5oIO.mjs → cli/feedback.mjs} +1 -1
  66. package/dist/cli/git-dates.mjs +35 -0
  67. package/dist/cli/golden-evaluations.mjs +52 -0
  68. package/dist/cli/index.d.mts +2 -3
  69. package/dist/cli/index.mjs +38 -38
  70. package/dist/{init-K0LmXDZ5.mjs → cli/init.mjs} +3 -3
  71. package/dist/{mcp-iLCmnPJI.mjs → cli/mcp.mjs} +7 -19
  72. package/dist/{openapi-diff-HcpUNjA-.mjs → cli/openapi-diff.mjs} +2 -7
  73. package/dist/{openapi-sdk-BQKC6H-_.mjs → cli/openapi-sdk.mjs} +2 -7
  74. package/dist/{openapi-source-DK6ts_Bk.mjs → cli/openapi-source.mjs} +2 -2
  75. package/dist/{package-version-HJhYeq4M.mjs → cli/package-version.mjs} +2 -2
  76. package/dist/{propose-JmUv_BTt.mjs → cli/propose.mjs} +1 -1
  77. package/dist/{review-C6EmbV0l.mjs → cli/review.mjs} +16 -15
  78. package/dist/{robots-DteZB8vl.mjs → cli/robots.mjs} +3 -7
  79. package/dist/{search-Bhuv_YsL.mjs → cli/search.mjs} +7 -20
  80. package/dist/{sitemap-DW5LDKDa.mjs → cli/sitemap.mjs} +7 -42
  81. package/dist/{skills-BAPQLSCm.mjs → cli/skills.mjs} +5 -19
  82. package/dist/{templates-BuQ8YsGv.mjs → cli/templates.mjs} +1 -1
  83. package/dist/{upgrade-DlQMOFV1.mjs → cli/upgrade.mjs} +2 -2
  84. package/dist/{utils-C7KDrPpA.mjs → cli/utils.mjs} +1 -1
  85. package/dist/client/react.d.mts +2 -18
  86. package/dist/client/react.mjs +1 -157
  87. package/dist/{cloud-analytics-D14HplI7.mjs → cloud-analytics.mjs} +1 -1
  88. package/dist/{cloud-ask-ai-BrsTXQf6.d.mts → cloud-ask-ai.d.mts} +2 -2
  89. package/dist/{cloud-ask-ai-BqKhjpS5.mjs → cloud-ask-ai.mjs} +3 -3
  90. package/dist/code-blocks.d.mts +51 -0
  91. package/dist/{code-blocks-GYdvS3BH.mjs → code-blocks.mjs} +2 -2
  92. package/dist/code-group-mdx.d.mts +11 -0
  93. package/dist/code-group-mdx.mjs +57 -0
  94. package/dist/content-change-hydration.d.mts +87 -0
  95. package/dist/{openapi-mcp-BIOTLiA7.mjs → content-change-hydration.mjs} +5 -210
  96. package/dist/content-changes.d.mts +47 -0
  97. package/dist/content-changes.mjs +216 -0
  98. package/dist/create-theme.d.mts +48 -0
  99. package/dist/create-theme.mjs +57 -0
  100. package/dist/date.d.mts +5 -0
  101. package/dist/date.mjs +17 -0
  102. package/dist/define-docs.d.mts +9 -0
  103. package/dist/define-docs.mjs +46 -0
  104. package/dist/docs-cloud-client.d.mts +18 -0
  105. package/dist/docs-cloud-client.mjs +161 -0
  106. package/dist/docs-cloud-server.d.mts +2 -2
  107. package/dist/docs-cloud-server.mjs +2 -3
  108. package/dist/heading-toc.d.mts +10 -0
  109. package/dist/heading-toc.mjs +23 -0
  110. package/dist/http-body.d.mts +14 -0
  111. package/dist/{http-body-DkAPk6D5.mjs → http-body.mjs} +1 -1
  112. package/dist/http-cache.d.mts +25 -0
  113. package/dist/http-cache.mjs +140 -0
  114. package/dist/http-link.mjs +81 -0
  115. package/dist/i18n.d.mts +18 -0
  116. package/dist/{i18n-B1gJ9EW0.mjs → i18n.mjs} +1 -1
  117. package/dist/index.d.mts +42 -674
  118. package/dist/index.mjs +40 -14
  119. package/dist/markdown-rendering.mjs +1 -1
  120. package/dist/markdown-section-cache.mjs +49 -0
  121. package/dist/markdown-sections.d.mts +47 -0
  122. package/dist/{markdown-sections-9Oxr33b-.mjs → markdown-sections.mjs} +29 -703
  123. package/dist/mcp-auth.d.mts +14 -0
  124. package/dist/mcp-auth.mjs +99 -0
  125. package/dist/mcp.d.mts +5 -3
  126. package/dist/mcp.mjs +21 -9
  127. package/dist/mdx.d.mts +6 -0
  128. package/dist/mdx.mjs +7 -0
  129. package/dist/metadata.d.mts +60 -0
  130. package/dist/{metadata-BOHn0Y5K.mjs → metadata.mjs} +2 -2
  131. package/dist/native-api-reference.mjs +968 -0
  132. package/dist/okf.d.mts +42 -0
  133. package/dist/okf.mjs +145 -0
  134. package/dist/openapi-contract.mjs +154 -0
  135. package/dist/{openapi-mcp-node-C4jUpZG6.mjs → openapi-mcp-node.mjs} +1 -1
  136. package/dist/openapi-mcp.d.mts +26 -0
  137. package/dist/openapi-mcp.mjs +132 -0
  138. package/dist/openapi-operations.d.mts +71 -0
  139. package/dist/{openapi-operations-DFpaqOqA.mjs → openapi-operations.mjs} +1 -1
  140. package/dist/openapi-overlays.mjs +221 -0
  141. package/dist/openapi-references.mjs +233 -0
  142. package/dist/pagination.d.mts +7 -0
  143. package/dist/pagination.mjs +100 -0
  144. package/dist/prompt-references.d.mts +12 -0
  145. package/dist/prompt-references.mjs +132 -0
  146. package/dist/prompt-utils.d.mts +36 -0
  147. package/dist/{prompt-utils-B5g-bv7o.mjs → prompt-utils.mjs} +1 -57
  148. package/dist/reading-time.d.mts +23 -0
  149. package/dist/reading-time.mjs +58 -0
  150. package/dist/related.d.mts +7 -0
  151. package/dist/related.mjs +50 -0
  152. package/dist/retrieval-digest.d.mts +16 -0
  153. package/dist/{retrieval-digest-CT-eIEcp.mjs → retrieval-digest.mjs} +1 -1
  154. package/dist/review.d.mts +69 -0
  155. package/dist/review.mjs +562 -0
  156. package/dist/robots.d.mts +54 -0
  157. package/dist/{robots-BYJAVeI6.mjs → robots.mjs} +5 -3
  158. package/dist/runtime.d.mts +3 -3
  159. package/dist/runtime.mjs +3 -9
  160. package/dist/search.d.mts +210 -0
  161. package/dist/search.mjs +3401 -0
  162. package/dist/server.d.mts +22 -198
  163. package/dist/server.mjs +21 -19
  164. package/dist/sidebar.d.mts +15 -0
  165. package/dist/sidebar.mjs +73 -0
  166. package/dist/sitemap-server.d.mts +7 -0
  167. package/dist/{sitemap-server-Lg3YhUx4.mjs → sitemap-server.mjs} +2 -2
  168. package/dist/{sitemap-Cl8vrixd.d.mts → sitemap.d.mts} +3 -3
  169. package/dist/sitemap.mjs +254 -0
  170. package/dist/{standards-discovery-BHPc7YIX.d.mts → standards-discovery.d.mts} +2 -2
  171. package/dist/{standards-discovery-sSEojU80.mjs → standards-discovery.mjs} +3 -139
  172. package/dist/telemetry-runtime.d.mts +42 -0
  173. package/dist/telemetry-runtime.mjs +238 -0
  174. package/dist/telemetry.d.mts +15 -0
  175. package/dist/telemetry.mjs +117 -0
  176. package/dist/{types-BJFeMXWZ.d.mts → types.d.mts} +3 -2
  177. package/dist/urls.d.mts +7 -0
  178. package/dist/urls.mjs +21 -0
  179. package/dist/utils.d.mts +8 -0
  180. package/dist/utils.mjs +22 -0
  181. package/package.json +21 -3
  182. package/dist/agent-DkAidqtV.mjs +0 -9026
  183. package/dist/api-reference-BYee4zMo.mjs +0 -3046
  184. package/dist/prompt-references-DMgbu_dz.mjs +0 -1082
  185. package/dist/retrieval-digest-AOx2-LbC.d.mts +0 -367
  186. package/dist/sidebar-CFHBj29f.mjs +0 -421
  187. package/dist/sidebar-CMPbVfGP.d.mts +0 -63
  188. /package/dist/{openapi-CfCzX_a1.mjs → cli/openapi.mjs} +0 -0
@@ -0,0 +1,14 @@
1
+ import { DocsMcpConfig } from "./types.mjs";
2
+
3
+ //#region src/mcp-auth.d.ts
4
+ declare const DEFAULT_MCP_ROUTE = "/api/docs/mcp";
5
+ declare const DEFAULT_MCP_PUBLIC_ROUTE = "/mcp";
6
+ declare const DEFAULT_MCP_WELL_KNOWN_ROUTE = "/.well-known/mcp";
7
+ declare const DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE = "/.well-known/oauth-protected-resource";
8
+ declare function getDocsMcpResourcePaths(route?: string): string[];
9
+ declare function buildDocsMcpProtectedResourceMetadataRoute(resourcePath: string): string;
10
+ declare function getDocsMcpProtectedResourceMetadataRoutes(route?: string): string[];
11
+ declare function hasDocsMcpProtectedResourceConfig(mcp?: boolean | DocsMcpConfig): boolean;
12
+ declare function isDocsMcpRequest(url: URL, mcp?: boolean | DocsMcpConfig): boolean;
13
+ //#endregion
14
+ export { DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE, DEFAULT_MCP_PUBLIC_ROUTE, DEFAULT_MCP_ROUTE, DEFAULT_MCP_WELL_KNOWN_ROUTE, buildDocsMcpProtectedResourceMetadataRoute, getDocsMcpProtectedResourceMetadataRoutes, getDocsMcpResourcePaths, hasDocsMcpProtectedResourceConfig, isDocsMcpRequest };
@@ -0,0 +1,99 @@
1
+ //#region src/mcp-auth.ts
2
+ const DEFAULT_MCP_ROUTE = "/api/docs/mcp";
3
+ const DEFAULT_MCP_PUBLIC_ROUTE = "/mcp";
4
+ const DEFAULT_MCP_WELL_KNOWN_ROUTE = "/.well-known/mcp";
5
+ const DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE = "/.well-known/oauth-protected-resource";
6
+ function normalizeDocsMcpEndpointPath(route, fallback = DEFAULT_MCP_ROUTE) {
7
+ const normalized = `/${route?.trim().split(/[?#]/, 1)[0] || fallback}`.replace(/\/+/g, "/");
8
+ return normalized !== "/" ? normalized.replace(/\/+$/, "") : fallback;
9
+ }
10
+ function getDocsMcpResourcePaths(route) {
11
+ return Array.from(new Set([
12
+ normalizeDocsMcpEndpointPath(route),
13
+ DEFAULT_MCP_PUBLIC_ROUTE,
14
+ DEFAULT_MCP_WELL_KNOWN_ROUTE
15
+ ]));
16
+ }
17
+ function buildDocsMcpProtectedResourceMetadataRoute(resourcePath) {
18
+ const candidate = resourcePath.trim().split(/[?#]/, 1)[0] || "/";
19
+ const trailingSlash = candidate.length > 1 && candidate.endsWith("/");
20
+ const normalized = candidate === "/" ? "/" : normalizeDocsMcpEndpointPath(candidate);
21
+ return normalized === "/" ? DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE : `${DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE}${normalized}${trailingSlash ? "/" : ""}`;
22
+ }
23
+ function getDocsMcpProtectedResourceMetadataRoutes(route) {
24
+ return getDocsMcpResourcePaths(route).map(buildDocsMcpProtectedResourceMetadataRoute);
25
+ }
26
+ function hasDocsMcpProtectedResourceConfig(mcp) {
27
+ if (!mcp || typeof mcp !== "object" || mcp.enabled === false || typeof mcp.security?.authenticate !== "function") return false;
28
+ return normalizeDocsMcpAuthorizationServerUrls(mcp.security?.protectedResource?.authorizationServers).length > 0;
29
+ }
30
+ function normalizeDocsMcpAuthorizationServerUrls(values) {
31
+ if (!Array.isArray(values)) return [];
32
+ return Array.from(new Set(values.filter((value) => typeof value === "string").map((value) => value.trim()).filter(isAbsoluteHttpUrl)));
33
+ }
34
+ function isDocsMcpOAuthScopeToken(value) {
35
+ return typeof value === "string" && /^[\x21\x23-\x5B\x5D-\x7E]+$/u.test(value);
36
+ }
37
+ function isDocsMcpRequest(url, mcp) {
38
+ const route = typeof mcp === "object" ? mcp.route : void 0;
39
+ if (isDocsMcpResourcePath(url.pathname, route)) return true;
40
+ return hasDocsMcpProtectedResourceConfig(mcp) && isDocsMcpProtectedResourceMetadataRequestPath(url.pathname, route);
41
+ }
42
+ function isDocsMcpResourcePath(pathname, route) {
43
+ return isCanonicalResourcePath(pathname, getDocsMcpResourcePaths(route));
44
+ }
45
+ function resolveDocsMcpResourceLocation(request, route) {
46
+ const requestUrl = new URL(request.url);
47
+ const allowedPaths = getDocsMcpResourcePaths(route);
48
+ const normalizedRequestPath = normalizeRequestPath(requestUrl.pathname);
49
+ const resourcePath = isCanonicalResourcePath(requestUrl.pathname, allowedPaths) ? requestUrl.pathname : normalizedRequestPath;
50
+ const resourceUrl = new URL(requestUrl);
51
+ resourceUrl.pathname = resourcePath;
52
+ const metadataUrl = new URL(resourceUrl);
53
+ metadataUrl.pathname = buildDocsMcpProtectedResourceMetadataRoute(resourcePath);
54
+ return {
55
+ resourceUrl,
56
+ metadataUrl
57
+ };
58
+ }
59
+ function resolveDocsMcpProtectedResourceMetadataLocation(request, route) {
60
+ const rawUrl = new URL(request.url);
61
+ const allowedPaths = getDocsMcpResourcePaths(route);
62
+ if (!rawUrl.pathname.startsWith(`${DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE}/`)) return;
63
+ const requestedResourcePath = rawUrl.pathname.slice(37);
64
+ if (!isCanonicalResourcePath(requestedResourcePath, allowedPaths)) return void 0;
65
+ const metadataUrl = new URL(rawUrl);
66
+ const resourceUrl = new URL(metadataUrl);
67
+ resourceUrl.pathname = requestedResourcePath;
68
+ return {
69
+ resourceUrl,
70
+ metadataUrl
71
+ };
72
+ }
73
+ function isDocsMcpProtectedResourceMetadataPath(pathname) {
74
+ const normalized = normalizeRequestPath(pathname);
75
+ return normalized === DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE || normalized.startsWith(`${DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE}/`);
76
+ }
77
+ function normalizeRequestPath(pathname) {
78
+ const normalized = `/${pathname}`.replace(/\/+/g, "/");
79
+ return normalized === "/" ? normalized : normalized.replace(/\/+$/, "");
80
+ }
81
+ function isCanonicalResourcePath(pathname, resourcePaths) {
82
+ return resourcePaths.some((resourcePath) => pathname === resourcePath || resourcePath !== "/" && pathname === `${resourcePath}/`);
83
+ }
84
+ function isDocsMcpProtectedResourceMetadataRequestPath(pathname, route) {
85
+ if (!pathname.startsWith(`${DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE}/`)) return false;
86
+ return isCanonicalResourcePath(pathname.slice(37), getDocsMcpResourcePaths(route));
87
+ }
88
+ function isAbsoluteHttpUrl(value) {
89
+ try {
90
+ const url = new URL(value);
91
+ const loopbackHttp = url.protocol === "http:" && (url.hostname === "localhost" || url.hostname === "127.0.0.1" || url.hostname === "[::1]");
92
+ return (url.protocol === "https:" || loopbackHttp) && !url.username && !url.password && !url.search && !url.hash;
93
+ } catch {
94
+ return false;
95
+ }
96
+ }
97
+
98
+ //#endregion
99
+ export { DEFAULT_MCP_PROTECTED_RESOURCE_METADATA_ROUTE, DEFAULT_MCP_PUBLIC_ROUTE, DEFAULT_MCP_ROUTE, DEFAULT_MCP_WELL_KNOWN_ROUTE, buildDocsMcpProtectedResourceMetadataRoute, getDocsMcpProtectedResourceMetadataRoutes, getDocsMcpResourcePaths, hasDocsMcpProtectedResourceConfig, isDocsMcpOAuthScopeToken, isDocsMcpProtectedResourceMetadataPath, isDocsMcpRequest, isDocsMcpResourcePath, normalizeDocsMcpAuthorizationServerUrls, normalizeDocsMcpEndpointPath, resolveDocsMcpProtectedResourceMetadataLocation, resolveDocsMcpResourceLocation };
package/dist/mcp.d.mts CHANGED
@@ -1,6 +1,8 @@
1
- import { Ar as FeedbackConfig, B as DocsAgentContentChangesConfig, Cr as DocsTelemetryConfig, En as DocsOpenApiMcpConfig, Kr as OrderingItem, Mn as DocsRetrievalSourceProvenance, Or as DocsTelemetryFramework, Xn as DocsSearchConfig, Y as DocsAgentEvaluationsConfig, bn as DocsOkfConfig, ei as PageAgentFrontmatter, gn as DocsObservabilityConfig, in as DocsMcpAuthenticate, nn as DocsMcpAllowedOrigins, rn as DocsMcpAuthPrincipal, sn as DocsMcpConfig, vr as DocsSearchSourcePage, vt as DocsAnalyticsConfig, wn as DocsOkfTrustMetadataInput } from "./types-BJFeMXWZ.mjs";
2
- import { z as DocsPublishedAgentSkill } from "./standards-discovery-BHPc7YIX.mjs";
3
- import { a as DocsContentChangeHydrationResponse, c as HydrateDocsContentChangesOptions, d as hydrateDocsContentChanges, h as DocsContentChangeFeed, i as DocsContentChangeHydrationContent, l as MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, n as DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, o as DocsContentChangeHydrationSection, r as DocsContentChangeHydrationBudget, s as DocsContentChangeHydrationTombstone, sn as DocsMarkdownSectionIndex, t as DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, u as MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET } from "./content-change-hydration-wqXIZHp6.mjs";
1
+ import { DocsAgentContentChangesConfig, DocsAgentEvaluationsConfig, DocsAnalyticsConfig, DocsMcpAllowedOrigins, DocsMcpAuthPrincipal, DocsMcpAuthenticate, DocsMcpConfig, DocsObservabilityConfig, DocsOkfConfig, DocsOkfTrustMetadataInput, DocsOpenApiMcpConfig, DocsRetrievalSourceProvenance, DocsSearchConfig, DocsSearchSourcePage, DocsTelemetryConfig, DocsTelemetryFramework, FeedbackConfig, OrderingItem, PageAgentFrontmatter } from "./types.mjs";
2
+ import { DocsPublishedAgentSkill } from "./standards-discovery.mjs";
3
+ import { DocsMarkdownSectionIndex } from "./agent.mjs";
4
+ import { DocsContentChangeFeed } from "./content-changes.mjs";
5
+ import { DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, DocsContentChangeHydrationBudget, DocsContentChangeHydrationContent, DocsContentChangeHydrationResponse, DocsContentChangeHydrationSection, DocsContentChangeHydrationTombstone, HydrateDocsContentChangesOptions, MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, hydrateDocsContentChanges } from "./content-change-hydration.mjs";
4
6
  import { McpServer } from "@modelcontextprotocol/server";
5
7
 
6
8
  //#region src/mcp.d.ts
package/dist/mcp.mjs CHANGED
@@ -1,12 +1,24 @@
1
- import "./http-body-DkAPk6D5.mjs";
2
- import { C as filterDocsPagesByAccess, S as upsertPageAgentContractMarkdown, _ as hasStructuredPageAgentContract, o as findDocsMarkdownSection, s as parseDocsMarkdownSections, v as normalizePageAgentFrontmatter, y as renderPageAgentContractMarkdown } from "./markdown-sections-9Oxr33b-.mjs";
3
- import { a as emitDocsAnalyticsEvent, i as emitDocsAgentTraceEvent, n as createDocsAgentTraceContext, r as createDocsAgentTraceId } from "./analytics-p8Vhhu2P.mjs";
4
- import { $n as isDocsMcpResourcePath, An as agentVersionConstraintMatches, Bn as normalizeDocsRelated, Dn as resolveDocsAudienceMdxContent, E as DOCS_MARKDOWN_SECTION_INDEX_FORMAT, Et as validateDocsAgentFeedbackPayload, Gt as DocsContentChangesRequestError, In as DocsPaginationCursorError, Jt as isDocsContentChangeGeneration, Kt as createDocsContentChangeFeed, Mn as normalizeAgentFramework, Nn as normalizeAgentLocale, P as buildDocsMarkdownSectionIndex, Pn as normalizeAgentScopeValues, Rn as paginateDocsItems, Tt as toDocsMarkdownUrl, Vn as renderDocsRelatedMarkdownLines, Xn as isDocsMcpOAuthScopeToken, Xt as resolveDocsContentChangesConfig, Zn as isDocsMcpProtectedResourceMetadataPath, cr as normalizeDocsOkfTrustMetadataInput, er as normalizeDocsMcpAuthorizationServerUrls, fn as normalizeDocsSearchFilters, jn as agentVersionConstraintsOverlap, lr as resolveDocsOkfConfig, mn as performDocsSearchWithMetadata, nr as resolveDocsMcpProtectedResourceMetadataLocation, pn as performDocsSearch, rn as buildDocsSearchFacets, rr as resolveDocsMcpResourceLocation, sr as buildDocsOkfBundle, tr as normalizeDocsMcpEndpointPath, ut as resolveDocsAgentFeedbackConfig, xn as resolveLocalDocsMcpSearchConfig } from "./agent-DkAidqtV.mjs";
5
- import { r as isDocsRetrievalCanonicalUrl } from "./retrieval-digest-CT-eIEcp.mjs";
6
- import "./standards-discovery-sSEojU80.mjs";
7
- import { a as emitDocsTelemetryAgentSurfaceEvent, l as emitDocsTelemetryProjectEvent, n as resolvePageSidebarFolderIndexBehavior, s as emitDocsTelemetryMcpToolEvent } from "./sidebar-CFHBj29f.mjs";
8
- import { a as DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, c as MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, g as stripGeneratedAgentProvenance, i as resolveDocsOpenApiMcpOperations, l as hydrateDocsContentChanges, n as readDocsOpenApiMcpResponse, o as DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, r as resolveDocsOpenApiMcpBaseUrl, s as MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, t as acquireDocsOpenApiMcpBudget } from "./openapi-mcp-BIOTLiA7.mjs";
9
- import { t as validateDocsOpenApiMcpUrl } from "./openapi-mcp-node-C4jUpZG6.mjs";
1
+ import { filterDocsPagesByAccess } from "./access.mjs";
2
+ import { createDocsAgentTraceContext, createDocsAgentTraceId, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent } from "./analytics.mjs";
3
+ import { toDocsMarkdownUrl } from "./urls.mjs";
4
+ import { buildDocsOkfBundle, normalizeDocsOkfTrustMetadataInput, resolveDocsOkfConfig } from "./okf.mjs";
5
+ import { isDocsMcpOAuthScopeToken, isDocsMcpProtectedResourceMetadataPath, isDocsMcpResourcePath, normalizeDocsMcpAuthorizationServerUrls, normalizeDocsMcpEndpointPath, resolveDocsMcpProtectedResourceMetadataLocation, resolveDocsMcpResourceLocation } from "./mcp-auth.mjs";
6
+ import { hasStructuredPageAgentContract, normalizePageAgentFrontmatter, renderPageAgentContractMarkdown, upsertPageAgentContractMarkdown } from "./agent-contract.mjs";
7
+ import { normalizeDocsRelated, renderDocsRelatedMarkdownLines } from "./related.mjs";
8
+ import { findDocsMarkdownSection, parseDocsMarkdownSections } from "./markdown-sections.mjs";
9
+ import { isDocsRetrievalCanonicalUrl } from "./retrieval-digest.mjs";
10
+ import { DocsPaginationCursorError, paginateDocsItems } from "./pagination.mjs";
11
+ import { agentVersionConstraintMatches, agentVersionConstraintsOverlap, normalizeAgentFramework, normalizeAgentLocale, normalizeAgentScopeValues } from "./agent-scope.mjs";
12
+ import { resolveDocsAudienceMdxContent } from "./audience.mjs";
13
+ import { buildDocsSearchFacets, normalizeDocsSearchFilters, performDocsSearch, performDocsSearchWithMetadata, resolveLocalDocsMcpSearchConfig } from "./search.mjs";
14
+ import { DocsContentChangesRequestError, createDocsContentChangeFeed, isDocsContentChangeGeneration, resolveDocsContentChangesConfig } from "./content-changes.mjs";
15
+ import { DOCS_MARKDOWN_SECTION_INDEX_FORMAT, buildDocsMarkdownSectionIndex, resolveDocsAgentFeedbackConfig, validateDocsAgentFeedbackPayload } from "./agent.mjs";
16
+ import { emitDocsTelemetryAgentSurfaceEvent, emitDocsTelemetryMcpToolEvent, emitDocsTelemetryProjectEvent } from "./telemetry.mjs";
17
+ import { resolvePageSidebarFolderIndexBehavior } from "./sidebar.mjs";
18
+ import { stripGeneratedAgentProvenance } from "./agent-provenance.mjs";
19
+ import { DEFAULT_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, DOCS_CONTENT_CHANGE_HYDRATION_FORMAT, MAX_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, MIN_DOCS_CONTENT_CHANGE_HYDRATION_TOKEN_BUDGET, hydrateDocsContentChanges } from "./content-change-hydration.mjs";
20
+ import { acquireDocsOpenApiMcpBudget, readDocsOpenApiMcpResponse, resolveDocsOpenApiMcpBaseUrl, resolveDocsOpenApiMcpOperations } from "./openapi-mcp.mjs";
21
+ import { validateDocsOpenApiMcpUrl } from "./openapi-mcp-node.mjs";
10
22
  import matter from "gray-matter";
11
23
  import fs from "node:fs";
12
24
  import path from "node:path";
package/dist/mdx.d.mts ADDED
@@ -0,0 +1,6 @@
1
+ import { toDocsMarkdownUrl } from "./urls.mjs";
2
+ import { applyDocsMarkdownHeadingAnchors, withDocsMarkdownRenderableHeadings } from "./markdown-sections.mjs";
3
+ import { encodeDocsHeadingTocUrls } from "./heading-toc.mjs";
4
+ import { isolateDocsMarkdownPromptReferences } from "./prompt-references.mjs";
5
+ import { remarkCodeGroup } from "./code-group-mdx.mjs";
6
+ export { applyDocsMarkdownHeadingAnchors, encodeDocsHeadingTocUrls, isolateDocsMarkdownPromptReferences, remarkCodeGroup, toDocsMarkdownUrl, withDocsMarkdownRenderableHeadings };
package/dist/mdx.mjs ADDED
@@ -0,0 +1,7 @@
1
+ import { toDocsMarkdownUrl } from "./urls.mjs";
2
+ import { applyDocsMarkdownHeadingAnchors, withDocsMarkdownRenderableHeadings } from "./markdown-sections.mjs";
3
+ import { encodeDocsHeadingTocUrls } from "./heading-toc.mjs";
4
+ import { isolateDocsMarkdownPromptReferences } from "./prompt-references.mjs";
5
+ import { remarkCodeGroup } from "./code-group-mdx.mjs";
6
+
7
+ export { applyDocsMarkdownHeadingAnchors, encodeDocsHeadingTocUrls, isolateDocsMarkdownPromptReferences, remarkCodeGroup, toDocsMarkdownUrl, withDocsMarkdownRenderableHeadings };
@@ -0,0 +1,60 @@
1
+ import { DocsConfig, DocsMetadata, OGConfig, PageAgentFrontmatter, PageFrontmatter, PageOpenGraph, PageTwitter } from "./types.mjs";
2
+
3
+ //#region src/metadata.d.ts
4
+ interface DocsStructuredDataBreadcrumb {
5
+ name: string;
6
+ url: string;
7
+ }
8
+ interface DocsPageStructuredDataInput {
9
+ title: string;
10
+ description?: string;
11
+ url: string;
12
+ baseUrl?: string;
13
+ entry?: string;
14
+ dateModified?: string;
15
+ breadcrumbs?: DocsStructuredDataBreadcrumb[];
16
+ /** Optional actionable page contract represented as a Schema.org HowTo. */
17
+ agent?: PageAgentFrontmatter;
18
+ }
19
+ /**
20
+ * Resolve page title using metadata titleTemplate.
21
+ * %s is replaced with page title.
22
+ */
23
+ declare function resolveTitle(pageTitle: string, metadata?: DocsMetadata): string;
24
+ /**
25
+ * Resolve OG image URL for a page.
26
+ * Prefers page.openGraph.images[0], then page.ogImage, then config endpoint/default.
27
+ */
28
+ declare function resolveOGImage(page: PageFrontmatter, ogConfig?: OGConfig, baseUrl?: string): string | undefined;
29
+ /**
30
+ * Build the Open Graph metadata object for a page.
31
+ * When the page has openGraph in frontmatter, uses it (with title/description filled from page if omitted).
32
+ * Otherwise uses ogImage or config (dynamic endpoint / defaultImage).
33
+ */
34
+ declare function buildPageOpenGraph(page: Pick<PageFrontmatter, "title" | "description" | "ogImage" | "openGraph">, ogConfig?: OGConfig, baseUrl?: string): PageOpenGraph | undefined;
35
+ /**
36
+ * Build the Twitter card metadata object for a page.
37
+ * When the page has twitter in frontmatter, uses it.
38
+ * Otherwise builds from ogImage or config (dynamic endpoint).
39
+ */
40
+ declare function buildPageTwitter(page: Pick<PageFrontmatter, "title" | "description" | "ogImage" | "openGraph" | "twitter">, ogConfig?: OGConfig, baseUrl?: string): PageTwitter | undefined;
41
+ /**
42
+ * Resolve the public docs site URL from existing agent-facing config.
43
+ *
44
+ * The framework intentionally reuses `sitemap.baseUrl`, `llmsTxt.baseUrl`,
45
+ * `robots.baseUrl`, or `ai.docsUrl` instead of requiring another setting.
46
+ */
47
+ declare function resolveDocsMetadataBaseUrl(config: DocsConfig): string | undefined;
48
+ /**
49
+ * Build Schema.org JSON-LD for a docs page.
50
+ *
51
+ * The shape follows Vercel's agent readability guidance: a `TechArticle`
52
+ * with title, description, canonical URL, freshness, and breadcrumbs.
53
+ */
54
+ declare function buildDocsPageStructuredData(input: DocsPageStructuredDataInput): Record<string, unknown>;
55
+ /**
56
+ * Serialize Schema.org JSON-LD for safe insertion into a `<script>` tag.
57
+ */
58
+ declare function renderDocsPageStructuredDataJson(input: DocsPageStructuredDataInput): string;
59
+ //#endregion
60
+ export { DocsPageStructuredDataInput, DocsStructuredDataBreadcrumb, buildDocsPageStructuredData, buildPageOpenGraph, buildPageTwitter, renderDocsPageStructuredDataJson, resolveDocsMetadataBaseUrl, resolveOGImage, resolveTitle };
@@ -1,4 +1,4 @@
1
- import { _ as hasStructuredPageAgentContract, v as normalizePageAgentFrontmatter } from "./markdown-sections-9Oxr33b-.mjs";
1
+ import { hasStructuredPageAgentContract, normalizePageAgentFrontmatter } from "./agent-contract.mjs";
2
2
 
3
3
  //#region src/metadata.ts
4
4
  /**
@@ -234,4 +234,4 @@ function renderDocsPageStructuredDataJson(input) {
234
234
  }
235
235
 
236
236
  //#endregion
237
- export { resolveDocsMetadataBaseUrl as a, renderDocsPageStructuredDataJson as i, buildPageOpenGraph as n, resolveOGImage as o, buildPageTwitter as r, resolveTitle as s, buildDocsPageStructuredData as t };
237
+ export { buildDocsPageStructuredData, buildPageOpenGraph, buildPageTwitter, renderDocsPageStructuredDataJson, resolveDocsMetadataBaseUrl, resolveOGImage, resolveTitle };