@farming-labs/docs 0.1.114 → 0.1.115

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.
@@ -1,9 +1,9 @@
1
1
  import "./reading-time-DNLXwuqA.mjs";
2
2
  import "./search-BL7o2rXk.mjs";
3
- import "./agent-BK7q65dn.mjs";
4
- import "./robots-DDrj6Cpo.mjs";
3
+ import "./agent-Dt6kdGqw.mjs";
4
+ import "./robots-tohhTNbU.mjs";
5
5
  import "./sitemap-server-DdHzJorR.mjs";
6
6
  import "./config-Cio3byUJ.mjs";
7
- import { a as readPageTokenBudget, i as printAgentCompactHelp, n as inspectAgentCompactionState, o as scanDocsPageTargets, r as parseAgentCompactArgs, t as compactAgentDocs } from "./agents-BrhVZkvs.mjs";
7
+ import { a as readPageTokenBudget, i as printAgentCompactHelp, n as inspectAgentCompactionState, o as scanDocsPageTargets, r as parseAgentCompactArgs, t as compactAgentDocs } from "./agents-XyolXdXp.mjs";
8
8
 
9
9
  export { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp };
@@ -296,6 +296,14 @@ function deriveLlmsTxtSectionFullRoute(route) {
296
296
  if (normalized.endsWith("/llms.txt")) return `${normalized.slice(0, -9)}/llms-full.txt`;
297
297
  return joinDocsPublicRoute(normalized, "llms-full.txt");
298
298
  }
299
+ function resolveDocsBaseLlmsTxtRoute(basePath) {
300
+ if (!basePath) return null;
301
+ return joinDocsPublicRoute(normalizeDocsPathSegment(basePath) || "docs", "llms.txt");
302
+ }
303
+ function resolveDocsBaseLlmsFullTxtRoute(basePath) {
304
+ const route = resolveDocsBaseLlmsTxtRoute(basePath);
305
+ return route ? deriveLlmsTxtSectionFullRoute(route) : null;
306
+ }
299
307
  function normalizeLlmsTxtMaxChars(value, fallback) {
300
308
  const mode = value?.mode ?? fallback?.mode ?? "warn";
301
309
  const chars = value?.chars ?? fallback?.chars ?? DEFAULT_LLMS_TXT_MAX_CHARS;
@@ -343,7 +351,7 @@ function matchesDocsLlmsTxtSection(pageUrl, section) {
343
351
  return pathname === normalized;
344
352
  });
345
353
  }
346
- function resolveDocsLlmsTxtRequest(url, llms) {
354
+ function resolveDocsLlmsTxtRequest(url, llms, basePath) {
347
355
  const pathname = normalizeDocsUrlPath(url.pathname);
348
356
  const sections = resolveDocsLlmsTxtSections(llms);
349
357
  for (const section of sections) {
@@ -372,7 +380,9 @@ function resolveDocsLlmsTxtRequest(url, llms) {
372
380
  };
373
381
  }
374
382
  if (pathname === DEFAULT_LLMS_TXT_ROUTE || pathname === DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE) return { format: "llms" };
383
+ if (pathname === resolveDocsBaseLlmsTxtRoute(basePath)) return { format: "llms" };
375
384
  if (pathname === DEFAULT_LLMS_FULL_TXT_ROUTE || pathname === DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE) return { format: "llms-full" };
385
+ if (pathname === resolveDocsBaseLlmsFullTxtRoute(basePath)) return { format: "llms-full" };
376
386
  return null;
377
387
  }
378
388
  function renderLlmsTxtPageList(pages, baseUrl) {
@@ -598,13 +608,13 @@ function resolveDocsAgentsFormat(url) {
598
608
  function isDocsPublicGetRequest(entry, url, request, options = {}) {
599
609
  const pathname = normalizeDocsUrlPath(url.pathname);
600
610
  if (pathname === DEFAULT_DOCS_API_ROUTE || pathname === DEFAULT_MCP_ROUTE) return false;
601
- return isDocsAgentDiscoveryRequest(url) || isDocsAgentsRequest(url) || isDocsSkillRequest(url) || pathname === DEFAULT_AGENT_DISCOVERY_ROBOTS_TXT_ROUTE && isRobotsDiscoveryEnabled(options.robots) || resolveDocsLlmsTxtRequest(url, options.llms) !== null || resolveDocsSitemapRequest(url, options.sitemap) !== null || resolveDocsMarkdownRequest(entry, url, request) !== null;
611
+ return isDocsAgentDiscoveryRequest(url) || isDocsAgentsRequest(url) || isDocsSkillRequest(url) || pathname === DEFAULT_AGENT_DISCOVERY_ROBOTS_TXT_ROUTE && isRobotsDiscoveryEnabled(options.robots) || resolveDocsLlmsTxtRequest(url, options.llms, entry) !== null || resolveDocsSitemapRequest(url, options.sitemap) !== null || resolveDocsMarkdownRequest(entry, url, request) !== null;
602
612
  }
603
- function isDocsLlmsTxtPublicRequest(url, llms) {
604
- return normalizeDocsUrlPath(url.pathname) !== DEFAULT_DOCS_API_ROUTE && resolveDocsLlmsTxtRequest(url, llms) !== null;
613
+ function isDocsLlmsTxtPublicRequest(url, llms, basePath) {
614
+ return normalizeDocsUrlPath(url.pathname) !== DEFAULT_DOCS_API_ROUTE && resolveDocsLlmsTxtRequest(url, llms, basePath) !== null;
605
615
  }
606
- function resolveDocsLlmsTxtFormat(url) {
607
- return resolveDocsLlmsTxtRequest(url)?.format ?? null;
616
+ function resolveDocsLlmsTxtFormat(url, basePath) {
617
+ return resolveDocsLlmsTxtRequest(url, void 0, basePath)?.format ?? null;
608
618
  }
609
619
  function resolveDocsMarkdownRequest(entry, url, request) {
610
620
  const pathname = normalizeDocsUrlPath(url.pathname);
@@ -1,5 +1,5 @@
1
1
  import { _ as parseGeneratedAgentDocument, h as hashGeneratedAgentContent, m as GENERATED_AGENT_PROVENANCE_VERSION, v as serializeGeneratedAgentDocument } from "./search-BL7o2rXk.mjs";
2
- import { E as findDocsMarkdownPage, K as resolveDocsAgentFeedbackConfig, U as renderDocsMarkdownDocument, V as renderDocsAgentsDocument, a as DEFAULT_AGENT_MD_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, y as DEFAULT_OPENAPI_SCHEMA_ROUTE } from "./agent-BK7q65dn.mjs";
2
+ import { E as findDocsMarkdownPage, K as resolveDocsAgentFeedbackConfig, U as renderDocsMarkdownDocument, V as renderDocsAgentsDocument, a as DEFAULT_AGENT_MD_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, y as DEFAULT_OPENAPI_SCHEMA_ROUTE } from "./agent-Dt6kdGqw.mjs";
3
3
  import "./index.mjs";
4
4
  import { S as resolveApiReferenceConfig } from "./sitemap-server-DdHzJorR.mjs";
5
5
  import { createFilesystemDocsMcpSource, resolveDocsMcpConfig } from "./mcp.mjs";
@@ -77,16 +77,16 @@ async function main() {
77
77
  searchApiKey: typeof flags["search-api-key"] === "string" ? flags["search-api-key"] : void 0
78
78
  };
79
79
  if (!parsedCommand.command || parsedCommand.command === "init") {
80
- const { init } = await import("../init-CCDM1jpD.mjs");
80
+ const { init } = await import("../init-BgzyLAay.mjs");
81
81
  await init(initOptions);
82
82
  } else if (parsedCommand.command === "dev") {
83
- const { dev } = await import("../dev-cvGfM7qo.mjs");
83
+ const { dev } = await import("../dev-FC6Fh7nT.mjs");
84
84
  await dev(devOptions);
85
85
  } else if (parsedCommand.command === "mcp") {
86
86
  const { runMcp } = await import("../mcp-Cv95rruE.mjs");
87
87
  await runMcp(mcpOptions);
88
88
  } else if (parsedCommand.command === "agent" && subcommand === "compact") {
89
- const { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp } = await import("../agent-4ROJmQ9i.mjs");
89
+ const { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp } = await import("../agent-D8DpCgt_.mjs");
90
90
  const agentCompactOptions = parseAgentCompactArgs(args.slice(2));
91
91
  if (agentCompactOptions.help) {
92
92
  printAgentCompactHelp();
@@ -96,11 +96,11 @@ async function main() {
96
96
  } else if (parsedCommand.command === "agent") {
97
97
  console.error(pc.red(`Unknown agent subcommand: ${subcommand ?? "(missing)"}`));
98
98
  console.error();
99
- const { printAgentCompactHelp } = await import("../agent-4ROJmQ9i.mjs");
99
+ const { printAgentCompactHelp } = await import("../agent-D8DpCgt_.mjs");
100
100
  printAgentCompactHelp();
101
101
  process.exit(1);
102
102
  } else if (parsedCommand.command === "agents" && subcommand === "generate") {
103
- const { generateAgents, parseAgentsGenerateArgs, printAgentsGenerateHelp } = await import("../agents-BrhVZkvs.mjs");
103
+ const { generateAgents, parseAgentsGenerateArgs, printAgentsGenerateHelp } = await import("../agents-XyolXdXp.mjs");
104
104
  const agentsOptions = parseAgentsGenerateArgs(args.slice(2));
105
105
  if (agentsOptions.help) {
106
106
  printAgentsGenerateHelp();
@@ -110,11 +110,11 @@ async function main() {
110
110
  } else if (parsedCommand.command === "agents") {
111
111
  console.error(pc.red(`Unknown agents subcommand: ${subcommand ?? "(missing)"}`));
112
112
  console.error();
113
- const { printAgentsGenerateHelp } = await import("../agents-BrhVZkvs.mjs");
113
+ const { printAgentsGenerateHelp } = await import("../agents-XyolXdXp.mjs");
114
114
  printAgentsGenerateHelp();
115
115
  process.exit(1);
116
116
  } else if (parsedCommand.command === "doctor") {
117
- const { parseDoctorArgs, printDoctorHelp, runDoctor } = await import("../doctor-C7wo-qbz.mjs");
117
+ const { parseDoctorArgs, printDoctorHelp, runDoctor } = await import("../doctor-CgCcBScE.mjs");
118
118
  const doctorOptions = parseDoctorArgs(args.slice(1));
119
119
  if (doctorOptions.help) {
120
120
  printDoctorHelp();
@@ -144,7 +144,7 @@ async function main() {
144
144
  printSitemapGenerateHelp();
145
145
  process.exit(1);
146
146
  } else if (parsedCommand.command === "robots" && subcommand === "generate") {
147
- const { generateRobots, parseRobotsGenerateArgs, printRobotsGenerateHelp } = await import("../robots-DuDAetXn.mjs");
147
+ const { generateRobots, parseRobotsGenerateArgs, printRobotsGenerateHelp } = await import("../robots-Byj0knC3.mjs");
148
148
  const robotsOptions = parseRobotsGenerateArgs(args.slice(2));
149
149
  if (robotsOptions.help) {
150
150
  printRobotsGenerateHelp();
@@ -154,7 +154,7 @@ async function main() {
154
154
  } else if (parsedCommand.command === "robots") {
155
155
  console.error(pc.red(`Unknown robots subcommand: ${subcommand ?? "(missing)"}`));
156
156
  console.error();
157
- const { printRobotsGenerateHelp } = await import("../robots-DuDAetXn.mjs");
157
+ const { printRobotsGenerateHelp } = await import("../robots-Byj0knC3.mjs");
158
158
  printRobotsGenerateHelp();
159
159
  process.exit(1);
160
160
  } else if (parsedCommand.command === "downgrade") {
@@ -1,5 +1,5 @@
1
1
  import { i as detectPackageManagerFromLockfile } from "./utils-TPe8H1P-.mjs";
2
- import { K as rootLayoutTemplate, W as postcssConfigTemplate, g as docsLayoutTemplate, v as globalCssTemplate, yt as tsconfigTemplate } from "./templates-BpSkUico.mjs";
2
+ import { K as rootLayoutTemplate, W as postcssConfigTemplate, g as docsLayoutTemplate, v as globalCssTemplate, yt as tsconfigTemplate } from "./templates-CkL3bEE5.mjs";
3
3
  import fs from "node:fs";
4
4
  import path from "node:path";
5
5
  import pc from "picocolors";
@@ -1,14 +1,14 @@
1
1
  import "./reading-time-DNLXwuqA.mjs";
2
2
  import "./search-BL7o2rXk.mjs";
3
3
  import { i as DEFAULT_SITEMAP_XML_ROUTE, n as DEFAULT_SITEMAP_MD_ROUTE, r as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, u as resolveDocsSitemapConfig } from "./sitemap-CnqcTdQg.mjs";
4
- import { T as buildDocsMcpEndpointCandidates, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, i as DEFAULT_AGENT_FEEDBACK_ROUTE, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE } from "./agent-BK7q65dn.mjs";
5
- import { a as analyzeDocsRobotsTxt, n as DEFAULT_ROBOTS_TXT_ROUTE, u as resolveDocsRobotsConfig } from "./robots-DDrj6Cpo.mjs";
4
+ import { T as buildDocsMcpEndpointCandidates, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, i as DEFAULT_AGENT_FEEDBACK_ROUTE, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE } from "./agent-Dt6kdGqw.mjs";
5
+ import { a as analyzeDocsRobotsTxt, n as DEFAULT_ROBOTS_TXT_ROUTE, u as resolveDocsRobotsConfig } from "./robots-tohhTNbU.mjs";
6
6
  import "./sitemap-server-DdHzJorR.mjs";
7
7
  import { createFilesystemDocsMcpSource, resolveDocsMcpConfig } from "./mcp.mjs";
8
8
  import "./server.mjs";
9
9
  import { a as loadProjectEnv, c as readNavTitle, d as readTopLevelStringProperty, f as resolveDocsConfigPath, i as loadDocsConfigModule, o as readBooleanProperty, p as resolveDocsContentDir, r as extractTopLevelConfigObject, t as extractNestedObjectLiteral } from "./config-Cio3byUJ.mjs";
10
10
  import { t as detectFramework } from "./utils-TPe8H1P-.mjs";
11
- import { n as inspectAgentCompactionState, o as scanDocsPageTargets } from "./agents-BrhVZkvs.mjs";
11
+ import { n as inspectAgentCompactionState, o as scanDocsPageTargets } from "./agents-XyolXdXp.mjs";
12
12
  import { existsSync, lstatSync, readFileSync, readdirSync } from "node:fs";
13
13
  import path from "node:path";
14
14
  import { LATEST_PROTOCOL_VERSION } from "@modelcontextprotocol/sdk/types.js";
package/dist/index.d.mts CHANGED
@@ -400,7 +400,7 @@ declare function resolveDocsMarkdownCanonicalUrl({
400
400
  declare function getDocsMarkdownCanonicalLinkHeader(options: DocsMarkdownCanonicalUrlOptions): string;
401
401
  declare function resolveDocsLlmsTxtSections(llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig): DocsLlmsTxtResolvedSection[];
402
402
  declare function matchesDocsLlmsTxtSection(pageUrl: string, section: DocsLlmsTxtResolvedSection): boolean;
403
- declare function resolveDocsLlmsTxtRequest(url: URL, llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig): DocsLlmsTxtRequest | null;
403
+ declare function resolveDocsLlmsTxtRequest(url: URL, llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig, basePath?: string): DocsLlmsTxtRequest | null;
404
404
  declare function renderDocsLlmsTxt(pages: DocsLlmsTxtPageInput[], options?: DocsLlmsDiscoveryConfig): DocsLlmsTxtGeneratedContent;
405
405
  declare function selectDocsLlmsTxtContent(content: DocsLlmsTxtGeneratedContent, request: DocsLlmsTxtRequest): DocsLlmsTxtSelectedContent | null;
406
406
  declare function getDocsLlmsTxtMaxCharsIssue(label: string, content: string, maxChars: DocsLlmsTxtResolvedMaxChars): DocsLlmsTxtMaxCharsIssue | null;
@@ -416,8 +416,8 @@ declare function isDocsPublicGetRequest(entry: string, url: URL, request: Reques
416
416
  llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig;
417
417
  robots?: boolean | DocsRobotsConfig;
418
418
  }): boolean;
419
- declare function isDocsLlmsTxtPublicRequest(url: URL, llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig): boolean;
420
- declare function resolveDocsLlmsTxtFormat(url: URL): "llms" | "llms-full" | null;
419
+ declare function isDocsLlmsTxtPublicRequest(url: URL, llms?: boolean | DocsLlmsDiscoveryConfig | LlmsTxtConfig, basePath?: string): boolean;
420
+ declare function resolveDocsLlmsTxtFormat(url: URL, basePath?: string): "llms" | "llms-full" | null;
421
421
  declare function resolveDocsMarkdownRequest(entry: string, url: URL, request: Request): {
422
422
  requestedPath: string;
423
423
  } | null;
package/dist/index.mjs CHANGED
@@ -2,7 +2,7 @@ import { _ as extendTheme, a as resolveReadingTimeOptions, b as defineDocs, c as
2
2
  import { A as resolveDocsAnalyticsConfig, C as resolveSidebarFolderIndexBehaviorForPath, D as emitDocsAgentTraceEvent, E as createDocsAgentTraceId, M as createDocsCloudAnalytics, O as emitDocsAnalyticsEvent, S as resolveSidebarFolderIndexBehavior, T as createDocsAgentTraceContext, _ as parseGeneratedAgentDocument, a as createMcpSearchAdapter, b as applySidebarFolderIndexBehavior, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, f as resolveSearchRequestConfig, g as normalizeGeneratedAgentContent, h as hashGeneratedAgentContent, i as createCustomSearchAdapter, j as resolveDocsObservabilityConfig, k as emitDocsObservabilityEvent, l as inferDocsAskAIPackageHints, m as GENERATED_AGENT_PROVENANCE_VERSION, n as buildDocsSearchDocuments, o as createSimpleSearchAdapter, p as GENERATED_AGENT_PROVENANCE_MARKER, r as createAlgoliaSearchAdapter, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, u as performDocsSearch, v as serializeGeneratedAgentDocument, w as DOCS_AGENT_TRACE_EVENT_TYPES, x as resolvePageSidebarFolderIndexBehavior, y as stripGeneratedAgentProvenance } from "./search-BL7o2rXk.mjs";
3
3
  import { n as renderDocsRelatedMarkdownLines, t as normalizeDocsRelated } from "./related-BNj_NdHq.mjs";
4
4
  import { a as buildDocsSitemapManifest, c as renderDocsSitemapMarkdown, d as resolveDocsSitemapPageLastmod, f as resolveDocsSitemapRequest, i as DEFAULT_SITEMAP_XML_ROUTE, l as renderDocsSitemapXml, n as DEFAULT_SITEMAP_MD_ROUTE, o as createDocsSitemapResponse, p as toDocsSitemapMarkdownUrl, r as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, s as readDocsSitemapManifestFromContentMap, t as DEFAULT_SITEMAP_MANIFEST_PATH, u as resolveDocsSitemapConfig } from "./sitemap-CnqcTdQg.mjs";
5
- import { $ as resolveDocsMarkdownCanonicalUrl, A as hasDocsMarkdownSignatureAgent, B as parseDocsAgentFeedbackData, C as buildDocsAgentDiscoverySpec, D as getDocsLlmsTxtMaxCharsIssue, E as findDocsMarkdownPage, F as isDocsPublicGetRequest, G as renderDocsSkillDocument, H as renderDocsLlmsTxt, I as isDocsSkillRequest, J as resolveDocsAgentMdxContent, K as resolveDocsAgentFeedbackConfig, L as matchesDocsLlmsTxtSection, M as isDocsAgentsRequest, N as isDocsLlmsTxtPublicRequest, O as getDocsMarkdownCanonicalLinkHeader, P as isDocsMcpRequest, Q as resolveDocsLlmsTxtSections, R as normalizeDocsPathSegment, S as DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, T as buildDocsMcpEndpointCandidates, U as renderDocsMarkdownDocument, V as renderDocsAgentsDocument, W as renderDocsMarkdownNotFound, X as resolveDocsLlmsTxtFormat, Y as resolveDocsAgentsFormat, Z as resolveDocsLlmsTxtRequest, _ as DEFAULT_MCP_ROUTE, a as DEFAULT_AGENT_MD_ROUTE, at as validateDocsAgentFeedbackPayload, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, et as resolveDocsMarkdownRequest, f as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, h as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, i as DEFAULT_AGENT_FEEDBACK_ROUTE, it as toDocsMarkdownUrl, j as isDocsAgentDiscoveryRequest, k as getDocsMarkdownVaryHeader, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, nt as resolveDocsSkillFormat, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, p as DEFAULT_LLMS_TXT_MAX_CHARS, q as resolveDocsAgentFeedbackRequest, r as DEFAULT_AGENT_FEEDBACK_PAYLOAD_SCHEMA, rt as selectDocsLlmsTxtContent, s as DEFAULT_AGENT_SPEC_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, tt as resolveDocsOpenApiDiscoveryConfig, u as DEFAULT_DOCS_API_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, w as buildDocsAgentFeedbackSchema, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, y as DEFAULT_OPENAPI_SCHEMA_ROUTE, z as normalizeDocsUrlPath } from "./agent-BK7q65dn.mjs";
6
- import { a as analyzeDocsRobotsTxt, c as renderDocsRobotsGeneratedBlock, d as resolveDocsRobotsRequest, f as upsertDocsRobotsGeneratedBlock, i as DOCS_ROBOTS_GENERATED_BLOCK_START, l as renderDocsRobotsTxt, n as DEFAULT_ROBOTS_TXT_ROUTE, o as createDocsRobotsResponse, r as DOCS_ROBOTS_GENERATED_BLOCK_END, s as getDocsRobotsAllowRoutes, t as DEFAULT_DOCS_AI_ROBOTS_USER_AGENTS, u as resolveDocsRobotsConfig } from "./robots-DDrj6Cpo.mjs";
5
+ import { $ as resolveDocsMarkdownCanonicalUrl, A as hasDocsMarkdownSignatureAgent, B as parseDocsAgentFeedbackData, C as buildDocsAgentDiscoverySpec, D as getDocsLlmsTxtMaxCharsIssue, E as findDocsMarkdownPage, F as isDocsPublicGetRequest, G as renderDocsSkillDocument, H as renderDocsLlmsTxt, I as isDocsSkillRequest, J as resolveDocsAgentMdxContent, K as resolveDocsAgentFeedbackConfig, L as matchesDocsLlmsTxtSection, M as isDocsAgentsRequest, N as isDocsLlmsTxtPublicRequest, O as getDocsMarkdownCanonicalLinkHeader, P as isDocsMcpRequest, Q as resolveDocsLlmsTxtSections, R as normalizeDocsPathSegment, S as DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, T as buildDocsMcpEndpointCandidates, U as renderDocsMarkdownDocument, V as renderDocsAgentsDocument, W as renderDocsMarkdownNotFound, X as resolveDocsLlmsTxtFormat, Y as resolveDocsAgentsFormat, Z as resolveDocsLlmsTxtRequest, _ as DEFAULT_MCP_ROUTE, a as DEFAULT_AGENT_MD_ROUTE, at as validateDocsAgentFeedbackPayload, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, et as resolveDocsMarkdownRequest, f as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, h as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, i as DEFAULT_AGENT_FEEDBACK_ROUTE, it as toDocsMarkdownUrl, j as isDocsAgentDiscoveryRequest, k as getDocsMarkdownVaryHeader, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, nt as resolveDocsSkillFormat, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, p as DEFAULT_LLMS_TXT_MAX_CHARS, q as resolveDocsAgentFeedbackRequest, r as DEFAULT_AGENT_FEEDBACK_PAYLOAD_SCHEMA, rt as selectDocsLlmsTxtContent, s as DEFAULT_AGENT_SPEC_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, tt as resolveDocsOpenApiDiscoveryConfig, u as DEFAULT_DOCS_API_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, w as buildDocsAgentFeedbackSchema, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, y as DEFAULT_OPENAPI_SCHEMA_ROUTE, z as normalizeDocsUrlPath } from "./agent-Dt6kdGqw.mjs";
6
+ import { a as analyzeDocsRobotsTxt, c as renderDocsRobotsGeneratedBlock, d as resolveDocsRobotsRequest, f as upsertDocsRobotsGeneratedBlock, i as DOCS_ROBOTS_GENERATED_BLOCK_START, l as renderDocsRobotsTxt, n as DEFAULT_ROBOTS_TXT_ROUTE, o as createDocsRobotsResponse, r as DOCS_ROBOTS_GENERATED_BLOCK_END, s as getDocsRobotsAllowRoutes, t as DEFAULT_DOCS_AI_ROBOTS_USER_AGENTS, u as resolveDocsRobotsConfig } from "./robots-tohhTNbU.mjs";
7
7
 
8
8
  export { DEFAULT_AGENTS_MD_ROUTE, DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, DEFAULT_AGENT_FEEDBACK_PAYLOAD_SCHEMA, DEFAULT_AGENT_FEEDBACK_ROUTE, DEFAULT_AGENT_MD_ROUTE, DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, DEFAULT_AGENT_SPEC_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, DEFAULT_DOCS_AI_ROBOTS_USER_AGENTS, DEFAULT_DOCS_API_ROUTE, DEFAULT_LLMS_FULL_TXT_ROUTE, DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, DEFAULT_LLMS_TXT_MAX_CHARS, DEFAULT_LLMS_TXT_ROUTE, DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, DEFAULT_MCP_PUBLIC_ROUTE, DEFAULT_MCP_ROUTE, DEFAULT_MCP_WELL_KNOWN_ROUTE, DEFAULT_OPENAPI_SCHEMA_ROUTE, DEFAULT_ROBOTS_TXT_ROUTE, DEFAULT_SITEMAP_MANIFEST_PATH, DEFAULT_SITEMAP_MD_ROUTE, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, DEFAULT_SITEMAP_XML_ROUTE, DEFAULT_SKILL_MD_ROUTE, DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, DOCS_AGENT_TRACE_EVENT_TYPES, DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, DOCS_ROBOTS_GENERATED_BLOCK_END, DOCS_ROBOTS_GENERATED_BLOCK_START, GENERATED_AGENT_PROVENANCE_MARKER, GENERATED_AGENT_PROVENANCE_VERSION, analyzeDocsRobotsTxt, applySidebarFolderIndexBehavior, buildDocsAgentDiscoverySpec, buildDocsAgentFeedbackSchema, buildDocsAskAIContext, buildDocsMcpEndpointCandidates, buildDocsPageStructuredData, buildDocsSearchDocuments, buildDocsSitemapManifest, buildPageOpenGraph, buildPageTwitter, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsCloudAnalytics, createDocsRobotsResponse, createDocsSitemapResponse, createMcpSearchAdapter, createSimpleSearchAdapter, createTheme, createTypesenseSearchAdapter, deepMerge, defineDocs, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, estimateReadingTimeMinutes, extendTheme, findDocsMarkdownPage, formatDocsAskAIPackageHints, getDocsLlmsTxtMaxCharsIssue, getDocsMarkdownCanonicalLinkHeader, getDocsMarkdownVaryHeader, getDocsRobotsAllowRoutes, hasDocsMarkdownSignatureAgent, hashGeneratedAgentContent, inferDocsAskAIPackageHints, isDocsAgentDiscoveryRequest, isDocsAgentsRequest, isDocsLlmsTxtPublicRequest, isDocsMcpRequest, isDocsPublicGetRequest, isDocsSkillRequest, matchesDocsLlmsTxtSection, normalizeDocsPathSegment, normalizeDocsRelated, normalizeDocsUrlPath, normalizeGeneratedAgentContent, parseDocsAgentFeedbackData, parseGeneratedAgentDocument, performDocsSearch, readDocsSitemapManifestFromContentMap, renderDocsAgentsDocument, renderDocsLlmsTxt, renderDocsMarkdownDocument, renderDocsMarkdownNotFound, renderDocsPageStructuredDataJson, renderDocsRelatedMarkdownLines, renderDocsRobotsGeneratedBlock, renderDocsRobotsTxt, renderDocsSitemapMarkdown, renderDocsSitemapXml, renderDocsSkillDocument, resolveAskAISearchRequestConfig, resolveChangelogConfig, resolveDocsAgentFeedbackConfig, resolveDocsAgentFeedbackRequest, resolveDocsAgentMdxContent, resolveDocsAgentsFormat, resolveDocsAnalyticsConfig, resolveDocsI18n, resolveDocsLlmsTxtFormat, resolveDocsLlmsTxtRequest, resolveDocsLlmsTxtSections, resolveDocsLocale, resolveDocsMarkdownCanonicalUrl, resolveDocsMarkdownRequest, resolveDocsMetadataBaseUrl, resolveDocsObservabilityConfig, resolveDocsOpenApiDiscoveryConfig, resolveDocsPath, resolveDocsRobotsConfig, resolveDocsRobotsRequest, resolveDocsSitemapConfig, resolveDocsSitemapPageLastmod, resolveDocsSitemapRequest, resolveDocsSkillFormat, resolveOGImage, resolvePageReadingTime, resolvePageSidebarFolderIndexBehavior, resolveReadingTimeFromContent, resolveReadingTimeFromSource, resolveReadingTimeOptions, resolveSearchRequestConfig, resolveSidebarFolderIndexBehavior, resolveSidebarFolderIndexBehaviorForPath, resolveTitle, selectDocsLlmsTxtContent, serializeGeneratedAgentDocument, stripGeneratedAgentProvenance, toDocsMarkdownUrl, toDocsSitemapMarkdownUrl, upsertDocsRobotsGeneratedBlock, validateDocsAgentFeedbackPayload };
@@ -1,5 +1,5 @@
1
1
  import { a as devInstallCommand, c as fileExists, d as spawnAndWaitFor, f as writeFileSafe, i as detectPackageManagerFromLockfile, l as installCommand, n as detectGlobalCssFiles, o as exec, r as detectNextAppDir, t as detectFramework, u as readFileSafe } from "./utils-TPe8H1P-.mjs";
2
- import { $ as svelteDocsPublicHookTemplate, A as nextConfigMergedTemplate, B as nuxtServerApiDocsRouteTemplate, C as injectRootProviderIntoLayout, D as injectTanstackVitePlugins, E as injectTanstackRootProviderIntoRoute, F as nuxtDocsConfigTemplate, G as quickstartPageTemplate, H as nuxtServerDocsPublicMiddlewareTemplate, I as nuxtDocsPageTemplate, J as svelteDocsApiRouteTemplate, K as rootLayoutTemplate, L as nuxtGlobalCssTemplate, M as nextLocaleDocPageTemplate, N as nextLocalizedPageTemplate, O as installationPageTemplate, P as nuxtConfigTemplate, Q as svelteDocsPageTemplate, R as nuxtInstallationPageTemplate, S as injectNuxtCssImport, T as injectSvelteDocsPublicHook, U as nuxtWelcomePageTemplate, V as nuxtServerApiReferenceRouteTemplate, W as postcssConfigTemplate, X as svelteDocsLayoutServerTemplate, Y as svelteDocsConfigTemplate, Z as svelteDocsLayoutTemplate, _ as getAstroAdapterPkg, _t as tanstackViteConfigTemplate, a as astroDocsIndexTemplate, at as svelteWelcomePageTemplate, b as injectAstroDocsMiddleware, bt as welcomePageTemplate, c as astroDocsServerTemplate, ct as tanstackDocsCatchAllRouteTemplate, d as astroQuickstartPageTemplate, dt as tanstackDocsIndexRouteTemplate, et as svelteDocsServerTemplate, f as astroWelcomePageTemplate, ft as tanstackDocsPublicRouteTemplate, g as docsLayoutTemplate, gt as tanstackRootRouteTemplate, h as docsConfigTemplate, ht as tanstackQuickstartPageTemplate, i as astroDocsConfigTemplate, it as svelteRootLayoutTemplate, j as nextConfigTemplate, k as nextApiReferencePageTemplate, l as astroGlobalCssTemplate, lt as tanstackDocsConfigTemplate, m as customThemeTsTemplate, mt as tanstackInstallationPageTemplate, n as astroApiRouteTemplate, nt as svelteInstallationPageTemplate, o as astroDocsMiddlewareTemplate, ot as tanstackApiDocsRouteTemplate, p as customThemeCssTemplate, pt as tanstackDocsServerTemplate, q as svelteApiReferenceRouteTemplate, r as astroConfigTemplate, rt as svelteQuickstartPageTemplate, s as astroDocsPageTemplate, st as tanstackApiReferenceRouteTemplate, t as astroApiReferenceRouteTemplate, tt as svelteGlobalCssTemplate, u as astroInstallationPageTemplate, ut as tanstackDocsFunctionsTemplate, v as globalCssTemplate, vt as tanstackWelcomePageTemplate, w as injectSvelteCssImport, x as injectCssImport, y as injectAstroCssImport, yt as tsconfigTemplate, z as nuxtQuickstartPageTemplate } from "./templates-BpSkUico.mjs";
2
+ import { $ as svelteDocsPublicHookTemplate, A as nextConfigMergedTemplate, B as nuxtServerApiDocsRouteTemplate, C as injectRootProviderIntoLayout, D as injectTanstackVitePlugins, E as injectTanstackRootProviderIntoRoute, F as nuxtDocsConfigTemplate, G as quickstartPageTemplate, H as nuxtServerDocsPublicMiddlewareTemplate, I as nuxtDocsPageTemplate, J as svelteDocsApiRouteTemplate, K as rootLayoutTemplate, L as nuxtGlobalCssTemplate, M as nextLocaleDocPageTemplate, N as nextLocalizedPageTemplate, O as installationPageTemplate, P as nuxtConfigTemplate, Q as svelteDocsPageTemplate, R as nuxtInstallationPageTemplate, S as injectNuxtCssImport, T as injectSvelteDocsPublicHook, U as nuxtWelcomePageTemplate, V as nuxtServerApiReferenceRouteTemplate, W as postcssConfigTemplate, X as svelteDocsLayoutServerTemplate, Y as svelteDocsConfigTemplate, Z as svelteDocsLayoutTemplate, _ as getAstroAdapterPkg, _t as tanstackViteConfigTemplate, a as astroDocsIndexTemplate, at as svelteWelcomePageTemplate, b as injectAstroDocsMiddleware, bt as welcomePageTemplate, c as astroDocsServerTemplate, ct as tanstackDocsCatchAllRouteTemplate, d as astroQuickstartPageTemplate, dt as tanstackDocsIndexRouteTemplate, et as svelteDocsServerTemplate, f as astroWelcomePageTemplate, ft as tanstackDocsPublicRouteTemplate, g as docsLayoutTemplate, gt as tanstackRootRouteTemplate, h as docsConfigTemplate, ht as tanstackQuickstartPageTemplate, i as astroDocsConfigTemplate, it as svelteRootLayoutTemplate, j as nextConfigTemplate, k as nextApiReferencePageTemplate, l as astroGlobalCssTemplate, lt as tanstackDocsConfigTemplate, m as customThemeTsTemplate, mt as tanstackInstallationPageTemplate, n as astroApiRouteTemplate, nt as svelteInstallationPageTemplate, o as astroDocsMiddlewareTemplate, ot as tanstackApiDocsRouteTemplate, p as customThemeCssTemplate, pt as tanstackDocsServerTemplate, q as svelteApiReferenceRouteTemplate, r as astroConfigTemplate, rt as svelteQuickstartPageTemplate, s as astroDocsPageTemplate, st as tanstackApiReferenceRouteTemplate, t as astroApiReferenceRouteTemplate, tt as svelteGlobalCssTemplate, u as astroInstallationPageTemplate, ut as tanstackDocsFunctionsTemplate, v as globalCssTemplate, vt as tanstackWelcomePageTemplate, w as injectSvelteCssImport, x as injectCssImport, y as injectAstroCssImport, yt as tsconfigTemplate, z as nuxtQuickstartPageTemplate } from "./templates-CkL3bEE5.mjs";
3
3
  import fs from "node:fs";
4
4
  import path from "node:path";
5
5
  import pc from "picocolors";
@@ -1,5 +1,5 @@
1
- import "./agent-BK7q65dn.mjs";
2
- import { c as renderDocsRobotsGeneratedBlock, f as upsertDocsRobotsGeneratedBlock, i as DOCS_ROBOTS_GENERATED_BLOCK_START, r as DOCS_ROBOTS_GENERATED_BLOCK_END, u as resolveDocsRobotsConfig } from "./robots-DDrj6Cpo.mjs";
1
+ import "./agent-Dt6kdGqw.mjs";
2
+ import { c as renderDocsRobotsGeneratedBlock, f as upsertDocsRobotsGeneratedBlock, i as DOCS_ROBOTS_GENERATED_BLOCK_START, r as DOCS_ROBOTS_GENERATED_BLOCK_END, u as resolveDocsRobotsConfig } from "./robots-tohhTNbU.mjs";
3
3
  import { d as readTopLevelStringProperty, f as resolveDocsConfigPath, i as loadDocsConfigModule, o as readBooleanProperty, t as extractNestedObjectLiteral, u as readStringProperty } from "./config-Cio3byUJ.mjs";
4
4
  import { t as detectFramework } from "./utils-TPe8H1P-.mjs";
5
5
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
@@ -1,5 +1,5 @@
1
1
  import { u as resolveDocsSitemapConfig } from "./sitemap-CnqcTdQg.mjs";
2
- import { R as normalizeDocsPathSegment, a as DEFAULT_AGENT_MD_ROUTE, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, f as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, h as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE } from "./agent-BK7q65dn.mjs";
2
+ import { R as normalizeDocsPathSegment, a as DEFAULT_AGENT_MD_ROUTE, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, d as DEFAULT_LLMS_FULL_TXT_ROUTE, f as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, g as DEFAULT_MCP_PUBLIC_ROUTE, h as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, t as DEFAULT_AGENTS_MD_ROUTE, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE } from "./agent-Dt6kdGqw.mjs";
3
3
 
4
4
  //#region src/robots.ts
5
5
  const DEFAULT_ROBOTS_TXT_ROUTE = "/robots.txt";
@@ -1349,7 +1349,7 @@ export const handle: Handle = async ({ event, resolve }) => {
1349
1349
  });
1350
1350
  }
1351
1351
 
1352
- if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(event.url, config.llmsTxt)) {
1352
+ if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(event.url, config.llmsTxt, docsEntry)) {
1353
1353
  const nativeResponse = await resolve(event);
1354
1354
  if (nativeResponse.status !== 404) return nativeResponse;
1355
1355
  }
@@ -1402,7 +1402,7 @@ const docsPublicHandle: Handle = async ({ event, resolve }) => {
1402
1402
  });
1403
1403
  }
1404
1404
 
1405
- if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(event.url, docsConfig.llmsTxt)) {
1405
+ if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(event.url, docsConfig.llmsTxt, docsEntry)) {
1406
1406
  const nativeResponse = await resolve(event);
1407
1407
  if (nativeResponse.status !== 404) return nativeResponse;
1408
1408
  }
@@ -1823,7 +1823,7 @@ export const onRequest: MiddlewareHandler = async (context, next) => {
1823
1823
  });
1824
1824
  }
1825
1825
 
1826
- if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(context.url, config.llmsTxt)) {
1826
+ if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(context.url, config.llmsTxt, docsEntry)) {
1827
1827
  const nativeResponse = await next();
1828
1828
  if (nativeResponse.status !== 404) return nativeResponse;
1829
1829
  }
@@ -1876,7 +1876,7 @@ const docsPublicMiddleware: MiddlewareHandler = async (context, next) => {
1876
1876
  });
1877
1877
  }
1878
1878
 
1879
- if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(context.url, docsConfig.llmsTxt)) {
1879
+ if ((method === "GET" || method === "HEAD") && isDocsLlmsTxtPublicRequest(context.url, docsConfig.llmsTxt, docsEntry)) {
1880
1880
  const nativeResponse = await next();
1881
1881
  if (nativeResponse.status !== 404) return nativeResponse;
1882
1882
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@farming-labs/docs",
3
- "version": "0.1.114",
3
+ "version": "0.1.115",
4
4
  "description": "Modern, flexible MDX-based docs framework — core types, config, and CLI",
5
5
  "keywords": [
6
6
  "docs",