@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
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
const CATEGORY_MAP = {
|
|
2
|
+
'tool-loop': 'request',
|
|
3
|
+
classifier: 'auxiliary',
|
|
4
|
+
translate: 'auxiliary',
|
|
5
|
+
'query-expander': 'auxiliary',
|
|
6
|
+
helper: 'auxiliary',
|
|
7
|
+
embedding: 'initialization',
|
|
8
|
+
};
|
|
9
|
+
function emptyBucket() {
|
|
10
|
+
return { promptTokens: 0, completionTokens: 0, totalTokens: 0, requests: 0 };
|
|
11
|
+
}
|
|
12
|
+
function addToBucket(bucket, entry) {
|
|
13
|
+
bucket.promptTokens += entry.promptTokens;
|
|
14
|
+
bucket.completionTokens += entry.completionTokens;
|
|
15
|
+
bucket.totalTokens += entry.totalTokens;
|
|
16
|
+
bucket.requests++;
|
|
17
|
+
}
|
|
18
|
+
export class DefaultRequestLogger {
|
|
19
|
+
initLlmCalls = [];
|
|
20
|
+
requestLlmCalls = [];
|
|
21
|
+
ragQueryEntries = [];
|
|
22
|
+
toolCallEntries = [];
|
|
23
|
+
requestStartMs = 0;
|
|
24
|
+
requestDurationMs = 0;
|
|
25
|
+
startRequest() {
|
|
26
|
+
this.requestLlmCalls = [];
|
|
27
|
+
this.ragQueryEntries = [];
|
|
28
|
+
this.toolCallEntries = [];
|
|
29
|
+
this.requestDurationMs = 0;
|
|
30
|
+
this.requestStartMs = Date.now();
|
|
31
|
+
}
|
|
32
|
+
endRequest() {
|
|
33
|
+
this.requestDurationMs = this.requestStartMs
|
|
34
|
+
? Date.now() - this.requestStartMs
|
|
35
|
+
: 0;
|
|
36
|
+
}
|
|
37
|
+
logLlmCall(entry) {
|
|
38
|
+
if (entry.scope === 'initialization') {
|
|
39
|
+
this.initLlmCalls.push(entry);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
this.requestLlmCalls.push(entry);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
logRagQuery(entry) {
|
|
46
|
+
this.ragQueryEntries.push(entry);
|
|
47
|
+
}
|
|
48
|
+
logToolCall(entry) {
|
|
49
|
+
this.toolCallEntries.push(entry);
|
|
50
|
+
}
|
|
51
|
+
getSummary() {
|
|
52
|
+
const byModel = {};
|
|
53
|
+
const byComponent = {};
|
|
54
|
+
const byCategory = {};
|
|
55
|
+
const allCalls = [...this.initLlmCalls, ...this.requestLlmCalls];
|
|
56
|
+
for (const call of allCalls) {
|
|
57
|
+
if (!byModel[call.model])
|
|
58
|
+
byModel[call.model] = emptyBucket();
|
|
59
|
+
addToBucket(byModel[call.model], call);
|
|
60
|
+
if (!byComponent[call.component])
|
|
61
|
+
byComponent[call.component] = emptyBucket();
|
|
62
|
+
addToBucket(byComponent[call.component], call);
|
|
63
|
+
const cat = CATEGORY_MAP[call.component] ?? 'request';
|
|
64
|
+
if (!byCategory[cat])
|
|
65
|
+
byCategory[cat] = emptyBucket();
|
|
66
|
+
addToBucket(byCategory[cat], call);
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
byModel,
|
|
70
|
+
byComponent,
|
|
71
|
+
byCategory,
|
|
72
|
+
ragQueries: this.ragQueryEntries.length,
|
|
73
|
+
toolCalls: this.toolCallEntries.length,
|
|
74
|
+
totalDurationMs: this.requestDurationMs,
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
reset() {
|
|
78
|
+
this.requestLlmCalls = [];
|
|
79
|
+
this.ragQueryEntries = [];
|
|
80
|
+
this.toolCallEntries = [];
|
|
81
|
+
this.requestStartMs = 0;
|
|
82
|
+
this.requestDurationMs = 0;
|
|
83
|
+
// NOTE: initLlmCalls is intentionally NOT reset
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=default-request-logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-request-logger.js","sourceRoot":"","sources":["../../../src/smart-agent/logger/default-request-logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/logger/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/smart-agent/logger/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { IRequestLogger, LlmCallEntry, RagQueryEntry, RequestSummary, ToolCallEntry } from '@mcp-abap-adt/llm-agent';
|
|
2
|
+
export declare class NoopRequestLogger implements IRequestLogger {
|
|
3
|
+
logLlmCall(_entry: LlmCallEntry): void;
|
|
4
|
+
logRagQuery(_entry: RagQueryEntry): void;
|
|
5
|
+
logToolCall(_entry: ToolCallEntry): void;
|
|
6
|
+
startRequest(): void;
|
|
7
|
+
endRequest(): void;
|
|
8
|
+
getSummary(): RequestSummary;
|
|
9
|
+
reset(): void;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=noop-request-logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"noop-request-logger.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/logger/noop-request-logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EACb,cAAc,EACd,aAAa,EACd,MAAM,yBAAyB,CAAC;AAWjC,qBAAa,iBAAkB,YAAW,cAAc;IACtD,UAAU,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IACtC,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IACxC,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IACxC,YAAY,IAAI,IAAI;IACpB,UAAU,IAAI,IAAI;IAClB,UAAU,IAAI,cAAc;IAG5B,KAAK,IAAI,IAAI;CACd"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
const EMPTY_SUMMARY = {
|
|
2
|
+
byModel: {},
|
|
3
|
+
byComponent: {},
|
|
4
|
+
byCategory: {},
|
|
5
|
+
ragQueries: 0,
|
|
6
|
+
toolCalls: 0,
|
|
7
|
+
totalDurationMs: 0,
|
|
8
|
+
};
|
|
9
|
+
export class NoopRequestLogger {
|
|
10
|
+
logLlmCall(_entry) { }
|
|
11
|
+
logRagQuery(_entry) { }
|
|
12
|
+
logToolCall(_entry) { }
|
|
13
|
+
startRequest() { }
|
|
14
|
+
endRequest() { }
|
|
15
|
+
getSummary() {
|
|
16
|
+
return { ...EMPTY_SUMMARY, byModel: {}, byComponent: {}, byCategory: {} };
|
|
17
|
+
}
|
|
18
|
+
reset() { }
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=noop-request-logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"noop-request-logger.js","sourceRoot":"","sources":["../../../src/smart-agent/logger/noop-request-logger.ts"],"names":[],"mappings":"AAQA,MAAM,aAAa,GAAmB;IACpC,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,EAAE;IACf,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,CAAC;IACb,SAAS,EAAE,CAAC;IACZ,eAAe,EAAE,CAAC;CACnB,CAAC;AAEF,MAAM,OAAO,iBAAiB;IAC5B,UAAU,CAAC,MAAoB,IAAS,CAAC;IACzC,WAAW,CAAC,MAAqB,IAAS,CAAC;IAC3C,WAAW,CAAC,MAAqB,IAAS,CAAC;IAC3C,YAAY,KAAU,CAAC;IACvB,UAAU,KAAU,CAAC;IACrB,UAAU;QACR,OAAO,EAAE,GAAG,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAC5E,CAAC;IACD,KAAK,KAAU,CAAC;CACjB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare class SessionLogger {
|
|
2
|
+
private readonly baseLogDir;
|
|
3
|
+
private readonly sessionId;
|
|
4
|
+
private readonly traceId;
|
|
5
|
+
private requestDir;
|
|
6
|
+
private fileIndex;
|
|
7
|
+
constructor(baseLogDir: string | null, sessionId: string, traceId: string);
|
|
8
|
+
logStep(name: string, data: unknown): void;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=session-logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-logger.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/logger/session-logger.ts"],"names":[],"mappings":"AAGA,qBAAa,aAAa;IAKtB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,SAAS,CAAK;gBAGH,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM;IAmBlC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;CAa3C"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
export class SessionLogger {
|
|
4
|
+
baseLogDir;
|
|
5
|
+
sessionId;
|
|
6
|
+
traceId;
|
|
7
|
+
requestDir = null;
|
|
8
|
+
fileIndex = 1;
|
|
9
|
+
constructor(baseLogDir, sessionId, traceId) {
|
|
10
|
+
this.baseLogDir = baseLogDir;
|
|
11
|
+
this.sessionId = sessionId;
|
|
12
|
+
this.traceId = traceId;
|
|
13
|
+
if (!this.baseLogDir)
|
|
14
|
+
return;
|
|
15
|
+
const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
|
|
16
|
+
const sessionPath = path.join(this.baseLogDir, `session_${this.sessionId}`);
|
|
17
|
+
this.requestDir = path.join(sessionPath, `req_${timestamp}_${this.traceId}`);
|
|
18
|
+
try {
|
|
19
|
+
fs.mkdirSync(this.requestDir, { recursive: true });
|
|
20
|
+
}
|
|
21
|
+
catch (err) {
|
|
22
|
+
console.error(`Failed to create log directory: ${this.requestDir}`, err);
|
|
23
|
+
this.requestDir = null;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
logStep(name, data) {
|
|
27
|
+
if (!this.requestDir)
|
|
28
|
+
return;
|
|
29
|
+
const fileName = `${String(this.fileIndex).padStart(2, '0')}_${name}.json`;
|
|
30
|
+
const filePath = path.join(this.requestDir, fileName);
|
|
31
|
+
try {
|
|
32
|
+
fs.writeFileSync(filePath, JSON.stringify(data, null, 2), 'utf8');
|
|
33
|
+
this.fileIndex++;
|
|
34
|
+
}
|
|
35
|
+
catch (err) {
|
|
36
|
+
console.error(`Failed to write log file: ${filePath}`, err);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=session-logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-logger.js","sourceRoot":"","sources":["../../../src/smart-agent/logger/session-logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,OAAO,aAAa;IAKL;IACA;IACA;IANX,UAAU,GAAkB,IAAI,CAAC;IACjC,SAAS,GAAG,CAAC,CAAC;IAEtB,YACmB,UAAyB,EACzB,SAAiB,EACjB,OAAe;QAFf,eAAU,GAAV,UAAU,CAAe;QACzB,cAAS,GAAT,SAAS,CAAQ;QACjB,YAAO,GAAP,OAAO,CAAQ;QAEhC,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAE7B,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACjE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CACzB,WAAW,EACX,OAAO,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,CACnC,CAAC;QAEF,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,mCAAmC,IAAI,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC;YACzE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACzB,CAAC;IACH,CAAC;IAED,OAAO,CAAC,IAAY,EAAE,IAAa;QACjC,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAE7B,MAAM,QAAQ,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC;QAC3E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAEtD,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,6BAA6B,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
export interface ILogger {
|
|
2
|
+
log(event: LogEvent): void;
|
|
3
|
+
}
|
|
4
|
+
export type LogEvent = {
|
|
5
|
+
type: 'classify';
|
|
6
|
+
traceId: string;
|
|
7
|
+
inputLength: number;
|
|
8
|
+
subpromptCount: number;
|
|
9
|
+
durationMs: number;
|
|
10
|
+
} | {
|
|
11
|
+
type: 'rag_upsert';
|
|
12
|
+
traceId: string;
|
|
13
|
+
store: string;
|
|
14
|
+
durationMs: number;
|
|
15
|
+
} | {
|
|
16
|
+
type: 'rag_query';
|
|
17
|
+
traceId: string;
|
|
18
|
+
store: string;
|
|
19
|
+
k: number;
|
|
20
|
+
resultCount: number;
|
|
21
|
+
durationMs: number;
|
|
22
|
+
} | {
|
|
23
|
+
type: 'llm_call';
|
|
24
|
+
traceId: string;
|
|
25
|
+
iteration: number;
|
|
26
|
+
finishReason: string;
|
|
27
|
+
durationMs: number;
|
|
28
|
+
} | {
|
|
29
|
+
type: 'tool_call';
|
|
30
|
+
traceId: string;
|
|
31
|
+
toolName: string;
|
|
32
|
+
isError: boolean;
|
|
33
|
+
durationMs: number;
|
|
34
|
+
} | {
|
|
35
|
+
type: 'pipeline_done';
|
|
36
|
+
traceId: string;
|
|
37
|
+
stopReason: string;
|
|
38
|
+
iterations: number;
|
|
39
|
+
toolCallCount: number;
|
|
40
|
+
durationMs: number;
|
|
41
|
+
} | {
|
|
42
|
+
type: 'pipeline_error';
|
|
43
|
+
traceId: string;
|
|
44
|
+
code: string;
|
|
45
|
+
message: string;
|
|
46
|
+
durationMs: number;
|
|
47
|
+
} | {
|
|
48
|
+
type: 'tools_selected';
|
|
49
|
+
traceId: string;
|
|
50
|
+
total: number;
|
|
51
|
+
selected: number;
|
|
52
|
+
names: string[];
|
|
53
|
+
} | {
|
|
54
|
+
type: 'rag_translate';
|
|
55
|
+
traceId: string;
|
|
56
|
+
original: string;
|
|
57
|
+
translated: string;
|
|
58
|
+
} | {
|
|
59
|
+
type: 'warning';
|
|
60
|
+
traceId: string;
|
|
61
|
+
message: string;
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/logger/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACtB,GAAG,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,MAAM,QAAQ,GAChB;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB,GACD;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC1E;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,CAAC,EAAE,MAAM,CAAC;IACV,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB,GACD;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB,GACD;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB,GACD;IACE,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB,GACD;IACE,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,GACD;IACE,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,GACD;IACE,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB,GACD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/smart-agent/logger/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-client-factory.d.ts","sourceRoot":"","sources":["../../src/smart-agent/mcp-client-factory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,yCAAyC,CAAC;AAEjD,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,sBAAsB,CAAC,CAoBjC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { MCPClientWrapper } from '../mcp/client.js';
|
|
2
|
+
import { McpClientAdapter } from './adapters/mcp-client-adapter.js';
|
|
3
|
+
export async function createDefaultMcpClient(config) {
|
|
4
|
+
const wrapper = config.type === 'stdio'
|
|
5
|
+
? new MCPClientWrapper({
|
|
6
|
+
transport: 'stdio',
|
|
7
|
+
command: config.command,
|
|
8
|
+
args: config.args ?? [],
|
|
9
|
+
})
|
|
10
|
+
: new MCPClientWrapper({
|
|
11
|
+
transport: 'auto',
|
|
12
|
+
url: config.url,
|
|
13
|
+
});
|
|
14
|
+
await wrapper.connect();
|
|
15
|
+
const client = new McpClientAdapter(wrapper);
|
|
16
|
+
return {
|
|
17
|
+
client,
|
|
18
|
+
close: () => wrapper.disconnect?.() ?? Promise.resolve(),
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=mcp-client-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-client-factory.js","sourceRoot":"","sources":["../../src/smart-agent/mcp-client-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAMpE,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAA2B;IAE3B,MAAM,OAAO,GACX,MAAM,CAAC,IAAI,KAAK,OAAO;QACrB,CAAC,CAAC,IAAI,gBAAgB,CAAC;YACnB,SAAS,EAAE,OAAO;YAClB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE;SACxB,CAAC;QACJ,CAAC,CAAC,IAAI,gBAAgB,CAAC;YACnB,SAAS,EAAE,MAAM;YACjB,GAAG,EAAE,MAAM,CAAC,GAAG;SAChB,CAAC,CAAC;IAET,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IACxB,MAAM,MAAM,GAAG,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAE7C,OAAO;QACL,MAAM;QACN,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,OAAO,CAAC,OAAO,EAAE;KACzD,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { ICounter, IHistogram, IMetrics } from './types.js';
|
|
2
|
+
export interface CounterSnapshot {
|
|
3
|
+
total: number;
|
|
4
|
+
byAttributes: Map<string, number>;
|
|
5
|
+
}
|
|
6
|
+
declare class MemCounter implements ICounter {
|
|
7
|
+
private total;
|
|
8
|
+
private readonly byAttrs;
|
|
9
|
+
add(value?: number, attributes?: Record<string, string>): void;
|
|
10
|
+
snapshot(): CounterSnapshot;
|
|
11
|
+
}
|
|
12
|
+
export interface HistogramSnapshot {
|
|
13
|
+
count: number;
|
|
14
|
+
sum: number;
|
|
15
|
+
min: number;
|
|
16
|
+
max: number;
|
|
17
|
+
values: number[];
|
|
18
|
+
}
|
|
19
|
+
declare class MemHistogram implements IHistogram {
|
|
20
|
+
private readonly values;
|
|
21
|
+
record(value: number, _attributes?: Record<string, string>): void;
|
|
22
|
+
snapshot(): HistogramSnapshot;
|
|
23
|
+
/** Return the p-th percentile (0..100). */
|
|
24
|
+
percentile(p: number): number;
|
|
25
|
+
}
|
|
26
|
+
export interface MetricsSnapshot {
|
|
27
|
+
requestCount: CounterSnapshot;
|
|
28
|
+
requestLatency: HistogramSnapshot;
|
|
29
|
+
toolCallCount: CounterSnapshot;
|
|
30
|
+
ragQueryCount: CounterSnapshot;
|
|
31
|
+
classifierIntentCount: CounterSnapshot;
|
|
32
|
+
llmCallCount: CounterSnapshot;
|
|
33
|
+
llmCallLatency: HistogramSnapshot;
|
|
34
|
+
circuitBreakerTransition: CounterSnapshot;
|
|
35
|
+
toolCacheHitCount: CounterSnapshot;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* In-memory metrics collector — useful for testing and diagnostics endpoints.
|
|
39
|
+
* Call `snapshot()` to get a point-in-time view of all metrics.
|
|
40
|
+
*/
|
|
41
|
+
export declare class InMemoryMetrics implements IMetrics {
|
|
42
|
+
readonly requestCount: MemCounter;
|
|
43
|
+
readonly requestLatency: MemHistogram;
|
|
44
|
+
readonly toolCallCount: MemCounter;
|
|
45
|
+
readonly ragQueryCount: MemCounter;
|
|
46
|
+
readonly classifierIntentCount: MemCounter;
|
|
47
|
+
readonly llmCallCount: MemCounter;
|
|
48
|
+
readonly llmCallLatency: MemHistogram;
|
|
49
|
+
readonly circuitBreakerTransition: MemCounter;
|
|
50
|
+
readonly toolCacheHitCount: MemCounter;
|
|
51
|
+
snapshot(): MetricsSnapshot;
|
|
52
|
+
/** Convenience: get p-th percentile of request latency. */
|
|
53
|
+
requestLatencyPercentile(p: number): number;
|
|
54
|
+
/** Convenience: get p-th percentile of LLM call latency. */
|
|
55
|
+
llmCallLatencyPercentile(p: number): number;
|
|
56
|
+
}
|
|
57
|
+
export {};
|
|
58
|
+
//# sourceMappingURL=in-memory-metrics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"in-memory-metrics.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/metrics/in-memory-metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAMjE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,cAAM,UAAW,YAAW,QAAQ;IAClC,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IAErD,GAAG,CAAC,KAAK,SAAI,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAWzD,QAAQ,IAAI,eAAe;CAG5B;AAMD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,cAAM,YAAa,YAAW,UAAU;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IAEvC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAIjE,QAAQ,IAAI,iBAAiB;IAW7B,2CAA2C;IAC3C,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;CAM9B;AAMD,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,eAAe,CAAC;IAC9B,cAAc,EAAE,iBAAiB,CAAC;IAClC,aAAa,EAAE,eAAe,CAAC;IAC/B,aAAa,EAAE,eAAe,CAAC;IAC/B,qBAAqB,EAAE,eAAe,CAAC;IACvC,YAAY,EAAE,eAAe,CAAC;IAC9B,cAAc,EAAE,iBAAiB,CAAC;IAClC,wBAAwB,EAAE,eAAe,CAAC;IAC1C,iBAAiB,EAAE,eAAe,CAAC;CACpC;AAED;;;GAGG;AACH,qBAAa,eAAgB,YAAW,QAAQ;IAC9C,QAAQ,CAAC,YAAY,aAAoB;IACzC,QAAQ,CAAC,cAAc,eAAsB;IAC7C,QAAQ,CAAC,aAAa,aAAoB;IAC1C,QAAQ,CAAC,aAAa,aAAoB;IAC1C,QAAQ,CAAC,qBAAqB,aAAoB;IAClD,QAAQ,CAAC,YAAY,aAAoB;IACzC,QAAQ,CAAC,cAAc,eAAsB;IAC7C,QAAQ,CAAC,wBAAwB,aAAoB;IACrD,QAAQ,CAAC,iBAAiB,aAAoB;IAE9C,QAAQ,IAAI,eAAe;IAc3B,2DAA2D;IAC3D,wBAAwB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAI3C,4DAA4D;IAC5D,wBAAwB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;CAG5C"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
class MemCounter {
|
|
2
|
+
total = 0;
|
|
3
|
+
byAttrs = new Map();
|
|
4
|
+
add(value = 1, attributes) {
|
|
5
|
+
this.total += value;
|
|
6
|
+
if (attributes) {
|
|
7
|
+
const key = Object.entries(attributes)
|
|
8
|
+
.sort(([a], [b]) => a.localeCompare(b))
|
|
9
|
+
.map(([k, v]) => `${k}=${v}`)
|
|
10
|
+
.join(',');
|
|
11
|
+
this.byAttrs.set(key, (this.byAttrs.get(key) ?? 0) + value);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
snapshot() {
|
|
15
|
+
return { total: this.total, byAttributes: new Map(this.byAttrs) };
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
class MemHistogram {
|
|
19
|
+
values = [];
|
|
20
|
+
record(value, _attributes) {
|
|
21
|
+
this.values.push(value);
|
|
22
|
+
}
|
|
23
|
+
snapshot() {
|
|
24
|
+
const sorted = [...this.values].sort((a, b) => a - b);
|
|
25
|
+
return {
|
|
26
|
+
count: sorted.length,
|
|
27
|
+
sum: sorted.reduce((a, b) => a + b, 0),
|
|
28
|
+
min: sorted.length > 0 ? sorted[0] : 0,
|
|
29
|
+
max: sorted.length > 0 ? sorted[sorted.length - 1] : 0,
|
|
30
|
+
values: sorted,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/** Return the p-th percentile (0..100). */
|
|
34
|
+
percentile(p) {
|
|
35
|
+
if (this.values.length === 0)
|
|
36
|
+
return 0;
|
|
37
|
+
const sorted = [...this.values].sort((a, b) => a - b);
|
|
38
|
+
const idx = Math.ceil((p / 100) * sorted.length) - 1;
|
|
39
|
+
return sorted[Math.max(0, idx)];
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* In-memory metrics collector — useful for testing and diagnostics endpoints.
|
|
44
|
+
* Call `snapshot()` to get a point-in-time view of all metrics.
|
|
45
|
+
*/
|
|
46
|
+
export class InMemoryMetrics {
|
|
47
|
+
requestCount = new MemCounter();
|
|
48
|
+
requestLatency = new MemHistogram();
|
|
49
|
+
toolCallCount = new MemCounter();
|
|
50
|
+
ragQueryCount = new MemCounter();
|
|
51
|
+
classifierIntentCount = new MemCounter();
|
|
52
|
+
llmCallCount = new MemCounter();
|
|
53
|
+
llmCallLatency = new MemHistogram();
|
|
54
|
+
circuitBreakerTransition = new MemCounter();
|
|
55
|
+
toolCacheHitCount = new MemCounter();
|
|
56
|
+
snapshot() {
|
|
57
|
+
return {
|
|
58
|
+
requestCount: this.requestCount.snapshot(),
|
|
59
|
+
requestLatency: this.requestLatency.snapshot(),
|
|
60
|
+
toolCallCount: this.toolCallCount.snapshot(),
|
|
61
|
+
ragQueryCount: this.ragQueryCount.snapshot(),
|
|
62
|
+
classifierIntentCount: this.classifierIntentCount.snapshot(),
|
|
63
|
+
llmCallCount: this.llmCallCount.snapshot(),
|
|
64
|
+
llmCallLatency: this.llmCallLatency.snapshot(),
|
|
65
|
+
circuitBreakerTransition: this.circuitBreakerTransition.snapshot(),
|
|
66
|
+
toolCacheHitCount: this.toolCacheHitCount.snapshot(),
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
/** Convenience: get p-th percentile of request latency. */
|
|
70
|
+
requestLatencyPercentile(p) {
|
|
71
|
+
return this.requestLatency.percentile(p);
|
|
72
|
+
}
|
|
73
|
+
/** Convenience: get p-th percentile of LLM call latency. */
|
|
74
|
+
llmCallLatencyPercentile(p) {
|
|
75
|
+
return this.llmCallLatency.percentile(p);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=in-memory-metrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"in-memory-metrics.js","sourceRoot":"","sources":["../../../src/smart-agent/metrics/in-memory-metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { type CounterSnapshot, type HistogramSnapshot, InMemoryMetrics, type MetricsSnapshot, } from './in-memory-metrics.js';
|
|
2
|
+
export { NoopMetrics } from './noop-metrics.js';
|
|
3
|
+
export type { ICounter, IHistogram, IMetrics } from './types.js';
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/metrics/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,eAAe,EACf,KAAK,eAAe,GACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/smart-agent/metrics/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,eAAe,GAEhB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ICounter, IHistogram, IMetrics } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* No-op metrics implementation — zero overhead.
|
|
4
|
+
* Used as the default when no metrics provider is configured.
|
|
5
|
+
*/
|
|
6
|
+
export declare class NoopMetrics implements IMetrics {
|
|
7
|
+
readonly requestCount: ICounter;
|
|
8
|
+
readonly requestLatency: IHistogram;
|
|
9
|
+
readonly toolCallCount: ICounter;
|
|
10
|
+
readonly ragQueryCount: ICounter;
|
|
11
|
+
readonly classifierIntentCount: ICounter;
|
|
12
|
+
readonly llmCallCount: ICounter;
|
|
13
|
+
readonly llmCallLatency: IHistogram;
|
|
14
|
+
readonly circuitBreakerTransition: ICounter;
|
|
15
|
+
readonly toolCacheHitCount: ICounter;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=noop-metrics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"noop-metrics.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/metrics/noop-metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAUjE;;;GAGG;AACH,qBAAa,WAAY,YAAW,QAAQ;IAC1C,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAe;IAC9C,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAiB;IACpD,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAe;IAC/C,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAe;IAC/C,QAAQ,CAAC,qBAAqB,EAAE,QAAQ,CAAe;IACvD,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAe;IAC9C,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAiB;IACpD,QAAQ,CAAC,wBAAwB,EAAE,QAAQ,CAAe;IAC1D,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,CAAe;CACpD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
const noopCounter = {
|
|
2
|
+
add() { },
|
|
3
|
+
};
|
|
4
|
+
const noopHistogram = {
|
|
5
|
+
record() { },
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* No-op metrics implementation — zero overhead.
|
|
9
|
+
* Used as the default when no metrics provider is configured.
|
|
10
|
+
*/
|
|
11
|
+
export class NoopMetrics {
|
|
12
|
+
requestCount = noopCounter;
|
|
13
|
+
requestLatency = noopHistogram;
|
|
14
|
+
toolCallCount = noopCounter;
|
|
15
|
+
ragQueryCount = noopCounter;
|
|
16
|
+
classifierIntentCount = noopCounter;
|
|
17
|
+
llmCallCount = noopCounter;
|
|
18
|
+
llmCallLatency = noopHistogram;
|
|
19
|
+
circuitBreakerTransition = noopCounter;
|
|
20
|
+
toolCacheHitCount = noopCounter;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=noop-metrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"noop-metrics.js","sourceRoot":"","sources":["../../../src/smart-agent/metrics/noop-metrics.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAa;IAC5B,GAAG,KAAI,CAAC;CACT,CAAC;AAEF,MAAM,aAAa,GAAe;IAChC,MAAM,KAAI,CAAC;CACZ,CAAC;AAEF;;;GAGG;AACH,MAAM,OAAO,WAAW;IACb,YAAY,GAAa,WAAW,CAAC;IACrC,cAAc,GAAe,aAAa,CAAC;IAC3C,aAAa,GAAa,WAAW,CAAC;IACtC,aAAa,GAAa,WAAW,CAAC;IACtC,qBAAqB,GAAa,WAAW,CAAC;IAC9C,YAAY,GAAa,WAAW,CAAC;IACrC,cAAc,GAAe,aAAa,CAAC;IAC3C,wBAAwB,GAAa,WAAW,CAAC;IACjD,iBAAiB,GAAa,WAAW,CAAC;CACpD"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metrics interfaces — modeled after OTEL-compatible counters and histograms.
|
|
3
|
+
*
|
|
4
|
+
* Consumers implement `IMetrics` to plug in Prometheus, OTEL, or any metrics
|
|
5
|
+
* backend. The library ships `NoopMetrics` (zero overhead) and `InMemoryMetrics`
|
|
6
|
+
* (useful for testing and diagnostics).
|
|
7
|
+
*/
|
|
8
|
+
export interface ICounter {
|
|
9
|
+
/** Increment the counter by 1 (or a custom value). */
|
|
10
|
+
add(value?: number, attributes?: Record<string, string>): void;
|
|
11
|
+
}
|
|
12
|
+
export interface IHistogram {
|
|
13
|
+
/** Record a single observation (e.g. latency in ms). */
|
|
14
|
+
record(value: number, attributes?: Record<string, string>): void;
|
|
15
|
+
}
|
|
16
|
+
export interface IMetrics {
|
|
17
|
+
/** Total incoming requests to SmartAgent.process / streamProcess. */
|
|
18
|
+
requestCount: ICounter;
|
|
19
|
+
/** Request end-to-end latency (ms). */
|
|
20
|
+
requestLatency: IHistogram;
|
|
21
|
+
/** Number of tool calls executed (internal MCP). */
|
|
22
|
+
toolCallCount: ICounter;
|
|
23
|
+
/** Number of RAG queries executed. Attributes: store (store name), hit (true|false). */
|
|
24
|
+
ragQueryCount: ICounter;
|
|
25
|
+
/** Intent classifier invocation count. Attributes: intent (action|feedback|chat). */
|
|
26
|
+
classifierIntentCount: ICounter;
|
|
27
|
+
/** LLM chat / streamChat invocations. */
|
|
28
|
+
llmCallCount: ICounter;
|
|
29
|
+
/** LLM call latency (ms). */
|
|
30
|
+
llmCallLatency: IHistogram;
|
|
31
|
+
/** Circuit breaker state transitions. Attributes: from, to, target (llm|embedder). */
|
|
32
|
+
circuitBreakerTransition: ICounter;
|
|
33
|
+
/** Tool result cache hits. */
|
|
34
|
+
toolCacheHitCount: ICounter;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/metrics/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,QAAQ;IACvB,sDAAsD;IACtD,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;CAChE;AAED,MAAM,WAAW,UAAU;IACzB,wDAAwD;IACxD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;CAClE;AAED,MAAM,WAAW,QAAQ;IACvB,qEAAqE;IACrE,YAAY,EAAE,QAAQ,CAAC;IACvB,uCAAuC;IACvC,cAAc,EAAE,UAAU,CAAC;IAC3B,oDAAoD;IACpD,aAAa,EAAE,QAAQ,CAAC;IACxB,wFAAwF;IACxF,aAAa,EAAE,QAAQ,CAAC;IACxB,qFAAqF;IACrF,qBAAqB,EAAE,QAAQ,CAAC;IAChC,yCAAyC;IACzC,YAAY,EAAE,QAAQ,CAAC;IACvB,6BAA6B;IAC7B,cAAc,EAAE,UAAU,CAAC;IAC3B,sFAAsF;IACtF,wBAAwB,EAAE,QAAQ,CAAC;IACnC,8BAA8B;IAC9B,iBAAiB,EAAE,QAAQ,CAAC;CAC7B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metrics interfaces — modeled after OTEL-compatible counters and histograms.
|
|
3
|
+
*
|
|
4
|
+
* Consumers implement `IMetrics` to plug in Prometheus, OTEL, or any metrics
|
|
5
|
+
* backend. The library ships `NoopMetrics` (zero overhead) and `InMemoryMetrics`
|
|
6
|
+
* (useful for testing and diagnostics).
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/smart-agent/metrics/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/otel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/smart-agent/otel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenTelemetry adapter that bridges the SmartAgent ITracer/ISpan
|
|
3
|
+
* abstraction to the @opentelemetry/api Tracer.
|
|
4
|
+
*
|
|
5
|
+
* Import from '@mcp-abap-adt/llm-agent/otel'.
|
|
6
|
+
* Requires @opentelemetry/api ^1.0.0 as a peer dependency.
|
|
7
|
+
*/
|
|
8
|
+
import type { Tracer } from '@opentelemetry/api';
|
|
9
|
+
import type { ISpan, ITracer, SpanOptions } from '../tracer/types.js';
|
|
10
|
+
export declare class OtelTracerAdapter implements ITracer {
|
|
11
|
+
private readonly tracer;
|
|
12
|
+
constructor(tracer: Tracer);
|
|
13
|
+
startSpan(name: string, options?: SpanOptions): ISpan;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=otel-tracer-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"otel-tracer-adapter.d.ts","sourceRoot":"","sources":["../../../src/smart-agent/otel/otel-tracer-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAIV,MAAM,EACP,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EACV,KAAK,EACL,OAAO,EACP,WAAW,EAEZ,MAAM,oBAAoB,CAAC;AAwC5B,qBAAa,iBAAkB,YAAW,OAAO;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAE3C,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,KAAK;CAyBtD"}
|