@mcp-abap-adt/llm-agent-server 10.0.0
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 +13 -0
- package/bin/llm-agent +2 -0
- package/bin/llm-agent-check +2 -0
- package/dist/agent.d.ts +49 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +97 -0
- package/dist/agent.js.map +1 -0
- package/dist/agents/anthropic-agent.d.ts +33 -0
- package/dist/agents/anthropic-agent.d.ts.map +1 -0
- package/dist/agents/anthropic-agent.js +138 -0
- package/dist/agents/anthropic-agent.js.map +1 -0
- package/dist/agents/base.d.ts +90 -0
- package/dist/agents/base.d.ts.map +1 -0
- package/dist/agents/base.js +107 -0
- package/dist/agents/base.js.map +1 -0
- package/dist/agents/deepseek-agent.d.ts +31 -0
- package/dist/agents/deepseek-agent.d.ts.map +1 -0
- package/dist/agents/deepseek-agent.js +121 -0
- package/dist/agents/deepseek-agent.js.map +1 -0
- package/dist/agents/index.d.ts +10 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/index.js +10 -0
- package/dist/agents/index.js.map +1 -0
- package/dist/agents/openai-agent.d.ts +32 -0
- package/dist/agents/openai-agent.d.ts.map +1 -0
- package/dist/agents/openai-agent.js +122 -0
- package/dist/agents/openai-agent.js.map +1 -0
- package/dist/agents/prompt-based-agent.d.ts +29 -0
- package/dist/agents/prompt-based-agent.d.ts.map +1 -0
- package/dist/agents/prompt-based-agent.js +67 -0
- package/dist/agents/prompt-based-agent.js.map +1 -0
- package/dist/agents/sap-core-ai-agent.d.ts +41 -0
- package/dist/agents/sap-core-ai-agent.d.ts.map +1 -0
- package/dist/agents/sap-core-ai-agent.js +151 -0
- package/dist/agents/sap-core-ai-agent.js.map +1 -0
- package/dist/cli.d.ts +53 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +338 -0
- package/dist/cli.js.map +1 -0
- package/dist/generated/version.d.ts +2 -0
- package/dist/generated/version.d.ts.map +1 -0
- package/dist/generated/version.js +3 -0
- package/dist/generated/version.js.map +1 -0
- package/dist/index.d.ts +75 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +78 -0
- package/dist/index.js.map +1 -0
- package/dist/llm-providers/anthropic.d.ts +25 -0
- package/dist/llm-providers/anthropic.d.ts.map +1 -0
- package/dist/llm-providers/anthropic.js +202 -0
- package/dist/llm-providers/anthropic.js.map +1 -0
- package/dist/llm-providers/base.d.ts +33 -0
- package/dist/llm-providers/base.d.ts.map +1 -0
- package/dist/llm-providers/base.js +18 -0
- package/dist/llm-providers/base.js.map +1 -0
- package/dist/llm-providers/deepseek.d.ts +24 -0
- package/dist/llm-providers/deepseek.d.ts.map +1 -0
- package/dist/llm-providers/deepseek.js +60 -0
- package/dist/llm-providers/deepseek.js.map +1 -0
- package/dist/llm-providers/index.d.ts +13 -0
- package/dist/llm-providers/index.d.ts.map +1 -0
- package/dist/llm-providers/index.js +15 -0
- package/dist/llm-providers/index.js.map +1 -0
- package/dist/llm-providers/openai.d.ts +34 -0
- package/dist/llm-providers/openai.d.ts.map +1 -0
- package/dist/llm-providers/openai.js +193 -0
- package/dist/llm-providers/openai.js.map +1 -0
- package/dist/llm-providers/sap-core-ai.d.ts +90 -0
- package/dist/llm-providers/sap-core-ai.d.ts.map +1 -0
- package/dist/llm-providers/sap-core-ai.js +394 -0
- package/dist/llm-providers/sap-core-ai.js.map +1 -0
- package/dist/mcp/client.d.ts +133 -0
- package/dist/mcp/client.d.ts.map +1 -0
- package/dist/mcp/client.js +314 -0
- package/dist/mcp/client.js.map +1 -0
- package/dist/smart-agent/adapters/cline-client-adapter.d.ts +18 -0
- package/dist/smart-agent/adapters/cline-client-adapter.d.ts.map +1 -0
- package/dist/smart-agent/adapters/cline-client-adapter.js +21 -0
- package/dist/smart-agent/adapters/cline-client-adapter.js.map +1 -0
- package/dist/smart-agent/adapters/index.d.ts +3 -0
- package/dist/smart-agent/adapters/index.d.ts.map +1 -0
- package/dist/smart-agent/adapters/index.js +3 -0
- package/dist/smart-agent/adapters/index.js.map +1 -0
- package/dist/smart-agent/adapters/llm-adapter.d.ts +24 -0
- package/dist/smart-agent/adapters/llm-adapter.d.ts.map +1 -0
- package/dist/smart-agent/adapters/llm-adapter.js +345 -0
- package/dist/smart-agent/adapters/llm-adapter.js.map +1 -0
- package/dist/smart-agent/adapters/mcp-client-adapter.d.ts +16 -0
- package/dist/smart-agent/adapters/mcp-client-adapter.d.ts.map +1 -0
- package/dist/smart-agent/adapters/mcp-client-adapter.js +95 -0
- package/dist/smart-agent/adapters/mcp-client-adapter.js.map +1 -0
- package/dist/smart-agent/adapters/non-streaming-llm.d.ts +18 -0
- package/dist/smart-agent/adapters/non-streaming-llm.d.ts.map +1 -0
- package/dist/smart-agent/adapters/non-streaming-llm.js +44 -0
- package/dist/smart-agent/adapters/non-streaming-llm.js.map +1 -0
- package/dist/smart-agent/agent.d.ts +229 -0
- package/dist/smart-agent/agent.d.ts.map +1 -0
- package/dist/smart-agent/agent.js +1538 -0
- package/dist/smart-agent/agent.js.map +1 -0
- package/dist/smart-agent/api-adapters/anthropic-adapter.d.ts +10 -0
- package/dist/smart-agent/api-adapters/anthropic-adapter.d.ts.map +1 -0
- package/dist/smart-agent/api-adapters/anthropic-adapter.js +356 -0
- package/dist/smart-agent/api-adapters/anthropic-adapter.js.map +1 -0
- package/dist/smart-agent/api-adapters/index.d.ts +3 -0
- package/dist/smart-agent/api-adapters/index.d.ts.map +1 -0
- package/dist/smart-agent/api-adapters/index.js +3 -0
- package/dist/smart-agent/api-adapters/index.js.map +1 -0
- package/dist/smart-agent/api-adapters/openai-adapter.d.ts +10 -0
- package/dist/smart-agent/api-adapters/openai-adapter.d.ts.map +1 -0
- package/dist/smart-agent/api-adapters/openai-adapter.js +277 -0
- package/dist/smart-agent/api-adapters/openai-adapter.js.map +1 -0
- package/dist/smart-agent/builder.d.ts +281 -0
- package/dist/smart-agent/builder.d.ts.map +1 -0
- package/dist/smart-agent/builder.js +942 -0
- package/dist/smart-agent/builder.js.map +1 -0
- package/dist/smart-agent/cache/index.d.ts +4 -0
- package/dist/smart-agent/cache/index.d.ts.map +1 -0
- package/dist/smart-agent/cache/index.js +3 -0
- package/dist/smart-agent/cache/index.js.map +1 -0
- package/dist/smart-agent/cache/noop-tool-cache.d.ts +7 -0
- package/dist/smart-agent/cache/noop-tool-cache.d.ts.map +1 -0
- package/dist/smart-agent/cache/noop-tool-cache.js +8 -0
- package/dist/smart-agent/cache/noop-tool-cache.js.map +1 -0
- package/dist/smart-agent/cache/tool-cache.d.ts +14 -0
- package/dist/smart-agent/cache/tool-cache.d.ts.map +1 -0
- package/dist/smart-agent/cache/tool-cache.js +32 -0
- package/dist/smart-agent/cache/tool-cache.js.map +1 -0
- package/dist/smart-agent/cache/types.d.ts +7 -0
- package/dist/smart-agent/cache/types.d.ts.map +1 -0
- package/dist/smart-agent/cache/types.js +2 -0
- package/dist/smart-agent/cache/types.js.map +1 -0
- package/dist/smart-agent/check-models-cli.d.ts +14 -0
- package/dist/smart-agent/check-models-cli.d.ts.map +1 -0
- package/dist/smart-agent/check-models-cli.js +237 -0
- package/dist/smart-agent/check-models-cli.js.map +1 -0
- package/dist/smart-agent/classifier/index.d.ts +3 -0
- package/dist/smart-agent/classifier/index.d.ts.map +1 -0
- package/dist/smart-agent/classifier/index.js +2 -0
- package/dist/smart-agent/classifier/index.js.map +1 -0
- package/dist/smart-agent/classifier/llm-classifier.d.ts +20 -0
- package/dist/smart-agent/classifier/llm-classifier.d.ts.map +1 -0
- package/dist/smart-agent/classifier/llm-classifier.js +128 -0
- package/dist/smart-agent/classifier/llm-classifier.js.map +1 -0
- package/dist/smart-agent/cli.d.ts +65 -0
- package/dist/smart-agent/cli.d.ts.map +1 -0
- package/dist/smart-agent/cli.js +199 -0
- package/dist/smart-agent/cli.js.map +1 -0
- package/dist/smart-agent/config/config-watcher.d.ts +54 -0
- package/dist/smart-agent/config/config-watcher.d.ts.map +1 -0
- package/dist/smart-agent/config/config-watcher.js +107 -0
- package/dist/smart-agent/config/config-watcher.js.map +1 -0
- package/dist/smart-agent/config/index.d.ts +2 -0
- package/dist/smart-agent/config/index.d.ts.map +1 -0
- package/dist/smart-agent/config/index.js +2 -0
- package/dist/smart-agent/config/index.js.map +1 -0
- package/dist/smart-agent/config.d.ts +35 -0
- package/dist/smart-agent/config.d.ts.map +1 -0
- package/dist/smart-agent/config.js +360 -0
- package/dist/smart-agent/config.js.map +1 -0
- package/dist/smart-agent/context/context-assembler.d.ts +49 -0
- package/dist/smart-agent/context/context-assembler.d.ts.map +1 -0
- package/dist/smart-agent/context/context-assembler.js +184 -0
- package/dist/smart-agent/context/context-assembler.js.map +1 -0
- package/dist/smart-agent/context/index.d.ts +3 -0
- package/dist/smart-agent/context/index.d.ts.map +1 -0
- package/dist/smart-agent/context/index.js +2 -0
- package/dist/smart-agent/context/index.js.map +1 -0
- package/dist/smart-agent/health/health-checker.d.ts +21 -0
- package/dist/smart-agent/health/health-checker.d.ts.map +1 -0
- package/dist/smart-agent/health/health-checker.js +52 -0
- package/dist/smart-agent/health/health-checker.js.map +1 -0
- package/dist/smart-agent/health/index.d.ts +3 -0
- package/dist/smart-agent/health/index.d.ts.map +1 -0
- package/dist/smart-agent/health/index.js +2 -0
- package/dist/smart-agent/health/index.js.map +1 -0
- package/dist/smart-agent/health/types.d.ts +25 -0
- package/dist/smart-agent/health/types.d.ts.map +1 -0
- package/dist/smart-agent/health/types.js +2 -0
- package/dist/smart-agent/health/types.js.map +1 -0
- package/dist/smart-agent/history/history-memory.d.ts +12 -0
- package/dist/smart-agent/history/history-memory.d.ts.map +1 -0
- package/dist/smart-agent/history/history-memory.js +26 -0
- package/dist/smart-agent/history/history-memory.js.map +1 -0
- package/dist/smart-agent/history/history-summarizer.d.ts +10 -0
- package/dist/smart-agent/history/history-summarizer.d.ts.map +1 -0
- package/dist/smart-agent/history/history-summarizer.js +27 -0
- package/dist/smart-agent/history/history-summarizer.js.map +1 -0
- package/dist/smart-agent/history/index.d.ts +3 -0
- package/dist/smart-agent/history/index.d.ts.map +1 -0
- package/dist/smart-agent/history/index.js +3 -0
- package/dist/smart-agent/history/index.js.map +1 -0
- package/dist/smart-agent/interfaces/api-adapter.d.ts +36 -0
- package/dist/smart-agent/interfaces/api-adapter.d.ts.map +1 -0
- package/dist/smart-agent/interfaces/api-adapter.js +9 -0
- package/dist/smart-agent/interfaces/api-adapter.js.map +1 -0
- package/dist/smart-agent/interfaces/client-adapter.d.ts +23 -0
- package/dist/smart-agent/interfaces/client-adapter.d.ts.map +1 -0
- package/dist/smart-agent/interfaces/client-adapter.js +10 -0
- package/dist/smart-agent/interfaces/client-adapter.js.map +1 -0
- package/dist/smart-agent/interfaces/mcp-connection-strategy.d.ts +27 -0
- package/dist/smart-agent/interfaces/mcp-connection-strategy.d.ts.map +1 -0
- package/dist/smart-agent/interfaces/mcp-connection-strategy.js +2 -0
- package/dist/smart-agent/interfaces/mcp-connection-strategy.js.map +1 -0
- package/dist/smart-agent/interfaces/model-resolver.d.ts +9 -0
- package/dist/smart-agent/interfaces/model-resolver.d.ts.map +1 -0
- package/dist/smart-agent/interfaces/model-resolver.js +2 -0
- package/dist/smart-agent/interfaces/model-resolver.js.map +1 -0
- package/dist/smart-agent/interfaces/pipeline.d.ts +125 -0
- package/dist/smart-agent/interfaces/pipeline.d.ts.map +1 -0
- package/dist/smart-agent/interfaces/pipeline.js +13 -0
- package/dist/smart-agent/interfaces/pipeline.js.map +1 -0
- package/dist/smart-agent/logger/console-logger.d.ts +7 -0
- package/dist/smart-agent/logger/console-logger.d.ts.map +1 -0
- package/dist/smart-agent/logger/console-logger.js +12 -0
- package/dist/smart-agent/logger/console-logger.js.map +1 -0
- package/dist/smart-agent/logger/default-request-logger.d.ts +17 -0
- package/dist/smart-agent/logger/default-request-logger.d.ts.map +1 -0
- package/dist/smart-agent/logger/default-request-logger.js +86 -0
- package/dist/smart-agent/logger/default-request-logger.js.map +1 -0
- package/dist/smart-agent/logger/index.d.ts +3 -0
- package/dist/smart-agent/logger/index.d.ts.map +1 -0
- package/dist/smart-agent/logger/index.js +2 -0
- package/dist/smart-agent/logger/index.js.map +1 -0
- package/dist/smart-agent/logger/noop-request-logger.d.ts +11 -0
- package/dist/smart-agent/logger/noop-request-logger.d.ts.map +1 -0
- package/dist/smart-agent/logger/noop-request-logger.js +20 -0
- package/dist/smart-agent/logger/noop-request-logger.js.map +1 -0
- package/dist/smart-agent/logger/session-logger.d.ts +10 -0
- package/dist/smart-agent/logger/session-logger.d.ts.map +1 -0
- package/dist/smart-agent/logger/session-logger.js +40 -0
- package/dist/smart-agent/logger/session-logger.js.map +1 -0
- package/dist/smart-agent/logger/types.d.ts +63 -0
- package/dist/smart-agent/logger/types.d.ts.map +1 -0
- package/dist/smart-agent/logger/types.js +2 -0
- package/dist/smart-agent/logger/types.js.map +1 -0
- package/dist/smart-agent/mcp-client-factory.d.ts +3 -0
- package/dist/smart-agent/mcp-client-factory.d.ts.map +1 -0
- package/dist/smart-agent/mcp-client-factory.js +21 -0
- package/dist/smart-agent/mcp-client-factory.js.map +1 -0
- package/dist/smart-agent/metrics/in-memory-metrics.d.ts +58 -0
- package/dist/smart-agent/metrics/in-memory-metrics.d.ts.map +1 -0
- package/dist/smart-agent/metrics/in-memory-metrics.js +78 -0
- package/dist/smart-agent/metrics/in-memory-metrics.js.map +1 -0
- package/dist/smart-agent/metrics/index.d.ts +4 -0
- package/dist/smart-agent/metrics/index.d.ts.map +1 -0
- package/dist/smart-agent/metrics/index.js +3 -0
- package/dist/smart-agent/metrics/index.js.map +1 -0
- package/dist/smart-agent/metrics/noop-metrics.d.ts +17 -0
- package/dist/smart-agent/metrics/noop-metrics.d.ts.map +1 -0
- package/dist/smart-agent/metrics/noop-metrics.js +22 -0
- package/dist/smart-agent/metrics/noop-metrics.js.map +1 -0
- package/dist/smart-agent/metrics/types.d.ts +36 -0
- package/dist/smart-agent/metrics/types.d.ts.map +1 -0
- package/dist/smart-agent/metrics/types.js +9 -0
- package/dist/smart-agent/metrics/types.js.map +1 -0
- package/dist/smart-agent/otel/index.d.ts +2 -0
- package/dist/smart-agent/otel/index.d.ts.map +1 -0
- package/dist/smart-agent/otel/index.js +2 -0
- package/dist/smart-agent/otel/index.js.map +1 -0
- package/dist/smart-agent/otel/otel-tracer-adapter.d.ts +15 -0
- package/dist/smart-agent/otel/otel-tracer-adapter.d.ts.map +1 -0
- package/dist/smart-agent/otel/otel-tracer-adapter.js +62 -0
- package/dist/smart-agent/otel/otel-tracer-adapter.js.map +1 -0
- package/dist/smart-agent/pipeline/condition-evaluator.d.ts +35 -0
- package/dist/smart-agent/pipeline/condition-evaluator.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/condition-evaluator.js +143 -0
- package/dist/smart-agent/pipeline/condition-evaluator.js.map +1 -0
- package/dist/smart-agent/pipeline/context.d.ts +121 -0
- package/dist/smart-agent/pipeline/context.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/context.js +19 -0
- package/dist/smart-agent/pipeline/context.js.map +1 -0
- package/dist/smart-agent/pipeline/default-pipeline.d.ts +69 -0
- package/dist/smart-agent/pipeline/default-pipeline.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/default-pipeline.js +278 -0
- package/dist/smart-agent/pipeline/default-pipeline.js.map +1 -0
- package/dist/smart-agent/pipeline/executor.d.ts +54 -0
- package/dist/smart-agent/pipeline/executor.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/executor.js +133 -0
- package/dist/smart-agent/pipeline/executor.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/assemble.d.ts +16 -0
- package/dist/smart-agent/pipeline/handlers/assemble.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/assemble.js +72 -0
- package/dist/smart-agent/pipeline/handlers/assemble.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/build-tool-query.d.ts +30 -0
- package/dist/smart-agent/pipeline/handlers/build-tool-query.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/build-tool-query.js +80 -0
- package/dist/smart-agent/pipeline/handlers/build-tool-query.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/classify.d.ts +21 -0
- package/dist/smart-agent/pipeline/handlers/classify.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/classify.js +60 -0
- package/dist/smart-agent/pipeline/handlers/classify.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/expand.d.ts +16 -0
- package/dist/smart-agent/pipeline/handlers/expand.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/expand.js +24 -0
- package/dist/smart-agent/pipeline/handlers/expand.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/history-upsert.d.ts +29 -0
- package/dist/smart-agent/pipeline/handlers/history-upsert.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/history-upsert.js +75 -0
- package/dist/smart-agent/pipeline/handlers/history-upsert.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/index.d.ts +31 -0
- package/dist/smart-agent/pipeline/handlers/index.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/index.js +44 -0
- package/dist/smart-agent/pipeline/handlers/index.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/rag-query.d.ts +27 -0
- package/dist/smart-agent/pipeline/handlers/rag-query.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/rag-query.js +117 -0
- package/dist/smart-agent/pipeline/handlers/rag-query.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/rerank.d.ts +16 -0
- package/dist/smart-agent/pipeline/handlers/rerank.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/rerank.js +27 -0
- package/dist/smart-agent/pipeline/handlers/rerank.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/skill-select.d.ts +18 -0
- package/dist/smart-agent/pipeline/handlers/skill-select.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/skill-select.js +88 -0
- package/dist/smart-agent/pipeline/handlers/skill-select.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/summarize.d.ts +17 -0
- package/dist/smart-agent/pipeline/handlers/summarize.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/summarize.js +56 -0
- package/dist/smart-agent/pipeline/handlers/summarize.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/tool-loop.d.ts +32 -0
- package/dist/smart-agent/pipeline/handlers/tool-loop.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/tool-loop.js +734 -0
- package/dist/smart-agent/pipeline/handlers/tool-loop.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/tool-select.d.ts +21 -0
- package/dist/smart-agent/pipeline/handlers/tool-select.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/tool-select.js +109 -0
- package/dist/smart-agent/pipeline/handlers/tool-select.js.map +1 -0
- package/dist/smart-agent/pipeline/handlers/translate.d.ts +17 -0
- package/dist/smart-agent/pipeline/handlers/translate.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/handlers/translate.js +42 -0
- package/dist/smart-agent/pipeline/handlers/translate.js.map +1 -0
- package/dist/smart-agent/pipeline/index.d.ts +14 -0
- package/dist/smart-agent/pipeline/index.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/index.js +16 -0
- package/dist/smart-agent/pipeline/index.js.map +1 -0
- package/dist/smart-agent/pipeline/stage-handler.d.ts +36 -0
- package/dist/smart-agent/pipeline/stage-handler.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/stage-handler.js +24 -0
- package/dist/smart-agent/pipeline/stage-handler.js.map +1 -0
- package/dist/smart-agent/pipeline/types.d.ts +116 -0
- package/dist/smart-agent/pipeline/types.d.ts.map +1 -0
- package/dist/smart-agent/pipeline/types.js +54 -0
- package/dist/smart-agent/pipeline/types.js.map +1 -0
- package/dist/smart-agent/pipeline.d.ts +82 -0
- package/dist/smart-agent/pipeline.d.ts.map +1 -0
- package/dist/smart-agent/pipeline.js +8 -0
- package/dist/smart-agent/pipeline.js.map +1 -0
- package/dist/smart-agent/plugins/index.d.ts +4 -0
- package/dist/smart-agent/plugins/index.d.ts.map +1 -0
- package/dist/smart-agent/plugins/index.js +3 -0
- package/dist/smart-agent/plugins/index.js.map +1 -0
- package/dist/smart-agent/plugins/loader.d.ts +67 -0
- package/dist/smart-agent/plugins/loader.d.ts.map +1 -0
- package/dist/smart-agent/plugins/loader.js +114 -0
- package/dist/smart-agent/plugins/loader.js.map +1 -0
- package/dist/smart-agent/plugins/types.d.ts +164 -0
- package/dist/smart-agent/plugins/types.d.ts.map +1 -0
- package/dist/smart-agent/plugins/types.js +136 -0
- package/dist/smart-agent/plugins/types.js.map +1 -0
- package/dist/smart-agent/policy/fallback-llm-call-strategy.d.ts +16 -0
- package/dist/smart-agent/policy/fallback-llm-call-strategy.d.ts.map +1 -0
- package/dist/smart-agent/policy/fallback-llm-call-strategy.js +66 -0
- package/dist/smart-agent/policy/fallback-llm-call-strategy.js.map +1 -0
- package/dist/smart-agent/policy/heuristic-injection-detector.d.ts +5 -0
- package/dist/smart-agent/policy/heuristic-injection-detector.d.ts.map +1 -0
- package/dist/smart-agent/policy/heuristic-injection-detector.js +36 -0
- package/dist/smart-agent/policy/heuristic-injection-detector.js.map +1 -0
- package/dist/smart-agent/policy/index.d.ts +6 -0
- package/dist/smart-agent/policy/index.d.ts.map +1 -0
- package/dist/smart-agent/policy/index.js +5 -0
- package/dist/smart-agent/policy/index.js.map +1 -0
- package/dist/smart-agent/policy/mixed-tool-call-handler.d.ts +16 -0
- package/dist/smart-agent/policy/mixed-tool-call-handler.d.ts.map +1 -0
- package/dist/smart-agent/policy/mixed-tool-call-handler.js +49 -0
- package/dist/smart-agent/policy/mixed-tool-call-handler.js.map +1 -0
- package/dist/smart-agent/policy/non-streaming-llm-call-strategy.d.ts +6 -0
- package/dist/smart-agent/policy/non-streaming-llm-call-strategy.d.ts.map +1 -0
- package/dist/smart-agent/policy/non-streaming-llm-call-strategy.js +21 -0
- package/dist/smart-agent/policy/non-streaming-llm-call-strategy.js.map +1 -0
- package/dist/smart-agent/policy/pending-tool-results-registry.d.ts +25 -0
- package/dist/smart-agent/policy/pending-tool-results-registry.d.ts.map +1 -0
- package/dist/smart-agent/policy/pending-tool-results-registry.js +50 -0
- package/dist/smart-agent/policy/pending-tool-results-registry.js.map +1 -0
- package/dist/smart-agent/policy/streaming-llm-call-strategy.d.ts +6 -0
- package/dist/smart-agent/policy/streaming-llm-call-strategy.d.ts.map +1 -0
- package/dist/smart-agent/policy/streaming-llm-call-strategy.js +7 -0
- package/dist/smart-agent/policy/streaming-llm-call-strategy.js.map +1 -0
- package/dist/smart-agent/policy/tool-availability-registry.d.ts +21 -0
- package/dist/smart-agent/policy/tool-availability-registry.d.ts.map +1 -0
- package/dist/smart-agent/policy/tool-availability-registry.js +77 -0
- package/dist/smart-agent/policy/tool-availability-registry.js.map +1 -0
- package/dist/smart-agent/policy/tool-policy-guard.d.ts +8 -0
- package/dist/smart-agent/policy/tool-policy-guard.d.ts.map +1 -0
- package/dist/smart-agent/policy/tool-policy-guard.js +40 -0
- package/dist/smart-agent/policy/tool-policy-guard.js.map +1 -0
- package/dist/smart-agent/policy/types.d.ts +51 -0
- package/dist/smart-agent/policy/types.d.ts.map +1 -0
- package/dist/smart-agent/policy/types.js +17 -0
- package/dist/smart-agent/policy/types.js.map +1 -0
- package/dist/smart-agent/providers.d.ts +98 -0
- package/dist/smart-agent/providers.d.ts.map +1 -0
- package/dist/smart-agent/providers.js +245 -0
- package/dist/smart-agent/providers.js.map +1 -0
- package/dist/smart-agent/reranker/index.d.ts +4 -0
- package/dist/smart-agent/reranker/index.d.ts.map +1 -0
- package/dist/smart-agent/reranker/index.js +3 -0
- package/dist/smart-agent/reranker/index.js.map +1 -0
- package/dist/smart-agent/reranker/llm-reranker.d.ts +10 -0
- package/dist/smart-agent/reranker/llm-reranker.d.ts.map +1 -0
- package/dist/smart-agent/reranker/llm-reranker.js +55 -0
- package/dist/smart-agent/reranker/llm-reranker.js.map +1 -0
- package/dist/smart-agent/reranker/noop-reranker.d.ts +6 -0
- package/dist/smart-agent/reranker/noop-reranker.d.ts.map +1 -0
- package/dist/smart-agent/reranker/noop-reranker.js +6 -0
- package/dist/smart-agent/reranker/noop-reranker.js.map +1 -0
- package/dist/smart-agent/reranker/types.d.ts +5 -0
- package/dist/smart-agent/reranker/types.d.ts.map +1 -0
- package/dist/smart-agent/reranker/types.js +2 -0
- package/dist/smart-agent/reranker/types.js.map +1 -0
- package/dist/smart-agent/resilience/circuit-breaker-embedder.d.ts +16 -0
- package/dist/smart-agent/resilience/circuit-breaker-embedder.d.ts.map +1 -0
- package/dist/smart-agent/resilience/circuit-breaker-embedder.js +47 -0
- package/dist/smart-agent/resilience/circuit-breaker-embedder.js.map +1 -0
- package/dist/smart-agent/resilience/circuit-breaker-llm.d.ts +19 -0
- package/dist/smart-agent/resilience/circuit-breaker-llm.d.ts.map +1 -0
- package/dist/smart-agent/resilience/circuit-breaker-llm.js +72 -0
- package/dist/smart-agent/resilience/circuit-breaker-llm.js.map +1 -0
- package/dist/smart-agent/resilience/circuit-breaker.d.ts +36 -0
- package/dist/smart-agent/resilience/circuit-breaker.d.ts.map +1 -0
- package/dist/smart-agent/resilience/circuit-breaker.js +60 -0
- package/dist/smart-agent/resilience/circuit-breaker.js.map +1 -0
- package/dist/smart-agent/resilience/fallback-rag.d.ts +21 -0
- package/dist/smart-agent/resilience/fallback-rag.d.ts.map +1 -0
- package/dist/smart-agent/resilience/fallback-rag.js +80 -0
- package/dist/smart-agent/resilience/fallback-rag.js.map +1 -0
- package/dist/smart-agent/resilience/index.d.ts +5 -0
- package/dist/smart-agent/resilience/index.d.ts.map +1 -0
- package/dist/smart-agent/resilience/index.js +5 -0
- package/dist/smart-agent/resilience/index.js.map +1 -0
- package/dist/smart-agent/resilience/rate-limiter-llm.d.ts +17 -0
- package/dist/smart-agent/resilience/rate-limiter-llm.d.ts.map +1 -0
- package/dist/smart-agent/resilience/rate-limiter-llm.js +30 -0
- package/dist/smart-agent/resilience/rate-limiter-llm.js.map +1 -0
- package/dist/smart-agent/resilience/retry-llm.d.ts +32 -0
- package/dist/smart-agent/resilience/retry-llm.d.ts.map +1 -0
- package/dist/smart-agent/resilience/retry-llm.js +103 -0
- package/dist/smart-agent/resilience/retry-llm.js.map +1 -0
- package/dist/smart-agent/resilience/token-bucket-rate-limiter.d.ts +21 -0
- package/dist/smart-agent/resilience/token-bucket-rate-limiter.d.ts.map +1 -0
- package/dist/smart-agent/resilience/token-bucket-rate-limiter.js +32 -0
- package/dist/smart-agent/resilience/token-bucket-rate-limiter.js.map +1 -0
- package/dist/smart-agent/server.d.ts +19 -0
- package/dist/smart-agent/server.d.ts.map +1 -0
- package/dist/smart-agent/server.js +349 -0
- package/dist/smart-agent/server.js.map +1 -0
- package/dist/smart-agent/session/index.d.ts +4 -0
- package/dist/smart-agent/session/index.d.ts.map +1 -0
- package/dist/smart-agent/session/index.js +3 -0
- package/dist/smart-agent/session/index.js.map +1 -0
- package/dist/smart-agent/session/noop-session-manager.d.ts +8 -0
- package/dist/smart-agent/session/noop-session-manager.d.ts.map +1 -0
- package/dist/smart-agent/session/noop-session-manager.js +11 -0
- package/dist/smart-agent/session/noop-session-manager.js.map +1 -0
- package/dist/smart-agent/session/session-manager.d.ts +13 -0
- package/dist/smart-agent/session/session-manager.d.ts.map +1 -0
- package/dist/smart-agent/session/session-manager.js +20 -0
- package/dist/smart-agent/session/session-manager.js.map +1 -0
- package/dist/smart-agent/session/types.d.ts +7 -0
- package/dist/smart-agent/session/types.d.ts.map +1 -0
- package/dist/smart-agent/session/types.js +2 -0
- package/dist/smart-agent/session/types.js.map +1 -0
- package/dist/smart-agent/skills/claude-skill-manager.d.ts +24 -0
- package/dist/smart-agent/skills/claude-skill-manager.d.ts.map +1 -0
- package/dist/smart-agent/skills/claude-skill-manager.js +81 -0
- package/dist/smart-agent/skills/claude-skill-manager.js.map +1 -0
- package/dist/smart-agent/skills/codex-skill-manager.d.ts +20 -0
- package/dist/smart-agent/skills/codex-skill-manager.d.ts.map +1 -0
- package/dist/smart-agent/skills/codex-skill-manager.js +75 -0
- package/dist/smart-agent/skills/codex-skill-manager.js.map +1 -0
- package/dist/smart-agent/skills/filesystem-skill-manager.d.ts +17 -0
- package/dist/smart-agent/skills/filesystem-skill-manager.d.ts.map +1 -0
- package/dist/smart-agent/skills/filesystem-skill-manager.js +48 -0
- package/dist/smart-agent/skills/filesystem-skill-manager.js.map +1 -0
- package/dist/smart-agent/skills/filesystem-skill.d.ts +25 -0
- package/dist/smart-agent/skills/filesystem-skill.d.ts.map +1 -0
- package/dist/smart-agent/skills/filesystem-skill.js +110 -0
- package/dist/smart-agent/skills/filesystem-skill.js.map +1 -0
- package/dist/smart-agent/skills/index.d.ts +9 -0
- package/dist/smart-agent/skills/index.d.ts.map +1 -0
- package/dist/smart-agent/skills/index.js +9 -0
- package/dist/smart-agent/skills/index.js.map +1 -0
- package/dist/smart-agent/skills/skill-utils.d.ts +15 -0
- package/dist/smart-agent/skills/skill-utils.d.ts.map +1 -0
- package/dist/smart-agent/skills/skill-utils.js +46 -0
- package/dist/smart-agent/skills/skill-utils.js.map +1 -0
- package/dist/smart-agent/smart-server.d.ts +150 -0
- package/dist/smart-agent/smart-server.d.ts.map +1 -0
- package/dist/smart-agent/smart-server.js +903 -0
- package/dist/smart-agent/smart-server.js.map +1 -0
- package/dist/smart-agent/strategies/index.d.ts +4 -0
- package/dist/smart-agent/strategies/index.d.ts.map +1 -0
- package/dist/smart-agent/strategies/index.js +4 -0
- package/dist/smart-agent/strategies/index.js.map +1 -0
- package/dist/smart-agent/strategies/lazy-connection-strategy.d.ts +15 -0
- package/dist/smart-agent/strategies/lazy-connection-strategy.d.ts.map +1 -0
- package/dist/smart-agent/strategies/lazy-connection-strategy.js +82 -0
- package/dist/smart-agent/strategies/lazy-connection-strategy.js.map +1 -0
- package/dist/smart-agent/strategies/noop-connection-strategy.d.ts +6 -0
- package/dist/smart-agent/strategies/noop-connection-strategy.d.ts.map +1 -0
- package/dist/smart-agent/strategies/noop-connection-strategy.js +6 -0
- package/dist/smart-agent/strategies/noop-connection-strategy.js.map +1 -0
- package/dist/smart-agent/strategies/periodic-connection-strategy.d.ts +13 -0
- package/dist/smart-agent/strategies/periodic-connection-strategy.d.ts.map +1 -0
- package/dist/smart-agent/strategies/periodic-connection-strategy.js +40 -0
- package/dist/smart-agent/strategies/periodic-connection-strategy.js.map +1 -0
- package/dist/smart-agent/testing/index.d.ts +121 -0
- package/dist/smart-agent/testing/index.d.ts.map +1 -0
- package/dist/smart-agent/testing/index.js +354 -0
- package/dist/smart-agent/testing/index.js.map +1 -0
- package/dist/smart-agent/tracer/index.d.ts +3 -0
- package/dist/smart-agent/tracer/index.d.ts.map +1 -0
- package/dist/smart-agent/tracer/index.js +2 -0
- package/dist/smart-agent/tracer/index.js.map +1 -0
- package/dist/smart-agent/tracer/noop-tracer.d.ts +5 -0
- package/dist/smart-agent/tracer/noop-tracer.d.ts.map +1 -0
- package/dist/smart-agent/tracer/noop-tracer.js +16 -0
- package/dist/smart-agent/tracer/noop-tracer.js.map +1 -0
- package/dist/smart-agent/tracer/types.d.ts +17 -0
- package/dist/smart-agent/tracer/types.d.ts.map +1 -0
- package/dist/smart-agent/tracer/types.js +2 -0
- package/dist/smart-agent/tracer/types.js.map +1 -0
- package/dist/smart-agent/utils/external-tools-normalizer.d.ts +15 -0
- package/dist/smart-agent/utils/external-tools-normalizer.d.ts.map +1 -0
- package/dist/smart-agent/utils/external-tools-normalizer.js +146 -0
- package/dist/smart-agent/utils/external-tools-normalizer.js.map +1 -0
- package/dist/smart-agent/utils/lazy.d.ts +51 -0
- package/dist/smart-agent/utils/lazy.d.ts.map +1 -0
- package/dist/smart-agent/utils/lazy.js +127 -0
- package/dist/smart-agent/utils/lazy.js.map +1 -0
- package/dist/smart-agent/utils/parse-frontmatter.d.ts +15 -0
- package/dist/smart-agent/utils/parse-frontmatter.d.ts.map +1 -0
- package/dist/smart-agent/utils/parse-frontmatter.js +22 -0
- package/dist/smart-agent/utils/parse-frontmatter.js.map +1 -0
- package/dist/smart-agent/utils/tool-call-deltas.d.ts +4 -0
- package/dist/smart-agent/utils/tool-call-deltas.d.ts.map +1 -0
- package/dist/smart-agent/utils/tool-call-deltas.js +25 -0
- package/dist/smart-agent/utils/tool-call-deltas.js.map +1 -0
- package/dist/smart-agent/validator/index.d.ts +3 -0
- package/dist/smart-agent/validator/index.d.ts.map +1 -0
- package/dist/smart-agent/validator/index.js +2 -0
- package/dist/smart-agent/validator/index.js.map +1 -0
- package/dist/smart-agent/validator/noop-validator.d.ts +6 -0
- package/dist/smart-agent/validator/noop-validator.d.ts.map +1 -0
- package/dist/smart-agent/validator/noop-validator.js +6 -0
- package/dist/smart-agent/validator/noop-validator.js.map +1 -0
- package/dist/smart-agent/validator/types.d.ts +17 -0
- package/dist/smart-agent/validator/types.d.ts.map +1 -0
- package/dist/smart-agent/validator/types.js +8 -0
- package/dist/smart-agent/validator/types.js.map +1 -0
- package/dist/smoke-adapters.d.ts +17 -0
- package/dist/smoke-adapters.d.ts.map +1 -0
- package/dist/smoke-adapters.js +178 -0
- package/dist/smoke-adapters.js.map +1 -0
- package/package.json +89 -0
- package/tools/claude-via-agent.ps1 +83 -0
- package/tools/claude-via-agent.sh +96 -0
package/README.md
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# @mcp-abap-adt/llm-agent-server
|
|
2
|
+
|
|
3
|
+
Default SmartAgent implementation plus LLM providers, MCP client, HTTP server, and CLI. Depends on `@mcp-abap-adt/llm-agent` (core).
|
|
4
|
+
|
|
5
|
+
Install this package when you want the out-of-the-box agent without writing your own pipeline. Install only `@mcp-abap-adt/llm-agent` when you're writing a custom agent on our interfaces.
|
|
6
|
+
|
|
7
|
+
## CLIs shipped
|
|
8
|
+
|
|
9
|
+
- `llm-agent` — primary runtime (`llm-agent --config smart-server.yaml`).
|
|
10
|
+
- `llm-agent-check` — diagnostics CLI.
|
|
11
|
+
- `claude-via-agent` — dev convenience wrapper that launches the Claude CLI through a SmartServer.
|
|
12
|
+
|
|
13
|
+
See the repo root for design specs, migration notes (`docs/MIGRATION-v10.md`), and architectural docs.
|
package/bin/llm-agent
ADDED
package/dist/agent.d.ts
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core Agent Orchestrator
|
|
3
|
+
*
|
|
4
|
+
* Coordinates between LLM provider and MCP tools
|
|
5
|
+
*/
|
|
6
|
+
import type { AgentResponse, Message } from '@mcp-abap-adt/llm-agent';
|
|
7
|
+
import type { LLMProvider } from './llm-providers/base.js';
|
|
8
|
+
import { type MCPClientConfig, MCPClientWrapper } from './mcp/client.js';
|
|
9
|
+
export interface AgentConfig {
|
|
10
|
+
llmProvider: LLMProvider;
|
|
11
|
+
/**
|
|
12
|
+
* MCP client instance (if provided, will be used directly)
|
|
13
|
+
* If not provided, will be created from mcpConfig
|
|
14
|
+
*/
|
|
15
|
+
mcpClient?: MCPClientWrapper;
|
|
16
|
+
/**
|
|
17
|
+
* Direct MCP configuration (used if mcpClient is not provided)
|
|
18
|
+
* If both mcpClient and mcpConfig are provided, mcpClient takes precedence
|
|
19
|
+
*/
|
|
20
|
+
mcpConfig?: MCPClientConfig;
|
|
21
|
+
maxIterations?: number;
|
|
22
|
+
}
|
|
23
|
+
export declare class Agent {
|
|
24
|
+
private llmProvider;
|
|
25
|
+
private mcpClient;
|
|
26
|
+
private conversationHistory;
|
|
27
|
+
constructor(config: AgentConfig);
|
|
28
|
+
/**
|
|
29
|
+
* Initialize MCP client connection (call this before using the agent)
|
|
30
|
+
*/
|
|
31
|
+
connect(): Promise<void>;
|
|
32
|
+
/**
|
|
33
|
+
* Process a user message and return agent response
|
|
34
|
+
*/
|
|
35
|
+
process(userMessage: string): Promise<AgentResponse>;
|
|
36
|
+
/**
|
|
37
|
+
* Build system message with tool definitions
|
|
38
|
+
*/
|
|
39
|
+
private buildSystemMessage;
|
|
40
|
+
/**
|
|
41
|
+
* Clear conversation history
|
|
42
|
+
*/
|
|
43
|
+
clearHistory(): void;
|
|
44
|
+
/**
|
|
45
|
+
* Get conversation history
|
|
46
|
+
*/
|
|
47
|
+
getHistory(): Message[];
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,KAAK,eAAe,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEzE,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,WAAW,CAAC;IACzB;;;OAGG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B;;;OAGG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,KAAK;IAChB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,mBAAmB,CAAiB;gBAEhC,MAAM,EAAE,WAAW;IAe/B;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;OAEG;IACG,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA2C1D;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgB1B;;OAEG;IACH,YAAY,IAAI,IAAI;IAIpB;;OAEG;IACH,UAAU,IAAI,OAAO,EAAE;CAGxB"}
|
package/dist/agent.js
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core Agent Orchestrator
|
|
3
|
+
*
|
|
4
|
+
* Coordinates between LLM provider and MCP tools
|
|
5
|
+
*/
|
|
6
|
+
import { MCPClientWrapper } from './mcp/client.js';
|
|
7
|
+
export class Agent {
|
|
8
|
+
llmProvider;
|
|
9
|
+
mcpClient;
|
|
10
|
+
conversationHistory = [];
|
|
11
|
+
constructor(config) {
|
|
12
|
+
this.llmProvider = config.llmProvider;
|
|
13
|
+
// Initialize MCP client
|
|
14
|
+
if (config.mcpClient) {
|
|
15
|
+
this.mcpClient = config.mcpClient;
|
|
16
|
+
}
|
|
17
|
+
else if (config.mcpConfig) {
|
|
18
|
+
this.mcpClient = new MCPClientWrapper(config.mcpConfig);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
throw new Error('MCP client configuration required. Provide either mcpClient or mcpConfig.');
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Initialize MCP client connection (call this before using the agent)
|
|
26
|
+
*/
|
|
27
|
+
async connect() {
|
|
28
|
+
await this.mcpClient.connect();
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Process a user message and return agent response
|
|
32
|
+
*/
|
|
33
|
+
async process(userMessage) {
|
|
34
|
+
try {
|
|
35
|
+
// Add user message to history
|
|
36
|
+
this.conversationHistory.push({
|
|
37
|
+
role: 'user',
|
|
38
|
+
content: userMessage,
|
|
39
|
+
});
|
|
40
|
+
// Get available tools from MCP
|
|
41
|
+
const tools = await this.mcpClient.listTools();
|
|
42
|
+
// Build system message with tool definitions
|
|
43
|
+
const systemMessage = this.buildSystemMessage(tools);
|
|
44
|
+
// Prepare messages for LLM
|
|
45
|
+
const messages = [
|
|
46
|
+
{ role: 'system', content: systemMessage },
|
|
47
|
+
...this.conversationHistory,
|
|
48
|
+
];
|
|
49
|
+
// Get LLM response
|
|
50
|
+
const llmResponse = await this.llmProvider.chat(messages);
|
|
51
|
+
// Add assistant response to history
|
|
52
|
+
this.conversationHistory.push({
|
|
53
|
+
role: 'assistant',
|
|
54
|
+
content: llmResponse.content,
|
|
55
|
+
});
|
|
56
|
+
return {
|
|
57
|
+
message: llmResponse.content,
|
|
58
|
+
raw: llmResponse.raw,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
63
|
+
return {
|
|
64
|
+
message: '',
|
|
65
|
+
error: errorMessage || 'Agent processing failed',
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Build system message with tool definitions
|
|
71
|
+
*/
|
|
72
|
+
buildSystemMessage(tools) {
|
|
73
|
+
const toolDescriptions = tools
|
|
74
|
+
.map((tool) => {
|
|
75
|
+
return `- ${tool.name}: ${tool.description || 'No description'}`;
|
|
76
|
+
})
|
|
77
|
+
.join('\n');
|
|
78
|
+
return `You are a helpful assistant with access to the following tools:
|
|
79
|
+
|
|
80
|
+
${toolDescriptions}
|
|
81
|
+
|
|
82
|
+
If using a tool is required, describe the tool call and its parameters in your response.`;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Clear conversation history
|
|
86
|
+
*/
|
|
87
|
+
clearHistory() {
|
|
88
|
+
this.conversationHistory = [];
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Get conversation history
|
|
92
|
+
*/
|
|
93
|
+
getHistory() {
|
|
94
|
+
return [...this.conversationHistory];
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=agent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAwB,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAiBzE,MAAM,OAAO,KAAK;IACR,WAAW,CAAc;IACzB,SAAS,CAAmB;IAC5B,mBAAmB,GAAc,EAAE,CAAC;IAE5C,YAAY,MAAmB;QAC7B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QAEtC,wBAAwB;QACxB,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACpC,CAAC;aAAM,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CACb,2EAA2E,CAC5E,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,WAAmB;QAC/B,IAAI,CAAC;YACH,8BAA8B;YAC9B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;gBAC5B,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,WAAW;aACrB,CAAC,CAAC;YAEH,+BAA+B;YAC/B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;YAE/C,6CAA6C;YAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAErD,2BAA2B;YAC3B,MAAM,QAAQ,GAAc;gBAC1B,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE;gBAC1C,GAAG,IAAI,CAAC,mBAAmB;aAC5B,CAAC;YAEF,mBAAmB;YACnB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAE1D,oCAAoC;YACpC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;gBAC5B,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,WAAW,CAAC,OAAO;aAC7B,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,WAAW,CAAC,OAAO;gBAC5B,GAAG,EAAE,WAAW,CAAC,GAAG;aACrB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACzD,OAAO;gBACL,OAAO,EAAE,EAAE;gBACX,KAAK,EAAE,YAAY,IAAI,yBAAyB;aACjD,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,kBAAkB,CACxB,KAAqD;QAErD,MAAM,gBAAgB,GAAG,KAAK;aAC3B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,OAAO,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,IAAI,gBAAgB,EAAE,CAAC;QACnE,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO;;EAET,gBAAgB;;yFAEuE,CAAC;IACxF,CAAC;IAED;;OAEG;IACH,YAAY;QACV,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;CACF"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Anthropic Agent - Uses Anthropic tools API for tool integration
|
|
3
|
+
*
|
|
4
|
+
* Anthropic (Claude) supports tools via the `tools` parameter and returns
|
|
5
|
+
* tool use blocks in the response content.
|
|
6
|
+
*/
|
|
7
|
+
import type { AgentStreamChunk, Message } from '@mcp-abap-adt/llm-agent';
|
|
8
|
+
import type { AnthropicProvider } from '../llm-providers/anthropic.js';
|
|
9
|
+
import { type AgentCallOptions, BaseAgent, type BaseAgentConfig } from './base.js';
|
|
10
|
+
export interface AnthropicAgentConfig extends BaseAgentConfig {
|
|
11
|
+
llmProvider: AnthropicProvider;
|
|
12
|
+
}
|
|
13
|
+
export declare class AnthropicAgent extends BaseAgent {
|
|
14
|
+
private llmProvider;
|
|
15
|
+
constructor(config: AnthropicAgentConfig);
|
|
16
|
+
/**
|
|
17
|
+
* Call Anthropic with tools using tools API
|
|
18
|
+
*/
|
|
19
|
+
protected callLLMWithTools(messages: Message[], tools: unknown[], options?: AgentCallOptions): Promise<{
|
|
20
|
+
content: string;
|
|
21
|
+
raw?: unknown;
|
|
22
|
+
}>;
|
|
23
|
+
/**
|
|
24
|
+
* Stream Anthropic response via real SSE streaming.
|
|
25
|
+
* Delegates to provider.streamChat() and parses raw chunks for tool calls.
|
|
26
|
+
*/
|
|
27
|
+
protected streamLLMWithTools(messages: Message[], tools: unknown[], options?: AgentCallOptions): AsyncGenerator<AgentStreamChunk, void, unknown>;
|
|
28
|
+
/**
|
|
29
|
+
* Convert MCP tools to Anthropic tool format
|
|
30
|
+
*/
|
|
31
|
+
private convertToolsToAnthropicTools;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=anthropic-agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anthropic-agent.d.ts","sourceRoot":"","sources":["../../src/agents/anthropic-agent.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EACL,KAAK,gBAAgB,EACrB,SAAS,EACT,KAAK,eAAe,EACrB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,oBAAqB,SAAQ,eAAe;IAC3D,WAAW,EAAE,iBAAiB,CAAC;CAChC;AAED,qBAAa,cAAe,SAAQ,SAAS;IAC3C,OAAO,CAAC,WAAW,CAAoB;gBAE3B,MAAM,EAAE,oBAAoB;IAKxC;;OAEG;cACa,gBAAgB,CAC9B,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAgB9C;;;OAGG;cACc,kBAAkB,CACjC,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,cAAc,CAAC,gBAAgB,EAAE,IAAI,EAAE,OAAO,CAAC;IAsGlD;;OAEG;IACH,OAAO,CAAC,4BAA4B;CAmBrC"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Anthropic Agent - Uses Anthropic tools API for tool integration
|
|
3
|
+
*
|
|
4
|
+
* Anthropic (Claude) supports tools via the `tools` parameter and returns
|
|
5
|
+
* tool use blocks in the response content.
|
|
6
|
+
*/
|
|
7
|
+
import { BaseAgent, } from './base.js';
|
|
8
|
+
export class AnthropicAgent extends BaseAgent {
|
|
9
|
+
llmProvider;
|
|
10
|
+
constructor(config) {
|
|
11
|
+
super(config);
|
|
12
|
+
this.llmProvider = config.llmProvider;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Call Anthropic with tools using tools API
|
|
16
|
+
*/
|
|
17
|
+
async callLLMWithTools(messages, tools, options) {
|
|
18
|
+
const anthropicTools = this.convertToolsToAnthropicTools(tools);
|
|
19
|
+
// Pass all messages (including system) — provider handles system message separation
|
|
20
|
+
const response = await this.llmProvider.chat(messages, anthropicTools.length > 0 ? anthropicTools : undefined, options);
|
|
21
|
+
return {
|
|
22
|
+
content: response.content,
|
|
23
|
+
raw: response.raw,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Stream Anthropic response via real SSE streaming.
|
|
28
|
+
* Delegates to provider.streamChat() and parses raw chunks for tool calls.
|
|
29
|
+
*/
|
|
30
|
+
async *streamLLMWithTools(messages, tools, options) {
|
|
31
|
+
const anthropicTools = this.convertToolsToAnthropicTools(tools);
|
|
32
|
+
const toolCallMap = new Map();
|
|
33
|
+
let finishReason = 'stop';
|
|
34
|
+
let blockIndex = 0;
|
|
35
|
+
for await (const chunk of this.llmProvider.streamChat(messages, anthropicTools.length > 0 ? anthropicTools : undefined, options)) {
|
|
36
|
+
// Yield text deltas
|
|
37
|
+
if (chunk.content) {
|
|
38
|
+
yield { type: 'text', delta: chunk.content };
|
|
39
|
+
}
|
|
40
|
+
if (chunk.raw && typeof chunk.raw === 'object') {
|
|
41
|
+
const raw = chunk.raw;
|
|
42
|
+
// content_block_start — detect tool_use blocks
|
|
43
|
+
if (raw.type === 'content_block_start' && raw.content_block) {
|
|
44
|
+
const block = raw.content_block;
|
|
45
|
+
if (block.type === 'tool_use') {
|
|
46
|
+
toolCallMap.set(blockIndex, {
|
|
47
|
+
id: block.id ?? '',
|
|
48
|
+
name: block.name ?? '',
|
|
49
|
+
arguments: '',
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
blockIndex++;
|
|
53
|
+
}
|
|
54
|
+
// content_block_delta — accumulate tool input JSON
|
|
55
|
+
if (raw.type === 'content_block_delta' && raw.delta) {
|
|
56
|
+
const delta = raw.delta;
|
|
57
|
+
if (delta.type === 'input_json_delta' && delta.partial_json) {
|
|
58
|
+
const current = toolCallMap.get(blockIndex - 1);
|
|
59
|
+
if (current)
|
|
60
|
+
current.arguments += delta.partial_json;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
// message_delta — finish reason
|
|
64
|
+
if (raw.type === 'message_delta' && raw.delta) {
|
|
65
|
+
const delta = raw.delta;
|
|
66
|
+
const reason = delta.stop_reason;
|
|
67
|
+
if (reason === 'tool_use')
|
|
68
|
+
finishReason = 'tool_calls';
|
|
69
|
+
else if (reason === 'max_tokens')
|
|
70
|
+
finishReason = 'length';
|
|
71
|
+
else if (reason === 'end_turn' || reason === 'stop_sequence')
|
|
72
|
+
finishReason = 'stop';
|
|
73
|
+
}
|
|
74
|
+
// message_start — usage
|
|
75
|
+
if (raw.type === 'message_start' && raw.message) {
|
|
76
|
+
const msg = raw.message;
|
|
77
|
+
const usage = msg.usage;
|
|
78
|
+
if (usage) {
|
|
79
|
+
yield {
|
|
80
|
+
type: 'usage',
|
|
81
|
+
promptTokens: usage.input_tokens ?? 0,
|
|
82
|
+
completionTokens: usage.output_tokens ?? 0,
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
// Track finish reason from provider
|
|
88
|
+
if (chunk.finishReason) {
|
|
89
|
+
if (chunk.finishReason === 'tool_use')
|
|
90
|
+
finishReason = 'tool_calls';
|
|
91
|
+
else if (chunk.finishReason === 'max_tokens')
|
|
92
|
+
finishReason = 'length';
|
|
93
|
+
else
|
|
94
|
+
finishReason = 'stop';
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
// Emit accumulated tool calls
|
|
98
|
+
if (toolCallMap.size > 0) {
|
|
99
|
+
const toolCalls = [...toolCallMap.entries()]
|
|
100
|
+
.sort(([a], [b]) => a - b)
|
|
101
|
+
.filter(([, tc]) => tc.name)
|
|
102
|
+
.map(([, tc]) => ({
|
|
103
|
+
id: tc.id,
|
|
104
|
+
name: tc.name,
|
|
105
|
+
arguments: (() => {
|
|
106
|
+
try {
|
|
107
|
+
return JSON.parse(tc.arguments);
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
return {};
|
|
111
|
+
}
|
|
112
|
+
})(),
|
|
113
|
+
}));
|
|
114
|
+
if (toolCalls.length > 0) {
|
|
115
|
+
yield { type: 'tool_calls', toolCalls };
|
|
116
|
+
finishReason = 'tool_calls';
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
yield { type: 'done', finishReason };
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Convert MCP tools to Anthropic tool format
|
|
123
|
+
*/
|
|
124
|
+
convertToolsToAnthropicTools(tools) {
|
|
125
|
+
return tools.map((rawTool) => {
|
|
126
|
+
const tool = rawTool;
|
|
127
|
+
return {
|
|
128
|
+
name: tool.name,
|
|
129
|
+
description: tool.description || '',
|
|
130
|
+
input_schema: tool.inputSchema || {
|
|
131
|
+
type: 'object',
|
|
132
|
+
properties: {},
|
|
133
|
+
},
|
|
134
|
+
};
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=anthropic-agent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anthropic-agent.js","sourceRoot":"","sources":["../../src/agents/anthropic-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Agent - Abstract class for LLM-specific agent implementations
|
|
3
|
+
*
|
|
4
|
+
* Each LLM provider has different ways of handling tools:
|
|
5
|
+
* - OpenAI: function calling via tools parameter
|
|
6
|
+
* - Anthropic: tools in messages
|
|
7
|
+
* - DeepSeek: function calling or prompt-based
|
|
8
|
+
*
|
|
9
|
+
* This base class provides common logic, subclasses implement LLM-specific tool handling.
|
|
10
|
+
*/
|
|
11
|
+
import type { AgentResponse, AgentStreamChunk, Message } from '@mcp-abap-adt/llm-agent';
|
|
12
|
+
import { type MCPClientConfig, MCPClientWrapper } from '../mcp/client.js';
|
|
13
|
+
export interface BaseAgentConfig {
|
|
14
|
+
/**
|
|
15
|
+
* MCP client instance (if provided, will be used directly)
|
|
16
|
+
* If not provided, will be created from mcpConfig
|
|
17
|
+
*/
|
|
18
|
+
mcpClient?: MCPClientWrapper;
|
|
19
|
+
/**
|
|
20
|
+
* Direct MCP configuration (used if mcpClient is not provided)
|
|
21
|
+
*/
|
|
22
|
+
mcpConfig?: MCPClientConfig;
|
|
23
|
+
}
|
|
24
|
+
export interface AgentCallOptions {
|
|
25
|
+
temperature?: number;
|
|
26
|
+
maxTokens?: number;
|
|
27
|
+
topP?: number;
|
|
28
|
+
stop?: string[];
|
|
29
|
+
model?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface BaseAgentLlmBridge {
|
|
32
|
+
callWithTools(messages: Message[], tools: unknown[], options?: AgentCallOptions): Promise<{
|
|
33
|
+
content: string;
|
|
34
|
+
raw?: unknown;
|
|
35
|
+
}>;
|
|
36
|
+
streamWithTools(messages: Message[], tools: unknown[], options?: AgentCallOptions): AsyncGenerator<AgentStreamChunk, void, unknown>;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Base Agent class - provides common logic for all agent implementations
|
|
40
|
+
*/
|
|
41
|
+
export declare abstract class BaseAgent implements BaseAgentLlmBridge {
|
|
42
|
+
protected mcpClient: MCPClientWrapper;
|
|
43
|
+
protected conversationHistory: Message[];
|
|
44
|
+
protected tools: unknown[];
|
|
45
|
+
constructor(config: BaseAgentConfig);
|
|
46
|
+
/**
|
|
47
|
+
* Initialize MCP client connection (call this before using the agent)
|
|
48
|
+
* If connection fails, agent will work in LLM-only mode (no tools)
|
|
49
|
+
*/
|
|
50
|
+
connect(): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* Process a user message and return agent response
|
|
53
|
+
* Subclasses handle provider-specific tool formatting only.
|
|
54
|
+
* Tool execution is left to the consumer of this library.
|
|
55
|
+
*/
|
|
56
|
+
process(userMessage: string): Promise<AgentResponse>;
|
|
57
|
+
/**
|
|
58
|
+
* Call LLM with tools - LLM-specific implementation
|
|
59
|
+
* Subclasses must implement this to handle their specific tool format
|
|
60
|
+
*/
|
|
61
|
+
protected abstract callLLMWithTools(messages: Message[], tools: unknown[], options?: AgentCallOptions): Promise<{
|
|
62
|
+
content: string;
|
|
63
|
+
raw?: unknown;
|
|
64
|
+
}>;
|
|
65
|
+
/**
|
|
66
|
+
* Stream LLM with tools - LLM-specific implementation
|
|
67
|
+
*/
|
|
68
|
+
protected abstract streamLLMWithTools(messages: Message[], tools: unknown[], options?: AgentCallOptions): AsyncGenerator<AgentStreamChunk, void, unknown>;
|
|
69
|
+
/**
|
|
70
|
+
* Public typed bridge for adapter layer. Keeps provider-specific logic in
|
|
71
|
+
* protected methods while removing adapter-side `any` access.
|
|
72
|
+
*/
|
|
73
|
+
callWithTools(messages: Message[], tools: unknown[], options?: AgentCallOptions): Promise<{
|
|
74
|
+
content: string;
|
|
75
|
+
raw?: unknown;
|
|
76
|
+
}>;
|
|
77
|
+
/**
|
|
78
|
+
* Public typed bridge for streaming adapter layer.
|
|
79
|
+
*/
|
|
80
|
+
streamWithTools(messages: Message[], tools: unknown[], options?: AgentCallOptions): AsyncGenerator<AgentStreamChunk, void, unknown>;
|
|
81
|
+
/**
|
|
82
|
+
* Clear conversation history
|
|
83
|
+
*/
|
|
84
|
+
clearHistory(): void;
|
|
85
|
+
/**
|
|
86
|
+
* Get conversation history
|
|
87
|
+
*/
|
|
88
|
+
getHistory(): Message[];
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=base.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/agents/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,OAAO,EACR,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,KAAK,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAE1E,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,CACX,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC/C,eAAe,CACb,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,cAAc,CAAC,gBAAgB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;CACpD;AAED;;GAEG;AACH,8BAAsB,SAAU,YAAW,kBAAkB;IAC3D,SAAS,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACtC,SAAS,CAAC,mBAAmB,EAAE,OAAO,EAAE,CAAM;IAC9C,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,CAAM;gBAEpB,MAAM,EAAE,eAAe;IAanC;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B;;;;OAIG;IACG,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAiC1D;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CACjC,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAE9C;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CACnC,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,cAAc,CAAC,gBAAgB,EAAE,IAAI,EAAE,OAAO,CAAC;IAElD;;;OAGG;IACG,aAAa,CACjB,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAI9C;;OAEG;IACH,eAAe,CACb,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,cAAc,CAAC,gBAAgB,EAAE,IAAI,EAAE,OAAO,CAAC;IAIlD;;OAEG;IACH,YAAY,IAAI,IAAI;IAIpB;;OAEG;IACH,UAAU,IAAI,OAAO,EAAE;CAGxB"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Agent - Abstract class for LLM-specific agent implementations
|
|
3
|
+
*
|
|
4
|
+
* Each LLM provider has different ways of handling tools:
|
|
5
|
+
* - OpenAI: function calling via tools parameter
|
|
6
|
+
* - Anthropic: tools in messages
|
|
7
|
+
* - DeepSeek: function calling or prompt-based
|
|
8
|
+
*
|
|
9
|
+
* This base class provides common logic, subclasses implement LLM-specific tool handling.
|
|
10
|
+
*/
|
|
11
|
+
import { MCPClientWrapper } from '../mcp/client.js';
|
|
12
|
+
/**
|
|
13
|
+
* Base Agent class - provides common logic for all agent implementations
|
|
14
|
+
*/
|
|
15
|
+
export class BaseAgent {
|
|
16
|
+
mcpClient;
|
|
17
|
+
conversationHistory = [];
|
|
18
|
+
tools = [];
|
|
19
|
+
constructor(config) {
|
|
20
|
+
// Initialize MCP client
|
|
21
|
+
if (config.mcpClient) {
|
|
22
|
+
this.mcpClient = config.mcpClient;
|
|
23
|
+
}
|
|
24
|
+
else if (config.mcpConfig) {
|
|
25
|
+
this.mcpClient = new MCPClientWrapper(config.mcpConfig);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
throw new Error('MCP client configuration required. Provide either mcpClient or mcpConfig.');
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Initialize MCP client connection (call this before using the agent)
|
|
33
|
+
* If connection fails, agent will work in LLM-only mode (no tools)
|
|
34
|
+
*/
|
|
35
|
+
async connect() {
|
|
36
|
+
try {
|
|
37
|
+
await this.mcpClient.connect();
|
|
38
|
+
// Load tools once connected
|
|
39
|
+
this.tools = await this.mcpClient.listTools();
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
// If connection fails, agent will work without tools (LLM-only mode)
|
|
43
|
+
// Set empty tools array to ensure agent can still process messages
|
|
44
|
+
this.tools = [];
|
|
45
|
+
// Re-throw to let caller know connection failed
|
|
46
|
+
// Caller can decide whether to continue or fail
|
|
47
|
+
throw error;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Process a user message and return agent response
|
|
52
|
+
* Subclasses handle provider-specific tool formatting only.
|
|
53
|
+
* Tool execution is left to the consumer of this library.
|
|
54
|
+
*/
|
|
55
|
+
async process(userMessage) {
|
|
56
|
+
try {
|
|
57
|
+
// Add user message to history
|
|
58
|
+
this.conversationHistory.push({
|
|
59
|
+
role: 'user',
|
|
60
|
+
content: userMessage,
|
|
61
|
+
});
|
|
62
|
+
// Get LLM response with tools (LLM-specific implementation)
|
|
63
|
+
const llmResponse = await this.callLLMWithTools(this.conversationHistory, this.tools);
|
|
64
|
+
this.conversationHistory.push({
|
|
65
|
+
role: 'assistant',
|
|
66
|
+
content: llmResponse.content,
|
|
67
|
+
});
|
|
68
|
+
return {
|
|
69
|
+
message: llmResponse.content,
|
|
70
|
+
raw: llmResponse.raw,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
catch (error) {
|
|
74
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
75
|
+
return {
|
|
76
|
+
message: '',
|
|
77
|
+
error: errorMessage || 'Agent processing failed',
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Public typed bridge for adapter layer. Keeps provider-specific logic in
|
|
83
|
+
* protected methods while removing adapter-side `any` access.
|
|
84
|
+
*/
|
|
85
|
+
async callWithTools(messages, tools, options) {
|
|
86
|
+
return this.callLLMWithTools(messages, tools, options);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Public typed bridge for streaming adapter layer.
|
|
90
|
+
*/
|
|
91
|
+
streamWithTools(messages, tools, options) {
|
|
92
|
+
return this.streamLLMWithTools(messages, tools, options);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Clear conversation history
|
|
96
|
+
*/
|
|
97
|
+
clearHistory() {
|
|
98
|
+
this.conversationHistory = [];
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Get conversation history
|
|
102
|
+
*/
|
|
103
|
+
getHistory() {
|
|
104
|
+
return [...this.conversationHistory];
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/agents/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,EAAwB,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAmC1E;;GAEG;AACH,MAAM,OAAgB,SAAS;IACnB,SAAS,CAAmB;IAC5B,mBAAmB,GAAc,EAAE,CAAC;IACpC,KAAK,GAAc,EAAE,CAAC;IAEhC,YAAY,MAAuB;QACjC,wBAAwB;QACxB,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACpC,CAAC;aAAM,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CACb,2EAA2E,CAC5E,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAC/B,4BAA4B;YAC5B,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;QAChD,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,qEAAqE;YACrE,mEAAmE;YACnE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAChB,gDAAgD;YAChD,gDAAgD;YAChD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,WAAmB;QAC/B,IAAI,CAAC;YACH,8BAA8B;YAC9B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;gBAC5B,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,WAAW;aACrB,CAAC,CAAC;YAEH,4DAA4D;YAC5D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAC7C,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,KAAK,CACX,CAAC;YAEF,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;gBAC5B,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,WAAW,CAAC,OAAO;aAC7B,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,WAAW,CAAC,OAAO;gBAC5B,GAAG,EAAE,WAAW,CAAC,GAAG;aACrB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACzD,OAAO;gBACL,OAAO,EAAE,EAAE;gBACX,KAAK,EAAE,YAAY,IAAI,yBAAyB;aACjD,CAAC;QACJ,CAAC;IACH,CAAC;IAqBD;;;OAGG;IACH,KAAK,CAAC,aAAa,CACjB,QAAmB,EACnB,KAAgB,EAChB,OAA0B;QAE1B,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,eAAe,CACb,QAAmB,EACnB,KAAgB,EAChB,OAA0B;QAE1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,YAAY;QACV,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;CACF"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DeepSeek Agent - Uses DeepSeek function calling (similar to OpenAI)
|
|
3
|
+
*
|
|
4
|
+
* DeepSeek supports function calling similar to OpenAI via the `tools` parameter.
|
|
5
|
+
*/
|
|
6
|
+
import type { AgentStreamChunk, Message } from '@mcp-abap-adt/llm-agent';
|
|
7
|
+
import type { DeepSeekProvider } from '../llm-providers/deepseek.js';
|
|
8
|
+
import { type AgentCallOptions, BaseAgent, type BaseAgentConfig } from './base.js';
|
|
9
|
+
export interface DeepSeekAgentConfig extends BaseAgentConfig {
|
|
10
|
+
llmProvider: DeepSeekProvider;
|
|
11
|
+
}
|
|
12
|
+
export declare class DeepSeekAgent extends BaseAgent {
|
|
13
|
+
private llmProvider;
|
|
14
|
+
constructor(config: DeepSeekAgentConfig);
|
|
15
|
+
/**
|
|
16
|
+
* Call DeepSeek with tools using function calling (similar to OpenAI)
|
|
17
|
+
*/
|
|
18
|
+
protected callLLMWithTools(messages: Message[], tools: unknown[], options?: AgentCallOptions): Promise<{
|
|
19
|
+
content: string;
|
|
20
|
+
raw?: unknown;
|
|
21
|
+
}>;
|
|
22
|
+
/**
|
|
23
|
+
* Stream DeepSeek response
|
|
24
|
+
*/
|
|
25
|
+
protected streamLLMWithTools(messages: Message[], tools: unknown[], options?: AgentCallOptions): AsyncGenerator<AgentStreamChunk, void, unknown>;
|
|
26
|
+
/**
|
|
27
|
+
* Convert MCP tools to DeepSeek function format
|
|
28
|
+
*/
|
|
29
|
+
private convertToolsToFunctions;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=deepseek-agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deepseek-agent.d.ts","sourceRoot":"","sources":["../../src/agents/deepseek-agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EACL,KAAK,gBAAgB,EACrB,SAAS,EACT,KAAK,eAAe,EACrB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D,WAAW,EAAE,gBAAgB,CAAC;CAC/B;AAED,qBAAa,aAAc,SAAQ,SAAS;IAC1C,OAAO,CAAC,WAAW,CAAmB;gBAE1B,MAAM,EAAE,mBAAmB;IAKvC;;OAEG;cACa,gBAAgB,CAC9B,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAe9C;;OAEG;cACc,kBAAkB,CACjC,QAAQ,EAAE,OAAO,EAAE,EACnB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,cAAc,CAAC,gBAAgB,EAAE,IAAI,EAAE,OAAO,CAAC;IAoGlD;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAsBhC"}
|