@mcp-abap-adt/llm-agent 4.0.2 → 4.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/smart-agent/agent.d.ts +10 -1
  6. package/dist/smart-agent/agent.d.ts.map +1 -1
  7. package/dist/smart-agent/agent.js +32 -2
  8. package/dist/smart-agent/agent.js.map +1 -1
  9. package/dist/smart-agent/rag/qdrant-rag.d.ts.map +1 -1
  10. package/dist/smart-agent/rag/qdrant-rag.js +3 -1
  11. package/dist/smart-agent/rag/qdrant-rag.js.map +1 -1
  12. package/dist/smart-agent/rag/query-embedding.d.ts +13 -0
  13. package/dist/smart-agent/rag/query-embedding.d.ts.map +1 -1
  14. package/dist/smart-agent/rag/query-embedding.js +23 -0
  15. package/dist/smart-agent/rag/query-embedding.js.map +1 -1
  16. package/dist/smart-agent/rag/vector-rag.d.ts.map +1 -1
  17. package/dist/smart-agent/rag/vector-rag.js +3 -1
  18. package/dist/smart-agent/rag/vector-rag.js.map +1 -1
  19. package/dist/smart-agent/server.d.ts.map +1 -1
  20. package/dist/smart-agent/server.js +53 -9
  21. package/dist/smart-agent/server.js.map +1 -1
  22. package/dist/smart-agent/smart-server.d.ts.map +1 -1
  23. package/dist/smart-agent/smart-server.js +15 -3
  24. package/dist/smart-agent/smart-server.js.map +1 -1
  25. package/package.json +1 -1
  26. package/dist/smart-agent/context/client-context-bridge.d.ts +0 -19
  27. package/dist/smart-agent/context/client-context-bridge.d.ts.map +0 -1
  28. package/dist/smart-agent/context/client-context-bridge.js +0 -92
  29. package/dist/smart-agent/context/client-context-bridge.js.map +0 -1
  30. package/dist/smart-agent/interfaces/client-context-bridge.d.ts +0 -39
  31. package/dist/smart-agent/interfaces/client-context-bridge.d.ts.map +0 -1
  32. package/dist/smart-agent/interfaces/client-context-bridge.js +0 -17
  33. package/dist/smart-agent/interfaces/client-context-bridge.js.map +0 -1
  34. package/dist/smart-agent/interfaces/prompt-tool-extractor.d.ts +0 -39
  35. package/dist/smart-agent/interfaces/prompt-tool-extractor.d.ts.map +0 -1
  36. package/dist/smart-agent/interfaces/prompt-tool-extractor.js +0 -11
  37. package/dist/smart-agent/interfaces/prompt-tool-extractor.js.map +0 -1
  38. package/dist/smart-agent/prompt-tool-extractor.d.ts +0 -30
  39. package/dist/smart-agent/prompt-tool-extractor.d.ts.map +0 -1
  40. package/dist/smart-agent/prompt-tool-extractor.js +0 -101
  41. package/dist/smart-agent/prompt-tool-extractor.js.map +0 -1
  42. package/dist/utils/errors.d.ts +0 -4
  43. package/dist/utils/errors.d.ts.map +0 -1
  44. package/dist/utils/errors.js +0 -31
  45. package/dist/utils/errors.js.map +0 -1
@@ -1,30 +0,0 @@
1
- /**
2
- * Default IPromptToolExtractor — parses Cline-style tool definitions
3
- * embedded as markdown/XML blocks in the system prompt.
4
- *
5
- * Format handled:
6
- * ```
7
- * # Tools
8
- *
9
- * ## tool_name
10
- * Description: ...
11
- * Parameters:
12
- * - param: (required) description
13
- * - param2: (optional) description
14
- * Usage:
15
- * <tool_name>
16
- * <param>value</param>
17
- * </tool_name>
18
- *
19
- * # Tool Use Guidelines ← end sentinel
20
- * ```
21
- *
22
- * Consumers can provide their own implementation of {@link IPromptToolExtractor}
23
- * for different prompt-based formats.
24
- */
25
- import type { IPromptToolExtractor, IPromptToolExtractResult } from './interfaces/prompt-tool-extractor.js';
26
- export declare class ClinePromptToolExtractor implements IPromptToolExtractor {
27
- extract(systemPrompt: string): IPromptToolExtractResult;
28
- formatToolCall(toolName: string, args: Record<string, unknown>): string;
29
- }
30
- //# sourceMappingURL=prompt-tool-extractor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prompt-tool-extractor.d.ts","sourceRoot":"","sources":["../../src/smart-agent/prompt-tool-extractor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,wBAAwB,EACzB,MAAM,uCAAuC,CAAC;AAwB/C,qBAAa,wBAAyB,YAAW,oBAAoB;IACnE,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,wBAAwB;IAgEvD,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM;CAUxE"}
@@ -1,101 +0,0 @@
1
- /**
2
- * Default IPromptToolExtractor — parses Cline-style tool definitions
3
- * embedded as markdown/XML blocks in the system prompt.
4
- *
5
- * Format handled:
6
- * ```
7
- * # Tools
8
- *
9
- * ## tool_name
10
- * Description: ...
11
- * Parameters:
12
- * - param: (required) description
13
- * - param2: (optional) description
14
- * Usage:
15
- * <tool_name>
16
- * <param>value</param>
17
- * </tool_name>
18
- *
19
- * # Tool Use Guidelines ← end sentinel
20
- * ```
21
- *
22
- * Consumers can provide their own implementation of {@link IPromptToolExtractor}
23
- * for different prompt-based formats.
24
- */
25
- // ---------------------------------------------------------------------------
26
- // Regex patterns
27
- // ---------------------------------------------------------------------------
28
- /** Matches the entire `# Tools` … next `# ` top-level heading (or end of string). */
29
- const TOOLS_BLOCK_RE = /^# Tools\n([\s\S]*?)(?=\n# [A-Z]|$(?![\s\S]))/m;
30
- /** Matches individual `## tool_name` sections inside the tools block. */
31
- const TOOL_SECTION_RE = /^## (\w+)\nDescription: ([\s\S]*?)(?=\n## \w|\n# [A-Z]|$(?![\s\S]))/gm;
32
- /** Matches a `Parameters:` block with `- name: (required|optional) desc` lines. */
33
- const PARAMS_BLOCK_RE = /Parameters:\n((?:- .+\n?)+)/;
34
- /** Matches a single parameter line. */
35
- const PARAM_LINE_RE = /^- (\w+): \((required|optional)\) (.+)/;
36
- // ---------------------------------------------------------------------------
37
- // Implementation
38
- // ---------------------------------------------------------------------------
39
- export class ClinePromptToolExtractor {
40
- extract(systemPrompt) {
41
- const toolsBlockMatch = systemPrompt.match(TOOLS_BLOCK_RE);
42
- if (!toolsBlockMatch) {
43
- return { hasTools: false, tools: [], cleanedPrompt: systemPrompt };
44
- }
45
- const toolsBlock = toolsBlockMatch[0];
46
- const tools = [];
47
- // Reset lastIndex for the global regex
48
- TOOL_SECTION_RE.lastIndex = 0;
49
- let match = TOOL_SECTION_RE.exec(toolsBlock);
50
- while (match !== null) {
51
- const name = match[1];
52
- const body = match[2];
53
- // Extract description (first line/paragraph before Parameters:)
54
- const descEnd = body.indexOf('Parameters:');
55
- const description = descEnd >= 0
56
- ? body.slice(0, descEnd).trim()
57
- : body.split('\n')[0].trim();
58
- // Extract parameters
59
- const paramsMatch = body.match(PARAMS_BLOCK_RE);
60
- const properties = {};
61
- const required = [];
62
- if (paramsMatch) {
63
- for (const line of paramsMatch[1].split('\n')) {
64
- const paramMatch = line.match(PARAM_LINE_RE);
65
- if (paramMatch) {
66
- const [, paramName, req, paramDesc] = paramMatch;
67
- properties[paramName] = { type: 'string', description: paramDesc };
68
- if (req === 'required')
69
- required.push(paramName);
70
- }
71
- }
72
- }
73
- tools.push({
74
- name,
75
- description,
76
- inputSchema: {
77
- type: 'object',
78
- properties,
79
- ...(required.length > 0 ? { required } : {}),
80
- },
81
- });
82
- match = TOOL_SECTION_RE.exec(toolsBlock);
83
- }
84
- if (tools.length === 0) {
85
- return { hasTools: false, tools: [], cleanedPrompt: systemPrompt };
86
- }
87
- // Remove the tools block from the prompt
88
- const cleanedPrompt = systemPrompt.replace(toolsBlock, '').trim();
89
- return { hasTools: true, tools, cleanedPrompt };
90
- }
91
- formatToolCall(toolName, args) {
92
- const params = Object.entries(args)
93
- .filter(([, v]) => v !== undefined && v !== null)
94
- .map(([k, v]) => `<${k}>${String(v)}</${k}>`)
95
- .join('\n');
96
- return params
97
- ? `<${toolName}>\n${params}\n</${toolName}>`
98
- : `<${toolName}>\n</${toolName}>`;
99
- }
100
- }
101
- //# sourceMappingURL=prompt-tool-extractor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prompt-tool-extractor.js","sourceRoot":"","sources":["../../src/smart-agent/prompt-tool-extractor.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- export declare function isRecord(value: unknown): value is Record<string, unknown>;
2
- export declare function getErrorMessage(error: unknown, fallback?: string): string;
3
- export declare function getNestedApiErrorMessage(error: unknown): string | undefined;
4
- //# sourceMappingURL=errors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,EACd,QAAQ,SAAkB,GACzB,MAAM,CAMR;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAyB3E"}
@@ -1,31 +0,0 @@
1
- export function isRecord(value) {
2
- return typeof value === 'object' && value !== null;
3
- }
4
- export function getErrorMessage(error, fallback = 'Unknown error') {
5
- if (error instanceof Error) {
6
- return error.message;
7
- }
8
- return fallback;
9
- }
10
- export function getNestedApiErrorMessage(error) {
11
- if (!isRecord(error)) {
12
- return undefined;
13
- }
14
- const response = error.response;
15
- if (!isRecord(response)) {
16
- return undefined;
17
- }
18
- const data = response.data;
19
- if (!isRecord(data)) {
20
- return undefined;
21
- }
22
- const nestedError = data.error;
23
- if (isRecord(nestedError) && typeof nestedError.message === 'string') {
24
- return nestedError.message;
25
- }
26
- if (typeof data.message === 'string') {
27
- return data.message;
28
- }
29
- return undefined;
30
- }
31
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,KAAc,EACd,QAAQ,GAAG,eAAe;IAE1B,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAc;IACrD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;IAChC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC;IAC/B,IAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,WAAW,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACrE,OAAO,WAAW,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}