@weavelogic/knowledge-graph-agent 0.6.0 → 0.7.1
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/LICENSE +21 -0
- package/README.md +70 -3
- package/dist/_virtual/__vite-browser-external.js +2 -2
- package/dist/_virtual/__vite-browser-external.js.map +1 -1
- package/dist/_virtual/index12.js +7 -0
- package/dist/_virtual/index12.js.map +1 -0
- package/dist/_virtual/ort-web.min.js +8 -0
- package/dist/_virtual/ort-web.min.js.map +1 -0
- package/dist/_virtual/ort-web.min2.js +5 -0
- package/dist/_virtual/ort-web.min2.js.map +1 -0
- package/dist/agents/base-agent.d.ts +63 -0
- package/dist/agents/base-agent.d.ts.map +1 -1
- package/dist/agents/base-agent.js +139 -0
- package/dist/agents/base-agent.js.map +1 -1
- package/dist/agents/coordinator-agent.d.ts +422 -0
- package/dist/agents/coordinator-agent.d.ts.map +1 -0
- package/dist/agents/documenter-agent.d.ts +298 -0
- package/dist/agents/documenter-agent.d.ts.map +1 -0
- package/dist/agents/index.d.ts +11 -1
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +4 -0
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/mixins/index.d.ts +9 -0
- package/dist/agents/mixins/index.d.ts.map +1 -0
- package/dist/agents/mixins/trajectory-mixin.d.ts +112 -0
- package/dist/agents/mixins/trajectory-mixin.d.ts.map +1 -0
- package/dist/agents/optimizer-agent.d.ts +388 -0
- package/dist/agents/optimizer-agent.d.ts.map +1 -0
- package/dist/agents/planner-agent.d.ts +395 -0
- package/dist/agents/planner-agent.d.ts.map +1 -0
- package/dist/agents/registry.d.ts.map +1 -1
- package/dist/agents/registry.js +5 -0
- package/dist/agents/registry.js.map +1 -1
- package/dist/agents/reviewer-agent.d.ts +330 -0
- package/dist/agents/reviewer-agent.d.ts.map +1 -0
- package/dist/agents/types.d.ts +12 -1
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/agents/types.js +1 -0
- package/dist/agents/types.js.map +1 -1
- package/dist/cli/commands/hive-mind/add-frontmatter.d.ts +102 -0
- package/dist/cli/commands/hive-mind/add-frontmatter.d.ts.map +1 -0
- package/dist/cli/commands/hive-mind/add-frontmatter.js +439 -0
- package/dist/cli/commands/hive-mind/add-frontmatter.js.map +1 -0
- package/dist/cli/commands/hive-mind/analyze-links.d.ts +80 -0
- package/dist/cli/commands/hive-mind/analyze-links.d.ts.map +1 -0
- package/dist/cli/commands/hive-mind/analyze-links.js +367 -0
- package/dist/cli/commands/hive-mind/analyze-links.js.map +1 -0
- package/dist/cli/commands/hive-mind/find-connections.d.ts +75 -0
- package/dist/cli/commands/hive-mind/find-connections.d.ts.map +1 -0
- package/dist/cli/commands/hive-mind/find-connections.js +347 -0
- package/dist/cli/commands/hive-mind/find-connections.js.map +1 -0
- package/dist/cli/commands/hive-mind/index.d.ts +37 -0
- package/dist/cli/commands/hive-mind/index.d.ts.map +1 -0
- package/dist/cli/commands/hive-mind/index.js +33 -0
- package/dist/cli/commands/hive-mind/index.js.map +1 -0
- package/dist/cli/commands/hive-mind/validate-names.d.ts +79 -0
- package/dist/cli/commands/hive-mind/validate-names.d.ts.map +1 -0
- package/dist/cli/commands/hive-mind/validate-names.js +353 -0
- package/dist/cli/commands/hive-mind/validate-names.js.map +1 -0
- package/dist/cli/commands/vector.js +2 -0
- package/dist/cli/commands/vector.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +7 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/equilibrium/agent-equilibrium.d.ts +194 -0
- package/dist/equilibrium/agent-equilibrium.d.ts.map +1 -0
- package/dist/equilibrium/agent-equilibrium.js +304 -0
- package/dist/equilibrium/agent-equilibrium.js.map +1 -0
- package/dist/equilibrium/graph-equilibrium.d.ts +177 -0
- package/dist/equilibrium/graph-equilibrium.d.ts.map +1 -0
- package/dist/equilibrium/index.d.ts +11 -0
- package/dist/equilibrium/index.d.ts.map +1 -0
- package/dist/equilibrium/memory-equilibrium.d.ts +153 -0
- package/dist/equilibrium/memory-equilibrium.d.ts.map +1 -0
- package/dist/graphql/resolvers/index.d.ts.map +1 -1
- package/dist/graphql/resolvers/queries.d.ts +11 -0
- package/dist/graphql/resolvers/queries.d.ts.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -4
- package/dist/index.js.map +1 -1
- package/dist/inference/index.d.ts +9 -0
- package/dist/inference/index.d.ts.map +1 -0
- package/dist/inference/model-selection.d.ts +131 -0
- package/dist/inference/model-selection.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/adapters/agent-booster-adapter.d.ts +265 -0
- package/dist/integrations/agentic-flow/adapters/agent-booster-adapter.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/adapters/agentdb-adapter.d.ts +197 -0
- package/dist/integrations/agentic-flow/adapters/agentdb-adapter.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/adapters/agentdb-vector-store.d.ts +249 -0
- package/dist/integrations/agentic-flow/adapters/agentdb-vector-store.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/adapters/base-adapter.d.ts +120 -0
- package/dist/integrations/agentic-flow/adapters/base-adapter.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/adapters/federation-hub-adapter.d.ts +444 -0
- package/dist/integrations/agentic-flow/adapters/federation-hub-adapter.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/adapters/index.d.ts +17 -0
- package/dist/integrations/agentic-flow/adapters/index.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/adapters/model-router-adapter.d.ts +242 -0
- package/dist/integrations/agentic-flow/adapters/model-router-adapter.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/adapters/quic-transport-adapter.d.ts +364 -0
- package/dist/integrations/agentic-flow/adapters/quic-transport-adapter.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/adapters/reasoning-bank-adapter.d.ts +209 -0
- package/dist/integrations/agentic-flow/adapters/reasoning-bank-adapter.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/benchmark/index.d.ts +9 -0
- package/dist/integrations/agentic-flow/benchmark/index.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/benchmark/vector-benchmark.d.ts +253 -0
- package/dist/integrations/agentic-flow/benchmark/vector-benchmark.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/config.d.ts +109 -0
- package/dist/integrations/agentic-flow/config.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/feature-flags.d.ts +140 -0
- package/dist/integrations/agentic-flow/feature-flags.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/index.d.ts +22 -0
- package/dist/integrations/agentic-flow/index.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/migration/index.d.ts +9 -0
- package/dist/integrations/agentic-flow/migration/index.d.ts.map +1 -0
- package/dist/integrations/agentic-flow/migration/migrate-to-agentdb.d.ts +242 -0
- package/dist/integrations/agentic-flow/migration/migrate-to-agentdb.d.ts.map +1 -0
- package/dist/learning/index.d.ts +91 -0
- package/dist/learning/index.d.ts.map +1 -0
- package/dist/learning/learning-loop.d.ts +176 -0
- package/dist/learning/learning-loop.d.ts.map +1 -0
- package/dist/learning/services/ab-testing-framework.d.ts +135 -0
- package/dist/learning/services/ab-testing-framework.d.ts.map +1 -0
- package/dist/learning/services/agent-priming-service.d.ts +207 -0
- package/dist/learning/services/agent-priming-service.d.ts.map +1 -0
- package/dist/learning/services/daily-log-generator.d.ts +113 -0
- package/dist/learning/services/daily-log-generator.d.ts.map +1 -0
- package/dist/learning/services/index.d.ts +14 -0
- package/dist/learning/services/index.d.ts.map +1 -0
- package/dist/learning/services/memory-extraction-service.d.ts +87 -0
- package/dist/learning/services/memory-extraction-service.d.ts.map +1 -0
- package/dist/learning/services/task-completion-consumer.d.ts +162 -0
- package/dist/learning/services/task-completion-consumer.d.ts.map +1 -0
- package/dist/learning/services/trajectory-tracker.d.ts +174 -0
- package/dist/learning/services/trajectory-tracker.d.ts.map +1 -0
- package/dist/learning/types.d.ts +516 -0
- package/dist/learning/types.d.ts.map +1 -0
- package/dist/mcp/clients/claude-flow-memory-client.d.ts +259 -0
- package/dist/mcp/clients/claude-flow-memory-client.d.ts.map +1 -0
- package/dist/mcp/clients/claude-flow-memory-client.js +305 -0
- package/dist/mcp/clients/claude-flow-memory-client.js.map +1 -0
- package/dist/mcp/clients/index.d.ts +11 -0
- package/dist/mcp/clients/index.d.ts.map +1 -0
- package/dist/mcp/clients/mcp-client-adapter.d.ts +146 -0
- package/dist/mcp/clients/mcp-client-adapter.d.ts.map +1 -0
- package/dist/mcp/clients/mcp-client-adapter.js +372 -0
- package/dist/mcp/clients/mcp-client-adapter.js.map +1 -0
- package/dist/mcp/index.d.ts +10 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/memory/vault-sync.d.ts +12 -0
- package/dist/memory/vault-sync.d.ts.map +1 -1
- package/dist/memory/vault-sync.js +94 -11
- package/dist/memory/vault-sync.js.map +1 -1
- package/dist/node_modules/@huggingface/jinja/dist/index.js +118 -0
- package/dist/node_modules/@huggingface/jinja/dist/index.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/project-service/dist/index.js +1 -1
- package/dist/node_modules/@xenova/transformers/src/backends/onnx.js +24 -0
- package/dist/node_modules/@xenova/transformers/src/backends/onnx.js.map +1 -0
- package/dist/node_modules/@xenova/transformers/src/configs.js +52 -0
- package/dist/node_modules/@xenova/transformers/src/configs.js.map +1 -0
- package/dist/node_modules/@xenova/transformers/src/env.js +35 -0
- package/dist/node_modules/@xenova/transformers/src/env.js.map +1 -0
- package/dist/node_modules/@xenova/transformers/src/models.js +3852 -0
- package/dist/node_modules/@xenova/transformers/src/models.js.map +1 -0
- package/dist/node_modules/@xenova/transformers/src/tokenizers.js +144 -0
- package/dist/node_modules/@xenova/transformers/src/tokenizers.js.map +1 -0
- package/dist/node_modules/@xenova/transformers/src/utils/core.js +52 -0
- package/dist/node_modules/@xenova/transformers/src/utils/core.js.map +1 -0
- package/dist/node_modules/@xenova/transformers/src/utils/generation.js +623 -0
- package/dist/node_modules/@xenova/transformers/src/utils/generation.js.map +1 -0
- package/dist/node_modules/@xenova/transformers/src/utils/hub.js +395 -0
- package/dist/node_modules/@xenova/transformers/src/utils/hub.js.map +1 -0
- package/dist/node_modules/@xenova/transformers/src/utils/image.js +12 -0
- package/dist/node_modules/@xenova/transformers/src/utils/image.js.map +1 -0
- package/dist/node_modules/@xenova/transformers/src/utils/maths.js +89 -0
- package/dist/node_modules/@xenova/transformers/src/utils/maths.js.map +1 -0
- package/dist/node_modules/@xenova/transformers/src/utils/tensor.js +750 -0
- package/dist/node_modules/@xenova/transformers/src/utils/tensor.js.map +1 -0
- package/dist/node_modules/fdir/dist/index.js +13 -13
- package/dist/node_modules/fdir/dist/index.js.map +1 -1
- package/dist/node_modules/onnxruntime-common/dist/lib/backend-impl.js +67 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/backend-impl.js.map +1 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/env-impl.js +24 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/env-impl.js.map +1 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/env.js +6 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/env.js.map +1 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/index.js +11 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/index.js.map +1 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/inference-session-impl.js +162 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/inference-session-impl.js.map +1 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/inference-session.js +6 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/inference-session.js.map +1 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/tensor-impl.js +393 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/tensor-impl.js.map +1 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/tensor.js +6 -0
- package/dist/node_modules/onnxruntime-common/dist/lib/tensor.js.map +1 -0
- package/dist/node_modules/onnxruntime-web/dist/ort-web.min.js +12919 -0
- package/dist/node_modules/onnxruntime-web/dist/ort-web.min.js.map +1 -0
- package/dist/node_modules/tinyglobby/dist/index.js +14 -14
- package/dist/node_modules/tinyglobby/dist/index.js.map +1 -1
- package/dist/node_modules/typescript/lib/typescript.js +24 -24
- package/dist/node_modules/typescript/lib/typescript.js.map +1 -1
- package/dist/transport/agent-transport.d.ts +269 -0
- package/dist/transport/agent-transport.d.ts.map +1 -0
- package/dist/transport/index.d.ts +10 -0
- package/dist/transport/index.d.ts.map +1 -0
- package/dist/vector/index.d.ts +1 -1
- package/dist/vector/index.d.ts.map +1 -1
- package/dist/vector/services/embedding-service.d.ts +244 -0
- package/dist/vector/services/embedding-service.d.ts.map +1 -0
- package/dist/vector/services/embedding-service.js +10 -0
- package/dist/vector/services/embedding-service.js.map +1 -0
- package/dist/vector/services/hybrid-search.d.ts +320 -0
- package/dist/vector/services/hybrid-search.d.ts.map +1 -0
- package/dist/vector/services/hybrid-search.js +3 -0
- package/dist/vector/services/hybrid-search.js.map +1 -0
- package/dist/vector/services/index.d.ts +4 -0
- package/dist/vector/services/index.d.ts.map +1 -1
- package/package.json +10 -1
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Multi-Model Router Adapter (SPEC-010b)
|
|
3
|
+
*
|
|
4
|
+
* Cost-optimized model router that selects the best LLM for each task type.
|
|
5
|
+
* Routes tasks to appropriate models based on capabilities, cost, and quality.
|
|
6
|
+
*
|
|
7
|
+
* @module integrations/agentic-flow/adapters/model-router-adapter
|
|
8
|
+
*/
|
|
9
|
+
import { BaseAdapter, MetricsTrackable } from './base-adapter.js';
|
|
10
|
+
import { AgentType } from '../../../agents/types.js';
|
|
11
|
+
/**
|
|
12
|
+
* Supported model providers
|
|
13
|
+
*/
|
|
14
|
+
export type ModelProvider = 'anthropic' | 'openrouter' | 'google' | 'openai' | 'local';
|
|
15
|
+
/**
|
|
16
|
+
* Model capabilities and characteristics
|
|
17
|
+
*/
|
|
18
|
+
export interface ModelCapabilities {
|
|
19
|
+
/** Supports code generation tasks */
|
|
20
|
+
codeGeneration: boolean;
|
|
21
|
+
/** Supports code analysis tasks */
|
|
22
|
+
codeAnalysis: boolean;
|
|
23
|
+
/** Supports text generation tasks */
|
|
24
|
+
textGeneration: boolean;
|
|
25
|
+
/** Supports complex reasoning tasks */
|
|
26
|
+
reasoning: boolean;
|
|
27
|
+
/** Model speed category */
|
|
28
|
+
speed: 'fast' | 'medium' | 'slow';
|
|
29
|
+
/** Cost per 1000 tokens (USD) */
|
|
30
|
+
costPer1kTokens: number;
|
|
31
|
+
/** Quality score (0-1) */
|
|
32
|
+
qualityScore: number;
|
|
33
|
+
/** Maximum context length in tokens */
|
|
34
|
+
maxContextLength: number;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Model information structure
|
|
38
|
+
*/
|
|
39
|
+
export interface ModelInfo {
|
|
40
|
+
/** Unique model identifier */
|
|
41
|
+
id: string;
|
|
42
|
+
/** Model provider */
|
|
43
|
+
provider: ModelProvider;
|
|
44
|
+
/** Human-readable model name */
|
|
45
|
+
name: string;
|
|
46
|
+
/** Model capabilities */
|
|
47
|
+
capabilities: ModelCapabilities;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Task requirements for routing
|
|
51
|
+
*/
|
|
52
|
+
export interface TaskRequirements {
|
|
53
|
+
/** Required capabilities */
|
|
54
|
+
capabilities: string[];
|
|
55
|
+
/** Maximum acceptable cost */
|
|
56
|
+
maxCost: number;
|
|
57
|
+
/** Minimum quality threshold (0-1) */
|
|
58
|
+
minQuality: number;
|
|
59
|
+
/** Prefer local models if available */
|
|
60
|
+
preferLocal: boolean;
|
|
61
|
+
/** Estimated token count for the task */
|
|
62
|
+
estimatedTokens: number;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Routing decision result
|
|
66
|
+
*/
|
|
67
|
+
export interface RoutingDecision {
|
|
68
|
+
/** Selected model */
|
|
69
|
+
model: ModelInfo;
|
|
70
|
+
/** Reason for selection */
|
|
71
|
+
reason: string;
|
|
72
|
+
/** Estimated cost for this task */
|
|
73
|
+
estimatedCost: number;
|
|
74
|
+
/** Alternative models that could be used */
|
|
75
|
+
alternativeModels: ModelInfo[];
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Router configuration
|
|
79
|
+
*/
|
|
80
|
+
export interface ModelRouterConfig {
|
|
81
|
+
/** Enabled providers */
|
|
82
|
+
providers: ModelProvider[];
|
|
83
|
+
/** Enable cost optimization */
|
|
84
|
+
costOptimization: boolean;
|
|
85
|
+
/** Minimum quality threshold (0-1) */
|
|
86
|
+
qualityThreshold: number;
|
|
87
|
+
/** Fallback model ID */
|
|
88
|
+
fallbackModel: string;
|
|
89
|
+
/** Maximum cost per task */
|
|
90
|
+
maxCostPerTask: number;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Usage statistics for a model
|
|
94
|
+
*/
|
|
95
|
+
export interface ModelUsageStats {
|
|
96
|
+
/** Number of API calls */
|
|
97
|
+
calls: number;
|
|
98
|
+
/** Total cost incurred */
|
|
99
|
+
totalCost: number;
|
|
100
|
+
/** Average latency in milliseconds */
|
|
101
|
+
avgLatency: number;
|
|
102
|
+
/** Total tokens processed */
|
|
103
|
+
totalTokens: number;
|
|
104
|
+
/** Success rate (0-1) */
|
|
105
|
+
successRate: number;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Static model registry with capabilities and costs
|
|
109
|
+
*
|
|
110
|
+
* Costs are based on approximate pricing as of December 2024.
|
|
111
|
+
* Actual costs may vary - update as needed.
|
|
112
|
+
*/
|
|
113
|
+
export declare const MODEL_REGISTRY: ModelInfo[];
|
|
114
|
+
/**
|
|
115
|
+
* Multi-Model Router Adapter
|
|
116
|
+
*
|
|
117
|
+
* Selects the optimal model for each task based on:
|
|
118
|
+
* - Required capabilities
|
|
119
|
+
* - Cost constraints
|
|
120
|
+
* - Quality requirements
|
|
121
|
+
* - Speed preferences
|
|
122
|
+
*/
|
|
123
|
+
export declare class ModelRouterAdapter extends BaseAdapter<unknown> implements MetricsTrackable {
|
|
124
|
+
private config;
|
|
125
|
+
private availableModels;
|
|
126
|
+
private usageStats;
|
|
127
|
+
private totalRoutingDecisions;
|
|
128
|
+
private localModelCheckDone;
|
|
129
|
+
private localModelsAvailable;
|
|
130
|
+
constructor(config?: Partial<ModelRouterConfig>);
|
|
131
|
+
getFeatureName(): string;
|
|
132
|
+
isAvailable(): boolean;
|
|
133
|
+
/**
|
|
134
|
+
* Initialize the router with available models
|
|
135
|
+
*/
|
|
136
|
+
initialize(): Promise<void>;
|
|
137
|
+
/**
|
|
138
|
+
* Check if local models are available
|
|
139
|
+
*/
|
|
140
|
+
private checkLocalModels;
|
|
141
|
+
/**
|
|
142
|
+
* Route a task to the optimal model
|
|
143
|
+
*
|
|
144
|
+
* @param requirements - Task requirements
|
|
145
|
+
* @returns Routing decision with selected model
|
|
146
|
+
*/
|
|
147
|
+
route(requirements: TaskRequirements): Promise<RoutingDecision>;
|
|
148
|
+
/**
|
|
149
|
+
* Route based on agent type
|
|
150
|
+
*
|
|
151
|
+
* @param agentType - The agent type to route for
|
|
152
|
+
* @param estimatedTokens - Estimated token count
|
|
153
|
+
* @returns Routing decision
|
|
154
|
+
*/
|
|
155
|
+
routeForAgent(agentType: AgentType, estimatedTokens?: number): Promise<RoutingDecision>;
|
|
156
|
+
/**
|
|
157
|
+
* Get default requirements for an agent type
|
|
158
|
+
*/
|
|
159
|
+
private getAgentRequirements;
|
|
160
|
+
/**
|
|
161
|
+
* Check if a model meets task requirements
|
|
162
|
+
*/
|
|
163
|
+
private meetsRequirements;
|
|
164
|
+
/**
|
|
165
|
+
* Score a model for given requirements
|
|
166
|
+
*
|
|
167
|
+
* Higher score = better match
|
|
168
|
+
*/
|
|
169
|
+
private scoreModel;
|
|
170
|
+
/**
|
|
171
|
+
* Estimate cost for a task
|
|
172
|
+
*/
|
|
173
|
+
private estimateCost;
|
|
174
|
+
/**
|
|
175
|
+
* Generate human-readable reason for model selection
|
|
176
|
+
*/
|
|
177
|
+
private generateReason;
|
|
178
|
+
/**
|
|
179
|
+
* Record usage for analytics and learning
|
|
180
|
+
*
|
|
181
|
+
* @param modelId - Model that was used
|
|
182
|
+
* @param cost - Actual cost incurred
|
|
183
|
+
* @param latencyMs - Response latency in milliseconds
|
|
184
|
+
* @param tokens - Actual tokens processed
|
|
185
|
+
* @param success - Whether the request succeeded
|
|
186
|
+
*/
|
|
187
|
+
recordUsage(modelId: string, cost: number, latencyMs: number, tokens?: number, success?: boolean): void;
|
|
188
|
+
/**
|
|
189
|
+
* Get usage statistics for all models
|
|
190
|
+
*/
|
|
191
|
+
getUsageStats(): Map<string, ModelUsageStats>;
|
|
192
|
+
/**
|
|
193
|
+
* Get usage statistics for a specific model
|
|
194
|
+
*/
|
|
195
|
+
getModelStats(modelId: string): ModelUsageStats | undefined;
|
|
196
|
+
/**
|
|
197
|
+
* Get cost savings report
|
|
198
|
+
*/
|
|
199
|
+
getCostSavingsReport(): {
|
|
200
|
+
totalCost: number;
|
|
201
|
+
estimatedFullPriceCost: number;
|
|
202
|
+
savings: number;
|
|
203
|
+
savingsPercentage: number;
|
|
204
|
+
modelBreakdown: Array<{
|
|
205
|
+
modelId: string;
|
|
206
|
+
modelName: string;
|
|
207
|
+
calls: number;
|
|
208
|
+
cost: number;
|
|
209
|
+
avgLatency: number;
|
|
210
|
+
}>;
|
|
211
|
+
};
|
|
212
|
+
/**
|
|
213
|
+
* Get available models
|
|
214
|
+
*/
|
|
215
|
+
getAvailableModels(): ModelInfo[];
|
|
216
|
+
/**
|
|
217
|
+
* Get models by provider
|
|
218
|
+
*/
|
|
219
|
+
getModelsByProvider(provider: ModelProvider): ModelInfo[];
|
|
220
|
+
/**
|
|
221
|
+
* Get models with specific capability
|
|
222
|
+
*/
|
|
223
|
+
getModelsWithCapability(capability: keyof ModelCapabilities): ModelInfo[];
|
|
224
|
+
/**
|
|
225
|
+
* Update configuration
|
|
226
|
+
*/
|
|
227
|
+
updateConfig(config: Partial<ModelRouterConfig>): void;
|
|
228
|
+
/**
|
|
229
|
+
* Get current configuration
|
|
230
|
+
*/
|
|
231
|
+
getConfig(): ModelRouterConfig;
|
|
232
|
+
getMetrics(): Record<string, number | string>;
|
|
233
|
+
resetMetrics(): void;
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Create and initialize a model router adapter
|
|
237
|
+
*
|
|
238
|
+
* @param config - Optional configuration
|
|
239
|
+
* @returns Initialized ModelRouterAdapter
|
|
240
|
+
*/
|
|
241
|
+
export declare function createModelRouterAdapter(config?: Partial<ModelRouterConfig>): Promise<ModelRouterAdapter>;
|
|
242
|
+
//# sourceMappingURL=model-router-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-router-adapter.d.ts","sourceRoot":"","sources":["../../../../src/integrations/agentic-flow/adapters/model-router-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,364 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* QUIC Transport Adapter
|
|
3
|
+
*
|
|
4
|
+
* Bridges knowledge-graph-agent with QUIC-based transport for
|
|
5
|
+
* high-performance data synchronization between nodes.
|
|
6
|
+
*
|
|
7
|
+
* Provides 50-70% lower latency than HTTP for agent communication
|
|
8
|
+
* through multiplexed streams and 0-RTT connection resumption.
|
|
9
|
+
*
|
|
10
|
+
* @module integrations/agentic-flow/adapters/quic-transport-adapter
|
|
11
|
+
*/
|
|
12
|
+
import { BaseAdapter, type HealthCheckable, type MetricsTrackable } from './base-adapter.js';
|
|
13
|
+
/**
|
|
14
|
+
* Configuration for QUIC Transport adapter
|
|
15
|
+
*/
|
|
16
|
+
export interface QUICTransportConfig {
|
|
17
|
+
/**
|
|
18
|
+
* Enable multiplexed streams for parallel data transfer
|
|
19
|
+
*/
|
|
20
|
+
enableMultiplexing: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Enable 0-RTT connection resumption
|
|
23
|
+
*/
|
|
24
|
+
enable0RTT: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Maximum concurrent streams
|
|
27
|
+
*/
|
|
28
|
+
maxStreams: number;
|
|
29
|
+
/**
|
|
30
|
+
* Connection timeout in milliseconds
|
|
31
|
+
*/
|
|
32
|
+
connectionTimeout: number;
|
|
33
|
+
/**
|
|
34
|
+
* Idle timeout in milliseconds
|
|
35
|
+
*/
|
|
36
|
+
idleTimeout: number;
|
|
37
|
+
/**
|
|
38
|
+
* Enable connection migration (for mobile clients)
|
|
39
|
+
*/
|
|
40
|
+
enableMigration: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Server address for connection
|
|
43
|
+
*/
|
|
44
|
+
serverAddress?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Server port
|
|
47
|
+
*/
|
|
48
|
+
serverPort?: number;
|
|
49
|
+
/**
|
|
50
|
+
* TLS certificate path
|
|
51
|
+
*/
|
|
52
|
+
tlsCertPath?: string;
|
|
53
|
+
/**
|
|
54
|
+
* TLS key path
|
|
55
|
+
*/
|
|
56
|
+
tlsKeyPath?: string;
|
|
57
|
+
/**
|
|
58
|
+
* Enable encryption (always true for QUIC)
|
|
59
|
+
*/
|
|
60
|
+
enableEncryption: boolean;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Default QUIC Transport configuration
|
|
64
|
+
*/
|
|
65
|
+
export declare const defaultQUICTransportConfig: QUICTransportConfig;
|
|
66
|
+
/**
|
|
67
|
+
* Connection state
|
|
68
|
+
*/
|
|
69
|
+
export type ConnectionState = 'disconnected' | 'connecting' | 'connected' | 'migrating' | 'closing';
|
|
70
|
+
/**
|
|
71
|
+
* Stream for data transfer
|
|
72
|
+
*/
|
|
73
|
+
export interface QUICStream {
|
|
74
|
+
id: string;
|
|
75
|
+
direction: 'inbound' | 'outbound' | 'bidirectional';
|
|
76
|
+
state: 'open' | 'half-closed' | 'closed';
|
|
77
|
+
bytesRead: number;
|
|
78
|
+
bytesWritten: number;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Message priority levels
|
|
82
|
+
*/
|
|
83
|
+
export type MessagePriority = 'low' | 'normal' | 'high' | 'critical';
|
|
84
|
+
/**
|
|
85
|
+
* Message for transport (spec-compliant)
|
|
86
|
+
*/
|
|
87
|
+
export interface QUICMessage {
|
|
88
|
+
id: string;
|
|
89
|
+
type: 'request' | 'response' | 'stream' | 'broadcast';
|
|
90
|
+
payload: unknown;
|
|
91
|
+
timestamp: number;
|
|
92
|
+
priority: MessagePriority;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Legacy message format (for backwards compatibility)
|
|
96
|
+
*/
|
|
97
|
+
export interface TransportMessage {
|
|
98
|
+
id: string;
|
|
99
|
+
type: string;
|
|
100
|
+
payload: unknown;
|
|
101
|
+
timestamp: Date;
|
|
102
|
+
priority?: 'low' | 'normal' | 'high';
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* QUIC connection representation (spec-compliant)
|
|
106
|
+
*/
|
|
107
|
+
export interface QUICConnection {
|
|
108
|
+
id: string;
|
|
109
|
+
endpoint: string;
|
|
110
|
+
status: 'connecting' | 'connected' | 'disconnected';
|
|
111
|
+
latency: number;
|
|
112
|
+
streams: number;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Connection statistics
|
|
116
|
+
*/
|
|
117
|
+
export interface ConnectionStats {
|
|
118
|
+
rtt: number;
|
|
119
|
+
packetLoss: number;
|
|
120
|
+
bytesReceived: number;
|
|
121
|
+
bytesSent: number;
|
|
122
|
+
activeStreams: number;
|
|
123
|
+
peakStreams: number;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Latency statistics
|
|
127
|
+
*/
|
|
128
|
+
export interface LatencyStats {
|
|
129
|
+
avg: number;
|
|
130
|
+
p95: number;
|
|
131
|
+
p99: number;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* QUIC Transport metrics
|
|
135
|
+
*/
|
|
136
|
+
export interface QUICMetrics {
|
|
137
|
+
totalConnections: number;
|
|
138
|
+
activeConnections: number;
|
|
139
|
+
totalStreams: number;
|
|
140
|
+
activeStreams: number;
|
|
141
|
+
bytesReceived: number;
|
|
142
|
+
bytesSent: number;
|
|
143
|
+
messagesReceived: number;
|
|
144
|
+
messagesSent: number;
|
|
145
|
+
averageLatencyMs: number;
|
|
146
|
+
p95LatencyMs: number;
|
|
147
|
+
p99LatencyMs: number;
|
|
148
|
+
errors: number;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* QUIC Transport Adapter
|
|
152
|
+
*
|
|
153
|
+
* Provides high-performance data synchronization using QUIC protocol.
|
|
154
|
+
* Features:
|
|
155
|
+
* - 50-70% lower latency than HTTP
|
|
156
|
+
* - Multiplexed streams for parallel communication
|
|
157
|
+
* - 0-RTT connection resumption
|
|
158
|
+
* - Built-in encryption (TLS 1.3)
|
|
159
|
+
* - Connection migration support
|
|
160
|
+
*/
|
|
161
|
+
export declare class QUICTransportAdapter extends BaseAdapter<unknown> implements HealthCheckable, MetricsTrackable {
|
|
162
|
+
private config;
|
|
163
|
+
private connections;
|
|
164
|
+
private pendingMessages;
|
|
165
|
+
private syncHandlers;
|
|
166
|
+
private messageHandlers;
|
|
167
|
+
private emitter;
|
|
168
|
+
private metrics;
|
|
169
|
+
constructor(config?: Partial<QUICTransportConfig>);
|
|
170
|
+
/**
|
|
171
|
+
* Get the feature name for feature flag lookup
|
|
172
|
+
*/
|
|
173
|
+
getFeatureName(): string;
|
|
174
|
+
/**
|
|
175
|
+
* Check if QUIC Transport module is available
|
|
176
|
+
*/
|
|
177
|
+
isAvailable(): boolean;
|
|
178
|
+
/**
|
|
179
|
+
* Initialize the QUIC Transport adapter
|
|
180
|
+
*/
|
|
181
|
+
initialize(): Promise<void>;
|
|
182
|
+
/**
|
|
183
|
+
* Connect to an endpoint
|
|
184
|
+
*
|
|
185
|
+
* @param endpoint - Server address
|
|
186
|
+
* @param config - Optional partial configuration
|
|
187
|
+
* @returns Connection info
|
|
188
|
+
*/
|
|
189
|
+
connect(endpoint: string, config?: Partial<QUICTransportConfig>): Promise<QUICConnection>;
|
|
190
|
+
/**
|
|
191
|
+
* Disconnect from an endpoint
|
|
192
|
+
*
|
|
193
|
+
* @param connectionId - Connection ID to disconnect
|
|
194
|
+
*/
|
|
195
|
+
disconnect(connectionId: string): Promise<void>;
|
|
196
|
+
/**
|
|
197
|
+
* Get connection information
|
|
198
|
+
*
|
|
199
|
+
* @param connectionId - Connection ID
|
|
200
|
+
* @returns Connection info or null
|
|
201
|
+
*/
|
|
202
|
+
getConnection(connectionId: string): Promise<QUICConnection | null>;
|
|
203
|
+
/**
|
|
204
|
+
* Get the number of active connections
|
|
205
|
+
*/
|
|
206
|
+
getConnectionCount(): Promise<number>;
|
|
207
|
+
/**
|
|
208
|
+
* Send a message on a connection
|
|
209
|
+
*
|
|
210
|
+
* @param connectionId - Connection ID
|
|
211
|
+
* @param message - Message to send
|
|
212
|
+
*/
|
|
213
|
+
send(connectionId: string, message: QUICMessage): Promise<void>;
|
|
214
|
+
/**
|
|
215
|
+
* Send a message and wait for response
|
|
216
|
+
*
|
|
217
|
+
* @param connectionId - Connection ID
|
|
218
|
+
* @param message - Message to send
|
|
219
|
+
* @param timeout - Response timeout in milliseconds
|
|
220
|
+
* @returns Response message
|
|
221
|
+
*/
|
|
222
|
+
sendWithResponse(connectionId: string, message: QUICMessage, timeout?: number): Promise<QUICMessage>;
|
|
223
|
+
/**
|
|
224
|
+
* Broadcast a message to all connections
|
|
225
|
+
*
|
|
226
|
+
* @param message - Message to broadcast
|
|
227
|
+
*/
|
|
228
|
+
broadcast(message: QUICMessage): Promise<void>;
|
|
229
|
+
/**
|
|
230
|
+
* Open a new stream on a connection
|
|
231
|
+
*
|
|
232
|
+
* @param connectionId - Connection ID
|
|
233
|
+
* @returns Stream ID
|
|
234
|
+
*/
|
|
235
|
+
openStream(connectionId: string): Promise<string>;
|
|
236
|
+
/**
|
|
237
|
+
* Close a stream
|
|
238
|
+
*
|
|
239
|
+
* @param connectionId - Connection ID
|
|
240
|
+
* @param streamId - Stream ID to close
|
|
241
|
+
*/
|
|
242
|
+
closeStream(connectionId: string, streamId: string): Promise<void>;
|
|
243
|
+
/**
|
|
244
|
+
* Get all active streams for a connection (legacy API)
|
|
245
|
+
*
|
|
246
|
+
* @returns List of active streams
|
|
247
|
+
*/
|
|
248
|
+
getStreams(): QUICStream[];
|
|
249
|
+
/**
|
|
250
|
+
* Get latency statistics
|
|
251
|
+
*
|
|
252
|
+
* @returns Latency stats (avg, p95, p99)
|
|
253
|
+
*/
|
|
254
|
+
getLatencyStats(): Promise<LatencyStats>;
|
|
255
|
+
/**
|
|
256
|
+
* Get current connection state
|
|
257
|
+
*
|
|
258
|
+
* @returns Connection state
|
|
259
|
+
*/
|
|
260
|
+
getConnectionState(): ConnectionState;
|
|
261
|
+
/**
|
|
262
|
+
* Check if any connection is active
|
|
263
|
+
*
|
|
264
|
+
* @returns True if connected
|
|
265
|
+
*/
|
|
266
|
+
isConnected(): boolean;
|
|
267
|
+
/**
|
|
268
|
+
* Get connection statistics (legacy API)
|
|
269
|
+
*
|
|
270
|
+
* @returns Connection stats
|
|
271
|
+
*/
|
|
272
|
+
getStats(): ConnectionStats;
|
|
273
|
+
/**
|
|
274
|
+
* Create a new stream (legacy API)
|
|
275
|
+
*
|
|
276
|
+
* @param direction - Stream direction
|
|
277
|
+
* @returns Created stream
|
|
278
|
+
*/
|
|
279
|
+
createStream(direction?: 'outbound' | 'bidirectional'): Promise<QUICStream>;
|
|
280
|
+
/**
|
|
281
|
+
* Send legacy format message (legacy API)
|
|
282
|
+
*
|
|
283
|
+
* @param streamId - Stream ID
|
|
284
|
+
* @param message - Message to send
|
|
285
|
+
*/
|
|
286
|
+
sendLegacy(streamId: string, message: TransportMessage): Promise<void>;
|
|
287
|
+
/**
|
|
288
|
+
* Receive message from stream (legacy API)
|
|
289
|
+
*
|
|
290
|
+
* @param streamId - Stream ID
|
|
291
|
+
* @returns Received message or null
|
|
292
|
+
*/
|
|
293
|
+
receive(streamId: string): Promise<TransportMessage | null>;
|
|
294
|
+
/**
|
|
295
|
+
* Sync data with a peer (legacy API)
|
|
296
|
+
*
|
|
297
|
+
* @param peerId - Peer ID
|
|
298
|
+
* @param data - Data to sync
|
|
299
|
+
* @returns Sync result
|
|
300
|
+
*/
|
|
301
|
+
syncData(peerId: string, data: unknown): Promise<{
|
|
302
|
+
success: boolean;
|
|
303
|
+
latency: number;
|
|
304
|
+
}>;
|
|
305
|
+
/**
|
|
306
|
+
* Subscribe to sync events (legacy API)
|
|
307
|
+
*
|
|
308
|
+
* @param handler - Handler function
|
|
309
|
+
* @returns Unsubscribe function
|
|
310
|
+
*/
|
|
311
|
+
subscribeToSync(handler: (peerId: string, data: unknown) => void): () => void;
|
|
312
|
+
/**
|
|
313
|
+
* Check health of the adapter
|
|
314
|
+
*/
|
|
315
|
+
checkHealth(): Promise<{
|
|
316
|
+
healthy: boolean;
|
|
317
|
+
message?: string;
|
|
318
|
+
details?: Record<string, unknown>;
|
|
319
|
+
}>;
|
|
320
|
+
/**
|
|
321
|
+
* Get adapter metrics
|
|
322
|
+
*/
|
|
323
|
+
getMetrics(): Record<string, number | string>;
|
|
324
|
+
/**
|
|
325
|
+
* Reset adapter metrics
|
|
326
|
+
*/
|
|
327
|
+
resetMetrics(): void;
|
|
328
|
+
/**
|
|
329
|
+
* Subscribe to adapter events
|
|
330
|
+
*
|
|
331
|
+
* @param event - Event name
|
|
332
|
+
* @param listener - Event listener
|
|
333
|
+
*/
|
|
334
|
+
on(event: string, listener: (...args: unknown[]) => void): this;
|
|
335
|
+
/**
|
|
336
|
+
* Unsubscribe from adapter events
|
|
337
|
+
*
|
|
338
|
+
* @param event - Event name
|
|
339
|
+
* @param listener - Event listener
|
|
340
|
+
*/
|
|
341
|
+
off(event: string, listener: (...args: unknown[]) => void): this;
|
|
342
|
+
/**
|
|
343
|
+
* Dispose and close all connections
|
|
344
|
+
*/
|
|
345
|
+
dispose(): Promise<void>;
|
|
346
|
+
/**
|
|
347
|
+
* Get the current configuration
|
|
348
|
+
*/
|
|
349
|
+
getConfig(): QUICTransportConfig;
|
|
350
|
+
private ensureInitializedAsync;
|
|
351
|
+
private createId;
|
|
352
|
+
private createInitialMetrics;
|
|
353
|
+
private simulateLatency;
|
|
354
|
+
private getLatencyForPriority;
|
|
355
|
+
private calculateAverageLatency;
|
|
356
|
+
}
|
|
357
|
+
/**
|
|
358
|
+
* Create a new QUIC Transport adapter instance
|
|
359
|
+
*
|
|
360
|
+
* @param config - Adapter configuration
|
|
361
|
+
* @returns Configured adapter
|
|
362
|
+
*/
|
|
363
|
+
export declare function createQUICTransportAdapter(config?: Partial<QUICTransportConfig>): QUICTransportAdapter;
|
|
364
|
+
//# sourceMappingURL=quic-transport-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quic-transport-adapter.d.ts","sourceRoot":"","sources":["../../../../src/integrations/agentic-flow/adapters/quic-transport-adapter.ts"],"names":[],"mappings":"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"}
|