@farming-labs/docs 0.1.137 → 0.1.140

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.
@@ -3,6 +3,6 @@ import "./agent-B7T4gauS.mjs";
3
3
  import "./robots-CDdD2o-Q.mjs";
4
4
  import "./sitemap-server-idLUrmmU.mjs";
5
5
  import "./config-CBoixmrv.mjs";
6
- import { a as readPageTokenBudget, i as printAgentCompactHelp, n as inspectAgentCompactionState, o as scanDocsPageTargets, r as parseAgentCompactArgs, t as compactAgentDocs } from "./codeblocks-B0DpBaIC.mjs";
6
+ import { a as readPageTokenBudget, i as printAgentCompactHelp, n as inspectAgentCompactionState, o as scanDocsPageTargets, r as parseAgentCompactArgs, t as compactAgentDocs } from "./codeblocks-CQ3bD5fQ.mjs";
7
7
 
8
8
  export { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp };
@@ -81,6 +81,7 @@ async function main() {
81
81
  configPath: typeof flags.config === "string" ? flags.config : void 0,
82
82
  apiBaseUrl: typeof flags["api-base-url"] === "string" ? flags["api-base-url"] : typeof flags.url === "string" ? flags.url : void 0,
83
83
  apiKey: typeof flags["api-key"] === "string" ? flags["api-key"] : void 0,
84
+ apiKeyEnv: typeof flags["api-key-env"] === "string" ? flags["api-key-env"] : void 0,
84
85
  json: typeof flags.json === "boolean" ? flags.json : void 0
85
86
  };
86
87
  if (!parsedCommand.command || parsedCommand.command === "init") {
@@ -90,31 +91,34 @@ async function main() {
90
91
  const { dev } = await import("../dev-DdlhqXNU.mjs");
91
92
  await dev(devOptions);
92
93
  } else if (parsedCommand.command === "deploy") {
93
- const { runCloudDeploy } = await import("../cloud-BdSGNsah.mjs");
94
+ const { runCloudDeploy } = await import("../cloud-DcsDg7Ze.mjs");
94
95
  await runCloudDeploy(cloudOptions);
95
96
  } else if (parsedCommand.command === "preview") {
96
- const { runCloudPreview } = await import("../cloud-BdSGNsah.mjs");
97
+ const { runCloudPreview } = await import("../cloud-DcsDg7Ze.mjs");
97
98
  await runCloudPreview(cloudOptions);
98
99
  } else if (parsedCommand.command === "cloud" && subcommand === "deploy") {
99
- const { runCloudDeploy } = await import("../cloud-BdSGNsah.mjs");
100
+ const { runCloudDeploy } = await import("../cloud-DcsDg7Ze.mjs");
100
101
  await runCloudDeploy(cloudOptions);
101
102
  } else if (parsedCommand.command === "cloud" && subcommand === "preview") {
102
- const { runCloudPreview } = await import("../cloud-BdSGNsah.mjs");
103
+ const { runCloudPreview } = await import("../cloud-DcsDg7Ze.mjs");
103
104
  await runCloudPreview(cloudOptions);
105
+ } else if (parsedCommand.command === "cloud" && subcommand === "init") {
106
+ const { runCloudInit } = await import("../cloud-DcsDg7Ze.mjs");
107
+ await runCloudInit(cloudOptions);
104
108
  } else if (parsedCommand.command === "cloud" && subcommand === "sync") {
105
- const { syncCloudConfig } = await import("../cloud-BdSGNsah.mjs");
109
+ const { syncCloudConfig } = await import("../cloud-DcsDg7Ze.mjs");
106
110
  await syncCloudConfig(cloudOptions);
107
111
  } else if (parsedCommand.command === "cloud") {
108
112
  console.error(pc.red(`Unknown cloud subcommand: ${subcommand ?? "(missing)"}`));
109
113
  console.error();
110
- const { printCloudHelp } = await import("../cloud-BdSGNsah.mjs");
114
+ const { printCloudHelp } = await import("../cloud-DcsDg7Ze.mjs");
111
115
  printCloudHelp();
112
116
  process.exit(1);
113
117
  } else if (parsedCommand.command === "mcp") {
114
118
  const { runMcp } = await import("../mcp-UECjXigf.mjs");
115
119
  await runMcp(mcpOptions);
116
120
  } else if (parsedCommand.command === "agent" && subcommand === "compact") {
117
- const { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp } = await import("../agent-Ddf7xz39.mjs");
121
+ const { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp } = await import("../agent-BpDMyCrC.mjs");
118
122
  const agentCompactOptions = parseAgentCompactArgs(args.slice(2));
119
123
  if (agentCompactOptions.help) {
120
124
  printAgentCompactHelp();
@@ -124,7 +128,7 @@ async function main() {
124
128
  } else if (parsedCommand.command === "agent") {
125
129
  console.error(pc.red(`Unknown agent subcommand: ${subcommand ?? "(missing)"}`));
126
130
  console.error();
127
- const { printAgentCompactHelp } = await import("../agent-Ddf7xz39.mjs");
131
+ const { printAgentCompactHelp } = await import("../agent-BpDMyCrC.mjs");
128
132
  printAgentCompactHelp();
129
133
  process.exit(1);
130
134
  } else if (parsedCommand.command === "agents" && subcommand === "generate") {
@@ -142,7 +146,7 @@ async function main() {
142
146
  printAgentsGenerateHelp();
143
147
  process.exit(1);
144
148
  } else if (parsedCommand.command === "doctor") {
145
- const { parseDoctorArgs, printDoctorHelp, runDoctor } = await import("../doctor-Dwf-4j_0.mjs");
149
+ const { parseDoctorArgs, printDoctorHelp, runDoctor } = await import("../doctor-a6opV_tk.mjs");
146
150
  const doctorOptions = parseDoctorArgs(args.slice(1));
147
151
  if (doctorOptions.help) {
148
152
  printDoctorHelp();
@@ -158,7 +162,7 @@ async function main() {
158
162
  }
159
163
  await runReview(reviewOptions);
160
164
  } else if ((parsedCommand.command === "codeblocks" || parsedCommand.command === "code-blocks") && subcommand === "validate") {
161
- const { parseCodeBlocksValidateArgs, printCodeBlocksValidateHelp, runCodeBlocksValidate } = await import("../codeblocks-B0DpBaIC.mjs");
165
+ const { parseCodeBlocksValidateArgs, printCodeBlocksValidateHelp, runCodeBlocksValidate } = await import("../codeblocks-CQ3bD5fQ.mjs");
162
166
  const codeBlocksOptions = parseCodeBlocksValidateArgs(args.slice(2));
163
167
  if (codeBlocksOptions.help) {
164
168
  printCodeBlocksValidateHelp();
@@ -168,11 +172,11 @@ async function main() {
168
172
  } else if (parsedCommand.command === "codeblocks" || parsedCommand.command === "code-blocks") {
169
173
  console.error(pc.red(`Unknown codeblocks subcommand: ${subcommand ?? "(missing)"}`));
170
174
  console.error();
171
- const { printCodeBlocksValidateHelp } = await import("../codeblocks-B0DpBaIC.mjs");
175
+ const { printCodeBlocksValidateHelp } = await import("../codeblocks-CQ3bD5fQ.mjs");
172
176
  printCodeBlocksValidateHelp();
173
177
  process.exit(1);
174
178
  } else if (parsedCommand.command === "search" && subcommand === "sync") {
175
- const { syncSearch } = await import("../search-DufF2puj.mjs");
179
+ const { syncSearch } = await import("../search-Bt8UxDdN.mjs");
176
180
  await syncSearch(searchSyncOptions);
177
181
  } else if (parsedCommand.command === "search") {
178
182
  console.error(pc.red(`Unknown search subcommand: ${subcommand ?? "(missing)"}`));
@@ -246,7 +250,7 @@ ${pc.dim("Commands:")}
246
250
  ${pc.cyan("dev")} Run frameworkless docs locally from ${pc.dim("docs.json")}
247
251
  ${pc.cyan("deploy")} Sync cloud config and deploy hosted preview docs
248
252
  ${pc.cyan("preview")} Alias for ${pc.cyan("deploy")}
249
- ${pc.cyan("cloud")} Docs Cloud utilities (${pc.dim("deploy")}, ${pc.dim("preview")}, ${pc.dim("sync")})
253
+ ${pc.cyan("cloud")} Docs Cloud utilities (${pc.dim("init")}, ${pc.dim("deploy")}, ${pc.dim("preview")}, ${pc.dim("sync")})
250
254
  ${pc.cyan("agent")} Agent utilities (${pc.dim("compact")} to generate sibling agent.md files)
251
255
  ${pc.cyan("agents")} AGENTS.md utilities (${pc.dim("generate")} for static agent instructions)
252
256
  ${pc.cyan("doctor")} Inspect and score agent or reader-facing docs quality
@@ -281,12 +285,14 @@ ${pc.dim("Options for dev:")}
281
285
  ${pc.cyan("--verbose")} Show raw runtime logs in addition to branded CLI output
282
286
 
283
287
  ${pc.dim("Options for cloud deploy:")}
288
+ ${pc.cyan("cloud init")} Add Docs Cloud config to ${pc.dim("docs.config.ts")} and ${pc.dim("docs.json")}
284
289
  ${pc.cyan("deploy")} Sync ${pc.dim("docs.config.ts")} into ${pc.dim("docs.json")} and deploy hosted preview docs
285
290
  ${pc.cyan("cloud deploy")} Same as ${pc.cyan("deploy")}
286
291
  ${pc.cyan("preview")} Alias for ${pc.cyan("deploy")}
287
292
  ${pc.cyan("cloud preview")} Compatibility alias for ${pc.cyan("cloud deploy")}
288
293
  ${pc.cyan("cloud sync")} Only materialize cloud settings into ${pc.dim("docs.json")}
289
294
  ${pc.cyan("--config <path>")} Use a custom docs config path
295
+ ${pc.cyan("--api-key-env <name>")} Env var that stores the Docs Cloud API key
290
296
  ${pc.cyan("--api-base-url <url>")} Override the Docs Cloud API base URL
291
297
  ${pc.cyan("--api-key <key>")} Use an API key directly; prefer ${pc.dim("cloud.apiKey.env")}
292
298
  ${pc.cyan("--json")} Print machine-readable output
@@ -9,6 +9,7 @@ import { execFileSync } from "node:child_process";
9
9
  const DOCS_JSON_FILE = "docs.json";
10
10
  const DOCS_CLOUD_SCHEMA_URL = "https://docs.farming-labs.dev/schema/docs.json";
11
11
  const DOCS_CLOUD_DEFAULT_API_KEY_ENV = "DOCS_CLOUD_API_KEY";
12
+ const DOCS_CLOUD_DEFAULT_ANALYTICS_PROJECT_ID_ENV = "NEXT_PUBLIC_DOCS_CLOUD_PROJECT_ID";
12
13
  const DEFAULT_DOCS_CLOUD_API_BASE_URL = "https://docs-app.farming-labs.dev";
13
14
  const DEFAULT_PREVIEW_TIMEOUT_MS = 300 * 1e3;
14
15
  const DEFAULT_PREVIEW_POLL_INTERVAL_MS = 2e3;
@@ -112,6 +113,299 @@ async function loadDocsConfigSnapshot(rootDir, explicitPath) {
112
113
  config: (await loadDocsConfigModule(rootDir, configPath, { silent: true }))?.config
113
114
  };
114
115
  }
116
+ function escapeRegExp(value) {
117
+ return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
118
+ }
119
+ function findBalancedBraceEnd(content, braceStart) {
120
+ let depth = 0;
121
+ let stringQuote = null;
122
+ let escaped = false;
123
+ let lineComment = false;
124
+ let blockComment = false;
125
+ for (let index = braceStart; index < content.length; index += 1) {
126
+ const char = content[index];
127
+ const next = content[index + 1];
128
+ if (lineComment) {
129
+ if (char === "\n") lineComment = false;
130
+ continue;
131
+ }
132
+ if (blockComment) {
133
+ if (char === "*" && next === "/") {
134
+ blockComment = false;
135
+ index += 1;
136
+ }
137
+ continue;
138
+ }
139
+ if (stringQuote) {
140
+ if (escaped) {
141
+ escaped = false;
142
+ continue;
143
+ }
144
+ if (char === "\\") {
145
+ escaped = true;
146
+ continue;
147
+ }
148
+ if (char === stringQuote) stringQuote = null;
149
+ continue;
150
+ }
151
+ if (char === "/" && next === "/") {
152
+ lineComment = true;
153
+ index += 1;
154
+ continue;
155
+ }
156
+ if (char === "/" && next === "*") {
157
+ blockComment = true;
158
+ index += 1;
159
+ continue;
160
+ }
161
+ if (char === "\"" || char === "'" || char === "`") {
162
+ stringQuote = char;
163
+ continue;
164
+ }
165
+ if (char === "{") {
166
+ depth += 1;
167
+ continue;
168
+ }
169
+ if (char !== "}") continue;
170
+ depth -= 1;
171
+ if (depth === 0) return index;
172
+ }
173
+ return -1;
174
+ }
175
+ function findConfigObjectRange(content) {
176
+ for (const marker of ["defineDocs(", "export default"]) {
177
+ const markerIndex = content.indexOf(marker);
178
+ if (markerIndex === -1) continue;
179
+ const braceStart = content.indexOf("{", markerIndex);
180
+ if (braceStart === -1) continue;
181
+ const braceEnd = findBalancedBraceEnd(content, braceStart);
182
+ if (braceEnd === -1) continue;
183
+ return {
184
+ braceStart,
185
+ braceEnd,
186
+ bodyStart: braceStart + 1,
187
+ bodyEnd: braceEnd
188
+ };
189
+ }
190
+ }
191
+ function stripLeadingPropertyTrivia(content) {
192
+ let current = content;
193
+ while (true) {
194
+ const trimmed = current.replace(/^\s+/, "");
195
+ if (trimmed.startsWith("//")) {
196
+ const lineEnd = trimmed.indexOf("\n");
197
+ current = lineEnd === -1 ? "" : trimmed.slice(lineEnd + 1);
198
+ continue;
199
+ }
200
+ if (trimmed.startsWith("/*")) {
201
+ const blockEnd = trimmed.indexOf("*/");
202
+ current = blockEnd === -1 ? "" : trimmed.slice(blockEnd + 2);
203
+ continue;
204
+ }
205
+ return trimmed;
206
+ }
207
+ }
208
+ function propertyStartsWithKey(property, key) {
209
+ return new RegExp(`^${escapeRegExp(key)}\\s*:`).test(stripLeadingPropertyTrivia(property));
210
+ }
211
+ function findTopLevelPropertyRange(content, bodyStart, bodyEnd, key) {
212
+ let start = bodyStart;
213
+ let stringQuote = null;
214
+ let escaped = false;
215
+ let lineComment = false;
216
+ let blockComment = false;
217
+ let braceDepth = 0;
218
+ let bracketDepth = 0;
219
+ let parenDepth = 0;
220
+ const maybeMatch = (end) => {
221
+ if (!propertyStartsWithKey(content.slice(start, end), key)) return void 0;
222
+ return {
223
+ start,
224
+ end
225
+ };
226
+ };
227
+ for (let index = bodyStart; index <= bodyEnd; index += 1) {
228
+ const char = content[index];
229
+ const next = content[index + 1];
230
+ if (index === bodyEnd) return maybeMatch(index);
231
+ if (lineComment) {
232
+ if (char === "\n") lineComment = false;
233
+ continue;
234
+ }
235
+ if (blockComment) {
236
+ if (char === "*" && next === "/") {
237
+ blockComment = false;
238
+ index += 1;
239
+ }
240
+ continue;
241
+ }
242
+ if (stringQuote) {
243
+ if (escaped) {
244
+ escaped = false;
245
+ continue;
246
+ }
247
+ if (char === "\\") {
248
+ escaped = true;
249
+ continue;
250
+ }
251
+ if (char === stringQuote) stringQuote = null;
252
+ continue;
253
+ }
254
+ if (char === "/" && next === "/") {
255
+ lineComment = true;
256
+ index += 1;
257
+ continue;
258
+ }
259
+ if (char === "/" && next === "*") {
260
+ blockComment = true;
261
+ index += 1;
262
+ continue;
263
+ }
264
+ if (char === "\"" || char === "'" || char === "`") {
265
+ stringQuote = char;
266
+ continue;
267
+ }
268
+ if (char === "{") {
269
+ braceDepth += 1;
270
+ continue;
271
+ }
272
+ if (char === "}") {
273
+ braceDepth = Math.max(0, braceDepth - 1);
274
+ continue;
275
+ }
276
+ if (char === "[") {
277
+ bracketDepth += 1;
278
+ continue;
279
+ }
280
+ if (char === "]") {
281
+ bracketDepth = Math.max(0, bracketDepth - 1);
282
+ continue;
283
+ }
284
+ if (char === "(") {
285
+ parenDepth += 1;
286
+ continue;
287
+ }
288
+ if (char === ")") {
289
+ parenDepth = Math.max(0, parenDepth - 1);
290
+ continue;
291
+ }
292
+ if (char !== "," || braceDepth !== 0 || bracketDepth !== 0 || parenDepth !== 0) continue;
293
+ const match = maybeMatch(index);
294
+ if (match) return match;
295
+ start = index + 1;
296
+ }
297
+ }
298
+ function findObjectPropertyRange(content, object, key) {
299
+ const property = findTopLevelPropertyRange(content, object.bodyStart, object.bodyEnd, key);
300
+ if (!property) return void 0;
301
+ const colon = content.indexOf(":", property.start);
302
+ const braceStart = content.indexOf("{", colon);
303
+ if (colon === -1 || braceStart === -1 || braceStart > property.end) return void 0;
304
+ const braceEnd = findBalancedBraceEnd(content, braceStart);
305
+ if (braceEnd === -1 || braceEnd > property.end) return void 0;
306
+ return {
307
+ braceStart,
308
+ braceEnd,
309
+ bodyStart: braceStart + 1,
310
+ bodyEnd: braceEnd
311
+ };
312
+ }
313
+ function lineIndentAt(content, index) {
314
+ const lineStart = content.lastIndexOf("\n", index - 1) + 1;
315
+ return content.slice(lineStart, index).match(/^\s*/)?.[0] ?? "";
316
+ }
317
+ function insertObjectProperties(content, object, properties) {
318
+ if (properties.length === 0) return content;
319
+ const body = content.slice(object.bodyStart, object.bodyEnd);
320
+ const closingIndent = lineIndentAt(content, object.braceEnd);
321
+ const beforeObjectClose = content.slice(0, object.bodyEnd).replace(/\s*$/, "");
322
+ const suffix = content.slice(object.bodyEnd);
323
+ return `${beforeObjectClose}${body.trim().length > 0 && !beforeObjectClose.endsWith(",") ? "," : ""}\n${properties.join("\n")}\n${closingIndent}${suffix}`;
324
+ }
325
+ function renderAnalyticsConfigProperty(indent) {
326
+ return `${indent}analytics: {
327
+ ${indent} enabled: true,
328
+ ${indent} console: false,
329
+ ${indent} includeInputs: false,
330
+ ${indent}},`;
331
+ }
332
+ function renderCloudConfigProperty(indent, apiKeyEnv) {
333
+ return `${indent}cloud: {
334
+ ${indent} apiKey: { env: ${JSON.stringify(apiKeyEnv)} },
335
+ ${indent} deploy: { enabled: true },
336
+ ${indent} analytics: {
337
+ ${indent} enabled: true,
338
+ ${indent} console: false,
339
+ ${indent} includeInputs: false,
340
+ ${indent} },
341
+ ${indent} publish: { mode: "draft-pr", baseBranch: "main" },
342
+ ${indent}},`;
343
+ }
344
+ function renderCloudInitDocsConfig(apiKeyEnv) {
345
+ return `import { defineDocs } from "@farming-labs/docs";
346
+
347
+ export default defineDocs({
348
+ ${renderAnalyticsConfigProperty(" ")}
349
+ ${renderCloudConfigProperty(" ", apiKeyEnv)}
350
+ });
351
+ `;
352
+ }
353
+ function normalizeEnvName(value, fallback) {
354
+ const normalized = value?.trim();
355
+ if (!normalized) return fallback;
356
+ if (!/^[A-Za-z_][A-Za-z0-9_]*$/.test(normalized)) throw new Error(`Invalid environment variable name: ${normalized}`);
357
+ return normalized;
358
+ }
359
+ function ensureDocsConfigCloudInit(options) {
360
+ const resolvedConfigPath = tryResolveDocsConfigPath(options.rootDir, options.configPath);
361
+ const configPath = resolvedConfigPath ?? path.join(options.rootDir, "docs.config.ts");
362
+ if (!resolvedConfigPath) {
363
+ fs.writeFileSync(configPath, renderCloudInitDocsConfig(options.apiKeyEnv), "utf-8");
364
+ return {
365
+ configPath,
366
+ created: true,
367
+ updated: true
368
+ };
369
+ }
370
+ const original = fs.readFileSync(configPath, "utf-8");
371
+ let content = original;
372
+ let configObject = findConfigObjectRange(content);
373
+ if (!configObject) throw new Error(`Could not find an object export in ${path.relative(options.rootDir, configPath)}. Use defineDocs({ ... }) or export default { ... } before running cloud init.`);
374
+ const topLevelIndent = `${lineIndentAt(content, configObject.braceEnd)} `;
375
+ const cloudProperty = findTopLevelPropertyRange(content, configObject.bodyStart, configObject.bodyEnd, "cloud");
376
+ let cloudObject = findObjectPropertyRange(content, configObject, "cloud");
377
+ if (!cloudProperty) content = insertObjectProperties(content, configObject, [renderCloudConfigProperty(topLevelIndent, options.apiKeyEnv)]);
378
+ else if (!cloudObject) throw new Error(`Could not update cloud config in ${path.relative(options.rootDir, configPath)} because cloud is not an object literal.`);
379
+ configObject = findConfigObjectRange(content);
380
+ if (!configObject) throw new Error(`Could not re-read ${path.relative(options.rootDir, configPath)}.`);
381
+ cloudObject = findObjectPropertyRange(content, configObject, "cloud");
382
+ if (cloudObject) {
383
+ const cloudIndent = `${lineIndentAt(content, cloudObject.braceEnd)} `;
384
+ const missingCloudProperties = [];
385
+ if (!findTopLevelPropertyRange(content, cloudObject.bodyStart, cloudObject.bodyEnd, "apiKey")) missingCloudProperties.push(`${cloudIndent}apiKey: { env: ${JSON.stringify(options.apiKeyEnv)} },`);
386
+ else {
387
+ const apiKeyObject = findObjectPropertyRange(content, cloudObject, "apiKey");
388
+ if (apiKeyObject && !findTopLevelPropertyRange(content, apiKeyObject.bodyStart, apiKeyObject.bodyEnd, "env")) {
389
+ content = insertObjectProperties(content, apiKeyObject, [`${lineIndentAt(content, apiKeyObject.braceEnd)} env: ${JSON.stringify(options.apiKeyEnv)},`]);
390
+ configObject = findConfigObjectRange(content);
391
+ cloudObject = findObjectPropertyRange(content, configObject, "cloud");
392
+ }
393
+ }
394
+ if (!findTopLevelPropertyRange(content, cloudObject.bodyStart, cloudObject.bodyEnd, "deploy")) missingCloudProperties.push(`${cloudIndent}deploy: { enabled: true },`);
395
+ if (!findTopLevelPropertyRange(content, cloudObject.bodyStart, cloudObject.bodyEnd, "analytics")) missingCloudProperties.push(renderAnalyticsConfigProperty(cloudIndent));
396
+ if (!findTopLevelPropertyRange(content, cloudObject.bodyStart, cloudObject.bodyEnd, "publish")) missingCloudProperties.push(`${cloudIndent}publish: { mode: "draft-pr", baseBranch: "main" },`);
397
+ content = insertObjectProperties(content, cloudObject, missingCloudProperties);
398
+ }
399
+ configObject = findConfigObjectRange(content);
400
+ if (!configObject) throw new Error(`Could not re-read ${path.relative(options.rootDir, configPath)}.`);
401
+ if (!findTopLevelPropertyRange(content, configObject.bodyStart, configObject.bodyEnd, "analytics")) content = insertObjectProperties(content, configObject, [renderAnalyticsConfigProperty(`${lineIndentAt(content, configObject.braceEnd)} `)]);
402
+ if (content !== original) fs.writeFileSync(configPath, content, "utf-8");
403
+ return {
404
+ configPath,
405
+ created: false,
406
+ updated: content !== original
407
+ };
408
+ }
115
409
  function readExistingDocsJson(docsJsonPath) {
116
410
  if (!fs.existsSync(docsJsonPath)) return void 0;
117
411
  try {
@@ -564,6 +858,51 @@ async function syncCloudConfig(options = {}) {
564
858
  console.log(`${pc.dim("api key env")} ${result.apiKeyEnv}`);
565
859
  return result;
566
860
  }
861
+ async function initCloudConfig(options = {}) {
862
+ const rootDir = options.rootDir ?? process.cwd();
863
+ const apiKeyEnv = normalizeEnvName(options.apiKeyEnv, DOCS_CLOUD_DEFAULT_API_KEY_ENV);
864
+ const configUpdate = ensureDocsConfigCloudInit({
865
+ rootDir,
866
+ configPath: options.configPath,
867
+ apiKeyEnv
868
+ });
869
+ const materialized = await materializeCloudConfig({
870
+ ...options,
871
+ rootDir,
872
+ configPath: path.relative(rootDir, configUpdate.configPath)
873
+ });
874
+ return {
875
+ configPath: configUpdate.configPath,
876
+ docsJsonPath: materialized.docsJsonPath,
877
+ apiKeyEnv: materialized.apiKeyEnv,
878
+ analyticsProjectIdEnv: DOCS_CLOUD_DEFAULT_ANALYTICS_PROJECT_ID_ENV,
879
+ configCreated: configUpdate.created,
880
+ configUpdated: configUpdate.updated,
881
+ docsJsonCreated: materialized.created,
882
+ docsJsonUpdated: materialized.updated
883
+ };
884
+ }
885
+ async function runCloudInit(options = {}) {
886
+ const result = await initCloudConfig(options);
887
+ if (options.json) {
888
+ console.log(JSON.stringify(result, null, 2));
889
+ return result;
890
+ }
891
+ const relativeConfigPath = path.relative(process.cwd(), result.configPath) || "docs.config.ts";
892
+ const relativeDocsJsonPath = path.relative(process.cwd(), result.docsJsonPath) || DOCS_JSON_FILE;
893
+ const configAction = result.configCreated ? "Created" : result.configUpdated ? "Updated" : "Checked";
894
+ const docsJsonAction = result.docsJsonCreated ? "created" : result.docsJsonUpdated ? "updated" : "checked";
895
+ console.log(`${pc.green("ok")} ${configAction} ${pc.cyan(relativeConfigPath)}`);
896
+ console.log(`${pc.green("ok")} ${docsJsonAction} ${pc.cyan(relativeDocsJsonPath)}`);
897
+ console.log();
898
+ console.log(pc.bold("Add these env vars"));
899
+ console.log(`${pc.cyan(result.apiKeyEnv)}=${pc.dim("paste_your_docs_cloud_api_key")}`);
900
+ console.log(`${pc.cyan(result.analyticsProjectIdEnv)}=${pc.dim("paste_your_docs_cloud_project_id")}`);
901
+ console.log();
902
+ console.log(pc.dim("Use the same env vars in production. The API key value is never written to config."));
903
+ console.log(pc.dim(`Then run ${pc.cyan("pnpm dlx @farming-labs/docs deploy")}.`));
904
+ return result;
905
+ }
567
906
  async function runCloudDeployment(options = {}) {
568
907
  const rootDir = options.rootDir ?? process.cwd();
569
908
  const spinner = createSpinner("Preparing Docs Cloud deployment", options);
@@ -625,6 +964,7 @@ function printCloudHelp() {
625
964
  ${pc.bold("@farming-labs/docs cloud")}
626
965
 
627
966
  ${pc.dim("Usage:")}
967
+ ${pc.cyan("docs cloud init")} Add Docs Cloud config to ${pc.dim("docs.config.ts")} and ${pc.dim("docs.json")}
628
968
  ${pc.cyan("docs deploy")} Sync ${pc.dim("docs.config.ts")} to ${pc.dim("docs.json")} and deploy hosted preview docs
629
969
  ${pc.cyan("docs cloud deploy")} Same as ${pc.cyan("docs deploy")}
630
970
  ${pc.cyan("docs preview")} Compatibility alias for ${pc.cyan("docs deploy")}
@@ -633,6 +973,7 @@ ${pc.dim("Usage:")}
633
973
 
634
974
  ${pc.dim("Options:")}
635
975
  ${pc.cyan("--config <path>")} Use a custom docs config path
976
+ ${pc.cyan("--api-key-env <name>")} Env var that stores the Docs Cloud API key
636
977
  ${pc.cyan("--api-base-url <url>")} Override Docs Cloud API base URL
637
978
  ${pc.cyan("--api-key <key>")} Use an API key directly; prefer ${pc.dim("cloud.apiKey.env")}
638
979
  ${pc.cyan("--json")} Print machine-readable output
@@ -644,10 +985,11 @@ ${pc.dim("Config example:")}
644
985
  cloud: {
645
986
  apiKey: { env: "DOCS_CLOUD_API_KEY" },
646
987
  deploy: { enabled: true },
988
+ analytics: { enabled: true, console: false, includeInputs: false },
647
989
  publish: { mode: "draft-pr", baseBranch: "main" },
648
990
  }
649
991
  `);
650
992
  }
651
993
 
652
994
  //#endregion
653
- export { printCloudHelp, runCloudDeploy, runCloudPreview, syncCloudConfig };
995
+ export { printCloudHelp, runCloudDeploy, runCloudInit, runCloudPreview, syncCloudConfig };
@@ -1,4 +1,4 @@
1
- import { _ as parseGeneratedAgentDocument, h as hashGeneratedAgentContent, m as GENERATED_AGENT_PROVENANCE_VERSION, v as serializeGeneratedAgentDocument } from "./search-CkqDA2Ob.mjs";
1
+ import { _ as parseGeneratedAgentDocument, h as hashGeneratedAgentContent, m as GENERATED_AGENT_PROVENANCE_VERSION, v as serializeGeneratedAgentDocument } from "./search-BZJhx8MO.mjs";
2
2
  import { A as findDocsMarkdownPage, q as renderDocsMarkdownDocument } from "./agent-B7T4gauS.mjs";
3
3
  import "./index.mjs";
4
4
  import { createFilesystemDocsMcpSource } from "./mcp.mjs";
@@ -7,7 +7,7 @@ import { createFilesystemDocsMcpSource, resolveDocsMcpConfig } from "./mcp.mjs";
7
7
  import "./server.mjs";
8
8
  import { a as loadProjectEnv, c as readNavTitle, f as readTopLevelStringProperty, i as loadDocsConfigModule, m as resolveDocsContentDir, o as readBooleanProperty, p as resolveDocsConfigPath, r as extractTopLevelConfigObject, t as extractNestedObjectLiteral } from "./config-CBoixmrv.mjs";
9
9
  import { t as detectFramework } from "./utils-x5EtYWjC.mjs";
10
- import { n as inspectAgentCompactionState, o as scanDocsPageTargets } from "./codeblocks-B0DpBaIC.mjs";
10
+ import { n as inspectAgentCompactionState, o as scanDocsPageTargets } from "./codeblocks-CQ3bD5fQ.mjs";
11
11
  import { existsSync, lstatSync, readFileSync, readdirSync } from "node:fs";
12
12
  import path from "node:path";
13
13
  import { LATEST_PROTOCOL_VERSION } from "@modelcontextprotocol/sdk/types.js";
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { $ as DocsObservabilityEventInput, $t as SimpleDocsSearchConfig, A as DocsCloudApiKeyConfig, At as McpDocsSearchConfig, B as DocsCodeBlocksValidateConfig, Bt as PageFrontmatter, C as DocsAskAIActionData, Ct as FontStyle, D as DocsAskAIFeedbackMessage, Dt as LlmsTxtMaxCharsConfig, E as DocsAskAIFeedbackData, Et as LlmsTxtConfig, F as DocsCodeBlocksConfig, Ft as OpenDocsProviderId, G as DocsFeedbackValue, Gt as ResolvedDocsRelatedLink, H as DocsCodeBlocksValidationPolicy, Ht as PageSidebarFrontmatter, I as DocsCodeBlocksPlannerConfig, It as OpenDocsTarget, J as DocsMcpToolsConfig, Jt as SidebarFolderIndexBehavior, K as DocsI18nConfig, Kt as SidebarComponentProps, L as DocsCodeBlocksPlannerProvider, Lt as OpenGraphImage, M as DocsCloudFeatureConfig, Mt as OpenDocsConfig, N as DocsCloudPreviewConfig, Nt as OpenDocsProvider, O as DocsAskAIFeedbackValue, Ot as LlmsTxtMaxCharsMode, P as DocsCloudPublishConfig, Pt as OpenDocsProviderConfig, Q as DocsObservabilityEvent, Qt as SidebarTree, R as DocsCodeBlocksRunnerConfig, Rt as OrderingItem, S as DocsAnalyticsSource, St as FeedbackConfig, T as DocsAskAIFeedbackConfig, Tt as LastUpdatedConfig, U as DocsConfig, Ut as PageTwitter, V as DocsCodeBlocksValidationMode, Vt as PageOpenGraph, W as DocsFeedbackData, Wt as ReadingTimeConfig, X as DocsNav, Xt as SidebarNode, Y as DocsMetadata, Yt as SidebarFolderNode, Z as DocsObservabilityConfig, Zt as SidebarPageNode, _ as DocsAnalyticsConfig, _t as DocsSearchResult, a as ApiReferenceRenderer, at as DocsReviewScoreConfig, b as DocsAnalyticsEventType, bt as DocsSitemapConfig, c as ChangelogFrontmatter, ct as DocsRobotsRule, d as CustomDocsSearchConfig, dt as DocsSearchAdapterFactory, en as ThemeToggleConfig, et as DocsRelatedItem, f as DocsAgentFeedbackContext, ft as DocsSearchChunkingConfig, g as DocsAgentTraceStatus, gt as DocsSearchQuery, h as DocsAgentTraceEventType, ht as DocsSearchEmbeddingsConfig, i as ApiReferenceConfig, it as DocsReviewRulesConfig, j as DocsCloudConfig, jt as OGConfig, k as DocsAskAIMcpConfig, kt as LlmsTxtSectionConfig, l as CodeBlockCopyData, lt as DocsSearchAdapter, m as DocsAgentTraceEventInput, mt as DocsSearchDocument, n as AgentFeedbackConfig, nn as TypographyConfig, nt as DocsReviewCiMode, o as BreadcrumbConfig, ot as DocsReviewSeverity, p as DocsAgentFeedbackData, pt as DocsSearchConfig, q as DocsMcpConfig, qt as SidebarConfig, r as AlgoliaDocsSearchConfig, rn as UIConfig, rt as DocsReviewConfig, s as ChangelogConfig, st as DocsRobotsConfig, t as AIConfig, tn as TypesenseDocsSearchConfig, tt as DocsReviewCiConfig, u as CopyMarkdownConfig, ut as DocsSearchAdapterContext, v as DocsAnalyticsEvent, vt as DocsSearchResultType, w as DocsAskAIActionType, wt as GithubConfig, x as DocsAnalyticsInput, xt as DocsTheme, y as DocsAnalyticsEventInput, yt as DocsSearchSourcePage, z as DocsCodeBlocksRunnerProvider, zt as PageActionsConfig } from "./types-DC1QpBmS.mjs";
2
- import { $ as createDocsAgentTraceId, A as resolveDocsSitemapRequest, C as buildDocsSitemapManifest, D as renderDocsSitemapXml, E as renderDocsSitemapMarkdown, I as PromptAction, J as DOCS_AGENT_TRACE_EVENT_TYPES, L as PromptProviderChoice, O as resolveDocsSitemapConfig, Q as createDocsAgentTraceContext, R as SerializeOpenDocsProviderOptions, S as DocsSitemapResolvedConfig, T as readDocsSitemapManifestFromContentMap, X as ResolvedDocsAnalyticsConfig, Y as DocsAgentTraceContext, Z as ResolvedDocsObservabilityConfig, _ as DEFAULT_SITEMAP_XML_ROUTE, a as createMcpSearchAdapter, b as DocsSitemapManifestPage, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, et as emitDocsAgentTraceEvent, f as resolveSearchRequestConfig, g as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, h as DEFAULT_SITEMAP_MD_ROUTE, i as createCustomSearchAdapter, it as resolveDocsObservabilityConfig, j as toDocsSitemapMarkdownUrl, k as resolveDocsSitemapPageLastmod, l as inferDocsAskAIPackageHints, m as DEFAULT_SITEMAP_MD_DOCS_ROUTE, n as buildDocsSearchDocuments, nt as emitDocsObservabilityEvent, o as createSimpleSearchAdapter, p as DEFAULT_SITEMAP_MANIFEST_PATH, r as createAlgoliaSearchAdapter, rt as resolveDocsAnalyticsConfig, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, tt as emitDocsAnalyticsEvent, u as performDocsSearch, v as DocsSitemapFormat, w as createDocsSitemapResponse, x as DocsSitemapPageInput, y as DocsSitemapManifest, z as SerializedOpenDocsProvider } from "./search-DDa-Lph1.mjs";
2
+ import { $ as createDocsAgentTraceId, A as resolveDocsSitemapRequest, C as buildDocsSitemapManifest, D as renderDocsSitemapXml, E as renderDocsSitemapMarkdown, I as PromptAction, J as DOCS_AGENT_TRACE_EVENT_TYPES, L as PromptProviderChoice, O as resolveDocsSitemapConfig, Q as createDocsAgentTraceContext, R as SerializeOpenDocsProviderOptions, S as DocsSitemapResolvedConfig, T as readDocsSitemapManifestFromContentMap, X as ResolvedDocsAnalyticsConfig, Y as DocsAgentTraceContext, Z as ResolvedDocsObservabilityConfig, _ as DEFAULT_SITEMAP_XML_ROUTE, a as createMcpSearchAdapter, at as resolveDocsObservabilityConfig, b as DocsSitemapManifestPage, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, et as emitDocsAgentTraceEvent, f as resolveSearchRequestConfig, g as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, h as DEFAULT_SITEMAP_MD_ROUTE, i as createCustomSearchAdapter, it as resolveDocsAnalyticsConfig, j as toDocsSitemapMarkdownUrl, k as resolveDocsSitemapPageLastmod, l as inferDocsAskAIPackageHints, m as DEFAULT_SITEMAP_MD_DOCS_ROUTE, n as buildDocsSearchDocuments, nt as emitDocsObservabilityEvent, o as createSimpleSearchAdapter, p as DEFAULT_SITEMAP_MANIFEST_PATH, r as createAlgoliaSearchAdapter, rt as getDocsRequestAnalyticsProperties, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, tt as emitDocsAnalyticsEvent, u as performDocsSearch, v as DocsSitemapFormat, w as createDocsSitemapResponse, x as DocsSitemapPageInput, y as DocsSitemapManifest, z as SerializedOpenDocsProvider } from "./search-BNCMJUGr.mjs";
3
3
  import { DocsMcpPage, DocsMcpResolvedConfig } from "./mcp.mjs";
4
4
 
5
5
  //#region src/define-docs.d.ts
@@ -703,4 +703,4 @@ declare function renderDocsRobotsGeneratedBlock(options?: DocsRobotsRenderOption
703
703
  declare function upsertDocsRobotsGeneratedBlock(existing: string, block: string): string;
704
704
  declare function analyzeDocsRobotsTxt(content: string, options?: DocsRobotsRenderOptions): DocsRobotsAnalysis;
705
705
  //#endregion
706
- export { type AIConfig, type AgentFeedbackConfig, type AlgoliaDocsSearchConfig, type ApiReferenceConfig, type ApiReferenceRenderer, type BreadcrumbConfig, type ChangelogConfig, type ChangelogEntrySummary, type ChangelogFrontmatter, type CodeBlockCopyData, type CopyMarkdownConfig, type CustomDocsSearchConfig, 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_DOCS_ROUTE, 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_AI_AGENT_USER_AGENT_HEADER_PATTERN, DOCS_BOT_LIKE_USER_AGENT_HEADER_PATTERN, DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, DOCS_ROBOTS_GENERATED_BLOCK_END, DOCS_ROBOTS_GENERATED_BLOCK_START, DOCS_TRADITIONAL_BOT_USER_AGENT_HEADER_PATTERN, type DocsAgentDiscoverySpecOptions, type DocsAgentFeedbackContext, type DocsAgentFeedbackData, type DocsAgentFeedbackDiscoveryConfig, type DocsAgentFeedbackRequest, type DocsAgentFeedbackResolvedConfig, type DocsAgentTraceContext, type DocsAgentTraceEventInput, type DocsAgentTraceEventType, type DocsAgentTraceStatus, type DocsAgentsDocumentOptions, type DocsAnalyticsConfig, type DocsAnalyticsEvent, type DocsAnalyticsEventInput, type DocsAnalyticsEventType, type DocsAnalyticsInput, type DocsAnalyticsSource, type DocsAskAIActionData, type DocsAskAIActionType, type DocsAskAIFeedbackConfig, type DocsAskAIFeedbackData, type DocsAskAIFeedbackMessage, type DocsAskAIFeedbackValue, type DocsAskAIMcpConfig, type DocsCloudApiKeyConfig, type DocsCloudConfig, type DocsCloudFeatureConfig, type DocsCloudPreviewConfig, type DocsCloudPublishConfig, type DocsCodeBlocksConfig, type DocsCodeBlocksPlannerConfig, type DocsCodeBlocksPlannerProvider, type DocsCodeBlocksRunnerConfig, type DocsCodeBlocksRunnerProvider, type DocsCodeBlocksValidateConfig, type DocsCodeBlocksValidationMode, type DocsCodeBlocksValidationPolicy, type DocsConfig, type DocsFeedbackData, type DocsFeedbackValue, type DocsI18nConfig, type DocsLlmsDiscoveryConfig, type DocsLlmsTxtGeneratedContent, type DocsLlmsTxtGeneratedSection, type DocsLlmsTxtMaxCharsIssue, type DocsLlmsTxtPageInput, type DocsLlmsTxtRequest, type DocsLlmsTxtResolvedMaxChars, type DocsLlmsTxtResolvedSection, type DocsLlmsTxtSelectedContent, type DocsMarkdownAgentDetection, type DocsMarkdownPage, type DocsMarkdownRecoveryMatch, type DocsMarkdownRecoveryResult, type DocsMcpConfig, type DocsMcpEndpointCandidate, type DocsMcpEndpointCandidateOptions, type DocsMcpToolsConfig, type DocsMetadata, type DocsNav, type DocsObservabilityConfig, type DocsObservabilityEvent, type DocsObservabilityEventInput, type DocsOpenApiDiscoveryConfig, type DocsOpenApiResolvedDiscoveryConfig, type DocsPageStructuredDataInput, type DocsPathMatch, type DocsRelatedItem, type DocsReviewCiConfig, type DocsReviewCiMode, type DocsReviewConfig, type DocsReviewRulesConfig, type DocsReviewScoreConfig, type DocsReviewSeverity, type DocsRobotsConfig, type DocsRobotsRenderOptions, type DocsRobotsResolvedConfig, type DocsRobotsRule, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchChunkingConfig, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchEmbeddingsConfig, type DocsSearchQuery, type DocsSearchResult, type DocsSearchResultType, type DocsSearchSourcePage, type DocsSitemapConfig, type DocsSitemapFormat, type DocsSitemapManifest, type DocsSitemapManifestPage, type DocsSitemapPageInput, type DocsSitemapResolvedConfig, type DocsSkillDocumentOptions, type DocsStructuredDataBreadcrumb, type DocsTheme, type FeedbackConfig, type FontStyle, GENERATED_AGENT_PROVENANCE_MARKER, GENERATED_AGENT_PROVENANCE_VERSION, type GeneratedAgentProvenance, type GeneratedAgentSourceKind, type GithubConfig, type LastUpdatedConfig, type LlmsTxtConfig, type LlmsTxtMaxCharsConfig, type LlmsTxtMaxCharsMode, type LlmsTxtSectionConfig, type McpDocsSearchConfig, type OGConfig, type OpenDocsConfig, type OpenDocsProvider, type OpenDocsProviderConfig, type OpenDocsProviderId, type OpenDocsTarget, type OpenGraphImage, type OrderingItem, type PageActionsConfig, type PageFrontmatter, type PageOpenGraph, type PageSidebarFrontmatter, type PageTwitter, type PromptAction, type PromptProviderChoice, type ReadingTimeConfig, type ResolvedChangelogConfig, type ResolvedDocsAnalyticsConfig, type ResolvedDocsI18n, type ResolvedDocsObservabilityConfig, type ResolvedDocsRelatedLink, type SerializeOpenDocsProviderOptions, type SerializedOpenDocsProvider, type SidebarComponentProps, type SidebarConfig, type SidebarFolderIndexBehavior, type SidebarFolderNode, type SidebarNode, type SidebarPageNode, type SidebarTree, type SimpleDocsSearchConfig, type ThemeToggleConfig, type TypesenseDocsSearchConfig, type TypographyConfig, type UIConfig, analyzeDocsRobotsTxt, applySidebarFolderIndexBehavior, buildDocsAgentDiscoverySpec, buildDocsAgentFeedbackSchema, buildDocsAskAIContext, buildDocsMcpEndpointCandidates, buildDocsPageStructuredData, buildDocsSearchDocuments, buildDocsSitemapManifest, buildPageOpenGraph, buildPageTwitter, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsRobotsResponse, createDocsSitemapResponse, createMcpSearchAdapter, createSimpleSearchAdapter, createTheme, createTypesenseSearchAdapter, deepMerge, defineDocs, detectDocsMarkdownAgentRequest, 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, resolveDocsMarkdownRecovery, 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 };
706
+ export { type AIConfig, type AgentFeedbackConfig, type AlgoliaDocsSearchConfig, type ApiReferenceConfig, type ApiReferenceRenderer, type BreadcrumbConfig, type ChangelogConfig, type ChangelogEntrySummary, type ChangelogFrontmatter, type CodeBlockCopyData, type CopyMarkdownConfig, type CustomDocsSearchConfig, 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_DOCS_ROUTE, 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_AI_AGENT_USER_AGENT_HEADER_PATTERN, DOCS_BOT_LIKE_USER_AGENT_HEADER_PATTERN, DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, DOCS_ROBOTS_GENERATED_BLOCK_END, DOCS_ROBOTS_GENERATED_BLOCK_START, DOCS_TRADITIONAL_BOT_USER_AGENT_HEADER_PATTERN, type DocsAgentDiscoverySpecOptions, type DocsAgentFeedbackContext, type DocsAgentFeedbackData, type DocsAgentFeedbackDiscoveryConfig, type DocsAgentFeedbackRequest, type DocsAgentFeedbackResolvedConfig, type DocsAgentTraceContext, type DocsAgentTraceEventInput, type DocsAgentTraceEventType, type DocsAgentTraceStatus, type DocsAgentsDocumentOptions, type DocsAnalyticsConfig, type DocsAnalyticsEvent, type DocsAnalyticsEventInput, type DocsAnalyticsEventType, type DocsAnalyticsInput, type DocsAnalyticsSource, type DocsAskAIActionData, type DocsAskAIActionType, type DocsAskAIFeedbackConfig, type DocsAskAIFeedbackData, type DocsAskAIFeedbackMessage, type DocsAskAIFeedbackValue, type DocsAskAIMcpConfig, type DocsCloudApiKeyConfig, type DocsCloudConfig, type DocsCloudFeatureConfig, type DocsCloudPreviewConfig, type DocsCloudPublishConfig, type DocsCodeBlocksConfig, type DocsCodeBlocksPlannerConfig, type DocsCodeBlocksPlannerProvider, type DocsCodeBlocksRunnerConfig, type DocsCodeBlocksRunnerProvider, type DocsCodeBlocksValidateConfig, type DocsCodeBlocksValidationMode, type DocsCodeBlocksValidationPolicy, type DocsConfig, type DocsFeedbackData, type DocsFeedbackValue, type DocsI18nConfig, type DocsLlmsDiscoveryConfig, type DocsLlmsTxtGeneratedContent, type DocsLlmsTxtGeneratedSection, type DocsLlmsTxtMaxCharsIssue, type DocsLlmsTxtPageInput, type DocsLlmsTxtRequest, type DocsLlmsTxtResolvedMaxChars, type DocsLlmsTxtResolvedSection, type DocsLlmsTxtSelectedContent, type DocsMarkdownAgentDetection, type DocsMarkdownPage, type DocsMarkdownRecoveryMatch, type DocsMarkdownRecoveryResult, type DocsMcpConfig, type DocsMcpEndpointCandidate, type DocsMcpEndpointCandidateOptions, type DocsMcpToolsConfig, type DocsMetadata, type DocsNav, type DocsObservabilityConfig, type DocsObservabilityEvent, type DocsObservabilityEventInput, type DocsOpenApiDiscoveryConfig, type DocsOpenApiResolvedDiscoveryConfig, type DocsPageStructuredDataInput, type DocsPathMatch, type DocsRelatedItem, type DocsReviewCiConfig, type DocsReviewCiMode, type DocsReviewConfig, type DocsReviewRulesConfig, type DocsReviewScoreConfig, type DocsReviewSeverity, type DocsRobotsConfig, type DocsRobotsRenderOptions, type DocsRobotsResolvedConfig, type DocsRobotsRule, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchChunkingConfig, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchEmbeddingsConfig, type DocsSearchQuery, type DocsSearchResult, type DocsSearchResultType, type DocsSearchSourcePage, type DocsSitemapConfig, type DocsSitemapFormat, type DocsSitemapManifest, type DocsSitemapManifestPage, type DocsSitemapPageInput, type DocsSitemapResolvedConfig, type DocsSkillDocumentOptions, type DocsStructuredDataBreadcrumb, type DocsTheme, type FeedbackConfig, type FontStyle, GENERATED_AGENT_PROVENANCE_MARKER, GENERATED_AGENT_PROVENANCE_VERSION, type GeneratedAgentProvenance, type GeneratedAgentSourceKind, type GithubConfig, type LastUpdatedConfig, type LlmsTxtConfig, type LlmsTxtMaxCharsConfig, type LlmsTxtMaxCharsMode, type LlmsTxtSectionConfig, type McpDocsSearchConfig, type OGConfig, type OpenDocsConfig, type OpenDocsProvider, type OpenDocsProviderConfig, type OpenDocsProviderId, type OpenDocsTarget, type OpenGraphImage, type OrderingItem, type PageActionsConfig, type PageFrontmatter, type PageOpenGraph, type PageSidebarFrontmatter, type PageTwitter, type PromptAction, type PromptProviderChoice, type ReadingTimeConfig, type ResolvedChangelogConfig, type ResolvedDocsAnalyticsConfig, type ResolvedDocsI18n, type ResolvedDocsObservabilityConfig, type ResolvedDocsRelatedLink, type SerializeOpenDocsProviderOptions, type SerializedOpenDocsProvider, type SidebarComponentProps, type SidebarConfig, type SidebarFolderIndexBehavior, type SidebarFolderNode, type SidebarNode, type SidebarPageNode, type SidebarTree, type SimpleDocsSearchConfig, type ThemeToggleConfig, type TypesenseDocsSearchConfig, type TypographyConfig, type UIConfig, analyzeDocsRobotsTxt, applySidebarFolderIndexBehavior, buildDocsAgentDiscoverySpec, buildDocsAgentFeedbackSchema, buildDocsAskAIContext, buildDocsMcpEndpointCandidates, buildDocsPageStructuredData, buildDocsSearchDocuments, buildDocsSitemapManifest, buildPageOpenGraph, buildPageTwitter, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsRobotsResponse, createDocsSitemapResponse, createMcpSearchAdapter, createSimpleSearchAdapter, createTheme, createTypesenseSearchAdapter, deepMerge, defineDocs, detectDocsMarkdownAgentRequest, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, estimateReadingTimeMinutes, extendTheme, findDocsMarkdownPage, formatDocsAskAIPackageHints, getDocsLlmsTxtMaxCharsIssue, getDocsMarkdownCanonicalLinkHeader, getDocsMarkdownVaryHeader, getDocsRequestAnalyticsProperties, 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, resolveDocsMarkdownRecovery, 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 };
package/dist/index.mjs CHANGED
@@ -1,8 +1,8 @@
1
1
  import { _ as extendTheme, a as resolveReadingTimeOptions, b as defineDocs, c as buildPageTwitter, d as resolveOGImage, f as resolveTitle, g as createTheme, h as resolveDocsPath, i as resolveReadingTimeFromSource, l as renderDocsPageStructuredDataJson, m as resolveDocsLocale, n as resolvePageReadingTime, o as buildDocsPageStructuredData, p as resolveDocsI18n, r as resolveReadingTimeFromContent, s as buildPageOpenGraph, t as estimateReadingTimeMinutes, u as resolveDocsMetadataBaseUrl, v as deepMerge, y as resolveChangelogConfig } from "./reading-time-DPAazAGu.mjs";
2
- import { A as resolveDocsAnalyticsConfig, C as resolveSidebarFolderIndexBehaviorForPath, D as emitDocsAgentTraceEvent, E as createDocsAgentTraceId, 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-CkqDA2Ob.mjs";
2
+ import { A as getDocsRequestAnalyticsProperties, C as resolveSidebarFolderIndexBehaviorForPath, D as emitDocsAgentTraceEvent, E as createDocsAgentTraceId, M as resolveDocsObservabilityConfig, 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 resolveDocsAnalyticsConfig, 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-BZJhx8MO.mjs";
3
3
  import { n as renderDocsRelatedMarkdownLines, t as normalizeDocsRelated } from "./related-BNj_NdHq.mjs";
4
4
  import { a as DEFAULT_SITEMAP_XML_ROUTE, c as readDocsSitemapManifestFromContentMap, d as resolveDocsSitemapConfig, f as resolveDocsSitemapPageLastmod, i as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, l as renderDocsSitemapMarkdown, m as toDocsSitemapMarkdownUrl, n as DEFAULT_SITEMAP_MD_DOCS_ROUTE, o as buildDocsSitemapManifest, p as resolveDocsSitemapRequest, r as DEFAULT_SITEMAP_MD_ROUTE, s as createDocsSitemapResponse, t as DEFAULT_SITEMAP_MANIFEST_PATH, u as renderDocsSitemapXml } from "./sitemap-CMNj0Pt3.mjs";
5
5
  import { $ as resolveDocsAgentsFormat, A as findDocsMarkdownPage, B as isDocsSkillRequest, C as DOCS_BOT_LIKE_USER_AGENT_HEADER_PATTERN, D as buildDocsAgentFeedbackSchema, E as buildDocsAgentDiscoverySpec, F as isDocsAgentDiscoveryRequest, G as renderDocsAgentsDocument, H as normalizeDocsPathSegment, I as isDocsAgentsRequest, J as renderDocsMarkdownNotFound, K as renderDocsLlmsTxt, L as isDocsLlmsTxtPublicRequest, M as getDocsMarkdownCanonicalLinkHeader, N as getDocsMarkdownVaryHeader, O as buildDocsMcpEndpointCandidates, P as hasDocsMarkdownSignatureAgent, Q as resolveDocsAgentMdxContent, R as isDocsMcpRequest, S as DOCS_AI_AGENT_USER_AGENT_HEADER_PATTERN, T as DOCS_TRADITIONAL_BOT_USER_AGENT_HEADER_PATTERN, U as normalizeDocsUrlPath, V as matchesDocsLlmsTxtSection, W as parseDocsAgentFeedbackData, X as resolveDocsAgentFeedbackConfig, Y as renderDocsSkillDocument, Z as resolveDocsAgentFeedbackRequest, _ as DEFAULT_MCP_ROUTE, a as DEFAULT_AGENT_MD_ROUTE, at as resolveDocsMarkdownRequest, b as DEFAULT_SKILL_MD_ROUTE, c as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, ct as selectDocsLlmsTxtContent, d as DEFAULT_LLMS_FULL_TXT_ROUTE, et as resolveDocsLlmsTxtFormat, 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 resolveDocsMarkdownRecovery, j as getDocsLlmsTxtMaxCharsIssue, k as detectDocsMarkdownAgentRequest, l as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, lt as toDocsMarkdownUrl, m as DEFAULT_LLMS_TXT_ROUTE, n as DEFAULT_AGENTS_MD_WELL_KNOWN_ROUTE, nt as resolveDocsLlmsTxtSections, o as DEFAULT_AGENT_MD_WELL_KNOWN_ROUTE, ot as resolveDocsOpenApiDiscoveryConfig, p as DEFAULT_LLMS_TXT_MAX_CHARS, q as renderDocsMarkdownDocument, r as DEFAULT_AGENT_FEEDBACK_PAYLOAD_SCHEMA, rt as resolveDocsMarkdownCanonicalUrl, s as DEFAULT_AGENT_SPEC_ROUTE, st as resolveDocsSkillFormat, t as DEFAULT_AGENTS_MD_ROUTE, tt as resolveDocsLlmsTxtRequest, u as DEFAULT_DOCS_API_ROUTE, ut as validateDocsAgentFeedbackPayload, v as DEFAULT_MCP_WELL_KNOWN_ROUTE, w as DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, x as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, y as DEFAULT_OPENAPI_SCHEMA_ROUTE, z as isDocsPublicGetRequest } from "./agent-B7T4gauS.mjs";
6
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-CDdD2o-Q.mjs";
7
7
 
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_DOCS_ROUTE, 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_AI_AGENT_USER_AGENT_HEADER_PATTERN, DOCS_BOT_LIKE_USER_AGENT_HEADER_PATTERN, DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, DOCS_ROBOTS_GENERATED_BLOCK_END, DOCS_ROBOTS_GENERATED_BLOCK_START, DOCS_TRADITIONAL_BOT_USER_AGENT_HEADER_PATTERN, GENERATED_AGENT_PROVENANCE_MARKER, GENERATED_AGENT_PROVENANCE_VERSION, analyzeDocsRobotsTxt, applySidebarFolderIndexBehavior, buildDocsAgentDiscoverySpec, buildDocsAgentFeedbackSchema, buildDocsAskAIContext, buildDocsMcpEndpointCandidates, buildDocsPageStructuredData, buildDocsSearchDocuments, buildDocsSitemapManifest, buildPageOpenGraph, buildPageTwitter, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsRobotsResponse, createDocsSitemapResponse, createMcpSearchAdapter, createSimpleSearchAdapter, createTheme, createTypesenseSearchAdapter, deepMerge, defineDocs, detectDocsMarkdownAgentRequest, 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, resolveDocsMarkdownRecovery, 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 };
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_DOCS_ROUTE, 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_AI_AGENT_USER_AGENT_HEADER_PATTERN, DOCS_BOT_LIKE_USER_AGENT_HEADER_PATTERN, DOCS_MARKDOWN_SIGNATURE_AGENT_HEADER, DOCS_ROBOTS_GENERATED_BLOCK_END, DOCS_ROBOTS_GENERATED_BLOCK_START, DOCS_TRADITIONAL_BOT_USER_AGENT_HEADER_PATTERN, GENERATED_AGENT_PROVENANCE_MARKER, GENERATED_AGENT_PROVENANCE_VERSION, analyzeDocsRobotsTxt, applySidebarFolderIndexBehavior, buildDocsAgentDiscoverySpec, buildDocsAgentFeedbackSchema, buildDocsAskAIContext, buildDocsMcpEndpointCandidates, buildDocsPageStructuredData, buildDocsSearchDocuments, buildDocsSitemapManifest, buildPageOpenGraph, buildPageTwitter, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsRobotsResponse, createDocsSitemapResponse, createMcpSearchAdapter, createSimpleSearchAdapter, createTheme, createTypesenseSearchAdapter, deepMerge, defineDocs, detectDocsMarkdownAgentRequest, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, estimateReadingTimeMinutes, extendTheme, findDocsMarkdownPage, formatDocsAskAIPackageHints, getDocsLlmsTxtMaxCharsIssue, getDocsMarkdownCanonicalLinkHeader, getDocsMarkdownVaryHeader, getDocsRequestAnalyticsProperties, 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, resolveDocsMarkdownRecovery, 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 };
package/dist/mcp.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { D as emitDocsAgentTraceEvent, E as createDocsAgentTraceId, O as emitDocsAnalyticsEvent, T as createDocsAgentTraceContext, u as performDocsSearch, x as resolvePageSidebarFolderIndexBehavior, y as stripGeneratedAgentProvenance } from "./search-CkqDA2Ob.mjs";
1
+ import { D as emitDocsAgentTraceEvent, E as createDocsAgentTraceId, O as emitDocsAnalyticsEvent, T as createDocsAgentTraceContext, u as performDocsSearch, x as resolvePageSidebarFolderIndexBehavior, y as stripGeneratedAgentProvenance } from "./search-BZJhx8MO.mjs";
2
2
  import { n as renderDocsRelatedMarkdownLines, t as normalizeDocsRelated } from "./related-BNj_NdHq.mjs";
3
3
  import matter from "gray-matter";
4
4
  import fs from "node:fs";
@@ -22,6 +22,7 @@ interface ResolvedDocsObservabilityConfig {
22
22
  }
23
23
  declare function createDocsAgentTraceId(prefix?: string): string;
24
24
  declare function createDocsAgentTraceContext(name?: string): DocsAgentTraceContext;
25
+ declare function getDocsRequestAnalyticsProperties(request: Request): Record<string, unknown>;
25
26
  declare function resolveDocsAnalyticsConfig(analytics?: boolean | DocsAnalyticsConfig): ResolvedDocsAnalyticsConfig;
26
27
  declare function resolveDocsObservabilityConfig(observability?: boolean | DocsObservabilityConfig): ResolvedDocsObservabilityConfig;
27
28
  declare function emitDocsAnalyticsEvent(analytics: boolean | DocsAnalyticsConfig | undefined, event: DocsAnalyticsEventInput): Promise<void>;
@@ -219,4 +220,4 @@ declare function buildDocsAskAIContext(options: {
219
220
  }): Promise<DocsAskAIContext>;
220
221
  declare function createCustomSearchAdapter(adapter: DocsSearchAdapter | DocsSearchAdapterFactory): CustomDocsSearchConfig;
221
222
  //#endregion
222
- export { createDocsAgentTraceId as $, resolveDocsSitemapRequest as A, normalizePromptProviderName as B, buildDocsSitemapManifest as C, renderDocsSitemapXml as D, renderDocsSitemapMarkdown as E, DEFAULT_PROMPT_PROVIDER_TEMPLATES as F, serializeDocsIconRegistry as G, resolvePromptProviderChoices as H, PromptAction as I, DOCS_AGENT_TRACE_EVENT_TYPES as J, serializeOpenDocsProvider as K, PromptProviderChoice as L, DEFAULT_OPEN_DOCS_PROMPT as M, DEFAULT_OPEN_DOCS_PROVIDER_IDS as N, resolveDocsSitemapConfig as O, DEFAULT_OPEN_DOCS_TARGET as P, createDocsAgentTraceContext as Q, SerializeOpenDocsProviderOptions as R, DocsSitemapResolvedConfig as S, readDocsSitemapManifestFromContentMap as T, sanitizePromptText as U, parsePromptStringArray as V, serializeDocsIcon as W, ResolvedDocsAnalyticsConfig as X, DocsAgentTraceContext as Y, ResolvedDocsObservabilityConfig as Z, DEFAULT_SITEMAP_XML_ROUTE as _, createMcpSearchAdapter as a, DocsSitemapManifestPage as b, formatDocsAskAIPackageHints as c, resolveAskAISearchRequestConfig as d, emitDocsAgentTraceEvent as et, resolveSearchRequestConfig as f, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE as g, DEFAULT_SITEMAP_MD_ROUTE as h, createCustomSearchAdapter as i, resolveDocsObservabilityConfig as it, toDocsSitemapMarkdownUrl as j, resolveDocsSitemapPageLastmod as k, inferDocsAskAIPackageHints as l, DEFAULT_SITEMAP_MD_DOCS_ROUTE as m, buildDocsSearchDocuments as n, emitDocsObservabilityEvent as nt, createSimpleSearchAdapter as o, DEFAULT_SITEMAP_MANIFEST_PATH as p, serializeOpenDocsProviders as q, createAlgoliaSearchAdapter as r, resolveDocsAnalyticsConfig as rt, createTypesenseSearchAdapter as s, buildDocsAskAIContext as t, emitDocsAnalyticsEvent as tt, performDocsSearch as u, DocsSitemapFormat as v, createDocsSitemapResponse as w, DocsSitemapPageInput as x, DocsSitemapManifest as y, SerializedOpenDocsProvider as z };
223
+ export { createDocsAgentTraceId as $, resolveDocsSitemapRequest as A, normalizePromptProviderName as B, buildDocsSitemapManifest as C, renderDocsSitemapXml as D, renderDocsSitemapMarkdown as E, DEFAULT_PROMPT_PROVIDER_TEMPLATES as F, serializeDocsIconRegistry as G, resolvePromptProviderChoices as H, PromptAction as I, DOCS_AGENT_TRACE_EVENT_TYPES as J, serializeOpenDocsProvider as K, PromptProviderChoice as L, DEFAULT_OPEN_DOCS_PROMPT as M, DEFAULT_OPEN_DOCS_PROVIDER_IDS as N, resolveDocsSitemapConfig as O, DEFAULT_OPEN_DOCS_TARGET as P, createDocsAgentTraceContext as Q, SerializeOpenDocsProviderOptions as R, DocsSitemapResolvedConfig as S, readDocsSitemapManifestFromContentMap as T, sanitizePromptText as U, parsePromptStringArray as V, serializeDocsIcon as W, ResolvedDocsAnalyticsConfig as X, DocsAgentTraceContext as Y, ResolvedDocsObservabilityConfig as Z, DEFAULT_SITEMAP_XML_ROUTE as _, createMcpSearchAdapter as a, resolveDocsObservabilityConfig as at, DocsSitemapManifestPage as b, formatDocsAskAIPackageHints as c, resolveAskAISearchRequestConfig as d, emitDocsAgentTraceEvent as et, resolveSearchRequestConfig as f, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE as g, DEFAULT_SITEMAP_MD_ROUTE as h, createCustomSearchAdapter as i, resolveDocsAnalyticsConfig as it, toDocsSitemapMarkdownUrl as j, resolveDocsSitemapPageLastmod as k, inferDocsAskAIPackageHints as l, DEFAULT_SITEMAP_MD_DOCS_ROUTE as m, buildDocsSearchDocuments as n, emitDocsObservabilityEvent as nt, createSimpleSearchAdapter as o, DEFAULT_SITEMAP_MANIFEST_PATH as p, serializeOpenDocsProviders as q, createAlgoliaSearchAdapter as r, getDocsRequestAnalyticsProperties as rt, createTypesenseSearchAdapter as s, buildDocsAskAIContext as t, emitDocsAnalyticsEvent as tt, performDocsSearch as u, DocsSitemapFormat as v, createDocsSitemapResponse as w, DocsSitemapPageInput as x, DocsSitemapManifest as y, SerializedOpenDocsProvider as z };
@@ -36,12 +36,78 @@ function resolveDocsCloudAnalyticsOptions(analytics) {
36
36
  apiKey
37
37
  };
38
38
  }
39
+ function asRecord(value) {
40
+ return value && typeof value === "object" && !Array.isArray(value) ? value : {};
41
+ }
42
+ function asString(value) {
43
+ return typeof value === "string" && value.trim().length > 0 ? value.trim() : void 0;
44
+ }
45
+ function normalizeAnalyticsLabel(value) {
46
+ return value?.trim().toLowerCase().replace(/[-\s]+/g, "_") ?? "";
47
+ }
48
+ function isProtocolAgentEvent(event) {
49
+ const type = normalizeAnalyticsLabel(event.type);
50
+ return normalizeAnalyticsLabel(event.source) === "mcp" || type.startsWith("mcp_");
51
+ }
52
+ function inferAgentProvider(event) {
53
+ const type = normalizeAnalyticsLabel(event.type);
54
+ if (normalizeAnalyticsLabel(event.source) === "mcp" || type.startsWith("mcp_")) return "MCP client";
55
+ if (type.startsWith("agent_") || type === "agents_request") return "Docs agent";
56
+ if ([
57
+ "llms_request",
58
+ "markdown_request",
59
+ "skill_request"
60
+ ].includes(type)) return "Docs reader";
61
+ }
62
+ function detectAgentProviderFromUserAgent(userAgent) {
63
+ const value = userAgent?.toLowerCase() ?? "";
64
+ if (!value) return;
65
+ for (const [pattern, provider] of [
66
+ [/cursor/i, "Cursor"],
67
+ [/codex/i, "Codex"],
68
+ [/chatgpt-user|chatgpt/i, "ChatGPT"],
69
+ [/gptbot/i, "GPTBot"],
70
+ [/oai-searchbot|openai-search/i, "ChatGPT Search"],
71
+ [/openai/i, "ChatGPT"],
72
+ [/github-copilot|githubcopilot|copilot/i, "GitHub Copilot"],
73
+ [/claudebot|claude-user|anthropic/i, "Claude"],
74
+ [/perplexitybot|perplexity-user/i, "Perplexity"],
75
+ [/google-extended|googlebot|apis-google/i, "Google"],
76
+ [/bingbot|msnbot/i, "Bing"],
77
+ [/duckduckbot/i, "DuckDuckGo"],
78
+ [/applebot/i, "Apple"],
79
+ [/bytespider|bytedance/i, "ByteDance"],
80
+ [/ccbot|common crawl/i, "Common Crawl"],
81
+ [/ahrefsbot/i, "Ahrefs"],
82
+ [/semrushbot/i, "Semrush"]
83
+ ]) if (pattern.test(value)) return provider;
84
+ if (/bot|crawler|spider|slurp|facebookexternalhit|ia_archiver/.test(value)) return "Other bot";
85
+ }
86
+ function withDocsCloudAnalyticsHints(event) {
87
+ const properties = asRecord(event.properties);
88
+ const detectedAgent = detectAgentProviderFromUserAgent(asString(properties.userAgent) ?? asString(properties.user_agent));
89
+ const protocolAgent = isProtocolAgentEvent(event);
90
+ const incomingTrafficType = asString(properties.trafficType)?.toLowerCase();
91
+ const explicitAgent = incomingTrafficType === "agent" || incomingTrafficType === "bot";
92
+ const agentProvider = asString(properties.agentName) ?? asString(properties.agent) ?? asString(properties.botProvider) ?? asString(properties.provider) ?? asString(properties.crawler) ?? asString(asRecord(properties.bot).provider) ?? detectedAgent ?? (protocolAgent || explicitAgent ? inferAgentProvider(event) : void 0);
93
+ if (!explicitAgent && !protocolAgent && !detectedAgent && !agentProvider) return event;
94
+ return {
95
+ ...event,
96
+ properties: {
97
+ ...properties,
98
+ trafficType: "agent",
99
+ ...agentProvider && !asString(properties.agentName) ? { agentName: agentProvider } : {},
100
+ ...agentProvider && !asString(properties.botProvider) ? { botProvider: agentProvider } : {}
101
+ }
102
+ };
103
+ }
39
104
  async function sendDocsCloudAnalyticsEvent(options, event) {
40
105
  if (typeof fetch !== "function") return;
41
106
  const endpoint = options.endpoint?.trim() || DEFAULT_DOCS_CLOUD_ANALYTICS_ENDPOINT;
42
107
  const projectId = options.projectId?.trim();
43
108
  if (!endpoint || !projectId) return;
44
109
  try {
110
+ const normalizedEvent = withDocsCloudAnalyticsHints(event);
45
111
  await fetch(endpoint, {
46
112
  method: "POST",
47
113
  headers: {
@@ -50,7 +116,7 @@ async function sendDocsCloudAnalyticsEvent(options, event) {
50
116
  },
51
117
  body: JSON.stringify({
52
118
  projectId,
53
- event
119
+ event: normalizedEvent
54
120
  }),
55
121
  keepalive: true
56
122
  });
@@ -114,6 +180,10 @@ function createDocsAgentTraceContext(name = "agent.run") {
114
180
  startedMs: Date.now()
115
181
  };
116
182
  }
183
+ function getDocsRequestAnalyticsProperties(request) {
184
+ const userAgent = request.headers.get("user-agent")?.trim();
185
+ return userAgent ? { userAgent } : {};
186
+ }
117
187
  function resolveDocsAnalyticsConfig(analytics) {
118
188
  if (analytics === false) return {
119
189
  enabled: false,
@@ -1358,4 +1428,4 @@ function createCustomSearchAdapter(adapter) {
1358
1428
  }
1359
1429
 
1360
1430
  //#endregion
1361
- export { resolveDocsAnalyticsConfig as A, resolveSidebarFolderIndexBehaviorForPath as C, emitDocsAgentTraceEvent as D, createDocsAgentTraceId as E, emitDocsAnalyticsEvent as O, resolveSidebarFolderIndexBehavior as S, createDocsAgentTraceContext as T, parseGeneratedAgentDocument as _, createMcpSearchAdapter as a, applySidebarFolderIndexBehavior as b, formatDocsAskAIPackageHints as c, resolveAskAISearchRequestConfig as d, resolveSearchRequestConfig as f, normalizeGeneratedAgentContent as g, hashGeneratedAgentContent as h, createCustomSearchAdapter as i, resolveDocsObservabilityConfig as j, emitDocsObservabilityEvent as k, inferDocsAskAIPackageHints as l, GENERATED_AGENT_PROVENANCE_VERSION as m, buildDocsSearchDocuments as n, createSimpleSearchAdapter as o, GENERATED_AGENT_PROVENANCE_MARKER as p, createAlgoliaSearchAdapter as r, createTypesenseSearchAdapter as s, buildDocsAskAIContext as t, performDocsSearch as u, serializeGeneratedAgentDocument as v, DOCS_AGENT_TRACE_EVENT_TYPES as w, resolvePageSidebarFolderIndexBehavior as x, stripGeneratedAgentProvenance as y };
1431
+ export { getDocsRequestAnalyticsProperties as A, resolveSidebarFolderIndexBehaviorForPath as C, emitDocsAgentTraceEvent as D, createDocsAgentTraceId as E, resolveDocsObservabilityConfig as M, emitDocsAnalyticsEvent as O, resolveSidebarFolderIndexBehavior as S, createDocsAgentTraceContext as T, parseGeneratedAgentDocument as _, createMcpSearchAdapter as a, applySidebarFolderIndexBehavior as b, formatDocsAskAIPackageHints as c, resolveAskAISearchRequestConfig as d, resolveSearchRequestConfig as f, normalizeGeneratedAgentContent as g, hashGeneratedAgentContent as h, createCustomSearchAdapter as i, resolveDocsAnalyticsConfig as j, emitDocsObservabilityEvent as k, inferDocsAskAIPackageHints as l, GENERATED_AGENT_PROVENANCE_VERSION as m, buildDocsSearchDocuments as n, createSimpleSearchAdapter as o, GENERATED_AGENT_PROVENANCE_MARKER as p, createAlgoliaSearchAdapter as r, createTypesenseSearchAdapter as s, buildDocsAskAIContext as t, performDocsSearch as u, serializeGeneratedAgentDocument as v, DOCS_AGENT_TRACE_EVENT_TYPES as w, resolvePageSidebarFolderIndexBehavior as x, stripGeneratedAgentProvenance as y };
@@ -1,4 +1,4 @@
1
- import { n as buildDocsSearchDocuments, r as createAlgoliaSearchAdapter, s as createTypesenseSearchAdapter } from "./search-CkqDA2Ob.mjs";
1
+ import { n as buildDocsSearchDocuments, r as createAlgoliaSearchAdapter, s as createTypesenseSearchAdapter } from "./search-BZJhx8MO.mjs";
2
2
  import "./sitemap-server-idLUrmmU.mjs";
3
3
  import { createFilesystemDocsMcpSource } from "./mcp.mjs";
4
4
  import "./server.mjs";
package/dist/server.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { $ as DocsObservabilityEventInput, At as McpDocsSearchConfig, D as DocsAskAIFeedbackMessage, E as DocsAskAIFeedbackData, O as DocsAskAIFeedbackValue, Q as DocsObservabilityEvent, T as DocsAskAIFeedbackConfig, U as DocsConfig, Z as DocsObservabilityConfig, _ as DocsAnalyticsConfig, _t as DocsSearchResult, a as ApiReferenceRenderer, bt as DocsSitemapConfig, dt as DocsSearchAdapterFactory, g as DocsAgentTraceStatus, gt as DocsSearchQuery, h as DocsAgentTraceEventType, it as DocsReviewRulesConfig, k as DocsAskAIMcpConfig, lt as DocsSearchAdapter, m as DocsAgentTraceEventInput, mt as DocsSearchDocument, nt as DocsReviewCiMode, pt as DocsSearchConfig, rt as DocsReviewConfig, ut as DocsSearchAdapterContext, v as DocsAnalyticsEvent, y as DocsAnalyticsEventInput, yt as DocsSearchSourcePage } from "./types-DC1QpBmS.mjs";
2
- import { $ as createDocsAgentTraceId, A as resolveDocsSitemapRequest, B as normalizePromptProviderName, C as buildDocsSitemapManifest, D as renderDocsSitemapXml, E as renderDocsSitemapMarkdown, F as DEFAULT_PROMPT_PROVIDER_TEMPLATES, G as serializeDocsIconRegistry, H as resolvePromptProviderChoices, I as PromptAction, J as DOCS_AGENT_TRACE_EVENT_TYPES, K as serializeOpenDocsProvider, L as PromptProviderChoice, M as DEFAULT_OPEN_DOCS_PROMPT, N as DEFAULT_OPEN_DOCS_PROVIDER_IDS, O as resolveDocsSitemapConfig, P as DEFAULT_OPEN_DOCS_TARGET, Q as createDocsAgentTraceContext, R as SerializeOpenDocsProviderOptions, S as DocsSitemapResolvedConfig, T as readDocsSitemapManifestFromContentMap, U as sanitizePromptText, V as parsePromptStringArray, W as serializeDocsIcon, X as ResolvedDocsAnalyticsConfig, Y as DocsAgentTraceContext, Z as ResolvedDocsObservabilityConfig, _ as DEFAULT_SITEMAP_XML_ROUTE, a as createMcpSearchAdapter, b as DocsSitemapManifestPage, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, et as emitDocsAgentTraceEvent, f as resolveSearchRequestConfig, g as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, h as DEFAULT_SITEMAP_MD_ROUTE, i as createCustomSearchAdapter, it as resolveDocsObservabilityConfig, j as toDocsSitemapMarkdownUrl, k as resolveDocsSitemapPageLastmod, l as inferDocsAskAIPackageHints, m as DEFAULT_SITEMAP_MD_DOCS_ROUTE, n as buildDocsSearchDocuments, nt as emitDocsObservabilityEvent, o as createSimpleSearchAdapter, p as DEFAULT_SITEMAP_MANIFEST_PATH, q as serializeOpenDocsProviders, r as createAlgoliaSearchAdapter, rt as resolveDocsAnalyticsConfig, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, tt as emitDocsAnalyticsEvent, u as performDocsSearch, v as DocsSitemapFormat, w as createDocsSitemapResponse, x as DocsSitemapPageInput, y as DocsSitemapManifest, z as SerializedOpenDocsProvider } from "./search-DDa-Lph1.mjs";
2
+ import { $ as createDocsAgentTraceId, A as resolveDocsSitemapRequest, B as normalizePromptProviderName, C as buildDocsSitemapManifest, D as renderDocsSitemapXml, E as renderDocsSitemapMarkdown, F as DEFAULT_PROMPT_PROVIDER_TEMPLATES, G as serializeDocsIconRegistry, H as resolvePromptProviderChoices, I as PromptAction, J as DOCS_AGENT_TRACE_EVENT_TYPES, K as serializeOpenDocsProvider, L as PromptProviderChoice, M as DEFAULT_OPEN_DOCS_PROMPT, N as DEFAULT_OPEN_DOCS_PROVIDER_IDS, O as resolveDocsSitemapConfig, P as DEFAULT_OPEN_DOCS_TARGET, Q as createDocsAgentTraceContext, R as SerializeOpenDocsProviderOptions, S as DocsSitemapResolvedConfig, T as readDocsSitemapManifestFromContentMap, U as sanitizePromptText, V as parsePromptStringArray, W as serializeDocsIcon, X as ResolvedDocsAnalyticsConfig, Y as DocsAgentTraceContext, Z as ResolvedDocsObservabilityConfig, _ as DEFAULT_SITEMAP_XML_ROUTE, a as createMcpSearchAdapter, at as resolveDocsObservabilityConfig, b as DocsSitemapManifestPage, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, et as emitDocsAgentTraceEvent, f as resolveSearchRequestConfig, g as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, h as DEFAULT_SITEMAP_MD_ROUTE, i as createCustomSearchAdapter, it as resolveDocsAnalyticsConfig, j as toDocsSitemapMarkdownUrl, k as resolveDocsSitemapPageLastmod, l as inferDocsAskAIPackageHints, m as DEFAULT_SITEMAP_MD_DOCS_ROUTE, n as buildDocsSearchDocuments, nt as emitDocsObservabilityEvent, o as createSimpleSearchAdapter, p as DEFAULT_SITEMAP_MANIFEST_PATH, q as serializeOpenDocsProviders, r as createAlgoliaSearchAdapter, rt as getDocsRequestAnalyticsProperties, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, tt as emitDocsAnalyticsEvent, u as performDocsSearch, v as DocsSitemapFormat, w as createDocsSitemapResponse, x as DocsSitemapPageInput, y as DocsSitemapManifest, z as SerializedOpenDocsProvider } from "./search-BNCMJUGr.mjs";
3
3
  import { DocsMcpCodeExample, DocsMcpConfigSchema, DocsMcpConfigSchemaOption, DocsMcpDocsList, DocsMcpDocsPageSummary, DocsMcpDocsSection, DocsMcpHttpHandlers, DocsMcpNavigationNode, DocsMcpNavigationTree, DocsMcpPage, DocsMcpResolvedConfig, DocsMcpSource, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, normalizeDocsMcpRoute, resolveDocsMcpConfig, runDocsMcpStdio } from "./mcp.mjs";
4
4
 
5
5
  //#region src/code-group-mdx.d.ts
@@ -131,4 +131,4 @@ declare function buildDocsReviewWorkflowPathFilters(options: {
131
131
  //#region src/sitemap-server.d.ts
132
132
  declare function readDocsSitemapManifest(rootDir: string, sitemap?: boolean | DocsSitemapConfig): DocsSitemapManifest | null;
133
133
  //#endregion
134
- export { type ApiReferenceFramework, type ApiReferenceOpenApiDiscovery, type ApiReferenceRenderer, type ApiReferenceRoute, DEFAULT_API_REFERENCE_OPENAPI_ROUTE, DEFAULT_DOCS_REVIEW_SCORE_THRESHOLD, DEFAULT_DOCS_REVIEW_WORKFLOW_PATH, DEFAULT_OPEN_DOCS_PROMPT, DEFAULT_OPEN_DOCS_PROVIDER_IDS, DEFAULT_OPEN_DOCS_TARGET, DEFAULT_PROMPT_PROVIDER_TEMPLATES, DEFAULT_SITEMAP_MANIFEST_PATH, DEFAULT_SITEMAP_MD_DOCS_ROUTE, DEFAULT_SITEMAP_MD_ROUTE, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, DEFAULT_SITEMAP_XML_ROUTE, DOCS_AGENT_TRACE_EVENT_TYPES, type DocsAgentTraceContext, type DocsAgentTraceEventInput, type DocsAgentTraceEventType, type DocsAgentTraceStatus, type DocsAnalyticsConfig, type DocsAnalyticsEvent, type DocsAnalyticsEventInput, type DocsAskAIFeedbackConfig, type DocsAskAIFeedbackData, type DocsAskAIFeedbackMessage, type DocsAskAIFeedbackValue, type DocsAskAIMcpConfig, type DocsMcpCodeExample, type DocsMcpConfigSchema, type DocsMcpConfigSchemaOption, type DocsMcpDocsList, type DocsMcpDocsPageSummary, type DocsMcpDocsSection, type DocsMcpHttpHandlers, type DocsMcpNavigationNode, type DocsMcpNavigationTree, type DocsMcpPage, type DocsMcpResolvedConfig, type DocsMcpSource, type DocsObservabilityConfig, type DocsObservabilityEvent, type DocsObservabilityEventInput, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchQuery, type DocsSearchResult, type DocsSearchSourcePage, type DocsSitemapFormat, type DocsSitemapManifest, type DocsSitemapManifestPage, type DocsSitemapPageInput, type DocsSitemapResolvedConfig, type McpDocsSearchConfig, type PromptAction, type PromptProviderChoice, type ResolvedApiReferenceConfig, type ResolvedDocsAnalyticsConfig, type ResolvedDocsObservabilityConfig, type ResolvedDocsReviewConfig, type SerializeOpenDocsProviderOptions, type SerializedOpenDocsProvider, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsAskAIContext, buildDocsReviewWorkflow, buildDocsReviewWorkflowPathFilters, buildDocsSearchDocuments, buildDocsSitemapManifest, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsMcpHttpHandler, createDocsMcpServer, createDocsSitemapResponse, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, ensureDocsReviewWorkflow, formatDocsAskAIPackageHints, inferDocsAskAIPackageHints, isApiReferenceOpenApiRequest, normalizeDocsMcpRoute, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, readDocsReviewConfigFromSource, readDocsSitemapManifest, readDocsSitemapManifestFromContentMap, remarkCodeGroup, renderDocsSitemapMarkdown, renderDocsSitemapXml, resolveApiReferenceConfig, resolveApiReferenceOpenApiDiscovery, resolveApiReferenceRenderer, resolveAskAISearchRequestConfig, resolveDocsAnalyticsConfig, resolveDocsMcpConfig, resolveDocsObservabilityConfig, resolveDocsReviewConfig, resolveDocsSitemapConfig, resolveDocsSitemapPageLastmod, resolveDocsSitemapRequest, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProvider, serializeOpenDocsProviders, toDocsSitemapMarkdownUrl };
134
+ export { type ApiReferenceFramework, type ApiReferenceOpenApiDiscovery, type ApiReferenceRenderer, type ApiReferenceRoute, DEFAULT_API_REFERENCE_OPENAPI_ROUTE, DEFAULT_DOCS_REVIEW_SCORE_THRESHOLD, DEFAULT_DOCS_REVIEW_WORKFLOW_PATH, DEFAULT_OPEN_DOCS_PROMPT, DEFAULT_OPEN_DOCS_PROVIDER_IDS, DEFAULT_OPEN_DOCS_TARGET, DEFAULT_PROMPT_PROVIDER_TEMPLATES, DEFAULT_SITEMAP_MANIFEST_PATH, DEFAULT_SITEMAP_MD_DOCS_ROUTE, DEFAULT_SITEMAP_MD_ROUTE, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, DEFAULT_SITEMAP_XML_ROUTE, DOCS_AGENT_TRACE_EVENT_TYPES, type DocsAgentTraceContext, type DocsAgentTraceEventInput, type DocsAgentTraceEventType, type DocsAgentTraceStatus, type DocsAnalyticsConfig, type DocsAnalyticsEvent, type DocsAnalyticsEventInput, type DocsAskAIFeedbackConfig, type DocsAskAIFeedbackData, type DocsAskAIFeedbackMessage, type DocsAskAIFeedbackValue, type DocsAskAIMcpConfig, type DocsMcpCodeExample, type DocsMcpConfigSchema, type DocsMcpConfigSchemaOption, type DocsMcpDocsList, type DocsMcpDocsPageSummary, type DocsMcpDocsSection, type DocsMcpHttpHandlers, type DocsMcpNavigationNode, type DocsMcpNavigationTree, type DocsMcpPage, type DocsMcpResolvedConfig, type DocsMcpSource, type DocsObservabilityConfig, type DocsObservabilityEvent, type DocsObservabilityEventInput, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchQuery, type DocsSearchResult, type DocsSearchSourcePage, type DocsSitemapFormat, type DocsSitemapManifest, type DocsSitemapManifestPage, type DocsSitemapPageInput, type DocsSitemapResolvedConfig, type McpDocsSearchConfig, type PromptAction, type PromptProviderChoice, type ResolvedApiReferenceConfig, type ResolvedDocsAnalyticsConfig, type ResolvedDocsObservabilityConfig, type ResolvedDocsReviewConfig, type SerializeOpenDocsProviderOptions, type SerializedOpenDocsProvider, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsAskAIContext, buildDocsReviewWorkflow, buildDocsReviewWorkflowPathFilters, buildDocsSearchDocuments, buildDocsSitemapManifest, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsMcpHttpHandler, createDocsMcpServer, createDocsSitemapResponse, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, ensureDocsReviewWorkflow, formatDocsAskAIPackageHints, getDocsRequestAnalyticsProperties, inferDocsAskAIPackageHints, isApiReferenceOpenApiRequest, normalizeDocsMcpRoute, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, readDocsReviewConfigFromSource, readDocsSitemapManifest, readDocsSitemapManifestFromContentMap, remarkCodeGroup, renderDocsSitemapMarkdown, renderDocsSitemapXml, resolveApiReferenceConfig, resolveApiReferenceOpenApiDiscovery, resolveApiReferenceRenderer, resolveAskAISearchRequestConfig, resolveDocsAnalyticsConfig, resolveDocsMcpConfig, resolveDocsObservabilityConfig, resolveDocsReviewConfig, resolveDocsSitemapConfig, resolveDocsSitemapPageLastmod, resolveDocsSitemapRequest, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProvider, serializeOpenDocsProviders, toDocsSitemapMarkdownUrl };
package/dist/server.mjs CHANGED
@@ -1,7 +1,7 @@
1
- import { A as resolveDocsAnalyticsConfig, D as emitDocsAgentTraceEvent, E as createDocsAgentTraceId, O as emitDocsAnalyticsEvent, T as createDocsAgentTraceContext, a as createMcpSearchAdapter, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, f as resolveSearchRequestConfig, i as createCustomSearchAdapter, j as resolveDocsObservabilityConfig, k as emitDocsObservabilityEvent, l as inferDocsAskAIPackageHints, n as buildDocsSearchDocuments, o as createSimpleSearchAdapter, r as createAlgoliaSearchAdapter, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, u as performDocsSearch, w as DOCS_AGENT_TRACE_EVENT_TYPES } from "./search-CkqDA2Ob.mjs";
1
+ import { A as getDocsRequestAnalyticsProperties, D as emitDocsAgentTraceEvent, E as createDocsAgentTraceId, M as resolveDocsObservabilityConfig, O as emitDocsAnalyticsEvent, T as createDocsAgentTraceContext, a as createMcpSearchAdapter, c as formatDocsAskAIPackageHints, d as resolveAskAISearchRequestConfig, f as resolveSearchRequestConfig, i as createCustomSearchAdapter, j as resolveDocsAnalyticsConfig, k as emitDocsObservabilityEvent, l as inferDocsAskAIPackageHints, n as buildDocsSearchDocuments, o as createSimpleSearchAdapter, r as createAlgoliaSearchAdapter, s as createTypesenseSearchAdapter, t as buildDocsAskAIContext, u as performDocsSearch, w as DOCS_AGENT_TRACE_EVENT_TYPES } from "./search-BZJhx8MO.mjs";
2
2
  import { a as DEFAULT_SITEMAP_XML_ROUTE, c as readDocsSitemapManifestFromContentMap, d as resolveDocsSitemapConfig, f as resolveDocsSitemapPageLastmod, i as DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, l as renderDocsSitemapMarkdown, m as toDocsSitemapMarkdownUrl, n as DEFAULT_SITEMAP_MD_DOCS_ROUTE, o as buildDocsSitemapManifest, p as resolveDocsSitemapRequest, r as DEFAULT_SITEMAP_MD_ROUTE, s as createDocsSitemapResponse, t as DEFAULT_SITEMAP_MANIFEST_PATH, u as renderDocsSitemapXml } from "./sitemap-CMNj0Pt3.mjs";
3
3
  import { C as resolveApiReferenceOpenApiDiscovery, S as resolveApiReferenceConfig, T as remarkCodeGroup, _ as buildApiReferenceOpenApiDocument, a as DEFAULT_PROMPT_PROVIDER_TEMPLATES, b as buildApiReferenceScalarCss, c as resolvePromptProviderChoices, d as serializeDocsIconRegistry, f as serializeOpenDocsProvider, g as buildApiReferenceHtmlDocumentAsync, h as buildApiReferenceHtmlDocument, i as DEFAULT_OPEN_DOCS_TARGET, l as sanitizePromptText, m as DEFAULT_API_REFERENCE_OPENAPI_ROUTE, n as DEFAULT_OPEN_DOCS_PROMPT, o as normalizePromptProviderName, p as serializeOpenDocsProviders, r as DEFAULT_OPEN_DOCS_PROVIDER_IDS, s as parsePromptStringArray, t as readDocsSitemapManifest, u as serializeDocsIcon, v as buildApiReferenceOpenApiDocumentAsync, w as resolveApiReferenceRenderer, x as isApiReferenceOpenApiRequest, y as buildApiReferencePageTitle } from "./sitemap-server-idLUrmmU.mjs";
4
4
  import { a as ensureDocsReviewWorkflow, i as buildDocsReviewWorkflowPathFilters, n as DEFAULT_DOCS_REVIEW_WORKFLOW_PATH, o as readDocsReviewConfigFromSource, r as buildDocsReviewWorkflow, s as resolveDocsReviewConfig, t as DEFAULT_DOCS_REVIEW_SCORE_THRESHOLD } from "./review-B7goPYUb.mjs";
5
5
  import { createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, normalizeDocsMcpRoute, resolveDocsMcpConfig, runDocsMcpStdio } from "./mcp.mjs";
6
6
 
7
- export { DEFAULT_API_REFERENCE_OPENAPI_ROUTE, DEFAULT_DOCS_REVIEW_SCORE_THRESHOLD, DEFAULT_DOCS_REVIEW_WORKFLOW_PATH, DEFAULT_OPEN_DOCS_PROMPT, DEFAULT_OPEN_DOCS_PROVIDER_IDS, DEFAULT_OPEN_DOCS_TARGET, DEFAULT_PROMPT_PROVIDER_TEMPLATES, DEFAULT_SITEMAP_MANIFEST_PATH, DEFAULT_SITEMAP_MD_DOCS_ROUTE, DEFAULT_SITEMAP_MD_ROUTE, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, DEFAULT_SITEMAP_XML_ROUTE, DOCS_AGENT_TRACE_EVENT_TYPES, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsAskAIContext, buildDocsReviewWorkflow, buildDocsReviewWorkflowPathFilters, buildDocsSearchDocuments, buildDocsSitemapManifest, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsMcpHttpHandler, createDocsMcpServer, createDocsSitemapResponse, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, ensureDocsReviewWorkflow, formatDocsAskAIPackageHints, inferDocsAskAIPackageHints, isApiReferenceOpenApiRequest, normalizeDocsMcpRoute, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, readDocsReviewConfigFromSource, readDocsSitemapManifest, readDocsSitemapManifestFromContentMap, remarkCodeGroup, renderDocsSitemapMarkdown, renderDocsSitemapXml, resolveApiReferenceConfig, resolveApiReferenceOpenApiDiscovery, resolveApiReferenceRenderer, resolveAskAISearchRequestConfig, resolveDocsAnalyticsConfig, resolveDocsMcpConfig, resolveDocsObservabilityConfig, resolveDocsReviewConfig, resolveDocsSitemapConfig, resolveDocsSitemapPageLastmod, resolveDocsSitemapRequest, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProvider, serializeOpenDocsProviders, toDocsSitemapMarkdownUrl };
7
+ export { DEFAULT_API_REFERENCE_OPENAPI_ROUTE, DEFAULT_DOCS_REVIEW_SCORE_THRESHOLD, DEFAULT_DOCS_REVIEW_WORKFLOW_PATH, DEFAULT_OPEN_DOCS_PROMPT, DEFAULT_OPEN_DOCS_PROVIDER_IDS, DEFAULT_OPEN_DOCS_TARGET, DEFAULT_PROMPT_PROVIDER_TEMPLATES, DEFAULT_SITEMAP_MANIFEST_PATH, DEFAULT_SITEMAP_MD_DOCS_ROUTE, DEFAULT_SITEMAP_MD_ROUTE, DEFAULT_SITEMAP_MD_WELL_KNOWN_ROUTE, DEFAULT_SITEMAP_XML_ROUTE, DOCS_AGENT_TRACE_EVENT_TYPES, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsAskAIContext, buildDocsReviewWorkflow, buildDocsReviewWorkflowPathFilters, buildDocsSearchDocuments, buildDocsSitemapManifest, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsAgentTraceContext, createDocsAgentTraceId, createDocsMcpHttpHandler, createDocsMcpServer, createDocsSitemapResponse, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, emitDocsAgentTraceEvent, emitDocsAnalyticsEvent, emitDocsObservabilityEvent, ensureDocsReviewWorkflow, formatDocsAskAIPackageHints, getDocsRequestAnalyticsProperties, inferDocsAskAIPackageHints, isApiReferenceOpenApiRequest, normalizeDocsMcpRoute, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, readDocsReviewConfigFromSource, readDocsSitemapManifest, readDocsSitemapManifestFromContentMap, remarkCodeGroup, renderDocsSitemapMarkdown, renderDocsSitemapXml, resolveApiReferenceConfig, resolveApiReferenceOpenApiDiscovery, resolveApiReferenceRenderer, resolveAskAISearchRequestConfig, resolveDocsAnalyticsConfig, resolveDocsMcpConfig, resolveDocsObservabilityConfig, resolveDocsReviewConfig, resolveDocsSitemapConfig, resolveDocsSitemapPageLastmod, resolveDocsSitemapRequest, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProvider, serializeOpenDocsProviders, toDocsSitemapMarkdownUrl };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@farming-labs/docs",
3
- "version": "0.1.137",
3
+ "version": "0.1.140",
4
4
  "description": "Modern, flexible MDX-based docs framework — core types, config, and CLI",
5
5
  "keywords": [
6
6
  "docs",