keywordgraph-mcp-server 1.9.1 → 1.9.5
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/README.md +19 -11
- package/dist/config/brand.d.ts.map +1 -1
- package/dist/config/brand.js +1 -0
- package/dist/config/brand.js.map +1 -1
- package/dist/config/models.d.ts +7 -0
- package/dist/config/models.d.ts.map +1 -0
- package/dist/config/models.js +26 -0
- package/dist/config/models.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/instructions.js +4 -4
- package/dist/resources/about.d.ts.map +1 -1
- package/dist/resources/about.js +3 -2
- package/dist/resources/about.js.map +1 -1
- package/dist/schemas/index.d.ts +130 -71
- package/dist/schemas/index.d.ts.map +1 -1
- package/dist/schemas/index.js +131 -200
- package/dist/schemas/index.js.map +1 -1
- package/dist/tools/analyzeLlmResults.d.ts +1 -1
- package/dist/tools/analyzeLlmResults.d.ts.map +1 -1
- package/dist/tools/analyzeLlmResults.js +4 -1
- package/dist/tools/analyzeLlmResults.js.map +1 -1
- package/dist/tools/createKnowledgeGraph.d.ts +5 -2
- package/dist/tools/createKnowledgeGraph.d.ts.map +1 -1
- package/dist/tools/createKnowledgeGraph.js +23 -5
- package/dist/tools/createKnowledgeGraph.js.map +1 -1
- package/dist/tools/developConceptualBridges.d.ts +1 -1
- package/dist/tools/developConceptualBridges.d.ts.map +1 -1
- package/dist/tools/developConceptualBridges.js +3 -2
- package/dist/tools/developConceptualBridges.js.map +1 -1
- package/dist/tools/developLatentTopics.d.ts +1 -1
- package/dist/tools/developLatentTopics.d.ts.map +1 -1
- package/dist/tools/developLatentTopics.js +3 -2
- package/dist/tools/developLatentTopics.js.map +1 -1
- package/dist/tools/developTextTool.d.ts +1 -1
- package/dist/tools/developTextTool.d.ts.map +1 -1
- package/dist/tools/developTextTool.js +10 -6
- package/dist/tools/developTextTool.js.map +1 -1
- package/dist/tools/generateKnowledgeGraph.d.ts +5 -2
- package/dist/tools/generateKnowledgeGraph.d.ts.map +1 -1
- package/dist/tools/generateKnowledgeGraph.js +21 -7
- package/dist/tools/generateKnowledgeGraph.js.map +1 -1
- package/dist/tools/generateOntologyGraph.d.ts +3 -3
- package/dist/tools/generateOntologyGraph.d.ts.map +1 -1
- package/dist/tools/generateOntologyGraph.js +11 -20
- package/dist/tools/generateOntologyGraph.js.map +1 -1
- package/dist/tools/generateResearchIdeas.d.ts +2 -1
- package/dist/tools/generateResearchIdeas.d.ts.map +1 -1
- package/dist/tools/generateResearchIdeas.js +7 -5
- package/dist/tools/generateResearchIdeas.js.map +1 -1
- package/dist/tools/generateResearchQuestions.d.ts +2 -1
- package/dist/tools/generateResearchQuestions.d.ts.map +1 -1
- package/dist/tools/generateResearchQuestions.js +7 -5
- package/dist/tools/generateResearchQuestions.js.map +1 -1
- package/dist/tools/generateResponses.d.ts +1 -1
- package/dist/tools/generateResponses.d.ts.map +1 -1
- package/dist/tools/generateResponses.js +3 -2
- package/dist/tools/generateResponses.js.map +1 -1
- package/dist/tools/getGraphAroundTerm.d.ts +32 -0
- package/dist/tools/getGraphAroundTerm.d.ts.map +1 -0
- package/dist/tools/getGraphAroundTerm.js +69 -0
- package/dist/tools/getGraphAroundTerm.js.map +1 -0
- package/dist/tools/getNodeNeighborhood.d.ts.map +1 -1
- package/dist/tools/getNodeNeighborhood.js +4 -2
- package/dist/tools/getNodeNeighborhood.js.map +1 -1
- package/dist/tools/getTermGraph.d.ts +32 -0
- package/dist/tools/getTermGraph.d.ts.map +1 -0
- package/dist/tools/getTermGraph.js +69 -0
- package/dist/tools/getTermGraph.js.map +1 -0
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +1 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/optimizeKnowledgeBase.d.ts +4 -2
- package/dist/tools/optimizeKnowledgeBase.d.ts.map +1 -1
- package/dist/tools/optimizeKnowledgeBase.js +18 -6
- package/dist/tools/optimizeKnowledgeBase.js.map +1 -1
- package/dist/tools/optimizeReasoning.d.ts +1 -1
- package/dist/tools/optimizeReasoning.d.ts.map +1 -1
- package/dist/tools/optimizeReasoning.js +2 -1
- package/dist/tools/optimizeReasoning.js.map +1 -1
- package/dist/tools/optimizeTextStructure.d.ts +1 -1
- package/dist/tools/optimizeTextStructure.d.ts.map +1 -1
- package/dist/tools/optimizeTextStructure.js +3 -2
- package/dist/tools/optimizeTextStructure.js.map +1 -1
- package/dist/tools/searchGraphs.d.ts.map +1 -1
- package/dist/tools/searchGraphs.js +2 -1
- package/dist/tools/searchGraphs.js.map +1 -1
- package/dist/types/index.d.ts +16 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/aiKnowledgeGraph.d.ts +45 -0
- package/dist/utils/aiKnowledgeGraph.d.ts.map +1 -0
- package/dist/utils/aiKnowledgeGraph.js +77 -0
- package/dist/utils/aiKnowledgeGraph.js.map +1 -0
- package/dist/utils/chunkByLines.d.ts +3 -0
- package/dist/utils/chunkByLines.d.ts.map +1 -0
- package/dist/utils/chunkByLines.js +19 -0
- package/dist/utils/chunkByLines.js.map +1 -0
- package/dist/utils/transformers.d.ts +7 -0
- package/dist/utils/transformers.d.ts.map +1 -1
- package/dist/utils/transformers.js +32 -0
- package/dist/utils/transformers.js.map +1 -1
- package/dist/utils/wikilinksMode.d.ts +9 -0
- package/dist/utils/wikilinksMode.d.ts.map +1 -1
- package/dist/utils/wikilinksMode.js +6 -4
- package/dist/utils/wikilinksMode.js.map +1 -1
- package/llms-full.infranodus.txt +17 -11
- package/llms-full.keywordgraph.txt +9 -6
- package/llms-full.txt +17 -11
- package/package.json +1 -1
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { GetGraphAroundTermSchema } from "../schemas/index.js";
|
|
3
|
+
export declare const getGraphAroundTermTool: {
|
|
4
|
+
name: string;
|
|
5
|
+
definition: {
|
|
6
|
+
title: string;
|
|
7
|
+
description: string;
|
|
8
|
+
inputSchema: {
|
|
9
|
+
terms: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
|
|
10
|
+
matchAll: z.ZodDefault<z.ZodBoolean>;
|
|
11
|
+
graphNames: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
12
|
+
removeTerms: z.ZodDefault<z.ZodBoolean>;
|
|
13
|
+
includeGraph: z.ZodDefault<z.ZodBoolean>;
|
|
14
|
+
includeStatements: z.ZodDefault<z.ZodBoolean>;
|
|
15
|
+
maxNodes: z.ZodDefault<z.ZodNumber>;
|
|
16
|
+
};
|
|
17
|
+
annotations: {
|
|
18
|
+
readOnlyHint: boolean;
|
|
19
|
+
idempotentHint: boolean;
|
|
20
|
+
destructiveHint: boolean;
|
|
21
|
+
openWorldHint: boolean;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
handler: (params: z.infer<typeof GetGraphAroundTermSchema>) => Promise<{
|
|
25
|
+
isError?: boolean | undefined;
|
|
26
|
+
content: {
|
|
27
|
+
type: "text";
|
|
28
|
+
text: string;
|
|
29
|
+
}[];
|
|
30
|
+
}>;
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=getGraphAroundTerm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getGraphAroundTerm.d.ts","sourceRoot":"","sources":["../../src/tools/getGraphAroundTerm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAW/D,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;sBAiBV,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC;;;;;;;CA8ChE,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { brand } from "../config/brand.js";
|
|
2
|
+
import { GetGraphAroundTermSchema } from "../schemas/index.js";
|
|
3
|
+
import { callMemoryEndpoint } from "../api/client.js";
|
|
4
|
+
import { transformToStructuredOutput } from "../utils/transformers.js";
|
|
5
|
+
function textResult(value, isError = false) {
|
|
6
|
+
return {
|
|
7
|
+
content: [{ type: "text", text: JSON.stringify(value, null, 2) }],
|
|
8
|
+
...(isError ? { isError: true } : {}),
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export const getGraphAroundTermTool = {
|
|
12
|
+
name: "get_graph_around_term",
|
|
13
|
+
definition: {
|
|
14
|
+
title: `The Graph Around a Term in Your ${brand.name} Graphs`,
|
|
15
|
+
description: `The graph around a term: every statement in your ${brand.name} graphs that contains the term — or all of several terms (matchAll, the default), or any of them — in all your graphs or the named ones, built into one graph with the terms themselves left out, so its topics, gaps and relations describe the context the terms sit in rather than the terms. The app's search view with the searched term hidden. ` +
|
|
16
|
+
`Returns which graphs the statements came from with a count each, the statistics (modularity, diversity, clusters), the topical clusters, content gaps, main concepts, top relations and conceptual gateways of that graph, the compact graph (nodes with betweenness, weighted edges) unless includeGraph is false, and the statements with their graph and cluster when includeStatements is true. ` +
|
|
17
|
+
`Use it for "what surrounds X across my graphs?", "what is the context of X in these graphs?", "what do my notes say around X, without X itself?", and with two terms "what sits between X and Y in my notes?" (their shared context). ` +
|
|
18
|
+
`For what one concept is linked to inside one graph, by hop distance, use get_node_neighborhood; for the statements most relevant to a question, retrieve_from_knowledge_base; to only learn which graphs mention a term, search. Your own graphs only.`,
|
|
19
|
+
inputSchema: GetGraphAroundTermSchema.shape,
|
|
20
|
+
annotations: {
|
|
21
|
+
readOnlyHint: true,
|
|
22
|
+
idempotentHint: true,
|
|
23
|
+
destructiveHint: false,
|
|
24
|
+
openWorldHint: false,
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
handler: async (params) => {
|
|
28
|
+
try {
|
|
29
|
+
const terms = Array.isArray(params.terms) ? params.terms : [params.terms];
|
|
30
|
+
const includeGraph = params.includeGraph !== false;
|
|
31
|
+
const includeStatements = params.includeStatements === true;
|
|
32
|
+
const response = await callMemoryEndpoint("/termGraph", {
|
|
33
|
+
terms,
|
|
34
|
+
matchAll: params.matchAll !== false,
|
|
35
|
+
graphNames: params.graphNames ?? [],
|
|
36
|
+
removeTerms: params.removeTerms !== false,
|
|
37
|
+
includeGraph,
|
|
38
|
+
includeStatements,
|
|
39
|
+
maxNodes: params.maxNodes ?? 150,
|
|
40
|
+
});
|
|
41
|
+
const body = response.body;
|
|
42
|
+
if (response.status >= 400) {
|
|
43
|
+
return textResult({
|
|
44
|
+
error: body.error ?? `HTTP ${response.status}`,
|
|
45
|
+
...(body.errorCode ? { errorCode: body.errorCode } : {}),
|
|
46
|
+
}, true);
|
|
47
|
+
}
|
|
48
|
+
// The app answers in the /graphAndStatements shape (compact graph with
|
|
49
|
+
// statistics, graphSummary, extendedGraphSummary), so the same
|
|
50
|
+
// transformer reads it; an empty search carries no graph at all.
|
|
51
|
+
const { statements: _copied, ...structured } = body.graph
|
|
52
|
+
? transformToStructuredOutput(body, includeGraph, includeGraph)
|
|
53
|
+
: { statements: undefined };
|
|
54
|
+
return textResult({
|
|
55
|
+
terms: body.terms,
|
|
56
|
+
matchAll: body.matchAll,
|
|
57
|
+
removedTerms: body.removedTerms,
|
|
58
|
+
graphs: body.graphs,
|
|
59
|
+
statementCount: body.statementCount,
|
|
60
|
+
...structured,
|
|
61
|
+
...(includeStatements ? { statements: body.statements ?? [] } : {}),
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
return textResult({ error: error instanceof Error ? error.message : String(error) }, true);
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
};
|
|
69
|
+
//# sourceMappingURL=getGraphAroundTerm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getGraphAroundTerm.js","sourceRoot":"","sources":["../../src/tools/getGraphAroundTerm.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getNodeNeighborhood.d.ts","sourceRoot":"","sources":["../../src/tools/getNodeNeighborhood.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAUhE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"getNodeNeighborhood.d.ts","sourceRoot":"","sources":["../../src/tools/getNodeNeighborhood.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAUhE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;sBAmBX,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC;;;;;;;CA2CjE,CAAC"}
|
|
@@ -13,8 +13,10 @@ export const getNodeNeighborhoodTool = {
|
|
|
13
13
|
title: `What a Concept Is Connected To in an ${brand.name} Graph`,
|
|
14
14
|
description: `What one concept is connected to in a saved ${brand.name} graph, by hop distance, computed on the server: no need to download the whole graph and walk it. ` +
|
|
15
15
|
`Returns the concept's own stats (degree, betweenness, cluster), its neighbors nearest and strongest first (node, hop, weight, via: the node it was reached through, cluster), and the statements on those links with their categories and hop. ` +
|
|
16
|
-
`
|
|
17
|
-
`
|
|
16
|
+
`The answer to any question about one node: what X is connected to, related to, or linked to, its neighbors, what it depends on or leads to, which types of learnings touch it (the statement categories); on any graph including memory graphs (learn-<project>, memory-<topic>, personal-<user>). ` +
|
|
17
|
+
`Call it even when the graph's statements are already in context: the walk is authoritative, reading co-occurrence out of a statement list is not. ` +
|
|
18
|
+
`For the statements most relevant to a question instead, use retrieve_from_knowledge_base (with hops: 2); for the graph around a term across several graphs, with the term itself left out, get_graph_around_term. ` +
|
|
19
|
+
`An unknown concept returns notFound with similar node names to retry with.`,
|
|
18
20
|
inputSchema: GetNodeNeighborhoodSchema.shape,
|
|
19
21
|
annotations: {
|
|
20
22
|
readOnlyHint: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getNodeNeighborhood.js","sourceRoot":"","sources":["../../src/tools/getNodeNeighborhood.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,SAAS,UAAU,CAAC,KAAc,EAAE,OAAO,GAAG,KAAK;IAClD,OAAO;QACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QAC1E,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACtC,IAAI,EAAE,uBAAuB;IAC7B,UAAU,EAAE;QACX,KAAK,EAAE,wCAAwC,KAAK,CAAC,IAAI,QAAQ;QACjE,WAAW,EACV,+CAA+C,KAAK,CAAC,IAAI,oGAAoG;YAC7J,iPAAiP;YACjP,
|
|
1
|
+
{"version":3,"file":"getNodeNeighborhood.js","sourceRoot":"","sources":["../../src/tools/getNodeNeighborhood.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { GetTermGraphSchema } from "../schemas/index.js";
|
|
3
|
+
export declare const getTermGraphTool: {
|
|
4
|
+
name: string;
|
|
5
|
+
definition: {
|
|
6
|
+
title: string;
|
|
7
|
+
description: string;
|
|
8
|
+
inputSchema: {
|
|
9
|
+
terms: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
|
|
10
|
+
matchAll: z.ZodDefault<z.ZodBoolean>;
|
|
11
|
+
graphNames: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
12
|
+
removeTerms: z.ZodDefault<z.ZodBoolean>;
|
|
13
|
+
includeGraph: z.ZodDefault<z.ZodBoolean>;
|
|
14
|
+
includeStatements: z.ZodDefault<z.ZodBoolean>;
|
|
15
|
+
maxNodes: z.ZodDefault<z.ZodNumber>;
|
|
16
|
+
};
|
|
17
|
+
annotations: {
|
|
18
|
+
readOnlyHint: boolean;
|
|
19
|
+
idempotentHint: boolean;
|
|
20
|
+
destructiveHint: boolean;
|
|
21
|
+
openWorldHint: boolean;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
handler: (params: z.infer<typeof GetTermGraphSchema>) => Promise<{
|
|
25
|
+
isError?: boolean | undefined;
|
|
26
|
+
content: {
|
|
27
|
+
type: "text";
|
|
28
|
+
text: string;
|
|
29
|
+
}[];
|
|
30
|
+
}>;
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=getTermGraph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getTermGraph.d.ts","sourceRoot":"","sources":["../../src/tools/getTermGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAWzD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;sBAiBJ,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC;;;;;;;CA8C1D,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { brand } from "../config/brand.js";
|
|
2
|
+
import { GetTermGraphSchema } from "../schemas/index.js";
|
|
3
|
+
import { callMemoryEndpoint } from "../api/client.js";
|
|
4
|
+
import { transformToStructuredOutput } from "../utils/transformers.js";
|
|
5
|
+
function textResult(value, isError = false) {
|
|
6
|
+
return {
|
|
7
|
+
content: [{ type: "text", text: JSON.stringify(value, null, 2) }],
|
|
8
|
+
...(isError ? { isError: true } : {}),
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export const getTermGraphTool = {
|
|
12
|
+
name: "get_term_graph",
|
|
13
|
+
definition: {
|
|
14
|
+
title: `The Graph Around a Term in Your ${brand.name} Graphs`,
|
|
15
|
+
description: `The graph around a term: every statement in your ${brand.name} graphs that contains the term — or all of several terms (matchAll, the default), or any of them — in all your graphs or the named ones, built into one graph with the terms themselves left out, so its topics, gaps and relations describe the context the terms sit in rather than the terms. The app's search view with the searched term hidden. ` +
|
|
16
|
+
`Returns which graphs the statements came from with a count each, the statistics (modularity, diversity, clusters), the topical clusters, content gaps, main concepts, top relations and conceptual gateways of that graph, the compact graph (nodes with betweenness, weighted edges) unless includeGraph is false, and the statements with their graph and cluster when includeStatements is true. ` +
|
|
17
|
+
`Use it for "what surrounds X across my graphs?", "what is the context of X in these graphs?", "what do my notes say around X, without X itself?". ` +
|
|
18
|
+
`For what one concept is linked to inside one graph, by hop distance, use get_node_neighborhood; for the statements most relevant to a question, retrieve_from_knowledge_base; to only learn which graphs mention a term, search. Your own graphs only.`,
|
|
19
|
+
inputSchema: GetTermGraphSchema.shape,
|
|
20
|
+
annotations: {
|
|
21
|
+
readOnlyHint: true,
|
|
22
|
+
idempotentHint: true,
|
|
23
|
+
destructiveHint: false,
|
|
24
|
+
openWorldHint: false,
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
handler: async (params) => {
|
|
28
|
+
try {
|
|
29
|
+
const terms = Array.isArray(params.terms) ? params.terms : [params.terms];
|
|
30
|
+
const includeGraph = params.includeGraph !== false;
|
|
31
|
+
const includeStatements = params.includeStatements === true;
|
|
32
|
+
const response = await callMemoryEndpoint("/termGraph", {
|
|
33
|
+
terms,
|
|
34
|
+
matchAll: params.matchAll !== false,
|
|
35
|
+
graphNames: params.graphNames ?? [],
|
|
36
|
+
removeTerms: params.removeTerms !== false,
|
|
37
|
+
includeGraph,
|
|
38
|
+
includeStatements,
|
|
39
|
+
maxNodes: params.maxNodes ?? 150,
|
|
40
|
+
});
|
|
41
|
+
const body = response.body;
|
|
42
|
+
if (response.status >= 400) {
|
|
43
|
+
return textResult({
|
|
44
|
+
error: body.error ?? `HTTP ${response.status}`,
|
|
45
|
+
...(body.errorCode ? { errorCode: body.errorCode } : {}),
|
|
46
|
+
}, true);
|
|
47
|
+
}
|
|
48
|
+
// The app answers in the /graphAndStatements shape (compact graph with
|
|
49
|
+
// statistics, graphSummary, extendedGraphSummary), so the same
|
|
50
|
+
// transformer reads it; an empty search carries no graph at all.
|
|
51
|
+
const { statements: _copied, ...structured } = body.graph
|
|
52
|
+
? transformToStructuredOutput(body, includeGraph, includeGraph)
|
|
53
|
+
: { statements: undefined };
|
|
54
|
+
return textResult({
|
|
55
|
+
terms: body.terms,
|
|
56
|
+
matchAll: body.matchAll,
|
|
57
|
+
removedTerms: body.removedTerms,
|
|
58
|
+
graphs: body.graphs,
|
|
59
|
+
statementCount: body.statementCount,
|
|
60
|
+
...structured,
|
|
61
|
+
...(includeStatements ? { statements: body.statements ?? [] } : {}),
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
return textResult({ error: error instanceof Error ? error.message : String(error) }, true);
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
};
|
|
69
|
+
//# sourceMappingURL=getTermGraph.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getTermGraph.js","sourceRoot":"","sources":["../../src/tools/getTermGraph.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/index.d.ts
CHANGED
|
@@ -32,6 +32,7 @@ export { optimizeTextStructureTool } from "./optimizeTextStructure.js";
|
|
|
32
32
|
export { optimizeReasoningTool } from "./optimizeReasoning.js";
|
|
33
33
|
export { retrieveContextForPromptFromGraphTool } from "./retrieveContextForPromptFromGraph.js";
|
|
34
34
|
export { getNodeNeighborhoodTool } from "./getNodeNeighborhood.js";
|
|
35
|
+
export { getGraphAroundTermTool } from "./getGraphAroundTerm.js";
|
|
35
36
|
export { enableProjectLearningsTool } from "./enableProjectLearnings.js";
|
|
36
37
|
export { addProjectLearningsTool } from "./addProjectLearnings.js";
|
|
37
38
|
export { getProjectLearningsTool } from "./getProjectLearnings.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,iCAAiC,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,EAAE,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,qCAAqC,EAAE,MAAM,wCAAwC,CAAC;AAC/F,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,uCAAuC,EAAE,MAAM,0CAA0C,CAAC;AACnG,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,qCAAqC,EAAE,MAAM,wCAAwC,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,iCAAiC,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,EAAE,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,qCAAqC,EAAE,MAAM,wCAAwC,CAAC;AAC/F,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,uCAAuC,EAAE,MAAM,0CAA0C,CAAC;AACnG,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,qCAAqC,EAAE,MAAM,wCAAwC,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/tools/index.js
CHANGED
|
@@ -32,6 +32,7 @@ export { optimizeTextStructureTool } from "./optimizeTextStructure.js";
|
|
|
32
32
|
export { optimizeReasoningTool } from "./optimizeReasoning.js";
|
|
33
33
|
export { retrieveContextForPromptFromGraphTool } from "./retrieveContextForPromptFromGraph.js";
|
|
34
34
|
export { getNodeNeighborhoodTool } from "./getNodeNeighborhood.js";
|
|
35
|
+
export { getGraphAroundTermTool } from "./getGraphAroundTerm.js";
|
|
35
36
|
export { enableProjectLearningsTool } from "./enableProjectLearnings.js";
|
|
36
37
|
export { addProjectLearningsTool } from "./addProjectLearnings.js";
|
|
37
38
|
export { getProjectLearningsTool } from "./getProjectLearnings.js";
|
package/dist/tools/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,iCAAiC,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,EAAE,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,qCAAqC,EAAE,MAAM,wCAAwC,CAAC;AAC/F,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,uCAAuC,EAAE,MAAM,0CAA0C,CAAC;AACnG,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,qCAAqC,EAAE,MAAM,wCAAwC,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,iCAAiC,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,EAAE,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,qCAAqC,EAAE,MAAM,wCAAwC,CAAC;AAC/F,OAAO,EAAE,oCAAoC,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,uCAAuC,EAAE,MAAM,0CAA0C,CAAC;AACnG,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,qCAAqC,EAAE,MAAM,wCAAwC,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -15,8 +15,10 @@ export declare const optimizeKnowledgeBaseTool: {
|
|
|
15
15
|
saveAs: z.ZodOptional<z.ZodString>;
|
|
16
16
|
focus: z.ZodDefault<z.ZodEnum<["general", "codebase", "vault", "procedural"]>>;
|
|
17
17
|
compareWith: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
optimize: z.ZodDefault<z.ZodEnum<["optimize", "develop", "latent"]>>;
|
|
19
|
+
gapDepth: z.ZodDefault<z.ZodNumber>;
|
|
20
|
+
includeLatent: z.ZodOptional<z.ZodBoolean>;
|
|
21
|
+
modelToUse: z.ZodDefault<z.ZodEnum<["claude-opus-5-5", "claude-sonnet-5-5", "claude-fable-5-1", "gpt-6.1-terra", "gpt-6.1-sol", "gpt-5.6-terra", "gpt-5.6-sol", "gpt-5.4", "gpt-5.4-mini", "gpt-4o", "gpt-4o-mini", "gemini-4-argon", "gemini-3.8-flash", "gemini-3.5-flash-lite", "grok-4.7", "grok-4.20-0309-non-reasoning"]>>;
|
|
20
22
|
};
|
|
21
23
|
annotations: {
|
|
22
24
|
readOnlyHint: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optimizeKnowledgeBase.d.ts","sourceRoot":"","sources":["../../src/tools/optimizeKnowledgeBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"optimizeKnowledgeBase.d.ts","sourceRoot":"","sources":["../../src/tools/optimizeKnowledgeBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAelE,OAAO,KAAK,EAAiB,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAiE3E,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;sBAsB5B,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,YACzC,kBAAkB;;;;;;;;;;;;CA2M7B,CAAC"}
|
|
@@ -2,9 +2,10 @@ import { brand } from "../config/brand.js";
|
|
|
2
2
|
import { OptimizeKnowledgeBaseSchema } from "../schemas/index.js";
|
|
3
3
|
import { makeInfraNodusRequest } from "../api/client.js";
|
|
4
4
|
import { resolveGraphInput } from "../utils/graphInput.js";
|
|
5
|
-
import { generateOptimizationResult, extractLatentTopicsIdeas, transformToStructuredOutput, } from "../utils/transformers.js";
|
|
5
|
+
import { generateOptimizationResult, extractLatentTopicsIdeas, insightClustersOf, transformToStructuredOutput, } from "../utils/transformers.js";
|
|
6
6
|
import { dedupeList, normalizeState, readState, } from "../utils/knowledgeBase.js";
|
|
7
7
|
import { ProgressReporter } from "../utils/progress.js";
|
|
8
|
+
import { DEFAULT_AI_MODEL } from "../config/models.js";
|
|
8
9
|
function errorContent(message) {
|
|
9
10
|
return {
|
|
10
11
|
content: [
|
|
@@ -60,6 +61,7 @@ export const optimizeKnowledgeBaseTool = {
|
|
|
60
61
|
`Give it the graph built from the project (graphName: e.g. repo-<project>-digest or vault-<project>-digest — the LLM-written digest of how it works — repo-<project>-structure, repo-<project>-docs, vault-<project>-links, learn-<project>) and set focus to how the reading should be framed (codebase, vault, procedural, general). ` +
|
|
61
62
|
`No graph yet? Write a digest of the project (100–300 one-line statements on how it works, [[wikilinks]] on modules, concepts and files, grouped under \`## [[Topic]]\` headings) and pass it as text with saveAs: repo-<project>-digest (vault-<project>-digest for a notes vault). ` +
|
|
62
63
|
`It diagnoses the structure (biased / focused / diversified / dispersed) and translates it: what dominates, which areas are under-developed, which clusters never connect (missing integrations, missing bridge notes, missing hand-offs between frameworks), with AI suggestions for what to develop next. ` +
|
|
64
|
+
`The suggestions follow optimize: 'optimize' (default) works on the insight clusters, the ones picked from the structure whose connection moves the graph toward a balanced shape (returned as insightClusters; gapDepth moves to the next set), 'develop' on all the main topics, 'latent' on the under-developed ones. ` +
|
|
63
65
|
`compareWith names other layers of the same project (e.g. digest vs structure, docs vs code) and reports what each layer has that the other lacks — rules without code, code without documentation, features claimed but not built. ` +
|
|
64
66
|
`Memory works the same way: a learn-, memory- or personal- graph by graphName, or another memory system's items passed as they are in statements (nothing is saved without saveAs). Then propose statements that bridge the gaps, each with 2+ [[wikilinks]], and save only the ones the user approves (add_project_learnings / memory_add_relations). ` +
|
|
65
67
|
`Use it after the infranodus skill has ingested a repo or vault, or on any saved graph, when the user asks to optimize, review, or find what is missing or under-developed in a project, vault, set of rules, or memory.`,
|
|
@@ -74,8 +76,12 @@ export const optimizeKnowledgeBaseTool = {
|
|
|
74
76
|
handler: async (params, context) => {
|
|
75
77
|
try {
|
|
76
78
|
const focus = params.focus ?? "general";
|
|
77
|
-
const modelToUse = params.modelToUse ??
|
|
78
|
-
const
|
|
79
|
+
const modelToUse = params.modelToUse ?? DEFAULT_AI_MODEL;
|
|
80
|
+
const mode = params.optimize ?? "optimize";
|
|
81
|
+
const gapDepth = params.gapDepth ?? 0;
|
|
82
|
+
// 'optimize' follows the insight clusters only, so the latent pass is
|
|
83
|
+
// added there on request; 'latent' already is that pass.
|
|
84
|
+
const includeLatent = mode !== "latent" && (params.includeLatent ?? mode === "develop");
|
|
79
85
|
const compareWith = dedupeList(params.compareWith ?? [], 2);
|
|
80
86
|
const steps = 1 + (includeLatent ? 1 : 0) + compareWith.length * 2;
|
|
81
87
|
const progress = new ProgressReporter(context ?? {}, steps);
|
|
@@ -137,12 +143,13 @@ export const optimizeKnowledgeBaseTool = {
|
|
|
137
143
|
includeGraph: "true",
|
|
138
144
|
compactGraph: "true",
|
|
139
145
|
aiTopics: "true",
|
|
140
|
-
optimize:
|
|
146
|
+
optimize: mode,
|
|
147
|
+
gapDepth: gapDepth.toString(),
|
|
141
148
|
});
|
|
142
149
|
const develop = await makeInfraNodusRequest(`/graphAndAdvice?${developQuery.toString()}`, {
|
|
143
150
|
...sourceBody,
|
|
144
151
|
aiTopics: "true",
|
|
145
|
-
requestMode: "response",
|
|
152
|
+
requestMode: mode === "latent" ? "transcend" : "response",
|
|
146
153
|
modelToUse,
|
|
147
154
|
});
|
|
148
155
|
if (develop.error)
|
|
@@ -154,7 +161,9 @@ export const optimizeKnowledgeBaseTool = {
|
|
|
154
161
|
const state = normalizeState(stateRaw);
|
|
155
162
|
// 2. Under-developed (latent) topics.
|
|
156
163
|
let latentIdeas = [];
|
|
157
|
-
let latentTopics =
|
|
164
|
+
let latentTopics = mode === "latent"
|
|
165
|
+
? dedupeList(extractLatentTopicsIdeas(develop).latentTopicsToDevelop ?? [], 8)
|
|
166
|
+
: [];
|
|
158
167
|
if (includeLatent) {
|
|
159
168
|
await progress.report(step++, "Finding under-developed areas");
|
|
160
169
|
const latentQuery = new URLSearchParams({
|
|
@@ -200,15 +209,18 @@ export const optimizeKnowledgeBaseTool = {
|
|
|
200
209
|
await progress.report(steps, "Done");
|
|
201
210
|
const reading = state ? readState(focus, state) : undefined;
|
|
202
211
|
const mainClusters = dedupeList(optimization.mainTopicalClusters ?? [], 10);
|
|
212
|
+
const insightClusters = insightClustersOf(develop);
|
|
203
213
|
const report = {
|
|
204
214
|
source: sourceLabel,
|
|
205
215
|
focus,
|
|
216
|
+
optimize: mode,
|
|
206
217
|
state: state ?? "unknown",
|
|
207
218
|
...(reading ? { meaning: reading.meaning, action: reading.action } : {}),
|
|
208
219
|
dominant: mainClusters[0],
|
|
209
220
|
mainClusters,
|
|
210
221
|
underdeveloped: dedupeList([...(optimization.topicsToDevelop ?? []), ...latentTopics], 10),
|
|
211
222
|
missingBridges: dedupeList(optimization.contentGaps ?? [], 8),
|
|
223
|
+
...(insightClusters ? { insightClusters, gapDepth } : {}),
|
|
212
224
|
gateways: dedupeList(optimization.conceptualGateways ?? [], 8),
|
|
213
225
|
suggestions: dedupeList(optimization.suggestions ?? [], 6),
|
|
214
226
|
...(latentIdeas.length ? { latentIdeas } : {}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optimizeKnowledgeBase.js","sourceRoot":"","sources":["../../src/tools/optimizeKnowledgeBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EACN,0BAA0B,EAC1B,wBAAwB,EACxB,2BAA2B,GAC3B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACN,UAAU,EACV,cAAc,EACd,SAAS,GAET,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"optimizeKnowledgeBase.js","sourceRoot":"","sources":["../../src/tools/optimizeKnowledgeBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ export declare const optimizeReasoningTool: {
|
|
|
11
11
|
categories: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodString, "many">, "many">>;
|
|
12
12
|
categoriesAsNodes: z.ZodDefault<z.ZodBoolean>;
|
|
13
13
|
timestamps: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
14
|
-
modelToUse: z.ZodDefault<z.ZodEnum<["claude-opus-5", "claude-sonnet-5", "claude-fable-5", "
|
|
14
|
+
modelToUse: z.ZodDefault<z.ZodEnum<["claude-opus-5-5", "claude-sonnet-5-5", "claude-fable-5-1", "gpt-6.1-terra", "gpt-6.1-sol", "gpt-5.6-terra", "gpt-5.6-sol", "gpt-5.4", "gpt-5.4-mini", "gpt-4o", "gpt-4o-mini", "gemini-4-argon", "gemini-3.8-flash", "gemini-3.5-flash-lite", "grok-4.7", "grok-4.20-0309-non-reasoning"]>>;
|
|
15
15
|
};
|
|
16
16
|
annotations: {
|
|
17
17
|
readOnlyHint: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optimizeReasoning.d.ts","sourceRoot":"","sources":["../../src/tools/optimizeReasoning.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACN,uBAAuB,EAEvB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"optimizeReasoning.d.ts","sourceRoot":"","sources":["../../src/tools/optimizeReasoning.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACN,uBAAuB,EAEvB,MAAM,qBAAqB,CAAC;AAe7B,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;sBAcT,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC;;;;;;;;;;;;CA+D/D,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { OptimizeReasoningSchemaBase, } from "../schemas/index.js";
|
|
|
2
2
|
import { makeInfraNodusRequest } from "../api/client.js";
|
|
3
3
|
import { resolveGraphInput } from "../utils/graphInput.js";
|
|
4
4
|
import { generateOptimizationResult } from "../utils/transformers.js";
|
|
5
|
+
import { DEFAULT_AI_MODEL } from "../config/models.js";
|
|
5
6
|
function errorContent(message) {
|
|
6
7
|
return {
|
|
7
8
|
content: [
|
|
@@ -43,7 +44,7 @@ export const optimizeReasoningTool = {
|
|
|
43
44
|
...input.payload,
|
|
44
45
|
aiTopics: "true",
|
|
45
46
|
requestMode: "response",
|
|
46
|
-
modelToUse: params.modelToUse ??
|
|
47
|
+
modelToUse: params.modelToUse ?? DEFAULT_AI_MODEL,
|
|
47
48
|
};
|
|
48
49
|
const response = await makeInfraNodusRequest(endpoint, requestBody);
|
|
49
50
|
if (response.error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optimizeReasoning.js","sourceRoot":"","sources":["../../src/tools/optimizeReasoning.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,2BAA2B,GAC3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"optimizeReasoning.js","sourceRoot":"","sources":["../../src/tools/optimizeReasoning.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@ export declare const optimizeTextStructureTool: {
|
|
|
14
14
|
timestamps: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
15
15
|
graphName: z.ZodOptional<z.ZodString>;
|
|
16
16
|
responseType: z.ZodDefault<z.ZodEnum<["response", "idea", "question", "transcend"]>>;
|
|
17
|
-
modelToUse: z.ZodDefault<z.ZodEnum<["claude-opus-5", "claude-sonnet-5", "claude-fable-5", "
|
|
17
|
+
modelToUse: z.ZodDefault<z.ZodEnum<["claude-opus-5-5", "claude-sonnet-5-5", "claude-fable-5-1", "gpt-6.1-terra", "gpt-6.1-sol", "gpt-5.6-terra", "gpt-5.6-sol", "gpt-5.4", "gpt-5.4-mini", "gpt-4o", "gpt-4o-mini", "gemini-4-argon", "gemini-3.8-flash", "gemini-3.5-flash-lite", "grok-4.7", "grok-4.20-0309-non-reasoning"]>>;
|
|
18
18
|
};
|
|
19
19
|
annotations: {
|
|
20
20
|
readOnlyHint: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optimizeTextStructure.d.ts","sourceRoot":"","sources":["../../src/tools/optimizeTextStructure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACN,2BAA2B,EAE3B,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"optimizeTextStructure.d.ts","sourceRoot":"","sources":["../../src/tools/optimizeTextStructure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACN,2BAA2B,EAE3B,MAAM,qBAAqB,CAAC;AAe7B,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;sBAcb,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC;;;;;;;;;;;;CAoFnE,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { OptimizeTextStructureSchemaBase, } from "../schemas/index.js";
|
|
|
2
2
|
import { makeInfraNodusRequest } from "../api/client.js";
|
|
3
3
|
import { resolveGraphInput } from "../utils/graphInput.js";
|
|
4
4
|
import { generateOptimizationResult } from "../utils/transformers.js";
|
|
5
|
+
import { DEFAULT_AI_MODEL } from "../config/models.js";
|
|
5
6
|
function errorContent(message) {
|
|
6
7
|
return {
|
|
7
8
|
content: [
|
|
@@ -43,7 +44,7 @@ export const optimizeTextStructureTool = {
|
|
|
43
44
|
name: params.graphName,
|
|
44
45
|
aiTopics: "true",
|
|
45
46
|
requestMode,
|
|
46
|
-
modelToUse: params.modelToUse ??
|
|
47
|
+
modelToUse: params.modelToUse ?? DEFAULT_AI_MODEL,
|
|
47
48
|
};
|
|
48
49
|
}
|
|
49
50
|
else {
|
|
@@ -54,7 +55,7 @@ export const optimizeTextStructureTool = {
|
|
|
54
55
|
...input.payload,
|
|
55
56
|
aiTopics: "true",
|
|
56
57
|
requestMode,
|
|
57
|
-
modelToUse: params.modelToUse ??
|
|
58
|
+
modelToUse: params.modelToUse ?? DEFAULT_AI_MODEL,
|
|
58
59
|
};
|
|
59
60
|
}
|
|
60
61
|
const response = await makeInfraNodusRequest(endpoint, requestBody);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optimizeTextStructure.js","sourceRoot":"","sources":["../../src/tools/optimizeTextStructure.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,+BAA+B,GAC/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"optimizeTextStructure.js","sourceRoot":"","sources":["../../src/tools/optimizeTextStructure.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchGraphs.d.ts","sourceRoot":"","sources":["../../src/tools/searchGraphs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAIjE,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"searchGraphs.d.ts","sourceRoot":"","sources":["../../src/tools/searchGraphs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAIjE,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;sBAeZ,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC;;;;;;;;;;;;;CAuDlE,CAAC"}
|
|
@@ -6,7 +6,8 @@ export const searchExistingGraphsTool = {
|
|
|
6
6
|
name: "search",
|
|
7
7
|
definition: {
|
|
8
8
|
title: `Search through Existing ${brand.name} Graphs`,
|
|
9
|
-
description: `Find
|
|
9
|
+
description: `Find which existing ${brand.name} graphs mention a term: their names and links (fetch reads one result). ` +
|
|
10
|
+
`For the structure around a term — its topics, gaps and relations across graphs, with the term itself left out — use get_graph_around_term instead; this tool only says where the term occurs.`,
|
|
10
11
|
inputSchema: SearchExistingGraphsSchema.shape,
|
|
11
12
|
annotations: {
|
|
12
13
|
readOnlyHint: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchGraphs.js","sourceRoot":"","sources":["../../src/tools/searchGraphs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACvC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACX,KAAK,EAAE,2BAA2B,KAAK,CAAC,IAAI,SAAS;QACrD,WAAW,
|
|
1
|
+
{"version":3,"file":"searchGraphs.js","sourceRoot":"","sources":["../../src/tools/searchGraphs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACvC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACX,KAAK,EAAE,2BAA2B,KAAK,CAAC,IAAI,SAAS;QACrD,WAAW,EACV,uBAAuB,KAAK,CAAC,IAAI,0EAA0E;YAC3G,+LAA+L;QAChM,WAAW,EAAE,0BAA0B,CAAC,KAAK;QAC7C,WAAW,EAAE;YACZ,YAAY,EAAE,IAAI;YAClB,cAAc,EAAE,IAAI;YACpB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,KAAK;SACpB;KACD;IACD,OAAO,EAAE,KAAK,EAAE,MAAkD,EAAE,EAAE;QACrE,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,SAAS,CAAC;YAE3B,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;YACjC,MAAM,WAAW,GAAG;gBACnB,KAAK,EAAE,WAAW;gBAClB,YAAY,EACX,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;oBACpD,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC;oBAC/B,CAAC,CAAC,EAAE;gBACN,YAAY,EACX,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;oBACpD,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC;oBAC/B,CAAC,CAAC,EAAE;aACN,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAEpE,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACpB,OAAO;oBACN,OAAO,EAAE;wBACR;4BACC,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;yBAC/C;qBACD;oBACD,OAAO,EAAE,IAAI;iBACb,CAAC;YACH,CAAC;YAED,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAErE,OAAO;gBACN,OAAO,EAAE;oBACR;wBACC,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC/C;iBACD;aACD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO;gBACN,OAAO,EAAE;oBACR;wBACC,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACpB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;yBAC7D,CAAC;qBACF;iBACD;gBACD,OAAO,EAAE,IAAI;aACb,CAAC;QACH,CAAC;IACF,CAAC;CACD,CAAC"}
|