@yuva-devlab/sdk 0.2.1 → 0.2.3
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/dist/index.cjs.map +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +9 -9
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/constants/sdk.constants.ts","../src/client/devlab-client.ts"],"names":["loggerWithConfig","Logger","createDefaultProvider","MockEmbeddingProvider","TextChunker","InMemoryVectorStore","SemanticCache","ToolRegistry","DynamicPricingResolver","CostLedger","BudgetEnforcer","TokenCounter","InMemoryEventBus","compilePrompt"],"mappings":"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","file":"index.cjs","sourcesContent":["/**\n * @file packages/sdk/src/constants/sdk.constants.ts\n * @description Operational constants and default endpoints for the master DevLab client.\n * @module @yuva-devlab/sdk\n */\n\n/** Default client request timeout in milliseconds (30 seconds) */\nexport const DEFAULT_CLIENT_TIMEOUT_MS = 30_000;\n\n/** Default local gateway API base URL */\nexport const DEFAULT_GATEWAY_URL = \"http://localhost:3000\";\n\n/** Current SDK distribution version */\nexport const SDK_VERSION = \"0.1.0\";\n","/**\n * @file packages/sdk/src/client/devlab-client.ts\n * @description Master DevLab platform client unifying AI, RAG, swarms, billing, caching, and events.\n * @module @yuva-devlab/sdk\n */\n\nimport {\n ToolRegistry,\n compilePrompt,\n type UniversalTool,\n} from \"@yuva-devlab/agent-core\";\nimport {\n createDefaultProvider,\n type ILLMProvider,\n type LLMRequest,\n type LLMResponse,\n type LLMStreamChunk,\n} from \"@yuva-devlab/ai-client\";\nimport {\n BudgetEnforcer,\n CostLedger,\n DynamicPricingResolver,\n TokenCounter,\n} from \"@yuva-devlab/billing\";\nimport { InMemoryEventBus, type IEventBus } from \"@yuva-devlab/events\";\nimport { Logger, loggerWithConfig } from \"@yuva-devlab/logger\";\nimport {\n InMemoryVectorStore,\n MockEmbeddingProvider,\n TextChunker,\n type IEmbeddingProvider,\n type RagQuery,\n type RagSearchResult,\n} from \"@yuva-devlab/rag\";\nimport { SemanticCache } from \"@yuva-devlab/semantic-cache\";\nimport { DEFAULT_CLIENT_TIMEOUT_MS, DEFAULT_GATEWAY_URL } from \"
|
|
1
|
+
{"version":3,"sources":["../src/constants/sdk.constants.ts","../src/client/devlab-client.ts"],"names":["loggerWithConfig","Logger","createDefaultProvider","MockEmbeddingProvider","TextChunker","InMemoryVectorStore","SemanticCache","ToolRegistry","DynamicPricingResolver","CostLedger","BudgetEnforcer","TokenCounter","InMemoryEventBus","compilePrompt"],"mappings":"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","file":"index.cjs","sourcesContent":["/**\n * @file packages/sdk/src/constants/sdk.constants.ts\n * @description Operational constants and default endpoints for the master DevLab client.\n * @module @yuva-devlab/sdk\n */\n\n/** Default client request timeout in milliseconds (30 seconds) */\nexport const DEFAULT_CLIENT_TIMEOUT_MS = 30_000;\n\n/** Default local gateway API base URL */\nexport const DEFAULT_GATEWAY_URL = \"http://localhost:3000\";\n\n/** Current SDK distribution version */\nexport const SDK_VERSION = \"0.1.0\";\n","/**\n * @file packages/sdk/src/client/devlab-client.ts\n * @description Master DevLab platform client unifying AI, RAG, swarms, billing, caching, and events.\n * @module @yuva-devlab/sdk\n */\n\nimport {\n ToolRegistry,\n compilePrompt,\n type UniversalTool,\n} from \"@yuva-devlab/agent-core\";\nimport {\n createDefaultProvider,\n type ILLMProvider,\n type LLMRequest,\n type LLMResponse,\n type LLMStreamChunk,\n} from \"@yuva-devlab/ai-client\";\nimport {\n BudgetEnforcer,\n CostLedger,\n DynamicPricingResolver,\n TokenCounter,\n} from \"@yuva-devlab/billing\";\nimport { InMemoryEventBus, type IEventBus } from \"@yuva-devlab/events\";\nimport { Logger, loggerWithConfig } from \"@yuva-devlab/logger\";\nimport {\n InMemoryVectorStore,\n MockEmbeddingProvider,\n TextChunker,\n type IEmbeddingProvider,\n type RagQuery,\n type RagSearchResult,\n} from \"@yuva-devlab/rag\";\nimport { SemanticCache } from \"@yuva-devlab/semantic-cache\";\nimport { DEFAULT_CLIENT_TIMEOUT_MS, DEFAULT_GATEWAY_URL } from \"@/constants\";\nimport type { DevLabClientConfig } from \"@/types\";\n\nconst logger = loggerWithConfig(new Logger(\"DevLabClient\"));\n\n/**\n * Master client providing unified access to the complete DevLab platform capabilities.\n *\n * @example\n * ```typescript\n * import { DevLabClient } from \"@yuva-devlab/sdk\";\n *\n * const client = new DevLabClient({ apiKey: \"dlk_...\" });\n * const response = await client.complete({\n * model: \"gemini-2.5-flash\",\n * messages: [{ role: \"user\", content: \"Hello!\" }],\n * });\n * ```\n */\nexport class DevLabClient {\n public readonly ai: ILLMProvider;\n public readonly embedder: IEmbeddingProvider;\n public readonly cache: SemanticCache;\n public readonly tools: ToolRegistry;\n public readonly vectorStore: InMemoryVectorStore;\n public readonly chunker: TextChunker;\n public readonly events: IEventBus;\n public readonly billing: {\n readonly counter: TokenCounter;\n readonly ledger: CostLedger;\n readonly enforcer: BudgetEnforcer;\n readonly pricing: DynamicPricingResolver;\n };\n\n public readonly gatewayUrl: string;\n public readonly tenantId?: string;\n public readonly timeoutMs: number;\n\n /**\n * Initializes the unified DevLab platform client.\n *\n * @param config - Platform client options\n */\n public constructor(config: DevLabClientConfig = {}) {\n this.gatewayUrl = config.gatewayUrl ?? DEFAULT_GATEWAY_URL;\n this.tenantId = config.tenantId;\n this.timeoutMs = config.timeoutMs ?? DEFAULT_CLIENT_TIMEOUT_MS;\n\n // 1. Initialize AI inference\n this.ai = config.aiProvider ?? createDefaultProvider();\n\n // 2. Initialize Embeddings & Vector RAG\n this.embedder = config.embeddingProvider ?? new MockEmbeddingProvider();\n this.chunker = new TextChunker();\n this.vectorStore = new InMemoryVectorStore(this.embedder);\n\n // 3. Initialize Semantic Caching\n this.cache = new SemanticCache(this.embedder);\n\n // 4. Initialize Agent Tool Registry\n this.tools = new ToolRegistry();\n\n // 5. Initialize Server-Driven Billing & Metering\n const pricing = new DynamicPricingResolver({\n loader: config.pricingLoader,\n });\n const ledger = new CostLedger();\n const enforcer = new BudgetEnforcer(ledger);\n const counter = new TokenCounter({ pricingResolver: pricing });\n this.billing = { counter, ledger, enforcer, pricing };\n\n // 6. Initialize Distributed Event Bus\n this.events = config.eventBus ?? new InMemoryEventBus();\n\n logger.debug(\"[constructor] DevLabClient initialized\", {\n gatewayUrl: this.gatewayUrl,\n tenantId: this.tenantId,\n });\n }\n\n /**\n * Completes an LLM prompt request.\n *\n * @param request - LLM completion request\n * @returns Model response\n */\n public async complete(request: LLMRequest): Promise<LLMResponse> {\n logger.debug(\"[complete] Executing AI completion via unified client\", {\n model: request.model,\n });\n return this.ai.complete(request);\n }\n\n /**\n * Streams token chunks incrementally.\n *\n * @param request - LLM completion request\n * @returns Async iterable yielding token deltas\n */\n public async *stream(request: LLMRequest): AsyncIterable<LLMStreamChunk> {\n yield* this.ai.stream(request);\n }\n\n /**\n * Executes a vector similarity search across ingested document chunks.\n *\n * @param query - Search parameters\n * @returns Scored document chunks\n */\n public async search(query: RagQuery): Promise<RagSearchResult> {\n logger.debug(\"[search] Executing RAG search via unified client\", {\n query: query.query,\n });\n return this.vectorStore.search(query);\n }\n\n /**\n * Executes a registered agent tool by name.\n *\n * @param toolName - Registered tool slug\n * @param input - Tool input arguments\n * @param ctx - Tool execution context\n * @returns Tool execution result\n */\n public async executeTool<TInput = unknown, TOutput = unknown>(\n toolName: string,\n input: TInput,\n ctx: { executionId: string; tenantId?: string },\n ): Promise<TOutput> {\n logger.debug(\"[executeTool] Executing registered tool\", { toolName });\n const tool = this.tools.getOrThrow(toolName) as UniversalTool<\n TInput,\n TOutput\n >;\n return tool.execute(input, {\n executionId: ctx.executionId,\n tenantId: ctx.tenantId ?? this.tenantId,\n });\n }\n\n /**\n * Helper to compile a system prompt with tool documentation.\n */\n public compilePrompt(\n template: string,\n variables: Record<string, unknown> = {},\n ): string {\n return compilePrompt({\n template,\n variables,\n tools: this.tools.listAll(),\n });\n }\n}\n"]}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/constants/sdk.constants.ts","../src/client/devlab-client.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["/**\n * @file packages/sdk/src/constants/sdk.constants.ts\n * @description Operational constants and default endpoints for the master DevLab client.\n * @module @yuva-devlab/sdk\n */\n\n/** Default client request timeout in milliseconds (30 seconds) */\nexport const DEFAULT_CLIENT_TIMEOUT_MS = 30_000;\n\n/** Default local gateway API base URL */\nexport const DEFAULT_GATEWAY_URL = \"http://localhost:3000\";\n\n/** Current SDK distribution version */\nexport const SDK_VERSION = \"0.1.0\";\n","/**\n * @file packages/sdk/src/client/devlab-client.ts\n * @description Master DevLab platform client unifying AI, RAG, swarms, billing, caching, and events.\n * @module @yuva-devlab/sdk\n */\n\nimport {\n ToolRegistry,\n compilePrompt,\n type UniversalTool,\n} from \"@yuva-devlab/agent-core\";\nimport {\n createDefaultProvider,\n type ILLMProvider,\n type LLMRequest,\n type LLMResponse,\n type LLMStreamChunk,\n} from \"@yuva-devlab/ai-client\";\nimport {\n BudgetEnforcer,\n CostLedger,\n DynamicPricingResolver,\n TokenCounter,\n} from \"@yuva-devlab/billing\";\nimport { InMemoryEventBus, type IEventBus } from \"@yuva-devlab/events\";\nimport { Logger, loggerWithConfig } from \"@yuva-devlab/logger\";\nimport {\n InMemoryVectorStore,\n MockEmbeddingProvider,\n TextChunker,\n type IEmbeddingProvider,\n type RagQuery,\n type RagSearchResult,\n} from \"@yuva-devlab/rag\";\nimport { SemanticCache } from \"@yuva-devlab/semantic-cache\";\nimport { DEFAULT_CLIENT_TIMEOUT_MS, DEFAULT_GATEWAY_URL } from \"
|
|
1
|
+
{"version":3,"sources":["../src/constants/sdk.constants.ts","../src/client/devlab-client.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["/**\n * @file packages/sdk/src/constants/sdk.constants.ts\n * @description Operational constants and default endpoints for the master DevLab client.\n * @module @yuva-devlab/sdk\n */\n\n/** Default client request timeout in milliseconds (30 seconds) */\nexport const DEFAULT_CLIENT_TIMEOUT_MS = 30_000;\n\n/** Default local gateway API base URL */\nexport const DEFAULT_GATEWAY_URL = \"http://localhost:3000\";\n\n/** Current SDK distribution version */\nexport const SDK_VERSION = \"0.1.0\";\n","/**\n * @file packages/sdk/src/client/devlab-client.ts\n * @description Master DevLab platform client unifying AI, RAG, swarms, billing, caching, and events.\n * @module @yuva-devlab/sdk\n */\n\nimport {\n ToolRegistry,\n compilePrompt,\n type UniversalTool,\n} from \"@yuva-devlab/agent-core\";\nimport {\n createDefaultProvider,\n type ILLMProvider,\n type LLMRequest,\n type LLMResponse,\n type LLMStreamChunk,\n} from \"@yuva-devlab/ai-client\";\nimport {\n BudgetEnforcer,\n CostLedger,\n DynamicPricingResolver,\n TokenCounter,\n} from \"@yuva-devlab/billing\";\nimport { InMemoryEventBus, type IEventBus } from \"@yuva-devlab/events\";\nimport { Logger, loggerWithConfig } from \"@yuva-devlab/logger\";\nimport {\n InMemoryVectorStore,\n MockEmbeddingProvider,\n TextChunker,\n type IEmbeddingProvider,\n type RagQuery,\n type RagSearchResult,\n} from \"@yuva-devlab/rag\";\nimport { SemanticCache } from \"@yuva-devlab/semantic-cache\";\nimport { DEFAULT_CLIENT_TIMEOUT_MS, DEFAULT_GATEWAY_URL } from \"@/constants\";\nimport type { DevLabClientConfig } from \"@/types\";\n\nconst logger = loggerWithConfig(new Logger(\"DevLabClient\"));\n\n/**\n * Master client providing unified access to the complete DevLab platform capabilities.\n *\n * @example\n * ```typescript\n * import { DevLabClient } from \"@yuva-devlab/sdk\";\n *\n * const client = new DevLabClient({ apiKey: \"dlk_...\" });\n * const response = await client.complete({\n * model: \"gemini-2.5-flash\",\n * messages: [{ role: \"user\", content: \"Hello!\" }],\n * });\n * ```\n */\nexport class DevLabClient {\n public readonly ai: ILLMProvider;\n public readonly embedder: IEmbeddingProvider;\n public readonly cache: SemanticCache;\n public readonly tools: ToolRegistry;\n public readonly vectorStore: InMemoryVectorStore;\n public readonly chunker: TextChunker;\n public readonly events: IEventBus;\n public readonly billing: {\n readonly counter: TokenCounter;\n readonly ledger: CostLedger;\n readonly enforcer: BudgetEnforcer;\n readonly pricing: DynamicPricingResolver;\n };\n\n public readonly gatewayUrl: string;\n public readonly tenantId?: string;\n public readonly timeoutMs: number;\n\n /**\n * Initializes the unified DevLab platform client.\n *\n * @param config - Platform client options\n */\n public constructor(config: DevLabClientConfig = {}) {\n this.gatewayUrl = config.gatewayUrl ?? DEFAULT_GATEWAY_URL;\n this.tenantId = config.tenantId;\n this.timeoutMs = config.timeoutMs ?? DEFAULT_CLIENT_TIMEOUT_MS;\n\n // 1. Initialize AI inference\n this.ai = config.aiProvider ?? createDefaultProvider();\n\n // 2. Initialize Embeddings & Vector RAG\n this.embedder = config.embeddingProvider ?? new MockEmbeddingProvider();\n this.chunker = new TextChunker();\n this.vectorStore = new InMemoryVectorStore(this.embedder);\n\n // 3. Initialize Semantic Caching\n this.cache = new SemanticCache(this.embedder);\n\n // 4. Initialize Agent Tool Registry\n this.tools = new ToolRegistry();\n\n // 5. Initialize Server-Driven Billing & Metering\n const pricing = new DynamicPricingResolver({\n loader: config.pricingLoader,\n });\n const ledger = new CostLedger();\n const enforcer = new BudgetEnforcer(ledger);\n const counter = new TokenCounter({ pricingResolver: pricing });\n this.billing = { counter, ledger, enforcer, pricing };\n\n // 6. Initialize Distributed Event Bus\n this.events = config.eventBus ?? new InMemoryEventBus();\n\n logger.debug(\"[constructor] DevLabClient initialized\", {\n gatewayUrl: this.gatewayUrl,\n tenantId: this.tenantId,\n });\n }\n\n /**\n * Completes an LLM prompt request.\n *\n * @param request - LLM completion request\n * @returns Model response\n */\n public async complete(request: LLMRequest): Promise<LLMResponse> {\n logger.debug(\"[complete] Executing AI completion via unified client\", {\n model: request.model,\n });\n return this.ai.complete(request);\n }\n\n /**\n * Streams token chunks incrementally.\n *\n * @param request - LLM completion request\n * @returns Async iterable yielding token deltas\n */\n public async *stream(request: LLMRequest): AsyncIterable<LLMStreamChunk> {\n yield* this.ai.stream(request);\n }\n\n /**\n * Executes a vector similarity search across ingested document chunks.\n *\n * @param query - Search parameters\n * @returns Scored document chunks\n */\n public async search(query: RagQuery): Promise<RagSearchResult> {\n logger.debug(\"[search] Executing RAG search via unified client\", {\n query: query.query,\n });\n return this.vectorStore.search(query);\n }\n\n /**\n * Executes a registered agent tool by name.\n *\n * @param toolName - Registered tool slug\n * @param input - Tool input arguments\n * @param ctx - Tool execution context\n * @returns Tool execution result\n */\n public async executeTool<TInput = unknown, TOutput = unknown>(\n toolName: string,\n input: TInput,\n ctx: { executionId: string; tenantId?: string },\n ): Promise<TOutput> {\n logger.debug(\"[executeTool] Executing registered tool\", { toolName });\n const tool = this.tools.getOrThrow(toolName) as UniversalTool<\n TInput,\n TOutput\n >;\n return tool.execute(input, {\n executionId: ctx.executionId,\n tenantId: ctx.tenantId ?? this.tenantId,\n });\n }\n\n /**\n * Helper to compile a system prompt with tool documentation.\n */\n public compilePrompt(\n template: string,\n variables: Record<string, unknown> = {},\n ): string {\n return compilePrompt({\n template,\n variables,\n tools: this.tools.listAll(),\n });\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yuva-devlab/sdk",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3",
|
|
4
4
|
"description": "Unified Master DevLab Platform Client combining AI inference, RAG, swarms, billing, caching, and events",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -25,27 +25,27 @@
|
|
|
25
25
|
},
|
|
26
26
|
"license": "MIT",
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"zod": "^3.25.76",
|
|
29
28
|
"@yuva-devlab/agent-core": "0.2.0",
|
|
30
29
|
"@yuva-devlab/ai-client": "0.2.0",
|
|
31
|
-
"@yuva-devlab/auth-server": "0.
|
|
30
|
+
"@yuva-devlab/auth-server": "1.0.0",
|
|
32
31
|
"@yuva-devlab/billing": "0.2.0",
|
|
33
32
|
"@yuva-devlab/errors": "0.2.0",
|
|
34
|
-
"@yuva-devlab/events": "0.2.
|
|
33
|
+
"@yuva-devlab/events": "0.2.1",
|
|
35
34
|
"@yuva-devlab/logger": "1.2.0",
|
|
36
35
|
"@yuva-devlab/rag": "0.2.0",
|
|
37
36
|
"@yuva-devlab/resilience": "0.2.0",
|
|
38
|
-
"@yuva-devlab/semantic-cache": "0.2.0"
|
|
37
|
+
"@yuva-devlab/semantic-cache": "0.2.0",
|
|
38
|
+
"zod": "^3.25.76"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"@types/node": "^24.10.1",
|
|
42
|
+
"@yuva-devlab/eslint-config": "0.1.1",
|
|
43
|
+
"@yuva-devlab/prettier-config": "0.1.1",
|
|
44
|
+
"@yuva-devlab/typescript-config": "0.1.1",
|
|
42
45
|
"eslint": "^9.39.1",
|
|
43
46
|
"prettier": "^3.9.8",
|
|
44
47
|
"tsup": "^8.5.1",
|
|
45
|
-
"typescript": "^6.0.3"
|
|
46
|
-
"@yuva-devlab/eslint-config": "0.1.1",
|
|
47
|
-
"@yuva-devlab/prettier-config": "0.1.1",
|
|
48
|
-
"@yuva-devlab/typescript-config": "0.1.1"
|
|
48
|
+
"typescript": "^6.0.3"
|
|
49
49
|
},
|
|
50
50
|
"scripts": {
|
|
51
51
|
"build": "tsup",
|