kernl 0.9.1 → 0.11.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/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +34 -0
- package/dist/agent/base.d.ts +5 -1
- package/dist/agent/base.d.ts.map +1 -1
- package/dist/agent/base.js +8 -0
- package/dist/agent.d.ts +1 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +15 -2
- package/dist/context.d.ts +2 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +2 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/kernl/kernl.d.ts +1 -2
- package/dist/kernl/kernl.d.ts.map +1 -1
- package/dist/kernl/kernl.js +61 -1
- package/dist/lib/env.d.ts.map +1 -1
- package/dist/lib/env.js +1 -1
- package/dist/lifecycle/__tests__/hooks.test.d.ts +2 -0
- package/dist/lifecycle/__tests__/hooks.test.d.ts.map +1 -0
- package/dist/lifecycle/__tests__/hooks.test.js +553 -0
- package/dist/lifecycle.d.ts +222 -120
- package/dist/lifecycle.d.ts.map +1 -1
- package/dist/lifecycle.js +5 -23
- package/dist/memory/memory.js +1 -1
- package/dist/realtime/index.d.ts +1 -1
- package/dist/realtime/index.d.ts.map +1 -1
- package/dist/realtime/index.js +1 -1
- package/dist/realtime/session.d.ts +31 -22
- package/dist/realtime/session.d.ts.map +1 -1
- package/dist/realtime/session.js +64 -55
- package/dist/realtime/transport.d.ts +45 -0
- package/dist/realtime/transport.d.ts.map +1 -0
- package/dist/realtime/transport.js +32 -0
- package/dist/realtime/types.d.ts +8 -2
- package/dist/realtime/types.d.ts.map +1 -1
- package/dist/thread/__tests__/thread.test.js +2 -2
- package/dist/thread/thread.d.ts +2 -2
- package/dist/thread/thread.d.ts.map +1 -1
- package/dist/thread/thread.js +75 -8
- package/dist/thread/types.d.ts +1 -1
- package/dist/thread/types.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/agent/base.ts +13 -1
- package/src/agent.ts +17 -3
- package/src/context.ts +2 -0
- package/src/index.ts +10 -1
- package/src/kernl/kernl.ts +67 -3
- package/src/lib/env.ts +3 -1
- package/src/lifecycle/__tests__/hooks.test.ts +668 -0
- package/src/lifecycle.ts +289 -163
- package/src/memory/memory.ts +1 -1
- package/src/realtime/index.ts +1 -1
- package/src/realtime/session.ts +88 -64
- package/src/realtime/transport.ts +64 -0
- package/src/realtime/types.ts +10 -2
- package/src/thread/__tests__/thread.test.ts +2 -2
- package/src/thread/thread.ts +88 -10
- package/src/thread/types.ts +1 -1
- package/dist/realtime/channel.d.ts +0 -30
- package/dist/realtime/channel.d.ts.map +0 -1
- package/dist/realtime/channel.js +0 -1
- package/src/realtime/channel.ts +0 -32
package/.turbo/turbo-build.log
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# @kernl/core
|
|
2
2
|
|
|
3
|
+
## 0.11.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- bb6ac60: Add lifecycle hooks for observing agent execution
|
|
8
|
+
- New events: `thread.start`, `thread.stop`, `model.call.start`, `model.call.end`, `tool.call.start`, `tool.call.end`
|
|
9
|
+
- Subscribe via `agent.on()` or `kernl.on()` for global hooks
|
|
10
|
+
- Fixed error propagation in thread execution
|
|
11
|
+
- Normalized `ErrorEvent.error` to always be an `Error` instance
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- Updated dependencies [bb6ac60]
|
|
16
|
+
- @kernl-sdk/protocol@0.4.1
|
|
17
|
+
- @kernl-sdk/retrieval@0.1.7
|
|
18
|
+
|
|
19
|
+
## 0.10.0
|
|
20
|
+
|
|
21
|
+
### Minor Changes
|
|
22
|
+
|
|
23
|
+
- f593374: Add realtime voice agents with multi-provider support.
|
|
24
|
+
- `RealtimeAgent` and `RealtimeSession` for voice-enabled AI agents
|
|
25
|
+
- OpenAI GPT-4o realtime with WebSocket streaming
|
|
26
|
+
- xAI Grok realtime with OpenAI-compatible protocol
|
|
27
|
+
- React hooks: `useRealtime`, `useBrowserAudio`, `LiveWaveform`
|
|
28
|
+
- Ephemeral credential pattern for secure browser connections
|
|
29
|
+
- Tool execution with client-side context support
|
|
30
|
+
|
|
31
|
+
### Patch Changes
|
|
32
|
+
|
|
33
|
+
- Updated dependencies [f593374]
|
|
34
|
+
- @kernl-sdk/protocol@0.4.0
|
|
35
|
+
- @kernl-sdk/retrieval@0.1.6
|
|
36
|
+
|
|
3
37
|
## 0.9.1
|
|
4
38
|
|
|
5
39
|
### Patch Changes
|
package/dist/agent/base.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Context, UnknownContext } from "../context.js";
|
|
2
2
|
import type { Tool, BaseToolkit } from "../tool/index.js";
|
|
3
|
-
import { AgentHooks } from "../lifecycle.js";
|
|
3
|
+
import { AgentHooks, type AgentHookEvents } from "../lifecycle.js";
|
|
4
4
|
import type { Kernl } from "../kernl/index.js";
|
|
5
5
|
import type { AgentMemoryCreate, AgentMemoryUpdate, MemoryListOptions, MemorySearchQuery } from "../memory/index.js";
|
|
6
6
|
import type { AgentKind, AgentMemoryConfig, AgentOutputType } from "./types.js";
|
|
@@ -45,6 +45,10 @@ export declare abstract class BaseAgent<TContext = UnknownContext, TOutput exten
|
|
|
45
45
|
* Bind this agent to a kernl instance. Called by kernl.register().
|
|
46
46
|
*/
|
|
47
47
|
bind(kernl: Kernl): void;
|
|
48
|
+
/**
|
|
49
|
+
* Emit a lifecycle event to agent and kernl listeners.
|
|
50
|
+
*/
|
|
51
|
+
emit<K extends keyof AgentHookEvents<TContext, TOutput>>(event: K, ...args: AgentHookEvents<TContext, TOutput>[K]): boolean;
|
|
48
52
|
/**
|
|
49
53
|
* Get a specific tool by ID from systools and toolkits.
|
|
50
54
|
*/
|
package/dist/agent/base.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/agent/base.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAGhD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/agent/base.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/base.js
CHANGED
|
@@ -49,6 +49,14 @@ export class BaseAgent extends AgentHooks {
|
|
|
49
49
|
toolkit.bind(this);
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* Emit a lifecycle event to agent and kernl listeners.
|
|
54
|
+
*/
|
|
55
|
+
emit(event, ...args) {
|
|
56
|
+
const result = super.emit(event, ...args);
|
|
57
|
+
this.kernl?.emit(event, ...args);
|
|
58
|
+
return result;
|
|
59
|
+
}
|
|
52
60
|
/**
|
|
53
61
|
* Get a specific tool by ID from systools and toolkits.
|
|
54
62
|
*/
|
package/dist/agent.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { LanguageModel, LanguageModelItem, LanguageModelRequestSettings } from "@kernl-sdk/protocol";
|
|
2
2
|
import type { RThreadsListParams, RThreadCreateParams, RThreadGetOptions, RThreadHistoryParams, RThreadUpdateParams } from "./api/resources/threads/types.js";
|
|
3
|
-
import type
|
|
3
|
+
import { type UnknownContext } from "./context.js";
|
|
4
4
|
import { InputGuardrail, OutputGuardrail, type ResolvedAgentResponse } from "./guardrail.js";
|
|
5
5
|
import { BaseAgent } from "./agent/base.js";
|
|
6
6
|
import type { AgentConfig, AgentOutputType } from "./agent/types.js";
|
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EACb,iBAAiB,EACjB,4BAA4B,EAC7B,MAAM,qBAAqB,CAAC;AAG7B,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EACb,iBAAiB,EACjB,4BAA4B,EAC7B,MAAM,qBAAqB,CAAC;AAG7B,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAW,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EACL,cAAc,EACd,eAAe,EACf,KAAK,qBAAqB,EAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,KAAK,EACV,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AAExB,qBAAa,KAAK,CACd,QAAQ,GAAG,cAAc,EACzB,OAAO,SAAS,eAAe,GAAG,UAAU,CAE9C,SAAQ,SAAS,CAAC,QAAQ,EAAE,OAAO,CACnC,YAAW,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC;IAEzC,QAAQ,CAAC,IAAI,SAAS;IACtB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,4BAA4B,CAAC;IAErD,QAAQ,CAAC,UAAU,EAAE;QACnB,KAAK,EAAE,cAAc,EAAE,CAAC;QACxB,MAAM,EAAE,eAAe,CAAC,eAAe,CAAC,EAAE,CAAC;KAC5C,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAqB;IAC7C,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;gBAEtB,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC;IAYlD;;;;;OAKG;IACG,GAAG,CACP,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE,EACnC,OAAO,CAAC,EAAE,oBAAoB,CAAC,QAAQ,CAAC,GACvC,OAAO,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;IAyD/D;;;;;;;OAOG;IACI,MAAM,CACX,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE,EACnC,OAAO,CAAC,EAAE,oBAAoB,CAAC,QAAQ,CAAC,GACvC,aAAa,CAAC,iBAAiB,CAAC;IA0DnC;;;;OAIG;IACH,IAAI,OAAO;mBAWI,MAAM,YAAY,iBAAiB;wBAE/B,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC;sBAEpC,MAAM;uBACL,MAAM,WAAW,oBAAoB;yBAEnC,IAAI,CAAC,mBAAmB,EAAE,SAAS,GAAG,OAAO,CAAC;sBASjD,MAAM,SAAS,mBAAmB;MAGnD;CACF"}
|
package/dist/agent.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { message, } from "@kernl-sdk/protocol";
|
|
2
2
|
import { Thread } from "./thread/index.js";
|
|
3
|
+
import { Context } from "./context.js";
|
|
3
4
|
import { BaseAgent } from "./agent/base.js";
|
|
4
5
|
import { MisconfiguredError, RuntimeError } from "./lib/error.js";
|
|
5
6
|
export class Agent extends BaseAgent {
|
|
@@ -49,10 +50,13 @@ export class Agent extends BaseAgent {
|
|
|
49
50
|
}
|
|
50
51
|
// create new thread if not found in storage or no tid provided
|
|
51
52
|
if (!thread) {
|
|
53
|
+
const ctx = options?.context
|
|
54
|
+
? new Context(options?.namespace ?? "kernl", options.context)
|
|
55
|
+
: undefined;
|
|
52
56
|
thread = new Thread({
|
|
53
57
|
agent: this,
|
|
54
58
|
input: items,
|
|
55
|
-
context:
|
|
59
|
+
context: ctx,
|
|
56
60
|
model: options?.model,
|
|
57
61
|
task: options?.task,
|
|
58
62
|
tid: options?.threadId,
|
|
@@ -62,6 +66,9 @@ export class Agent extends BaseAgent {
|
|
|
62
66
|
return this.kernl.spawn(thread);
|
|
63
67
|
}
|
|
64
68
|
// resume existing thread from storage
|
|
69
|
+
if (options?.context) {
|
|
70
|
+
thread.context.context = options.context;
|
|
71
|
+
}
|
|
65
72
|
thread.append(...items);
|
|
66
73
|
return this.kernl.schedule(thread);
|
|
67
74
|
}
|
|
@@ -97,10 +104,13 @@ export class Agent extends BaseAgent {
|
|
|
97
104
|
}
|
|
98
105
|
// create new thread if not found in storage or no tid provided
|
|
99
106
|
if (!thread) {
|
|
107
|
+
const ctx = options?.context
|
|
108
|
+
? new Context(options?.namespace ?? "kernl", options.context)
|
|
109
|
+
: undefined;
|
|
100
110
|
thread = new Thread({
|
|
101
111
|
agent: this,
|
|
102
112
|
input: items,
|
|
103
|
-
context:
|
|
113
|
+
context: ctx,
|
|
104
114
|
model: options?.model,
|
|
105
115
|
task: options?.task,
|
|
106
116
|
tid: options?.threadId,
|
|
@@ -111,6 +121,9 @@ export class Agent extends BaseAgent {
|
|
|
111
121
|
return;
|
|
112
122
|
}
|
|
113
123
|
// resume existing thread from storage
|
|
124
|
+
if (options?.context) {
|
|
125
|
+
thread.context.context = options.context;
|
|
126
|
+
}
|
|
114
127
|
thread.append(...items);
|
|
115
128
|
yield* this.kernl.scheduleStream(thread);
|
|
116
129
|
}
|
package/dist/context.d.ts
CHANGED
|
@@ -19,6 +19,8 @@ export declare class Context<TContext = UnknownContext> {
|
|
|
19
19
|
/**
|
|
20
20
|
* The agent executing this context.
|
|
21
21
|
* Set by the thread during execution.
|
|
22
|
+
*
|
|
23
|
+
* NOTE: Primarily used by system tools (e.g., memory) that need agent access.
|
|
22
24
|
*/
|
|
23
25
|
agent?: Agent<TContext, any>;
|
|
24
26
|
/**
|
package/dist/context.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC;AAErC;;;GAGG;AACH,qBAAa,OAAO,CAAC,QAAQ,GAAG,cAAc;IAC5C;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,EAAE,QAAQ,CAAC;IAElB
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC;AAErC;;;GAGG;AACH,qBAAa,OAAO,CAAC,QAAQ,GAAG,cAAc;IAC5C;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,EAAE,QAAQ,CAAC;IAElB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAM7B;;;OAGG;IACH,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEvC;;;OAGG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI7B;;;OAGG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;gBAwBhB,SAAS,GAAE,MAAgB,EAAE,OAAO,GAAE,QAAyB;IAS3E;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM;IAevC;;;;;;;;;;;;;;OAcG;IACH,EAAE,IAAI,MAAM;IAIZ;;;;;;;;;;OAUG;IACH,IAAI,IAAI,MAAM;IAId,MAAM,IAAI;QACR,OAAO,EAAE,GAAG,CAAC;KAGd;CAOF;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC"}
|
package/dist/context.js
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -2,9 +2,10 @@ export { Kernl } from "./kernl/index.js";
|
|
|
2
2
|
export type { KernlOptions, StorageOptions, AgentRegistry, ModelRegistry, } from "./kernl/index.js";
|
|
3
3
|
export { Agent } from "./agent.js";
|
|
4
4
|
export { Context } from "./context.js";
|
|
5
|
+
export { RealtimeAgent, RealtimeSession, WebSocketTransport } from "./realtime/index.js";
|
|
6
|
+
export type { RealtimeAgentConfig, RealtimeAgentVoiceConfig, RealtimeSessionOptions, WebSocketTransportOptions, } from "./realtime/index.js";
|
|
5
7
|
export { tool, Toolkit, FunctionToolkit, MCPToolkit } from "./tool/index.js";
|
|
6
8
|
export { MCPServerSSE } from "./mcp/sse.js";
|
|
7
|
-
export { MCPServerStdio } from "./mcp/stdio.js";
|
|
8
9
|
export { MCPServerStreamableHttp } from "./mcp/http.js";
|
|
9
10
|
export type { MThread as Thread, MThreadEvent as ThreadEvent, MThreadEventBase as ThreadEventBase, } from "./api/models/index.js";
|
|
10
11
|
export type { RThreadsListParams as ThreadsListParams, RThreadGetOptions as ThreadGetOptions, RThreadHistoryParams as ThreadHistoryParams, RThreadCreateParams as ThreadCreateParams, RThreadUpdateParams as ThreadUpdateParams, } from "./api/resources/threads/index.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EACV,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EACV,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChF,YAAY,EACV,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAIrD,YAAY,EACV,OAAO,IAAI,MAAM,EACjB,YAAY,IAAI,WAAW,EAC3B,gBAAgB,IAAI,eAAe,GACpC,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,kBAAkB,IAAI,iBAAiB,EACvC,iBAAiB,IAAI,gBAAgB,EACrC,oBAAoB,IAAI,mBAAmB,EAC3C,mBAAmB,IAAI,kBAAkB,EACzC,mBAAmB,IAAI,kBAAkB,GAC1C,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,aAAa,EACb,KAAK,WAAW,EAChB,KAAK,iBAAiB,GACvB,MAAM,gBAAgB,CAAC;AAIxB,YAAY,EACV,WAAW,EACX,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,oBAAoB,EACpB,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,WAAW,GACZ,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AACrD,YAAY,EACV,WAAW,EACX,WAAW,EACX,SAAS,EACT,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,UAAU,EACV,eAAe,GAChB,MAAM,UAAU,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
export { Kernl } from "./kernl/index.js";
|
|
2
2
|
export { Agent } from "./agent.js";
|
|
3
3
|
export { Context } from "./context.js";
|
|
4
|
+
// --- realtime ---
|
|
5
|
+
export { RealtimeAgent, RealtimeSession, WebSocketTransport } from "./realtime/index.js";
|
|
4
6
|
// --- tools --
|
|
5
7
|
export { tool, Toolkit, FunctionToolkit, MCPToolkit } from "./tool/index.js";
|
|
6
8
|
export { MCPServerSSE } from "./mcp/sse.js";
|
|
7
|
-
export { MCPServerStdio } from "./mcp/stdio.js";
|
|
8
9
|
export { MCPServerStreamableHttp } from "./mcp/http.js";
|
|
9
10
|
export { THREAD_STATES, } from "./thread/types.js";
|
|
10
11
|
// --- memory ---
|
package/dist/kernl/kernl.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { BaseAgent } from "../agent/base.js";
|
|
2
|
-
import { UnknownContext } from "../context.js";
|
|
3
2
|
import { KernlHooks } from "../lifecycle.js";
|
|
4
3
|
import type { Thread } from "../thread/index.js";
|
|
5
4
|
import type { ResolvedAgentResponse } from "../guardrail.js";
|
|
@@ -16,7 +15,7 @@ import type { KernlOptions } from "./types.js";
|
|
|
16
15
|
* Orchestrates agent execution, including guardrails, tool calls, session persistence, and
|
|
17
16
|
* tracing.
|
|
18
17
|
*/
|
|
19
|
-
export declare class Kernl extends KernlHooks
|
|
18
|
+
export declare class Kernl extends KernlHooks {
|
|
20
19
|
private readonly _agents;
|
|
21
20
|
private readonly _models;
|
|
22
21
|
readonly storage: KernlStorage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernl.d.ts","sourceRoot":"","sources":["../../src/kernl/kernl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"kernl.d.ts","sourceRoot":"","sources":["../../src/kernl/kernl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EACL,MAAM,EAIP,MAAM,UAAU,CAAC;AAIlB,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAiC,MAAM,SAAS,CAAC;AAE3E;;;;;GAKG;AACH,qBAAa,KAAM,SAAQ,UAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqC;IAC7D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyC;IAEjE,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAa;IAEpD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;IACrD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6B;IAEvD,OAAO,CAAC,QAAQ,CAGd;IAGF,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAEd,OAAO,GAAE,YAAiB;IAatC;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAgChC;;OAEG;IACG,KAAK,CAAC,QAAQ,EAAE,OAAO,SAAS,eAAe,EACnD,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;IA2C/D;;;;OAIG;IACG,QAAQ,CAAC,QAAQ,EAAE,OAAO,SAAS,eAAe,EACtD,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;IAS/D;;;;OAIG;IACI,WAAW,CAAC,QAAQ,EAAE,OAAO,SAAS,eAAe,EAC1D,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAChC,aAAa,CAAC,iBAAiB,CAAC;IAwCnC;;;;OAIG;IACI,cAAc,CAAC,QAAQ,EAAE,OAAO,SAAS,eAAe,EAC7D,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAChC,aAAa,CAAC,iBAAiB,CAAC;IAWnC;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;CA6BzB"}
|
package/dist/kernl/kernl.js
CHANGED
|
@@ -68,8 +68,39 @@ export class Kernl extends KernlHooks {
|
|
|
68
68
|
*/
|
|
69
69
|
async spawn(thread) {
|
|
70
70
|
this.athreads.set(thread.tid, thread);
|
|
71
|
+
this.emit("thread.start", {
|
|
72
|
+
kind: "thread.start",
|
|
73
|
+
threadId: thread.tid,
|
|
74
|
+
agentId: thread.agent.id,
|
|
75
|
+
namespace: thread.namespace,
|
|
76
|
+
context: thread.context,
|
|
77
|
+
});
|
|
71
78
|
try {
|
|
72
|
-
|
|
79
|
+
const result = await thread.execute();
|
|
80
|
+
this.emit("thread.stop", {
|
|
81
|
+
kind: "thread.stop",
|
|
82
|
+
threadId: thread.tid,
|
|
83
|
+
agentId: thread.agent.id,
|
|
84
|
+
namespace: thread.namespace,
|
|
85
|
+
context: thread.context,
|
|
86
|
+
state: thread.state,
|
|
87
|
+
outcome: "success",
|
|
88
|
+
result: result.response,
|
|
89
|
+
});
|
|
90
|
+
return result;
|
|
91
|
+
}
|
|
92
|
+
catch (err) {
|
|
93
|
+
this.emit("thread.stop", {
|
|
94
|
+
kind: "thread.stop",
|
|
95
|
+
threadId: thread.tid,
|
|
96
|
+
agentId: thread.agent.id,
|
|
97
|
+
namespace: thread.namespace,
|
|
98
|
+
context: thread.context,
|
|
99
|
+
state: thread.state,
|
|
100
|
+
outcome: "error",
|
|
101
|
+
error: err instanceof Error ? err.message : String(err),
|
|
102
|
+
});
|
|
103
|
+
throw err;
|
|
73
104
|
}
|
|
74
105
|
finally {
|
|
75
106
|
this.athreads.delete(thread.tid);
|
|
@@ -96,8 +127,37 @@ export class Kernl extends KernlHooks {
|
|
|
96
127
|
*/
|
|
97
128
|
async *spawnStream(thread) {
|
|
98
129
|
this.athreads.set(thread.tid, thread);
|
|
130
|
+
this.emit("thread.start", {
|
|
131
|
+
kind: "thread.start",
|
|
132
|
+
threadId: thread.tid,
|
|
133
|
+
agentId: thread.agent.id,
|
|
134
|
+
namespace: thread.namespace,
|
|
135
|
+
context: thread.context,
|
|
136
|
+
});
|
|
99
137
|
try {
|
|
100
138
|
yield* thread.stream();
|
|
139
|
+
this.emit("thread.stop", {
|
|
140
|
+
kind: "thread.stop",
|
|
141
|
+
threadId: thread.tid,
|
|
142
|
+
agentId: thread.agent.id,
|
|
143
|
+
namespace: thread.namespace,
|
|
144
|
+
context: thread.context,
|
|
145
|
+
state: thread.state,
|
|
146
|
+
outcome: "success",
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
catch (err) {
|
|
150
|
+
this.emit("thread.stop", {
|
|
151
|
+
kind: "thread.stop",
|
|
152
|
+
threadId: thread.tid,
|
|
153
|
+
agentId: thread.agent.id,
|
|
154
|
+
namespace: thread.namespace,
|
|
155
|
+
context: thread.context,
|
|
156
|
+
state: thread.state,
|
|
157
|
+
outcome: "error",
|
|
158
|
+
error: err instanceof Error ? err.message : String(err),
|
|
159
|
+
});
|
|
160
|
+
throw err;
|
|
101
161
|
}
|
|
102
162
|
finally {
|
|
103
163
|
this.athreads.delete(thread.tid);
|
package/dist/lib/env.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/lib/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;GAKG;AACH,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;iBAab,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,GAAG;;;;
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/lib/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;GAKG;AACH,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;iBAab,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,GAAG;;;;CAEf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC"}
|
package/dist/lib/env.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.test.d.ts","sourceRoot":"","sources":["../../../src/lifecycle/__tests__/hooks.test.ts"],"names":[],"mappings":""}
|