kortyx 0.7.0 → 0.9.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/CHANGELOG.md CHANGED
@@ -1,5 +1,27 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.9.0](https://github.com/kortyx-io/kortyx/compare/kortyx-v0.8.0...kortyx-v0.9.0) (2026-04-17)
4
+
5
+
6
+ ### Features
7
+
8
+ * **hooks:** support incremental structured data streaming ([05e9678](https://github.com/kortyx-io/kortyx/commit/05e96789a9a132549c9245b1feb76d20916da42a))
9
+ * **hooks:** support incremental structured data streaming ([05e9678](https://github.com/kortyx-io/kortyx/commit/05e96789a9a132549c9245b1feb76d20916da42a))
10
+ * **hooks:** support incremental structured data streaming ([4023fda](https://github.com/kortyx-io/kortyx/commit/4023fda42bfecc81782e474e6d442b379a3fa3d4))
11
+
12
+ ## [0.8.0](https://github.com/kortyx-io/kortyx/compare/kortyx-v0.7.0...kortyx-v0.8.0) (2026-03-11)
13
+
14
+
15
+ ### ⚠ BREAKING CHANGES
16
+
17
+ * remove @kortyx/memory and clarify runtime persistence
18
+
19
+ ### Bug Fixes
20
+
21
+ * **dx:** simplify streamChat API route surface and docs ([6ac69da](https://github.com/kortyx-io/kortyx/commit/6ac69da30945e48d251b3f16b979177cf5a4d108))
22
+ * **dx:** simplify streamChat API route surface and docs ([ec6599a](https://github.com/kortyx-io/kortyx/commit/ec6599a5b745d2ec22d77a0ede4d730ddd4d261a))
23
+ * remove @kortyx/memory and clarify runtime persistence ([613574d](https://github.com/kortyx-io/kortyx/commit/613574d535de680a7b9671e801613a8222052dd5))
24
+
3
25
  ## [0.7.0](https://github.com/kortyx-io/kortyx/compare/kortyx-v0.6.0...kortyx-v0.7.0) (2026-03-09)
4
26
 
5
27
 
package/dist/browser.d.ts CHANGED
@@ -1,9 +1,8 @@
1
1
  export { StreamChatFromRouteArgs, streamChatFromRoute } from '@kortyx/agent/browser';
2
- export { ConsumeStreamHandlers, StreamChunk, StreamFromRouteArgs, consumeStream, readStream, streamFromRoute } from '@kortyx/stream/browser';
2
+ export { ConsumeStreamHandlers, StreamChunk, StreamFromRouteArgs, StructuredDataChunk, StructuredStreamAccumulator, StructuredStreamState, applyStructuredChunk, consumeStream, createStructuredStreamAccumulator, readStream, reduceStructuredChunks, streamFromRoute } from '@kortyx/stream/browser';
3
3
  import '@kortyx/agent';
4
4
  import '@kortyx/core';
5
5
  import '@kortyx/hooks';
6
- import '@kortyx/memory';
7
6
  import '@kortyx/providers';
8
7
  import '@kortyx/runtime';
9
8
  import '@kortyx/stream';
package/dist/browser.js CHANGED
@@ -19,8 +19,11 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  // src/browser.ts
20
20
  var browser_exports = {};
21
21
  __export(browser_exports, {
22
+ applyStructuredChunk: () => import_browser2.applyStructuredChunk,
22
23
  consumeStream: () => import_browser2.consumeStream,
24
+ createStructuredStreamAccumulator: () => import_browser2.createStructuredStreamAccumulator,
23
25
  readStream: () => import_browser2.readStream,
26
+ reduceStructuredChunks: () => import_browser2.reduceStructuredChunks,
24
27
  streamChatFromRoute: () => import_browser.streamChatFromRoute,
25
28
  streamFromRoute: () => import_browser2.streamFromRoute
26
29
  });
@@ -29,8 +32,11 @@ var import_browser = require("@kortyx/agent/browser");
29
32
  var import_browser2 = require("@kortyx/stream/browser");
30
33
  // Annotate the CommonJS export names for ESM import in node:
31
34
  0 && (module.exports = {
35
+ applyStructuredChunk,
32
36
  consumeStream,
37
+ createStructuredStreamAccumulator,
33
38
  readStream,
39
+ reduceStructuredChunks,
34
40
  streamChatFromRoute,
35
41
  streamFromRoute
36
42
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/browser.ts"],"sourcesContent":["// Browser-safe exports for client bundles (e.g. Next.js Client Components).\n// Keep this file free of Node-only imports (fs, path, etc).\n\nexport type { StreamChatFromRouteArgs } from \"@kortyx/agent/browser\";\nexport { streamChatFromRoute } from \"@kortyx/agent/browser\";\nexport type {\n ConsumeStreamHandlers,\n StreamChunk,\n StreamFromRouteArgs,\n} from \"@kortyx/stream/browser\";\nexport {\n consumeStream,\n readStream,\n streamFromRoute,\n} from \"@kortyx/stream/browser\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,qBAAoC;AAMpC,IAAAA,kBAIO;","names":["import_browser"]}
1
+ {"version":3,"sources":["../src/browser.ts"],"sourcesContent":["// Browser-safe exports for client bundles (e.g. Next.js Client Components).\n// Keep this file free of Node-only imports (fs, path, etc).\n\nexport type { StreamChatFromRouteArgs } from \"@kortyx/agent/browser\";\nexport { streamChatFromRoute } from \"@kortyx/agent/browser\";\nexport type {\n ConsumeStreamHandlers,\n StreamChunk,\n StreamFromRouteArgs,\n StructuredDataChunk,\n StructuredStreamAccumulator,\n StructuredStreamState,\n} from \"@kortyx/stream/browser\";\nexport {\n applyStructuredChunk,\n consumeStream,\n createStructuredStreamAccumulator,\n readStream,\n reduceStructuredChunks,\n streamFromRoute,\n} from \"@kortyx/stream/browser\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,qBAAoC;AASpC,IAAAA,kBAOO;","names":["import_browser"]}
package/dist/index.d.ts CHANGED
@@ -1,7 +1,6 @@
1
- export { Agent, AgentMemoryConfig, AgentProcessOptions, ChatRequestBody, CreateAgentArgs, ProcessChatArgs, StreamChatFromRouteArgs, createAgent, createChatRouteHandler, parseChatRequestBody, processChat, processChatRequestBody, streamChatFromRoute } from '@kortyx/agent';
2
- export { GraphState, MemoryEnvelope, NodeConfig, NodeContext, NodeFn, NodeHandler, NodeResult, WorkflowDefinition, WorkflowId, defineWorkflow, loadWorkflow, validateWorkflow } from '@kortyx/core';
3
- export { UseInterruptArgs, UseReasonArgs, UseReasonResult, UseStructuredDataArgs, useAiMemory, useInterrupt, useNodeState, useReason, useStructuredData, useWorkflowState } from '@kortyx/hooks';
4
- export { createInMemoryAdapter, createPostgresAdapter, createRedisAdapter } from '@kortyx/memory';
1
+ export { Agent, AgentProcessOptions, ChatRequestBody, CreateAgentArgs, StreamChatFromRouteArgs, createAgent, createChatRouteHandler, handleChatRequestBody, parseChatRequestBody, streamChatFromRoute } from '@kortyx/agent';
2
+ export { GraphState, NodeConfig, NodeContext, NodeFn, NodeHandler, NodeResult, RuntimeEnvelope, WorkflowDefinition, WorkflowId, defineWorkflow, loadWorkflow, validateWorkflow } from '@kortyx/core';
3
+ export { UseInterruptArgs, UseReasonArgs, UseReasonResult, UseStructuredDataArgs, useInterrupt, useNodeState, useReason, useStructuredData, useWorkflowState } from '@kortyx/hooks';
5
4
  export * from '@kortyx/providers';
6
5
  export { WorkflowRegistry, clearRegisteredNodes, createFileWorkflowRegistry, createFrameworkAdapterFromEnv, createInMemoryFrameworkAdapter, createInMemoryWorkflowRegistry, createRedisFrameworkAdapter, getRegisteredNode, listRegisteredNodes, registerNode } from '@kortyx/runtime';
7
- export { ConsumeStreamHandlers, StreamChunk, consumeStream, createStreamResponse, readStream } from '@kortyx/stream';
6
+ export { BufferedStreamResult, ConsumeStreamHandlers, StreamChunk, StructuredDataChunk, StructuredStreamAccumulator, StructuredStreamState, applyStructuredChunk, collectBufferedStream, collectStream, consumeStream, createStreamResponse, createStructuredStreamAccumulator, readStream, reduceStructuredChunks, summarizeStreamChunks, toSSE } from '@kortyx/stream';
package/dist/index.js CHANGED
@@ -20,30 +20,32 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/index.ts
21
21
  var index_exports = {};
22
22
  __export(index_exports, {
23
+ applyStructuredChunk: () => import_stream.applyStructuredChunk,
23
24
  clearRegisteredNodes: () => import_runtime.clearRegisteredNodes,
25
+ collectBufferedStream: () => import_stream.collectBufferedStream,
26
+ collectStream: () => import_stream.collectStream,
24
27
  consumeStream: () => import_stream.consumeStream,
25
28
  createAgent: () => import_agent.createAgent,
26
29
  createChatRouteHandler: () => import_agent.createChatRouteHandler,
27
30
  createFileWorkflowRegistry: () => import_runtime.createFileWorkflowRegistry,
28
31
  createFrameworkAdapterFromEnv: () => import_runtime.createFrameworkAdapterFromEnv,
29
- createInMemoryAdapter: () => import_memory.createInMemoryAdapter,
30
32
  createInMemoryFrameworkAdapter: () => import_runtime.createInMemoryFrameworkAdapter,
31
33
  createInMemoryWorkflowRegistry: () => import_runtime.createInMemoryWorkflowRegistry,
32
- createPostgresAdapter: () => import_memory.createPostgresAdapter,
33
- createRedisAdapter: () => import_memory.createRedisAdapter,
34
34
  createRedisFrameworkAdapter: () => import_runtime.createRedisFrameworkAdapter,
35
35
  createStreamResponse: () => import_stream.createStreamResponse,
36
+ createStructuredStreamAccumulator: () => import_stream.createStructuredStreamAccumulator,
36
37
  defineWorkflow: () => import_core.defineWorkflow,
37
38
  getRegisteredNode: () => import_runtime.getRegisteredNode,
39
+ handleChatRequestBody: () => import_agent.handleChatRequestBody,
38
40
  listRegisteredNodes: () => import_runtime.listRegisteredNodes,
39
41
  loadWorkflow: () => import_core.loadWorkflow,
40
42
  parseChatRequestBody: () => import_agent.parseChatRequestBody,
41
- processChat: () => import_agent.processChat,
42
- processChatRequestBody: () => import_agent.processChatRequestBody,
43
43
  readStream: () => import_stream.readStream,
44
+ reduceStructuredChunks: () => import_stream.reduceStructuredChunks,
44
45
  registerNode: () => import_runtime.registerNode,
45
46
  streamChatFromRoute: () => import_agent.streamChatFromRoute,
46
- useAiMemory: () => import_hooks.useAiMemory,
47
+ summarizeStreamChunks: () => import_stream.summarizeStreamChunks,
48
+ toSSE: () => import_stream.toSSE,
47
49
  useInterrupt: () => import_hooks.useInterrupt,
48
50
  useNodeState: () => import_hooks.useNodeState,
49
51
  useReason: () => import_hooks.useReason,
@@ -55,36 +57,37 @@ module.exports = __toCommonJS(index_exports);
55
57
  var import_agent = require("@kortyx/agent");
56
58
  var import_core = require("@kortyx/core");
57
59
  var import_hooks = require("@kortyx/hooks");
58
- var import_memory = require("@kortyx/memory");
59
60
  __reExport(index_exports, require("@kortyx/providers"), module.exports);
60
61
  var import_runtime = require("@kortyx/runtime");
61
62
  var import_stream = require("@kortyx/stream");
62
63
  // Annotate the CommonJS export names for ESM import in node:
63
64
  0 && (module.exports = {
65
+ applyStructuredChunk,
64
66
  clearRegisteredNodes,
67
+ collectBufferedStream,
68
+ collectStream,
65
69
  consumeStream,
66
70
  createAgent,
67
71
  createChatRouteHandler,
68
72
  createFileWorkflowRegistry,
69
73
  createFrameworkAdapterFromEnv,
70
- createInMemoryAdapter,
71
74
  createInMemoryFrameworkAdapter,
72
75
  createInMemoryWorkflowRegistry,
73
- createPostgresAdapter,
74
- createRedisAdapter,
75
76
  createRedisFrameworkAdapter,
76
77
  createStreamResponse,
78
+ createStructuredStreamAccumulator,
77
79
  defineWorkflow,
78
80
  getRegisteredNode,
81
+ handleChatRequestBody,
79
82
  listRegisteredNodes,
80
83
  loadWorkflow,
81
84
  parseChatRequestBody,
82
- processChat,
83
- processChatRequestBody,
84
85
  readStream,
86
+ reduceStructuredChunks,
85
87
  registerNode,
86
88
  streamChatFromRoute,
87
- useAiMemory,
89
+ summarizeStreamChunks,
90
+ toSSE,
88
91
  useInterrupt,
89
92
  useNodeState,
90
93
  useReason,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["// release-test: 2026-01-22\n// Public DX surface for the Kortyx framework.\n\nexport type {\n Agent,\n AgentMemoryConfig,\n AgentProcessOptions,\n ChatRequestBody,\n CreateAgentArgs,\n ProcessChatArgs,\n StreamChatFromRouteArgs,\n} from \"@kortyx/agent\";\nexport {\n createAgent,\n createChatRouteHandler,\n parseChatRequestBody,\n processChat,\n processChatRequestBody,\n streamChatFromRoute,\n} from \"@kortyx/agent\";\nexport type {\n GraphState,\n MemoryEnvelope,\n NodeConfig,\n NodeContext,\n NodeFn,\n NodeHandler,\n NodeResult,\n WorkflowDefinition,\n WorkflowId,\n} from \"@kortyx/core\";\nexport { defineWorkflow, loadWorkflow, validateWorkflow } from \"@kortyx/core\";\nexport type {\n UseInterruptArgs,\n UseReasonArgs,\n UseReasonResult,\n UseStructuredDataArgs,\n} from \"@kortyx/hooks\";\nexport {\n useAiMemory,\n useInterrupt,\n useNodeState,\n useReason,\n useStructuredData,\n useWorkflowState,\n} from \"@kortyx/hooks\";\nexport {\n createInMemoryAdapter,\n createPostgresAdapter,\n createRedisAdapter,\n} from \"@kortyx/memory\";\nexport * from \"@kortyx/providers\";\nexport type { WorkflowRegistry } from \"@kortyx/runtime\";\nexport {\n clearRegisteredNodes,\n createFileWorkflowRegistry,\n createFrameworkAdapterFromEnv,\n createInMemoryFrameworkAdapter,\n createInMemoryWorkflowRegistry,\n createRedisFrameworkAdapter,\n getRegisteredNode,\n listRegisteredNodes,\n registerNode,\n} from \"@kortyx/runtime\";\nexport type { ConsumeStreamHandlers, StreamChunk } from \"@kortyx/stream\";\nexport {\n consumeStream,\n createStreamResponse,\n readStream,\n} from \"@kortyx/stream\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA,mBAOO;AAYP,kBAA+D;AAO/D,mBAOO;AACP,oBAIO;AACP,0BAAc,8BAnDd;AAqDA,qBAUO;AAEP,oBAIO;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["// release-test: 2026-01-22\n// Public DX surface for the Kortyx framework.\n\nexport type {\n Agent,\n AgentProcessOptions,\n ChatRequestBody,\n CreateAgentArgs,\n StreamChatFromRouteArgs,\n} from \"@kortyx/agent\";\nexport {\n createAgent,\n createChatRouteHandler,\n handleChatRequestBody,\n parseChatRequestBody,\n streamChatFromRoute,\n} from \"@kortyx/agent\";\nexport type {\n GraphState,\n NodeConfig,\n NodeContext,\n NodeFn,\n NodeHandler,\n NodeResult,\n RuntimeEnvelope,\n WorkflowDefinition,\n WorkflowId,\n} from \"@kortyx/core\";\nexport { defineWorkflow, loadWorkflow, validateWorkflow } from \"@kortyx/core\";\nexport type {\n UseInterruptArgs,\n UseReasonArgs,\n UseReasonResult,\n UseStructuredDataArgs,\n} from \"@kortyx/hooks\";\nexport {\n useInterrupt,\n useNodeState,\n useReason,\n useStructuredData,\n useWorkflowState,\n} from \"@kortyx/hooks\";\nexport * from \"@kortyx/providers\";\nexport type { WorkflowRegistry } from \"@kortyx/runtime\";\nexport {\n clearRegisteredNodes,\n createFileWorkflowRegistry,\n createFrameworkAdapterFromEnv,\n createInMemoryFrameworkAdapter,\n createInMemoryWorkflowRegistry,\n createRedisFrameworkAdapter,\n getRegisteredNode,\n listRegisteredNodes,\n registerNode,\n} from \"@kortyx/runtime\";\nexport type {\n BufferedStreamResult,\n ConsumeStreamHandlers,\n StreamChunk,\n StructuredDataChunk,\n StructuredStreamAccumulator,\n StructuredStreamState,\n} from \"@kortyx/stream\";\nexport {\n applyStructuredChunk,\n collectBufferedStream,\n collectStream,\n consumeStream,\n createStreamResponse,\n createStructuredStreamAccumulator,\n readStream,\n reduceStructuredChunks,\n summarizeStreamChunks,\n toSSE,\n} from \"@kortyx/stream\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,mBAMO;AAYP,kBAA+D;AAO/D,mBAMO;AACP,0BAAc,8BA1Cd;AA4CA,qBAUO;AASP,oBAWO;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kortyx",
3
- "version": "0.7.0",
3
+ "version": "0.9.0",
4
4
  "private": false,
5
5
  "description": "The batteries-included Kortyx package that aggregates the core building blocks.",
6
6
  "keywords": [
@@ -21,16 +21,12 @@
21
21
  "types": "./dist/index.d.ts",
22
22
  "exports": {
23
23
  ".": {
24
- "browser": {
25
- "types": "./dist/browser.d.ts",
26
- "default": "./dist/browser.js"
27
- },
28
- "react-server": {
29
- "types": "./dist/index.d.ts",
30
- "default": "./dist/index.js"
31
- },
32
24
  "types": "./dist/index.d.ts",
33
25
  "default": "./dist/index.js"
26
+ },
27
+ "./browser": {
28
+ "types": "./dist/browser.d.ts",
29
+ "default": "./dist/browser.js"
34
30
  }
35
31
  },
36
32
  "files": [
@@ -39,14 +35,13 @@
39
35
  "CHANGELOG.md"
40
36
  ],
41
37
  "dependencies": {
42
- "@kortyx/agent": "0.8.0",
43
- "@kortyx/core": "0.4.1",
44
- "@kortyx/hooks": "0.7.0",
45
- "@kortyx/memory": "0.3.1",
38
+ "@kortyx/agent": "0.10.0",
39
+ "@kortyx/core": "0.5.0",
40
+ "@kortyx/hooks": "0.9.0",
46
41
  "@kortyx/providers": "0.3.2",
47
- "@kortyx/stream": "0.5.0",
48
- "@kortyx/utils": "0.2.5",
49
- "@kortyx/runtime": "0.7.0"
42
+ "@kortyx/runtime": "0.8.1",
43
+ "@kortyx/stream": "0.6.0",
44
+ "@kortyx/utils": "0.2.5"
50
45
  },
51
46
  "devDependencies": {
52
47
  "turbo": "^2.5.4",