@farming-labs/docs 0.1.60 → 0.1.62
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{agent-CCznWtjf.mjs → agent-COwO6Q6N.mjs} +2 -1
- package/dist/{agent-BQCfaA1j.mjs → agent-LSYzB5MK.mjs} +2 -2
- package/dist/cli/index.mjs +4 -4
- package/dist/{doctor-DraU0BVq.mjs → doctor-CfGThtMI.mjs} +2 -2
- package/dist/index.d.mts +3 -3
- package/dist/index.mjs +3 -3
- package/dist/mcp.d.mts +2 -1
- package/dist/mcp.mjs +120 -10
- package/dist/{search-CLoh315v.mjs → search-DVyHOFlo.mjs} +1 -1
- package/dist/{search-Cu_pxL8o.mjs → search-Ds3jiS2n.mjs} +50 -1
- package/dist/search-HlwTDHCK.d.mts +31 -0
- package/dist/server.d.mts +3 -3
- package/dist/server.mjs +2 -2
- package/dist/{types-G-xf-4_c.d.mts → types-DfiAeeHu.d.mts} +56 -1
- package/package.json +1 -1
- package/dist/search-COePaQmH.d.mts +0 -21
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as renderDocsRelatedMarkdownLines } from "./search-
|
|
1
|
+
import { _ as renderDocsRelatedMarkdownLines } from "./search-Ds3jiS2n.mjs";
|
|
2
2
|
import matter from "gray-matter";
|
|
3
3
|
|
|
4
4
|
//#region src/define-docs.ts
|
|
@@ -17,6 +17,7 @@ function defineDocs(config) {
|
|
|
17
17
|
breadcrumb: config.breadcrumb,
|
|
18
18
|
sidebar: config.sidebar,
|
|
19
19
|
components: config.components,
|
|
20
|
+
analytics: config.analytics,
|
|
20
21
|
onCopyClick: config.onCopyClick,
|
|
21
22
|
feedback: config.feedback,
|
|
22
23
|
search: config.search,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { C as renderDocsMarkdownDocument, g as findDocsMarkdownPage } from "./agent-
|
|
2
|
-
import { d as hashGeneratedAgentContent, m as serializeGeneratedAgentDocument, p as parseGeneratedAgentDocument, u as GENERATED_AGENT_PROVENANCE_VERSION } from "./search-
|
|
1
|
+
import { C as renderDocsMarkdownDocument, g as findDocsMarkdownPage } from "./agent-COwO6Q6N.mjs";
|
|
2
|
+
import { d as hashGeneratedAgentContent, m as serializeGeneratedAgentDocument, p as parseGeneratedAgentDocument, u as GENERATED_AGENT_PROVENANCE_VERSION } from "./search-Ds3jiS2n.mjs";
|
|
3
3
|
import "./index.mjs";
|
|
4
4
|
import "./prompt-utils-8nmFLQVH.mjs";
|
|
5
5
|
import { createFilesystemDocsMcpSource } from "./mcp.mjs";
|
package/dist/cli/index.mjs
CHANGED
|
@@ -86,7 +86,7 @@ async function main() {
|
|
|
86
86
|
const { runMcp } = await import("../mcp-BANLcwQ0.mjs");
|
|
87
87
|
await runMcp(mcpOptions);
|
|
88
88
|
} else if (parsedCommand.command === "agent" && subcommand === "compact") {
|
|
89
|
-
const { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp } = await import("../agent-
|
|
89
|
+
const { compactAgentDocs, parseAgentCompactArgs, printAgentCompactHelp } = await import("../agent-LSYzB5MK.mjs");
|
|
90
90
|
const agentCompactOptions = parseAgentCompactArgs(args.slice(2));
|
|
91
91
|
if (agentCompactOptions.help) {
|
|
92
92
|
printAgentCompactHelp();
|
|
@@ -96,11 +96,11 @@ async function main() {
|
|
|
96
96
|
} else if (parsedCommand.command === "agent") {
|
|
97
97
|
console.error(pc.red(`Unknown agent subcommand: ${subcommand ?? "(missing)"}`));
|
|
98
98
|
console.error();
|
|
99
|
-
const { printAgentCompactHelp } = await import("../agent-
|
|
99
|
+
const { printAgentCompactHelp } = await import("../agent-LSYzB5MK.mjs");
|
|
100
100
|
printAgentCompactHelp();
|
|
101
101
|
process.exit(1);
|
|
102
102
|
} else if (parsedCommand.command === "doctor") {
|
|
103
|
-
const { parseDoctorArgs, printDoctorHelp, runDoctor } = await import("../doctor-
|
|
103
|
+
const { parseDoctorArgs, printDoctorHelp, runDoctor } = await import("../doctor-CfGThtMI.mjs");
|
|
104
104
|
const doctorOptions = parseDoctorArgs(args.slice(1));
|
|
105
105
|
if (doctorOptions.help) {
|
|
106
106
|
printDoctorHelp();
|
|
@@ -108,7 +108,7 @@ async function main() {
|
|
|
108
108
|
}
|
|
109
109
|
await runDoctor(doctorOptions);
|
|
110
110
|
} else if (parsedCommand.command === "search" && subcommand === "sync") {
|
|
111
|
-
const { syncSearch } = await import("../search-
|
|
111
|
+
const { syncSearch } = await import("../search-DVyHOFlo.mjs");
|
|
112
112
|
await syncSearch(searchSyncOptions);
|
|
113
113
|
} else if (parsedCommand.command === "search") {
|
|
114
114
|
console.error(pc.red(`Unknown search subcommand: ${subcommand ?? "(missing)"}`));
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { c as DEFAULT_LLMS_TXT_ROUTE, f as DEFAULT_MCP_WELL_KNOWN_ROUTE, i as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, o as DEFAULT_LLMS_FULL_TXT_ROUTE, p as DEFAULT_SKILL_MD_ROUTE, r as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, t as DEFAULT_AGENT_FEEDBACK_ROUTE, u as DEFAULT_MCP_PUBLIC_ROUTE } from "./agent-
|
|
1
|
+
import { c as DEFAULT_LLMS_TXT_ROUTE, f as DEFAULT_MCP_WELL_KNOWN_ROUTE, i as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, m as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, o as DEFAULT_LLMS_FULL_TXT_ROUTE, p as DEFAULT_SKILL_MD_ROUTE, r as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, t as DEFAULT_AGENT_FEEDBACK_ROUTE, u as DEFAULT_MCP_PUBLIC_ROUTE } from "./agent-COwO6Q6N.mjs";
|
|
2
2
|
import "./prompt-utils-8nmFLQVH.mjs";
|
|
3
3
|
import { createFilesystemDocsMcpSource, resolveDocsMcpConfig } from "./mcp.mjs";
|
|
4
4
|
import "./server.mjs";
|
|
5
5
|
import { a as loadProjectEnv, c as readNavTitle, d as readTopLevelStringProperty, f as resolveDocsConfigPath, i as loadDocsConfigModule, o as readBooleanProperty, p as resolveDocsContentDir, r as extractTopLevelConfigObject, t as extractNestedObjectLiteral } from "./config-Si-yUfM_.mjs";
|
|
6
|
-
import { inspectAgentCompactionState, scanDocsPageTargets } from "./agent-
|
|
6
|
+
import { inspectAgentCompactionState, scanDocsPageTargets } from "./agent-LSYzB5MK.mjs";
|
|
7
7
|
import { t as detectFramework } from "./utils-DSMXVnEu.mjs";
|
|
8
8
|
import { existsSync, lstatSync, readFileSync, readdirSync } from "node:fs";
|
|
9
9
|
import path from "node:path";
|
package/dist/index.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { $ as
|
|
1
|
+
import { $ as PageFrontmatter, A as DocsSearchAdapterContext, B as DocsTheme, C as DocsI18nConfig, D as DocsNav, E as DocsMetadata, F as DocsSearchEmbeddingsConfig, G as LlmsTxtConfig, H as FontStyle, I as DocsSearchQuery, J as OpenDocsConfig, K as McpDocsSearchConfig, L as DocsSearchResult, M as DocsSearchChunkingConfig, N as DocsSearchConfig, O as DocsRelatedItem, P as DocsSearchDocument, Q as PageActionsConfig, R as DocsSearchResultType, S as DocsFeedbackValue, T as DocsMcpToolsConfig, U as GithubConfig, V as FeedbackConfig, W as LastUpdatedConfig, X as OpenGraphImage, Y as OpenDocsProvider, Z as OrderingItem, _ as DocsAnalyticsEventType, a as ApiReferenceRenderer, at as SidebarComponentProps, b as DocsConfig, c as ChangelogFrontmatter, ct as SidebarFolderNode, d as CustomDocsSearchConfig, dt as SidebarTree, et as PageOpenGraph, f as DocsAgentFeedbackContext, ft as SimpleDocsSearchConfig, g as DocsAnalyticsEventInput, gt as UIConfig, h as DocsAnalyticsEvent, ht as TypographyConfig, i as ApiReferenceConfig, it as ResolvedDocsRelatedLink, j as DocsSearchAdapterFactory, k as DocsSearchAdapter, l as CodeBlockCopyData, lt as SidebarNode, m as DocsAnalyticsConfig, mt as TypesenseDocsSearchConfig, n as AgentFeedbackConfig, nt as PageTwitter, o as BreadcrumbConfig, ot as SidebarConfig, p as DocsAgentFeedbackData, pt as ThemeToggleConfig, q as OGConfig, r as AlgoliaDocsSearchConfig, rt as ReadingTimeConfig, s as ChangelogConfig, st as SidebarFolderIndexBehavior, t as AIConfig, tt as PageSidebarFrontmatter, u as CopyMarkdownConfig, ut as SidebarPageNode, v as DocsAnalyticsInput, w as DocsMcpConfig, x as DocsFeedbackData, y as DocsAnalyticsSource, z as DocsSearchSourcePage } from "./types-DfiAeeHu.mjs";
|
|
2
|
+
import { a as createSimpleSearchAdapter, c as resolveSearchRequestConfig, d as resolveDocsAnalyticsConfig, i as createMcpSearchAdapter, l as ResolvedDocsAnalyticsConfig, n as createAlgoliaSearchAdapter, o as createTypesenseSearchAdapter, r as createCustomSearchAdapter, s as performDocsSearch, t as buildDocsSearchDocuments, u as emitDocsAnalyticsEvent } from "./search-HlwTDHCK.mjs";
|
|
2
3
|
import { DocsMcpPage, DocsMcpResolvedConfig } from "./mcp.mjs";
|
|
3
|
-
import { a as createSimpleSearchAdapter, c as resolveSearchRequestConfig, i as createMcpSearchAdapter, n as createAlgoliaSearchAdapter, o as createTypesenseSearchAdapter, r as createCustomSearchAdapter, s as performDocsSearch, t as buildDocsSearchDocuments } from "./search-COePaQmH.mjs";
|
|
4
4
|
|
|
5
5
|
//#region src/define-docs.d.ts
|
|
6
6
|
/**
|
|
@@ -372,4 +372,4 @@ declare function buildDocsAgentDiscoverySpec({
|
|
|
372
372
|
};
|
|
373
373
|
};
|
|
374
374
|
//#endregion
|
|
375
|
-
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_AGENT_FEEDBACK_ROUTE, DEFAULT_AGENT_SPEC_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, DEFAULT_DOCS_API_ROUTE, DEFAULT_LLMS_FULL_TXT_ROUTE, DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, DEFAULT_LLMS_TXT_ROUTE, DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, DEFAULT_MCP_PUBLIC_ROUTE, DEFAULT_MCP_ROUTE, DEFAULT_MCP_WELL_KNOWN_ROUTE, DEFAULT_SKILL_MD_ROUTE, DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, type DocsAgentDiscoverySpecOptions, type DocsAgentFeedbackContext, type DocsAgentFeedbackData, type DocsAgentFeedbackDiscoveryConfig, type DocsConfig, type DocsFeedbackData, type DocsFeedbackValue, type DocsI18nConfig, type DocsLlmsDiscoveryConfig, type DocsMarkdownPage, type DocsMcpConfig, type DocsMcpToolsConfig, type DocsMetadata, type DocsNav, type DocsPathMatch, type DocsRelatedItem, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchChunkingConfig, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchEmbeddingsConfig, type DocsSearchQuery, type DocsSearchResult, type DocsSearchResultType, type DocsSearchSourcePage, type DocsSkillDocumentOptions, 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 McpDocsSearchConfig, type OGConfig, type OpenDocsConfig, type OpenDocsProvider, type OpenGraphImage, type OrderingItem, type PageActionsConfig, type PageFrontmatter, type PageOpenGraph, type PageSidebarFrontmatter, type PageTwitter, type ReadingTimeConfig, type ResolvedChangelogConfig, type ResolvedDocsI18n, type ResolvedDocsRelatedLink, type SidebarComponentProps, type SidebarConfig, type SidebarFolderIndexBehavior, type SidebarFolderNode, type SidebarNode, type SidebarPageNode, type SidebarTree, type SimpleDocsSearchConfig, type ThemeToggleConfig, type TypesenseDocsSearchConfig, type TypographyConfig, type UIConfig, applySidebarFolderIndexBehavior, buildDocsAgentDiscoverySpec, buildDocsSearchDocuments, buildPageOpenGraph, buildPageTwitter, createAlgoliaSearchAdapter, createCustomSearchAdapter, createMcpSearchAdapter, createSimpleSearchAdapter, createTheme, createTypesenseSearchAdapter, deepMerge, defineDocs, estimateReadingTimeMinutes, extendTheme, findDocsMarkdownPage, hashGeneratedAgentContent, isDocsAgentDiscoveryRequest, isDocsMcpRequest, isDocsPublicGetRequest, isDocsSkillRequest, normalizeDocsPathSegment, normalizeDocsRelated, normalizeDocsUrlPath, normalizeGeneratedAgentContent, parseGeneratedAgentDocument, performDocsSearch, renderDocsMarkdownDocument, renderDocsRelatedMarkdownLines, renderDocsSkillDocument, resolveChangelogConfig, resolveDocsAgentMdxContent, resolveDocsI18n, resolveDocsLlmsTxtFormat, resolveDocsLocale, resolveDocsMarkdownRequest, resolveDocsPath, resolveDocsSkillFormat, resolveOGImage, resolvePageReadingTime, resolvePageSidebarFolderIndexBehavior, resolveReadingTimeFromContent, resolveReadingTimeFromSource, resolveReadingTimeOptions, resolveSearchRequestConfig, resolveSidebarFolderIndexBehavior, resolveSidebarFolderIndexBehaviorForPath, resolveTitle, serializeGeneratedAgentDocument, stripGeneratedAgentProvenance };
|
|
375
|
+
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_AGENT_FEEDBACK_ROUTE, DEFAULT_AGENT_SPEC_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, DEFAULT_DOCS_API_ROUTE, DEFAULT_LLMS_FULL_TXT_ROUTE, DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, DEFAULT_LLMS_TXT_ROUTE, DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, DEFAULT_MCP_PUBLIC_ROUTE, DEFAULT_MCP_ROUTE, DEFAULT_MCP_WELL_KNOWN_ROUTE, DEFAULT_SKILL_MD_ROUTE, DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, type DocsAgentDiscoverySpecOptions, type DocsAgentFeedbackContext, type DocsAgentFeedbackData, type DocsAgentFeedbackDiscoveryConfig, type DocsAnalyticsConfig, type DocsAnalyticsEvent, type DocsAnalyticsEventInput, type DocsAnalyticsEventType, type DocsAnalyticsInput, type DocsAnalyticsSource, type DocsConfig, type DocsFeedbackData, type DocsFeedbackValue, type DocsI18nConfig, type DocsLlmsDiscoveryConfig, type DocsMarkdownPage, type DocsMcpConfig, type DocsMcpToolsConfig, type DocsMetadata, type DocsNav, type DocsPathMatch, type DocsRelatedItem, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchChunkingConfig, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchEmbeddingsConfig, type DocsSearchQuery, type DocsSearchResult, type DocsSearchResultType, type DocsSearchSourcePage, type DocsSkillDocumentOptions, 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 McpDocsSearchConfig, type OGConfig, type OpenDocsConfig, type OpenDocsProvider, type OpenGraphImage, type OrderingItem, type PageActionsConfig, type PageFrontmatter, type PageOpenGraph, type PageSidebarFrontmatter, type PageTwitter, type ReadingTimeConfig, type ResolvedChangelogConfig, type ResolvedDocsAnalyticsConfig, type ResolvedDocsI18n, type ResolvedDocsRelatedLink, type SidebarComponentProps, type SidebarConfig, type SidebarFolderIndexBehavior, type SidebarFolderNode, type SidebarNode, type SidebarPageNode, type SidebarTree, type SimpleDocsSearchConfig, type ThemeToggleConfig, type TypesenseDocsSearchConfig, type TypographyConfig, type UIConfig, applySidebarFolderIndexBehavior, buildDocsAgentDiscoverySpec, buildDocsSearchDocuments, buildPageOpenGraph, buildPageTwitter, createAlgoliaSearchAdapter, createCustomSearchAdapter, createMcpSearchAdapter, createSimpleSearchAdapter, createTheme, createTypesenseSearchAdapter, deepMerge, defineDocs, emitDocsAnalyticsEvent, estimateReadingTimeMinutes, extendTheme, findDocsMarkdownPage, hashGeneratedAgentContent, isDocsAgentDiscoveryRequest, isDocsMcpRequest, isDocsPublicGetRequest, isDocsSkillRequest, normalizeDocsPathSegment, normalizeDocsRelated, normalizeDocsUrlPath, normalizeGeneratedAgentContent, parseGeneratedAgentDocument, performDocsSearch, renderDocsMarkdownDocument, renderDocsRelatedMarkdownLines, renderDocsSkillDocument, resolveChangelogConfig, resolveDocsAgentMdxContent, resolveDocsAnalyticsConfig, resolveDocsI18n, resolveDocsLlmsTxtFormat, resolveDocsLocale, resolveDocsMarkdownRequest, resolveDocsPath, resolveDocsSkillFormat, resolveOGImage, resolvePageReadingTime, resolvePageSidebarFolderIndexBehavior, resolveReadingTimeFromContent, resolveReadingTimeFromSource, resolveReadingTimeOptions, resolveSearchRequestConfig, resolveSidebarFolderIndexBehavior, resolveSidebarFolderIndexBehaviorForPath, resolveTitle, serializeGeneratedAgentDocument, stripGeneratedAgentProvenance };
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as resolvePageSidebarFolderIndexBehavior, B as resolveOGImage, C as renderDocsMarkdownDocument, D as resolveDocsMarkdownRequest, E as resolveDocsLlmsTxtFormat, F as resolveReadingTimeFromContent, G as createTheme, H as resolveDocsI18n, I as resolveReadingTimeFromSource, J as resolveChangelogConfig, K as extendTheme, L as resolveReadingTimeOptions, M as resolveSidebarFolderIndexBehaviorForPath, N as estimateReadingTimeMinutes, O as resolveDocsSkillFormat, P as resolvePageReadingTime, R as buildPageOpenGraph, S as normalizeDocsUrlPath, T as resolveDocsAgentMdxContent, U as resolveDocsLocale, V as resolveTitle, W as resolveDocsPath, Y as defineDocs, _ as isDocsAgentDiscoveryRequest, a as DEFAULT_DOCS_API_ROUTE, b as isDocsSkillRequest, c as DEFAULT_LLMS_TXT_ROUTE, d as DEFAULT_MCP_ROUTE, f as DEFAULT_MCP_WELL_KNOWN_ROUTE, g as findDocsMarkdownPage, h as buildDocsAgentDiscoverySpec, i as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, j as resolveSidebarFolderIndexBehavior, k as applySidebarFolderIndexBehavior, l as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, m as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, n as DEFAULT_AGENT_SPEC_ROUTE, o as DEFAULT_LLMS_FULL_TXT_ROUTE, p as DEFAULT_SKILL_MD_ROUTE, q as deepMerge, r as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, s as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, t as DEFAULT_AGENT_FEEDBACK_ROUTE, u as DEFAULT_MCP_PUBLIC_ROUTE, v as isDocsMcpRequest, w as renderDocsSkillDocument, x as normalizeDocsPathSegment, y as isDocsPublicGetRequest, z as buildPageTwitter } from "./agent-
|
|
2
|
-
import { _ as renderDocsRelatedMarkdownLines, a as createSimpleSearchAdapter, c as resolveSearchRequestConfig, d as hashGeneratedAgentContent, f as normalizeGeneratedAgentContent, g as normalizeDocsRelated, h as stripGeneratedAgentProvenance, i as createMcpSearchAdapter, l as GENERATED_AGENT_PROVENANCE_MARKER, m as serializeGeneratedAgentDocument, n as createAlgoliaSearchAdapter, o as createTypesenseSearchAdapter, p as parseGeneratedAgentDocument, r as createCustomSearchAdapter, s as performDocsSearch, t as buildDocsSearchDocuments, u as GENERATED_AGENT_PROVENANCE_VERSION } from "./search-
|
|
1
|
+
import { A as resolvePageSidebarFolderIndexBehavior, B as resolveOGImage, C as renderDocsMarkdownDocument, D as resolveDocsMarkdownRequest, E as resolveDocsLlmsTxtFormat, F as resolveReadingTimeFromContent, G as createTheme, H as resolveDocsI18n, I as resolveReadingTimeFromSource, J as resolveChangelogConfig, K as extendTheme, L as resolveReadingTimeOptions, M as resolveSidebarFolderIndexBehaviorForPath, N as estimateReadingTimeMinutes, O as resolveDocsSkillFormat, P as resolvePageReadingTime, R as buildPageOpenGraph, S as normalizeDocsUrlPath, T as resolveDocsAgentMdxContent, U as resolveDocsLocale, V as resolveTitle, W as resolveDocsPath, Y as defineDocs, _ as isDocsAgentDiscoveryRequest, a as DEFAULT_DOCS_API_ROUTE, b as isDocsSkillRequest, c as DEFAULT_LLMS_TXT_ROUTE, d as DEFAULT_MCP_ROUTE, f as DEFAULT_MCP_WELL_KNOWN_ROUTE, g as findDocsMarkdownPage, h as buildDocsAgentDiscoverySpec, i as DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, j as resolveSidebarFolderIndexBehavior, k as applySidebarFolderIndexBehavior, l as DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, m as DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, n as DEFAULT_AGENT_SPEC_ROUTE, o as DEFAULT_LLMS_FULL_TXT_ROUTE, p as DEFAULT_SKILL_MD_ROUTE, q as deepMerge, r as DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, s as DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, t as DEFAULT_AGENT_FEEDBACK_ROUTE, u as DEFAULT_MCP_PUBLIC_ROUTE, v as isDocsMcpRequest, w as renderDocsSkillDocument, x as normalizeDocsPathSegment, y as isDocsPublicGetRequest, z as buildPageTwitter } from "./agent-COwO6Q6N.mjs";
|
|
2
|
+
import { _ as renderDocsRelatedMarkdownLines, a as createSimpleSearchAdapter, c as resolveSearchRequestConfig, d as hashGeneratedAgentContent, f as normalizeGeneratedAgentContent, g as normalizeDocsRelated, h as stripGeneratedAgentProvenance, i as createMcpSearchAdapter, l as GENERATED_AGENT_PROVENANCE_MARKER, m as serializeGeneratedAgentDocument, n as createAlgoliaSearchAdapter, o as createTypesenseSearchAdapter, p as parseGeneratedAgentDocument, r as createCustomSearchAdapter, s as performDocsSearch, t as buildDocsSearchDocuments, u as GENERATED_AGENT_PROVENANCE_VERSION, v as emitDocsAnalyticsEvent, y as resolveDocsAnalyticsConfig } from "./search-Ds3jiS2n.mjs";
|
|
3
3
|
|
|
4
|
-
export { DEFAULT_AGENT_FEEDBACK_ROUTE, DEFAULT_AGENT_SPEC_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, DEFAULT_DOCS_API_ROUTE, DEFAULT_LLMS_FULL_TXT_ROUTE, DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, DEFAULT_LLMS_TXT_ROUTE, DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, DEFAULT_MCP_PUBLIC_ROUTE, DEFAULT_MCP_ROUTE, DEFAULT_MCP_WELL_KNOWN_ROUTE, DEFAULT_SKILL_MD_ROUTE, DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, GENERATED_AGENT_PROVENANCE_MARKER, GENERATED_AGENT_PROVENANCE_VERSION, applySidebarFolderIndexBehavior, buildDocsAgentDiscoverySpec, buildDocsSearchDocuments, buildPageOpenGraph, buildPageTwitter, createAlgoliaSearchAdapter, createCustomSearchAdapter, createMcpSearchAdapter, createSimpleSearchAdapter, createTheme, createTypesenseSearchAdapter, deepMerge, defineDocs, estimateReadingTimeMinutes, extendTheme, findDocsMarkdownPage, hashGeneratedAgentContent, isDocsAgentDiscoveryRequest, isDocsMcpRequest, isDocsPublicGetRequest, isDocsSkillRequest, normalizeDocsPathSegment, normalizeDocsRelated, normalizeDocsUrlPath, normalizeGeneratedAgentContent, parseGeneratedAgentDocument, performDocsSearch, renderDocsMarkdownDocument, renderDocsRelatedMarkdownLines, renderDocsSkillDocument, resolveChangelogConfig, resolveDocsAgentMdxContent, resolveDocsI18n, resolveDocsLlmsTxtFormat, resolveDocsLocale, resolveDocsMarkdownRequest, resolveDocsPath, resolveDocsSkillFormat, resolveOGImage, resolvePageReadingTime, resolvePageSidebarFolderIndexBehavior, resolveReadingTimeFromContent, resolveReadingTimeFromSource, resolveReadingTimeOptions, resolveSearchRequestConfig, resolveSidebarFolderIndexBehavior, resolveSidebarFolderIndexBehaviorForPath, resolveTitle, serializeGeneratedAgentDocument, stripGeneratedAgentProvenance };
|
|
4
|
+
export { DEFAULT_AGENT_FEEDBACK_ROUTE, DEFAULT_AGENT_SPEC_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_JSON_ROUTE, DEFAULT_AGENT_SPEC_WELL_KNOWN_ROUTE, DEFAULT_DOCS_API_ROUTE, DEFAULT_LLMS_FULL_TXT_ROUTE, DEFAULT_LLMS_FULL_TXT_WELL_KNOWN_ROUTE, DEFAULT_LLMS_TXT_ROUTE, DEFAULT_LLMS_TXT_WELL_KNOWN_ROUTE, DEFAULT_MCP_PUBLIC_ROUTE, DEFAULT_MCP_ROUTE, DEFAULT_MCP_WELL_KNOWN_ROUTE, DEFAULT_SKILL_MD_ROUTE, DEFAULT_SKILL_MD_WELL_KNOWN_ROUTE, GENERATED_AGENT_PROVENANCE_MARKER, GENERATED_AGENT_PROVENANCE_VERSION, applySidebarFolderIndexBehavior, buildDocsAgentDiscoverySpec, buildDocsSearchDocuments, buildPageOpenGraph, buildPageTwitter, createAlgoliaSearchAdapter, createCustomSearchAdapter, createMcpSearchAdapter, createSimpleSearchAdapter, createTheme, createTypesenseSearchAdapter, deepMerge, defineDocs, emitDocsAnalyticsEvent, estimateReadingTimeMinutes, extendTheme, findDocsMarkdownPage, hashGeneratedAgentContent, isDocsAgentDiscoveryRequest, isDocsMcpRequest, isDocsPublicGetRequest, isDocsSkillRequest, normalizeDocsPathSegment, normalizeDocsRelated, normalizeDocsUrlPath, normalizeGeneratedAgentContent, parseGeneratedAgentDocument, performDocsSearch, renderDocsMarkdownDocument, renderDocsRelatedMarkdownLines, renderDocsSkillDocument, resolveChangelogConfig, resolveDocsAgentMdxContent, resolveDocsAnalyticsConfig, resolveDocsI18n, resolveDocsLlmsTxtFormat, resolveDocsLocale, resolveDocsMarkdownRequest, resolveDocsPath, resolveDocsSkillFormat, resolveOGImage, resolvePageReadingTime, resolvePageSidebarFolderIndexBehavior, resolveReadingTimeFromContent, resolveReadingTimeFromSource, resolveReadingTimeOptions, resolveSearchRequestConfig, resolveSidebarFolderIndexBehavior, resolveSidebarFolderIndexBehaviorForPath, resolveTitle, serializeGeneratedAgentDocument, stripGeneratedAgentProvenance };
|
package/dist/mcp.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { N as DocsSearchConfig, Z as OrderingItem, m as DocsAnalyticsConfig, w as DocsMcpConfig, z as DocsSearchSourcePage } from "./types-DfiAeeHu.mjs";
|
|
2
2
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
3
3
|
|
|
4
4
|
//#region src/mcp.d.ts
|
|
@@ -68,6 +68,7 @@ interface CreateDocsMcpServerOptions {
|
|
|
68
68
|
source: DocsMcpSource;
|
|
69
69
|
mcp?: boolean | DocsMcpConfig;
|
|
70
70
|
search?: boolean | DocsSearchConfig;
|
|
71
|
+
analytics?: boolean | DocsAnalyticsConfig;
|
|
71
72
|
defaultName?: string;
|
|
72
73
|
defaultVersion?: string;
|
|
73
74
|
}
|
package/dist/mcp.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as renderDocsRelatedMarkdownLines, g as normalizeDocsRelated, h as stripGeneratedAgentProvenance, s as performDocsSearch } from "./search-
|
|
1
|
+
import { _ as renderDocsRelatedMarkdownLines, g as normalizeDocsRelated, h as stripGeneratedAgentProvenance, s as performDocsSearch, v as emitDocsAnalyticsEvent } from "./search-Ds3jiS2n.mjs";
|
|
2
2
|
import matter from "gray-matter";
|
|
3
3
|
import fs from "node:fs";
|
|
4
4
|
import path from "node:path";
|
|
@@ -84,6 +84,12 @@ function createFilesystemDocsMcpSource(options = {}) {
|
|
|
84
84
|
getNavigation
|
|
85
85
|
};
|
|
86
86
|
}
|
|
87
|
+
function nowMs() {
|
|
88
|
+
return Date.now();
|
|
89
|
+
}
|
|
90
|
+
function durationMs(startedAt) {
|
|
91
|
+
return Math.max(0, Date.now() - startedAt);
|
|
92
|
+
}
|
|
87
93
|
async function createDocsMcpServer(options) {
|
|
88
94
|
const resolved = resolveDocsMcpConfig(options.mcp, {
|
|
89
95
|
defaultName: options.defaultName ?? options.source.siteTitle ?? DEFAULT_MCP_NAME,
|
|
@@ -123,7 +129,18 @@ async function createDocsMcpServer(options) {
|
|
|
123
129
|
inputSchema: listPagesInputSchema,
|
|
124
130
|
annotations: { readOnlyHint: true }
|
|
125
131
|
}, async ({ locale }) => {
|
|
132
|
+
const startedAt = nowMs();
|
|
126
133
|
const pages = toPageSummaries(dedupePages(await options.source.getPages(locale)));
|
|
134
|
+
await emitDocsAnalyticsEvent(options.analytics, {
|
|
135
|
+
type: "mcp_tool",
|
|
136
|
+
source: "mcp",
|
|
137
|
+
locale,
|
|
138
|
+
properties: {
|
|
139
|
+
tool: "list_pages",
|
|
140
|
+
resultCount: pages.length,
|
|
141
|
+
durationMs: durationMs(startedAt)
|
|
142
|
+
}
|
|
143
|
+
});
|
|
127
144
|
return { content: [{
|
|
128
145
|
type: "text",
|
|
129
146
|
text: JSON.stringify({ pages }, null, 2)
|
|
@@ -135,9 +152,20 @@ async function createDocsMcpServer(options) {
|
|
|
135
152
|
inputSchema: getNavigationInputSchema,
|
|
136
153
|
annotations: { readOnlyHint: true }
|
|
137
154
|
}, async ({ locale }) => {
|
|
155
|
+
const startedAt = nowMs();
|
|
156
|
+
const tree = await options.source.getNavigation(locale);
|
|
157
|
+
await emitDocsAnalyticsEvent(options.analytics, {
|
|
158
|
+
type: "mcp_tool",
|
|
159
|
+
source: "mcp",
|
|
160
|
+
locale,
|
|
161
|
+
properties: {
|
|
162
|
+
tool: "get_navigation",
|
|
163
|
+
durationMs: durationMs(startedAt)
|
|
164
|
+
}
|
|
165
|
+
});
|
|
138
166
|
return { content: [{
|
|
139
167
|
type: "text",
|
|
140
|
-
text: renderNavigationTree(
|
|
168
|
+
text: renderNavigationTree(tree)
|
|
141
169
|
}] };
|
|
142
170
|
});
|
|
143
171
|
if (resolved.tools.searchDocs) server.registerTool("search_docs", {
|
|
@@ -146,6 +174,7 @@ async function createDocsMcpServer(options) {
|
|
|
146
174
|
inputSchema: searchDocsInputSchema,
|
|
147
175
|
annotations: { readOnlyHint: true }
|
|
148
176
|
}, async ({ query, limit, locale }) => {
|
|
177
|
+
const startedAt = nowMs();
|
|
149
178
|
const results = await performDocsSearch({
|
|
150
179
|
pages: toSearchSourcePages(dedupePages(await options.source.getPages(locale))),
|
|
151
180
|
query,
|
|
@@ -154,6 +183,19 @@ async function createDocsMcpServer(options) {
|
|
|
154
183
|
siteTitle: options.source.siteTitle,
|
|
155
184
|
limit: limit ?? 10
|
|
156
185
|
});
|
|
186
|
+
await emitDocsAnalyticsEvent(options.analytics, {
|
|
187
|
+
type: "mcp_tool",
|
|
188
|
+
source: "mcp",
|
|
189
|
+
locale,
|
|
190
|
+
input: { query },
|
|
191
|
+
properties: {
|
|
192
|
+
tool: "search_docs",
|
|
193
|
+
queryLength: query.length,
|
|
194
|
+
limit: limit ?? 10,
|
|
195
|
+
resultCount: results.length,
|
|
196
|
+
durationMs: durationMs(startedAt)
|
|
197
|
+
}
|
|
198
|
+
});
|
|
157
199
|
return { content: [{
|
|
158
200
|
type: "text",
|
|
159
201
|
text: JSON.stringify({ results }, null, 2)
|
|
@@ -165,17 +207,73 @@ async function createDocsMcpServer(options) {
|
|
|
165
207
|
inputSchema: readPageInputSchema,
|
|
166
208
|
annotations: { readOnlyHint: true }
|
|
167
209
|
}, async ({ path: requestedPath, locale }) => {
|
|
210
|
+
const startedAt = nowMs();
|
|
168
211
|
const page = findDocsPage(dedupePages(await options.source.getPages(locale)), requestedPath, options.source.entry);
|
|
169
|
-
if (!page)
|
|
170
|
-
|
|
171
|
-
type: "
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
212
|
+
if (!page) {
|
|
213
|
+
await emitDocsAnalyticsEvent(options.analytics, {
|
|
214
|
+
type: "agent_read",
|
|
215
|
+
source: "mcp",
|
|
216
|
+
locale,
|
|
217
|
+
properties: {
|
|
218
|
+
delivery: "mcp_tool",
|
|
219
|
+
tool: "read_page",
|
|
220
|
+
requestedPath,
|
|
221
|
+
found: false,
|
|
222
|
+
durationMs: durationMs(startedAt)
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
await emitDocsAnalyticsEvent(options.analytics, {
|
|
226
|
+
type: "mcp_tool",
|
|
227
|
+
source: "mcp",
|
|
228
|
+
locale,
|
|
229
|
+
properties: {
|
|
230
|
+
tool: "read_page",
|
|
231
|
+
path: requestedPath,
|
|
232
|
+
found: false,
|
|
233
|
+
durationMs: durationMs(startedAt)
|
|
234
|
+
}
|
|
235
|
+
});
|
|
236
|
+
return {
|
|
237
|
+
content: [{
|
|
238
|
+
type: "text",
|
|
239
|
+
text: JSON.stringify({ error: `No docs page matched "${requestedPath}".` }, null, 2)
|
|
240
|
+
}],
|
|
241
|
+
isError: true
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
const document = renderPageDocument(page);
|
|
245
|
+
await emitDocsAnalyticsEvent(options.analytics, {
|
|
246
|
+
type: "agent_read",
|
|
247
|
+
source: "mcp",
|
|
248
|
+
locale,
|
|
249
|
+
path: page.url,
|
|
250
|
+
properties: {
|
|
251
|
+
delivery: "mcp_tool",
|
|
252
|
+
tool: "read_page",
|
|
253
|
+
requestedPath,
|
|
254
|
+
slug: page.slug,
|
|
255
|
+
found: true,
|
|
256
|
+
contentLength: document.length,
|
|
257
|
+
durationMs: durationMs(startedAt)
|
|
258
|
+
}
|
|
259
|
+
});
|
|
260
|
+
await emitDocsAnalyticsEvent(options.analytics, {
|
|
261
|
+
type: "mcp_tool",
|
|
262
|
+
source: "mcp",
|
|
263
|
+
locale,
|
|
264
|
+
path: page.url,
|
|
265
|
+
properties: {
|
|
266
|
+
tool: "read_page",
|
|
267
|
+
requestedPath,
|
|
268
|
+
slug: page.slug,
|
|
269
|
+
found: true,
|
|
270
|
+
contentLength: document.length,
|
|
271
|
+
durationMs: durationMs(startedAt)
|
|
272
|
+
}
|
|
273
|
+
});
|
|
176
274
|
return { content: [{
|
|
177
275
|
type: "text",
|
|
178
|
-
text:
|
|
276
|
+
text: document
|
|
179
277
|
}] };
|
|
180
278
|
});
|
|
181
279
|
return server;
|
|
@@ -213,6 +311,7 @@ function createDocsMcpHttpHandler(options) {
|
|
|
213
311
|
};
|
|
214
312
|
}
|
|
215
313
|
async function handle(request) {
|
|
314
|
+
const url = new URL(request.url);
|
|
216
315
|
const method = request.method.toUpperCase();
|
|
217
316
|
const sessionId = request.headers.get("mcp-session-id") ?? request.headers.get("Mcp-Session-Id");
|
|
218
317
|
const existing = sessionId ? sessions.get(sessionId) : void 0;
|
|
@@ -223,6 +322,17 @@ function createDocsMcpHttpHandler(options) {
|
|
|
223
322
|
parsedBody = void 0;
|
|
224
323
|
}
|
|
225
324
|
const initializeRequest = method === "POST" && parsedBody && isInitializeRequest(parsedBody);
|
|
325
|
+
await emitDocsAnalyticsEvent(options.analytics, {
|
|
326
|
+
type: "mcp_request",
|
|
327
|
+
source: "mcp",
|
|
328
|
+
url: request.url,
|
|
329
|
+
path: url.pathname,
|
|
330
|
+
properties: {
|
|
331
|
+
method,
|
|
332
|
+
hasSession: Boolean(existing),
|
|
333
|
+
initialize: Boolean(initializeRequest)
|
|
334
|
+
}
|
|
335
|
+
});
|
|
226
336
|
if (!existing) {
|
|
227
337
|
if (!initializeRequest) return createJsonErrorResponse(method === "DELETE" ? 404 : 400, "MCP session not initialized. Start with an initialize request against this endpoint.");
|
|
228
338
|
return (await createSession()).transport.handleRequest(request, parsedBody === void 0 ? void 0 : { parsedBody });
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as createAlgoliaSearchAdapter, o as createTypesenseSearchAdapter, t as buildDocsSearchDocuments } from "./search-
|
|
1
|
+
import { n as createAlgoliaSearchAdapter, o as createTypesenseSearchAdapter, t as buildDocsSearchDocuments } from "./search-Ds3jiS2n.mjs";
|
|
2
2
|
import "./prompt-utils-8nmFLQVH.mjs";
|
|
3
3
|
import { createFilesystemDocsMcpSource } from "./mcp.mjs";
|
|
4
4
|
import "./server.mjs";
|
|
@@ -1,3 +1,52 @@
|
|
|
1
|
+
//#region src/analytics.ts
|
|
2
|
+
function resolveConsoleLevel(value, hasEventHandler) {
|
|
3
|
+
if (value === false) return false;
|
|
4
|
+
if (value === true) return "info";
|
|
5
|
+
if (value === "log" || value === "info" || value === "debug") return value;
|
|
6
|
+
return hasEventHandler ? false : "info";
|
|
7
|
+
}
|
|
8
|
+
function resolveDocsAnalyticsConfig(analytics) {
|
|
9
|
+
if (!analytics) return {
|
|
10
|
+
enabled: false,
|
|
11
|
+
console: false,
|
|
12
|
+
includeInputs: false
|
|
13
|
+
};
|
|
14
|
+
if (analytics === true) return {
|
|
15
|
+
enabled: true,
|
|
16
|
+
console: "info",
|
|
17
|
+
includeInputs: false
|
|
18
|
+
};
|
|
19
|
+
const hasEventHandler = typeof analytics.onEvent === "function";
|
|
20
|
+
return {
|
|
21
|
+
enabled: analytics.enabled !== false,
|
|
22
|
+
console: resolveConsoleLevel(analytics.console, hasEventHandler),
|
|
23
|
+
includeInputs: analytics.includeInputs === true,
|
|
24
|
+
onEvent: analytics.onEvent
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
function normalizeAnalyticsEvent(event, config) {
|
|
28
|
+
const normalized = {
|
|
29
|
+
...event,
|
|
30
|
+
source: event.source ?? "server",
|
|
31
|
+
timestamp: event.timestamp ?? (/* @__PURE__ */ new Date()).toISOString()
|
|
32
|
+
};
|
|
33
|
+
if (!config.includeInputs && normalized.input) delete normalized.input;
|
|
34
|
+
return normalized;
|
|
35
|
+
}
|
|
36
|
+
async function emitDocsAnalyticsEvent(analytics, event) {
|
|
37
|
+
const resolved = resolveDocsAnalyticsConfig(analytics);
|
|
38
|
+
if (!resolved.enabled) return;
|
|
39
|
+
const normalized = normalizeAnalyticsEvent(event, resolved);
|
|
40
|
+
if (resolved.console) (console[resolved.console] ?? console.info).call(console, "[farming-labs:analytics]", normalized);
|
|
41
|
+
if (!resolved.onEvent) return;
|
|
42
|
+
try {
|
|
43
|
+
await resolved.onEvent(normalized);
|
|
44
|
+
} catch (error) {
|
|
45
|
+
if (resolved.console !== false) console.warn("[farming-labs:analytics] onEvent failed", error);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
//#endregion
|
|
1
50
|
//#region src/related.ts
|
|
2
51
|
function normalizeDocsRelated(value) {
|
|
3
52
|
if (!Array.isArray(value)) return [];
|
|
@@ -793,4 +842,4 @@ function createCustomSearchAdapter(adapter) {
|
|
|
793
842
|
}
|
|
794
843
|
|
|
795
844
|
//#endregion
|
|
796
|
-
export { renderDocsRelatedMarkdownLines as _, createSimpleSearchAdapter as a, resolveSearchRequestConfig as c, hashGeneratedAgentContent as d, normalizeGeneratedAgentContent as f, normalizeDocsRelated as g, stripGeneratedAgentProvenance as h, createMcpSearchAdapter as i, GENERATED_AGENT_PROVENANCE_MARKER as l, serializeGeneratedAgentDocument as m, createAlgoliaSearchAdapter as n, createTypesenseSearchAdapter as o, parseGeneratedAgentDocument as p, createCustomSearchAdapter as r, performDocsSearch as s, buildDocsSearchDocuments as t, GENERATED_AGENT_PROVENANCE_VERSION as u };
|
|
845
|
+
export { renderDocsRelatedMarkdownLines as _, createSimpleSearchAdapter as a, resolveSearchRequestConfig as c, hashGeneratedAgentContent as d, normalizeGeneratedAgentContent as f, normalizeDocsRelated as g, stripGeneratedAgentProvenance as h, createMcpSearchAdapter as i, GENERATED_AGENT_PROVENANCE_MARKER as l, serializeGeneratedAgentDocument as m, createAlgoliaSearchAdapter as n, createTypesenseSearchAdapter as o, parseGeneratedAgentDocument as p, createCustomSearchAdapter as r, performDocsSearch as s, buildDocsSearchDocuments as t, GENERATED_AGENT_PROVENANCE_VERSION as u, emitDocsAnalyticsEvent as v, resolveDocsAnalyticsConfig as y };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { K as McpDocsSearchConfig, L as DocsSearchResult, M as DocsSearchChunkingConfig, N as DocsSearchConfig, P as DocsSearchDocument, d as CustomDocsSearchConfig, g as DocsAnalyticsEventInput, h as DocsAnalyticsEvent, j as DocsSearchAdapterFactory, k as DocsSearchAdapter, m as DocsAnalyticsConfig, mt as TypesenseDocsSearchConfig, r as AlgoliaDocsSearchConfig, z as DocsSearchSourcePage } from "./types-DfiAeeHu.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/analytics.d.ts
|
|
4
|
+
interface ResolvedDocsAnalyticsConfig {
|
|
5
|
+
enabled: boolean;
|
|
6
|
+
console: false | "log" | "info" | "debug";
|
|
7
|
+
includeInputs: boolean;
|
|
8
|
+
onEvent?: (event: DocsAnalyticsEvent) => void | Promise<void>;
|
|
9
|
+
}
|
|
10
|
+
declare function resolveDocsAnalyticsConfig(analytics?: boolean | DocsAnalyticsConfig): ResolvedDocsAnalyticsConfig;
|
|
11
|
+
declare function emitDocsAnalyticsEvent(analytics: boolean | DocsAnalyticsConfig | undefined, event: DocsAnalyticsEventInput): Promise<void>;
|
|
12
|
+
//#endregion
|
|
13
|
+
//#region src/search.d.ts
|
|
14
|
+
declare function buildDocsSearchDocuments(pages: DocsSearchSourcePage[], chunking?: DocsSearchChunkingConfig): DocsSearchDocument[];
|
|
15
|
+
declare function createSimpleSearchAdapter(): DocsSearchAdapter;
|
|
16
|
+
declare function createTypesenseSearchAdapter(config: TypesenseDocsSearchConfig): DocsSearchAdapter;
|
|
17
|
+
declare function resolveSearchRequestConfig(search: boolean | DocsSearchConfig | undefined, requestUrl?: string): boolean | DocsSearchConfig | undefined;
|
|
18
|
+
declare function createMcpSearchAdapter(config: McpDocsSearchConfig): DocsSearchAdapter;
|
|
19
|
+
declare function createAlgoliaSearchAdapter(config: AlgoliaDocsSearchConfig): DocsSearchAdapter;
|
|
20
|
+
declare function performDocsSearch(options: {
|
|
21
|
+
pages: DocsSearchSourcePage[];
|
|
22
|
+
query: string;
|
|
23
|
+
search?: boolean | DocsSearchConfig;
|
|
24
|
+
locale?: string;
|
|
25
|
+
pathname?: string;
|
|
26
|
+
siteTitle?: string;
|
|
27
|
+
limit?: number;
|
|
28
|
+
}): Promise<DocsSearchResult[]>;
|
|
29
|
+
declare function createCustomSearchAdapter(adapter: DocsSearchAdapter | DocsSearchAdapterFactory): CustomDocsSearchConfig;
|
|
30
|
+
//#endregion
|
|
31
|
+
export { createSimpleSearchAdapter as a, resolveSearchRequestConfig as c, resolveDocsAnalyticsConfig as d, createMcpSearchAdapter as i, ResolvedDocsAnalyticsConfig as l, createAlgoliaSearchAdapter as n, createTypesenseSearchAdapter as o, createCustomSearchAdapter as r, performDocsSearch as s, buildDocsSearchDocuments as t, emitDocsAnalyticsEvent as u };
|
package/dist/server.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { A as DocsSearchQuery,
|
|
1
|
+
import { A as DocsSearchAdapterContext, I as DocsSearchQuery, K as McpDocsSearchConfig, L as DocsSearchResult, N as DocsSearchConfig, P as DocsSearchDocument, Y as OpenDocsProvider, a as ApiReferenceRenderer, b as DocsConfig, g as DocsAnalyticsEventInput, h as DocsAnalyticsEvent, j as DocsSearchAdapterFactory, k as DocsSearchAdapter, m as DocsAnalyticsConfig, z as DocsSearchSourcePage } from "./types-DfiAeeHu.mjs";
|
|
2
|
+
import { a as createSimpleSearchAdapter, c as resolveSearchRequestConfig, d as resolveDocsAnalyticsConfig, i as createMcpSearchAdapter, l as ResolvedDocsAnalyticsConfig, n as createAlgoliaSearchAdapter, o as createTypesenseSearchAdapter, r as createCustomSearchAdapter, s as performDocsSearch, t as buildDocsSearchDocuments, u as emitDocsAnalyticsEvent } from "./search-HlwTDHCK.mjs";
|
|
2
3
|
import { DocsMcpHttpHandlers, DocsMcpNavigationNode, DocsMcpNavigationTree, DocsMcpPage, DocsMcpResolvedConfig, DocsMcpSource, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, normalizeDocsMcpRoute, resolveDocsMcpConfig, runDocsMcpStdio } from "./mcp.mjs";
|
|
3
|
-
import { a as createSimpleSearchAdapter, c as resolveSearchRequestConfig, i as createMcpSearchAdapter, n as createAlgoliaSearchAdapter, o as createTypesenseSearchAdapter, r as createCustomSearchAdapter, s as performDocsSearch, t as buildDocsSearchDocuments } from "./search-COePaQmH.mjs";
|
|
4
4
|
|
|
5
5
|
//#region src/api-reference.d.ts
|
|
6
6
|
type HttpMethod = "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS" | "HEAD";
|
|
@@ -63,4 +63,4 @@ declare function parsePromptStringArray(value: unknown): string[] | undefined;
|
|
|
63
63
|
declare function resolvePromptProviderChoices(availableProviders?: PromptProviderInput[], preferredNames?: string[]): PromptProviderChoice[];
|
|
64
64
|
declare function sanitizePromptText(text: string): string;
|
|
65
65
|
//#endregion
|
|
66
|
-
export { type ApiReferenceFramework, type ApiReferenceRenderer, type ApiReferenceRoute, DEFAULT_PROMPT_PROVIDER_TEMPLATES, type DocsMcpHttpHandlers, type DocsMcpNavigationNode, type DocsMcpNavigationTree, type DocsMcpPage, type DocsMcpResolvedConfig, type DocsMcpSource, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchQuery, type DocsSearchResult, type DocsSearchSourcePage, type McpDocsSearchConfig, type PromptAction, type PromptProviderChoice, type ResolvedApiReferenceConfig, type SerializedOpenDocsProvider, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsSearchDocuments, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, normalizeDocsMcpRoute, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, resolveApiReferenceConfig, resolveApiReferenceRenderer, resolveDocsMcpConfig, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProviders };
|
|
66
|
+
export { type ApiReferenceFramework, type ApiReferenceRenderer, type ApiReferenceRoute, DEFAULT_PROMPT_PROVIDER_TEMPLATES, type DocsAnalyticsConfig, type DocsAnalyticsEvent, type DocsAnalyticsEventInput, type DocsMcpHttpHandlers, type DocsMcpNavigationNode, type DocsMcpNavigationTree, type DocsMcpPage, type DocsMcpResolvedConfig, type DocsMcpSource, type DocsSearchAdapter, type DocsSearchAdapterContext, type DocsSearchAdapterFactory, type DocsSearchConfig, type DocsSearchDocument, type DocsSearchQuery, type DocsSearchResult, type DocsSearchSourcePage, type McpDocsSearchConfig, type PromptAction, type PromptProviderChoice, type ResolvedApiReferenceConfig, type ResolvedDocsAnalyticsConfig, type SerializedOpenDocsProvider, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsSearchDocuments, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, emitDocsAnalyticsEvent, normalizeDocsMcpRoute, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, resolveApiReferenceConfig, resolveApiReferenceRenderer, resolveDocsAnalyticsConfig, resolveDocsMcpConfig, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProviders };
|
package/dist/server.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as createSimpleSearchAdapter, c as resolveSearchRequestConfig, i as createMcpSearchAdapter, n as createAlgoliaSearchAdapter, o as createTypesenseSearchAdapter, r as createCustomSearchAdapter, s as performDocsSearch, t as buildDocsSearchDocuments } from "./search-
|
|
1
|
+
import { a as createSimpleSearchAdapter, c as resolveSearchRequestConfig, i as createMcpSearchAdapter, n as createAlgoliaSearchAdapter, o as createTypesenseSearchAdapter, r as createCustomSearchAdapter, s as performDocsSearch, t as buildDocsSearchDocuments, v as emitDocsAnalyticsEvent, y as resolveDocsAnalyticsConfig } from "./search-Ds3jiS2n.mjs";
|
|
2
2
|
import { a as sanitizePromptText, c as serializeOpenDocsProviders, d as buildApiReferenceOpenApiDocument, f as buildApiReferenceOpenApiDocumentAsync, g as resolveApiReferenceRenderer, h as resolveApiReferenceConfig, i as resolvePromptProviderChoices, l as buildApiReferenceHtmlDocument, m as buildApiReferenceScalarCss, n as normalizePromptProviderName, o as serializeDocsIcon, p as buildApiReferencePageTitle, r as parsePromptStringArray, s as serializeDocsIconRegistry, t as DEFAULT_PROMPT_PROVIDER_TEMPLATES, u as buildApiReferenceHtmlDocumentAsync } from "./prompt-utils-8nmFLQVH.mjs";
|
|
3
3
|
import { createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, normalizeDocsMcpRoute, resolveDocsMcpConfig, runDocsMcpStdio } from "./mcp.mjs";
|
|
4
4
|
|
|
5
|
-
export { DEFAULT_PROMPT_PROVIDER_TEMPLATES, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsSearchDocuments, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, normalizeDocsMcpRoute, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, resolveApiReferenceConfig, resolveApiReferenceRenderer, resolveDocsMcpConfig, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProviders };
|
|
5
|
+
export { DEFAULT_PROMPT_PROVIDER_TEMPLATES, buildApiReferenceHtmlDocument, buildApiReferenceHtmlDocumentAsync, buildApiReferenceOpenApiDocument, buildApiReferenceOpenApiDocumentAsync, buildApiReferencePageTitle, buildApiReferenceScalarCss, buildDocsSearchDocuments, createAlgoliaSearchAdapter, createCustomSearchAdapter, createDocsMcpHttpHandler, createDocsMcpServer, createFilesystemDocsMcpSource, createMcpSearchAdapter, createSimpleSearchAdapter, createTypesenseSearchAdapter, emitDocsAnalyticsEvent, normalizeDocsMcpRoute, normalizePromptProviderName, parsePromptStringArray, performDocsSearch, resolveApiReferenceConfig, resolveApiReferenceRenderer, resolveDocsAnalyticsConfig, resolveDocsMcpConfig, resolvePromptProviderChoices, resolveSearchRequestConfig, runDocsMcpStdio, sanitizePromptText, serializeDocsIcon, serializeDocsIconRegistry, serializeOpenDocsProviders };
|
|
@@ -630,6 +630,50 @@ interface PageActionsConfig {
|
|
|
630
630
|
*/
|
|
631
631
|
alignment?: "left" | "right";
|
|
632
632
|
}
|
|
633
|
+
type DocsAnalyticsSource = "client" | "server" | "mcp";
|
|
634
|
+
type DocsAnalyticsEventType = "page_view" | "search_open" | "search_close" | "search_query" | "search_result_click" | "search_error" | "ai_open" | "ai_close" | "ai_question" | "ai_response" | "ai_error" | "ai_clear" | "page_action_copy_markdown" | "page_action_open_docs_menu" | "page_action_open_docs" | "code_block_copy" | "feedback_select" | "feedback_submit" | "feedback_error" | "agent_read" | "agent_spec_request" | "agent_feedback_schema" | "agent_feedback_submit" | "agent_feedback_error" | "markdown_request" | "llms_request" | "skill_request" | "api_search" | "api_ai_request" | "api_ai_response" | "api_ai_error" | "mcp_request" | "mcp_tool";
|
|
635
|
+
interface DocsAnalyticsInput {
|
|
636
|
+
query?: string;
|
|
637
|
+
question?: string;
|
|
638
|
+
feedbackComment?: string;
|
|
639
|
+
content?: string;
|
|
640
|
+
}
|
|
641
|
+
interface DocsAnalyticsEvent {
|
|
642
|
+
type: DocsAnalyticsEventType | (string & {});
|
|
643
|
+
timestamp: string;
|
|
644
|
+
source: DocsAnalyticsSource;
|
|
645
|
+
url?: string;
|
|
646
|
+
path?: string;
|
|
647
|
+
referrer?: string;
|
|
648
|
+
locale?: string;
|
|
649
|
+
input?: DocsAnalyticsInput;
|
|
650
|
+
properties?: Record<string, unknown>;
|
|
651
|
+
}
|
|
652
|
+
type DocsAnalyticsEventInput = Omit<DocsAnalyticsEvent, "timestamp" | "source"> & {
|
|
653
|
+
timestamp?: string;
|
|
654
|
+
source?: DocsAnalyticsSource;
|
|
655
|
+
};
|
|
656
|
+
interface DocsAnalyticsConfig {
|
|
657
|
+
/** Enable analytics event emission. Defaults to `true` when this object is provided. */
|
|
658
|
+
enabled?: boolean;
|
|
659
|
+
/**
|
|
660
|
+
* Log analytics events to the console.
|
|
661
|
+
*
|
|
662
|
+
* `analytics: true` logs with `console.info`. When `onEvent` is provided,
|
|
663
|
+
* console logging is disabled unless this is set.
|
|
664
|
+
*/
|
|
665
|
+
console?: boolean | "log" | "info" | "debug";
|
|
666
|
+
/**
|
|
667
|
+
* Include raw search queries, AI questions, feedback comments, and copied
|
|
668
|
+
* content in emitted events.
|
|
669
|
+
*
|
|
670
|
+
* Defaults to `false`; events still include safe metadata such as lengths,
|
|
671
|
+
* counts, routes, status, and duration.
|
|
672
|
+
*/
|
|
673
|
+
includeInputs?: boolean;
|
|
674
|
+
/** Callback fired for every analytics event. */
|
|
675
|
+
onEvent?: (event: DocsAnalyticsEvent) => void | Promise<void>;
|
|
676
|
+
}
|
|
633
677
|
/**
|
|
634
678
|
* Configuration for the "Last updated" date display.
|
|
635
679
|
*
|
|
@@ -1624,6 +1668,17 @@ interface DocsConfig {
|
|
|
1624
1668
|
staticExport?: boolean;
|
|
1625
1669
|
/** Theme configuration - single source of truth for UI */
|
|
1626
1670
|
theme?: DocsTheme;
|
|
1671
|
+
/**
|
|
1672
|
+
* Built-in analytics event stream for docs interactions.
|
|
1673
|
+
*
|
|
1674
|
+
* - `false` or omitted -> analytics disabled (default)
|
|
1675
|
+
* - `true` -> log all framework events to the console
|
|
1676
|
+
* - `{ onEvent(event) { ... } }` -> send events to your analytics sink
|
|
1677
|
+
*
|
|
1678
|
+
* Raw queries, AI questions, feedback comments, and copied content are not
|
|
1679
|
+
* included unless `includeInputs: true` is set.
|
|
1680
|
+
*/
|
|
1681
|
+
analytics?: boolean | DocsAnalyticsConfig;
|
|
1627
1682
|
/**
|
|
1628
1683
|
* GitHub repository URL or config. Enables "Edit on GitHub" links
|
|
1629
1684
|
* on each docs page footer, pointing to the source `.mdx` file.
|
|
@@ -1989,4 +2044,4 @@ interface DocsConfig {
|
|
|
1989
2044
|
og?: OGConfig;
|
|
1990
2045
|
}
|
|
1991
2046
|
//#endregion
|
|
1992
|
-
export {
|
|
2047
|
+
export { PageFrontmatter as $, DocsSearchAdapterContext as A, DocsTheme as B, DocsI18nConfig as C, DocsNav as D, DocsMetadata as E, DocsSearchEmbeddingsConfig as F, LlmsTxtConfig as G, FontStyle as H, DocsSearchQuery as I, OpenDocsConfig as J, McpDocsSearchConfig as K, DocsSearchResult as L, DocsSearchChunkingConfig as M, DocsSearchConfig as N, DocsRelatedItem as O, DocsSearchDocument as P, PageActionsConfig as Q, DocsSearchResultType as R, DocsFeedbackValue as S, DocsMcpToolsConfig as T, GithubConfig as U, FeedbackConfig as V, LastUpdatedConfig as W, OpenGraphImage as X, OpenDocsProvider as Y, OrderingItem as Z, DocsAnalyticsEventType as _, ApiReferenceRenderer as a, SidebarComponentProps as at, DocsConfig as b, ChangelogFrontmatter as c, SidebarFolderNode as ct, CustomDocsSearchConfig as d, SidebarTree as dt, PageOpenGraph as et, DocsAgentFeedbackContext as f, SimpleDocsSearchConfig as ft, DocsAnalyticsEventInput as g, UIConfig as gt, DocsAnalyticsEvent as h, TypographyConfig as ht, ApiReferenceConfig as i, ResolvedDocsRelatedLink as it, DocsSearchAdapterFactory as j, DocsSearchAdapter as k, CodeBlockCopyData as l, SidebarNode as lt, DocsAnalyticsConfig as m, TypesenseDocsSearchConfig as mt, AgentFeedbackConfig as n, PageTwitter as nt, BreadcrumbConfig as o, SidebarConfig as ot, DocsAgentFeedbackData as p, ThemeToggleConfig as pt, OGConfig as q, AlgoliaDocsSearchConfig as r, ReadingTimeConfig as rt, ChangelogConfig as s, SidebarFolderIndexBehavior as st, AIConfig as t, PageSidebarFrontmatter as tt, CopyMarkdownConfig as u, SidebarPageNode as ut, DocsAnalyticsInput as v, DocsMcpConfig as w, DocsFeedbackData as x, DocsAnalyticsSource as y, DocsSearchSourcePage as z };
|
package/package.json
CHANGED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { B as McpDocsSearchConfig, C as DocsSearchAdapter, D as DocsSearchConfig, E as DocsSearchChunkingConfig, N as DocsSearchSourcePage, O as DocsSearchDocument, T as DocsSearchAdapterFactory, ct as TypesenseDocsSearchConfig, d as CustomDocsSearchConfig, j as DocsSearchResult, r as AlgoliaDocsSearchConfig } from "./types-G-xf-4_c.mjs";
|
|
2
|
-
|
|
3
|
-
//#region src/search.d.ts
|
|
4
|
-
declare function buildDocsSearchDocuments(pages: DocsSearchSourcePage[], chunking?: DocsSearchChunkingConfig): DocsSearchDocument[];
|
|
5
|
-
declare function createSimpleSearchAdapter(): DocsSearchAdapter;
|
|
6
|
-
declare function createTypesenseSearchAdapter(config: TypesenseDocsSearchConfig): DocsSearchAdapter;
|
|
7
|
-
declare function resolveSearchRequestConfig(search: boolean | DocsSearchConfig | undefined, requestUrl?: string): boolean | DocsSearchConfig | undefined;
|
|
8
|
-
declare function createMcpSearchAdapter(config: McpDocsSearchConfig): DocsSearchAdapter;
|
|
9
|
-
declare function createAlgoliaSearchAdapter(config: AlgoliaDocsSearchConfig): DocsSearchAdapter;
|
|
10
|
-
declare function performDocsSearch(options: {
|
|
11
|
-
pages: DocsSearchSourcePage[];
|
|
12
|
-
query: string;
|
|
13
|
-
search?: boolean | DocsSearchConfig;
|
|
14
|
-
locale?: string;
|
|
15
|
-
pathname?: string;
|
|
16
|
-
siteTitle?: string;
|
|
17
|
-
limit?: number;
|
|
18
|
-
}): Promise<DocsSearchResult[]>;
|
|
19
|
-
declare function createCustomSearchAdapter(adapter: DocsSearchAdapter | DocsSearchAdapterFactory): CustomDocsSearchConfig;
|
|
20
|
-
//#endregion
|
|
21
|
-
export { createSimpleSearchAdapter as a, resolveSearchRequestConfig as c, createMcpSearchAdapter as i, createAlgoliaSearchAdapter as n, createTypesenseSearchAdapter as o, createCustomSearchAdapter as r, performDocsSearch as s, buildDocsSearchDocuments as t };
|