@copilotkit/channels-core 0.4.1-canary.1785375021 → 0.4.1-canary.narrowinstall1
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/codec.d.ts +3 -2
- package/dist/codec.d.ts.map +1 -1
- package/dist/create-channel.d.ts.map +1 -1
- package/dist/create-channel.js +31 -35
- package/dist/create-channel.test.js +0 -75
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/platform-adapter.d.ts +9 -64
- package/dist/platform-adapter.d.ts.map +1 -1
- package/dist/run-loop.d.ts +6 -25
- package/dist/run-loop.d.ts.map +1 -1
- package/dist/run-loop.js +39 -280
- package/dist/thread.d.ts +0 -4
- package/dist/thread.d.ts.map +1 -1
- package/dist/thread.js +243 -319
- package/package.json +4 -4
- package/dist/canonical-run-loop.test.d.ts +0 -2
- package/dist/canonical-run-loop.test.d.ts.map +0 -1
- package/dist/canonical-run-loop.test.js +0 -393
- package/dist/managed-v1-await-choice-guard.test.d.ts +0 -2
- package/dist/managed-v1-await-choice-guard.test.d.ts.map +0 -1
- package/dist/managed-v1-await-choice-guard.test.js +0 -52
- package/dist/source-platform.test.d.ts +0 -2
- package/dist/source-platform.test.d.ts.map +0 -1
- package/dist/source-platform.test.js +0 -149
- package/dist/thread-promise-contract.test.d.ts +0 -2
- package/dist/thread-promise-contract.test.d.ts.map +0 -1
- package/dist/thread-promise-contract.test.js +0 -37
package/dist/codec.d.ts
CHANGED
|
@@ -4,12 +4,13 @@ import type { ChannelNode } from "@copilotkit/channels-ui";
|
|
|
4
4
|
* the Intelligence side. It exists so platform *semantics* (how to render IR to
|
|
5
5
|
* a native payload, and — later — how to normalize a native event to the
|
|
6
6
|
* neutral ingress shape) live in ONE place, instead of being duplicated between
|
|
7
|
-
* a credentialed local adapter and the
|
|
7
|
+
* a credentialed local adapter (Bolt/discord.js) and the Connector Outbox /
|
|
8
|
+
* webhook ingress.
|
|
8
9
|
*
|
|
9
10
|
* Only the two creds/connection-bound concerns stay per-side: the transport
|
|
10
11
|
* (who holds the platform connection) and the credentialed send. The codec
|
|
11
12
|
* excludes both — `renderEgress` is pure (IR → native payload); the actual
|
|
12
|
-
* send happens in the
|
|
13
|
+
* send happens in the Connector Outbox with Intelligence-owned credentials.
|
|
13
14
|
*
|
|
14
15
|
* TODO(OSS-363): add `normalizeIngress(raw): NeutralEvent` once the pure Slack
|
|
15
16
|
* ingress mapping (mention stripping, stable event-id derivation, real-user
|
package/dist/codec.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../src/codec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D
|
|
1
|
+
{"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../src/codec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,yDAAyD;IACzD,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;CAC1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-channel.d.ts","sourceRoot":"","sources":["../src/create-channel.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"create-channel.d.ts","sourceRoot":"","sources":["../src/create-channel.ts"],"names":[],"mappings":"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"}
|
package/dist/create-channel.js
CHANGED
|
@@ -44,19 +44,17 @@ function msgFromTurn(turn) {
|
|
|
44
44
|
deliveryId: turn.deliveryId,
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
|
-
/** Resolve the provider that produced an event without changing adapter identity. */
|
|
48
|
-
function ingressPlatform(adapter, event) {
|
|
49
|
-
return event.platform ?? adapter.platform;
|
|
50
|
-
}
|
|
51
47
|
/**
|
|
52
|
-
* Enforce
|
|
53
|
-
*
|
|
54
|
-
*
|
|
48
|
+
* Enforce V1 Intelligence Channel exclusivity: an Intelligence Channel adapter
|
|
49
|
+
* (`intelligenceAdapter`) must be the only adapter on a Channel. Channel and direct delivery are
|
|
50
|
+
* alternative modes on a Channel — Intelligence holds the platform creds, or
|
|
51
|
+
* the runtime does, never both.
|
|
55
52
|
*/
|
|
56
53
|
function assertExclusive(adapters) {
|
|
57
54
|
if (adapters.some((a) => a.__intelligenceChannel) && adapters.length > 1) {
|
|
58
|
-
throw new Error("
|
|
59
|
-
"
|
|
55
|
+
throw new Error("intelligenceAdapter() must be the only adapter on a Channel — Channel and " +
|
|
56
|
+
"direct delivery are alternative modes. Use intelligenceAdapter() OR " +
|
|
57
|
+
"direct adapters (slack/discord/...), not both.");
|
|
60
58
|
}
|
|
61
59
|
}
|
|
62
60
|
/**
|
|
@@ -131,7 +129,6 @@ export function createChannel(opts) {
|
|
|
131
129
|
}
|
|
132
130
|
const deps = {
|
|
133
131
|
adapter,
|
|
134
|
-
platform: extras?.platform,
|
|
135
132
|
replyTarget,
|
|
136
133
|
conversationKey,
|
|
137
134
|
registry,
|
|
@@ -166,7 +163,6 @@ export function createChannel(opts) {
|
|
|
166
163
|
const store = backend;
|
|
167
164
|
return {
|
|
168
165
|
async onTurn(turn) {
|
|
169
|
-
const platform = ingressPlatform(adapter, turn);
|
|
170
166
|
const lockKey = `turn:${turn.conversationKey}`;
|
|
171
167
|
const acquired = await store.lock.acquire(lockKey, {
|
|
172
168
|
ttlMs: cfg.lockTtl ?? 60_000,
|
|
@@ -186,13 +182,13 @@ export function createChannel(opts) {
|
|
|
186
182
|
// that throws still leaves its event marked seen — dedup drops duplicate DELIVERIES,
|
|
187
183
|
// it is not retry-of-failed-turns.)
|
|
188
184
|
if (turn.eventId && !adapter.skipIngressDedup) {
|
|
189
|
-
const dupKey = `evt:${platform}:${turn.eventId}`;
|
|
185
|
+
const dupKey = `evt:${adapter.platform}:${turn.eventId}`;
|
|
190
186
|
try {
|
|
191
187
|
if (await store.dedup.seen(dupKey, cfg.dedupTtl ?? 300_000))
|
|
192
188
|
return;
|
|
193
189
|
}
|
|
194
190
|
catch (err) {
|
|
195
|
-
console.warn(`[channel] dedup check failed for ${platform}; processing without dedup`, err);
|
|
191
|
+
console.warn(`[channel] dedup check failed for ${adapter.platform}; processing without dedup`, err);
|
|
196
192
|
}
|
|
197
193
|
}
|
|
198
194
|
// Resolve cross-platform identity key (if configured) and stamp it on
|
|
@@ -203,18 +199,18 @@ export function createChannel(opts) {
|
|
|
203
199
|
if (cfg.identity) {
|
|
204
200
|
try {
|
|
205
201
|
const resolved = await cfg.identity({
|
|
206
|
-
adapter: platform,
|
|
202
|
+
adapter: adapter.platform,
|
|
207
203
|
author: turn.user ?? { id: "" },
|
|
208
204
|
message: msgFromTurn(turn),
|
|
209
205
|
});
|
|
210
206
|
userKey = resolved ?? undefined;
|
|
211
207
|
}
|
|
212
208
|
catch (err) {
|
|
213
|
-
console.warn(`[channel] identity resolution failed for ${platform}; continuing without userKey`, err);
|
|
209
|
+
console.warn(`[channel] identity resolution failed for ${adapter.platform}; continuing without userKey`, err);
|
|
214
210
|
}
|
|
215
211
|
}
|
|
216
212
|
const message = { ...msgFromTurn(turn), userKey };
|
|
217
|
-
const thread = makeThread(adapter, turn.replyTarget, turn.conversationKey, {
|
|
213
|
+
const thread = makeThread(adapter, turn.replyTarget, turn.conversationKey, { userKey, message });
|
|
218
214
|
// v1 routing: there is no turn `kind`, so prefer mention handlers; if
|
|
219
215
|
// none are registered, fall back to message handlers. (The reference
|
|
220
216
|
// example registers identical handlers on both, so this avoids
|
|
@@ -230,19 +226,18 @@ export function createChannel(opts) {
|
|
|
230
226
|
}
|
|
231
227
|
},
|
|
232
228
|
async onInteraction(evt) {
|
|
233
|
-
const platform = ingressPlatform(adapter, evt);
|
|
234
229
|
// Dedup guard: drop duplicate deliveries of the same event within the TTL window.
|
|
235
230
|
if (evt.eventId && !adapter.skipIngressDedup) {
|
|
236
|
-
const dupKey = `evt:${platform}:${evt.eventId}`;
|
|
231
|
+
const dupKey = `evt:${adapter.platform}:${evt.eventId}`;
|
|
237
232
|
try {
|
|
238
233
|
if (await store.dedup.seen(dupKey, cfg.dedupTtl ?? 300_000))
|
|
239
234
|
return;
|
|
240
235
|
}
|
|
241
236
|
catch (err) {
|
|
242
|
-
console.warn(`[channel] dedup check failed for ${platform}; processing without dedup`, err);
|
|
237
|
+
console.warn(`[channel] dedup check failed for ${adapter.platform}; processing without dedup`, err);
|
|
243
238
|
}
|
|
244
239
|
}
|
|
245
|
-
const thread = makeThread(adapter, evt.replyTarget, evt.conversationKey
|
|
240
|
+
const thread = makeThread(adapter, evt.replyTarget, evt.conversationKey);
|
|
246
241
|
const user = evt.user ?? { id: "" };
|
|
247
242
|
const ctx = {
|
|
248
243
|
thread,
|
|
@@ -250,12 +245,12 @@ export function createChannel(opts) {
|
|
|
250
245
|
text: "",
|
|
251
246
|
user,
|
|
252
247
|
ref: evt.messageRef ?? { id: "" },
|
|
253
|
-
platform,
|
|
248
|
+
platform: adapter.platform,
|
|
254
249
|
},
|
|
255
250
|
action: { id: evt.id, value: evt.value },
|
|
256
251
|
values: {},
|
|
257
252
|
user,
|
|
258
|
-
platform,
|
|
253
|
+
platform: adapter.platform,
|
|
259
254
|
};
|
|
260
255
|
const openModal = makeOpenModal(adapter, evt.replyTarget, evt.triggerId);
|
|
261
256
|
if (openModal)
|
|
@@ -289,22 +284,21 @@ export function createChannel(opts) {
|
|
|
289
284
|
}
|
|
290
285
|
},
|
|
291
286
|
async onCommand(cmd) {
|
|
292
|
-
const platform = ingressPlatform(adapter, cmd);
|
|
293
287
|
// Dedup guard: drop duplicate deliveries of the same event within the TTL window.
|
|
294
288
|
if (cmd.eventId && !adapter.skipIngressDedup) {
|
|
295
|
-
const dupKey = `evt:${platform}:${cmd.eventId}`;
|
|
289
|
+
const dupKey = `evt:${adapter.platform}:${cmd.eventId}`;
|
|
296
290
|
try {
|
|
297
291
|
if (await store.dedup.seen(dupKey, cfg.dedupTtl ?? 300_000))
|
|
298
292
|
return;
|
|
299
293
|
}
|
|
300
294
|
catch (err) {
|
|
301
|
-
console.warn(`[channel] dedup check failed for ${platform}; processing without dedup`, err);
|
|
295
|
+
console.warn(`[channel] dedup check failed for ${adapter.platform}; processing without dedup`, err);
|
|
302
296
|
}
|
|
303
297
|
}
|
|
304
298
|
const command = commandHandlers.get(normalizeCommandName(cmd.command));
|
|
305
299
|
if (!command)
|
|
306
300
|
return; // unregistered command → skip
|
|
307
|
-
const thread = makeThread(adapter, cmd.replyTarget, cmd.conversationKey
|
|
301
|
+
const thread = makeThread(adapter, cmd.replyTarget, cmd.conversationKey);
|
|
308
302
|
// Resolve typed options from any structured args the surface supplied
|
|
309
303
|
// (e.g. Discord); text-only surfaces (Slack) leave `options` empty and
|
|
310
304
|
// the handler reads `text`.
|
|
@@ -320,7 +314,7 @@ export function createChannel(opts) {
|
|
|
320
314
|
text: cmd.text,
|
|
321
315
|
options,
|
|
322
316
|
user: cmd.user,
|
|
323
|
-
platform,
|
|
317
|
+
platform: cmd.platform,
|
|
324
318
|
};
|
|
325
319
|
const openModal = makeOpenModal(adapter, cmd.replyTarget, cmd.triggerId);
|
|
326
320
|
if (openModal)
|
|
@@ -331,19 +325,23 @@ export function createChannel(opts) {
|
|
|
331
325
|
// The adapter has already applied its static defaults (greeting /
|
|
332
326
|
// prompts) before emitting this, so handlers layer on top and never
|
|
333
327
|
// race. Zero handlers → no-op.
|
|
334
|
-
const thread = makeThread(adapter, evt.replyTarget, evt.conversationKey
|
|
328
|
+
const thread = makeThread(adapter, evt.replyTarget, evt.conversationKey);
|
|
335
329
|
for (const h of threadStartedHandlers)
|
|
336
330
|
await h({ thread, user: evt.user });
|
|
337
331
|
},
|
|
338
332
|
async onReaction(evt) {
|
|
339
|
-
// Normalize by
|
|
340
|
-
//
|
|
341
|
-
|
|
333
|
+
// Normalize by the reaction's SOURCE platform: direct adapters omit
|
|
334
|
+
// `evt.platform`, so it falls back to `adapter.platform`; the managed
|
|
335
|
+
// path (adapter.platform === "intelligence") sets `evt.platform` to the
|
|
336
|
+
// originating provider (e.g. "teams"/"slack") so central normalization
|
|
337
|
+
// still runs. Only normalize when that platform is one the emoji table
|
|
338
|
+
// knows; otherwise the raw token passes through unchanged.
|
|
339
|
+
const sourcePlatform = evt.platform ?? adapter.platform;
|
|
342
340
|
const normalized = isEmojiPlatform(sourcePlatform)
|
|
343
341
|
? normalizeEmoji(evt.rawEmoji, sourcePlatform)
|
|
344
342
|
: undefined;
|
|
345
343
|
const value = normalized ?? evt.rawEmoji;
|
|
346
|
-
const thread = makeThread(adapter, evt.replyTarget, evt.conversationKey
|
|
344
|
+
const thread = makeThread(adapter, evt.replyTarget, evt.conversationKey);
|
|
347
345
|
// Prefer the adapter's update-capable ref; fall back to the bare id.
|
|
348
346
|
const messageRef = evt.messageRef ?? { id: evt.messageId };
|
|
349
347
|
const reactionEvt = {
|
|
@@ -385,9 +383,7 @@ export function createChannel(opts) {
|
|
|
385
383
|
if (!handler)
|
|
386
384
|
return; // unregistered → closes
|
|
387
385
|
const thread = evt.conversationKey !== undefined && evt.replyTarget !== undefined
|
|
388
|
-
? makeThread(adapter, evt.replyTarget, evt.conversationKey
|
|
389
|
-
platform: evt.platform,
|
|
390
|
-
})
|
|
386
|
+
? makeThread(adapter, evt.replyTarget, evt.conversationKey)
|
|
391
387
|
: undefined;
|
|
392
388
|
const result = await handler({
|
|
393
389
|
callbackId: evt.callbackId,
|
|
@@ -112,81 +112,6 @@ describe("createChannel", () => {
|
|
|
112
112
|
content: "Say my name",
|
|
113
113
|
});
|
|
114
114
|
});
|
|
115
|
-
it("injects the inbound turn only into the first managed run in one handler", async () => {
|
|
116
|
-
const fake = new FakeAdapter();
|
|
117
|
-
Object.defineProperty(fake, "injectInboundTurnOnce", { value: true });
|
|
118
|
-
const agent = new FakeAgent();
|
|
119
|
-
const added = captureAddedMessages(agent);
|
|
120
|
-
const channel = createChannel({ adapters: [fake], agent: () => agent });
|
|
121
|
-
channel.onMention(async ({ thread }) => {
|
|
122
|
-
await thread.runAgent();
|
|
123
|
-
await thread.runAgent();
|
|
124
|
-
});
|
|
125
|
-
await channel.ɵruntime.start();
|
|
126
|
-
await fake.getSink().onTurn({
|
|
127
|
-
conversationKey: "c1",
|
|
128
|
-
replyTarget: {},
|
|
129
|
-
userText: "Use this once",
|
|
130
|
-
platform: "fake",
|
|
131
|
-
});
|
|
132
|
-
expect(agent.runAgentCalls).toBe(2);
|
|
133
|
-
expect(added).toEqual([
|
|
134
|
-
expect.objectContaining({
|
|
135
|
-
role: "user",
|
|
136
|
-
content: "Use this once",
|
|
137
|
-
}),
|
|
138
|
-
]);
|
|
139
|
-
});
|
|
140
|
-
it("wraps every local tool iteration in one managed lifecycle", async () => {
|
|
141
|
-
const fake = new FakeAdapter();
|
|
142
|
-
const canonicalToolEnds = [];
|
|
143
|
-
const lifecycleCalls = [];
|
|
144
|
-
fake.runAgentLifecycle = async (args) => {
|
|
145
|
-
lifecycleCalls.push(1);
|
|
146
|
-
const subscriber = {
|
|
147
|
-
onToolCallEndEvent({ event }) {
|
|
148
|
-
canonicalToolEnds.push(event.toolCallId);
|
|
149
|
-
},
|
|
150
|
-
};
|
|
151
|
-
return args.execute(subscriber);
|
|
152
|
-
};
|
|
153
|
-
const agent = new FakeAgent([
|
|
154
|
-
(subscriber) => {
|
|
155
|
-
subscriber.onToolCallEndEvent?.({
|
|
156
|
-
event: { toolCallId: "tool-1" },
|
|
157
|
-
toolCallName: "echo",
|
|
158
|
-
toolCallArgs: { value: "hello" },
|
|
159
|
-
});
|
|
160
|
-
},
|
|
161
|
-
() => undefined,
|
|
162
|
-
]);
|
|
163
|
-
const channel = createChannel({
|
|
164
|
-
adapters: [fake],
|
|
165
|
-
agent: () => agent,
|
|
166
|
-
tools: [
|
|
167
|
-
{
|
|
168
|
-
name: "echo",
|
|
169
|
-
description: "Return the input",
|
|
170
|
-
parameters: z.object({ value: z.string() }),
|
|
171
|
-
handler: ({ value }) => value,
|
|
172
|
-
},
|
|
173
|
-
],
|
|
174
|
-
});
|
|
175
|
-
channel.onMention(async ({ thread }) => {
|
|
176
|
-
await thread.runAgent();
|
|
177
|
-
});
|
|
178
|
-
await channel.ɵruntime.start();
|
|
179
|
-
await fake.getSink().onTurn({
|
|
180
|
-
conversationKey: "c1",
|
|
181
|
-
replyTarget: {},
|
|
182
|
-
userText: "Run the tool",
|
|
183
|
-
platform: "fake",
|
|
184
|
-
});
|
|
185
|
-
expect(lifecycleCalls).toHaveLength(1);
|
|
186
|
-
expect(agent.runAgentCalls).toBe(2);
|
|
187
|
-
expect(canonicalToolEnds).toEqual(["tool-1"]);
|
|
188
|
-
expect(agent.messages.some((message) => message.role === "tool" && message.toolCallId === "tool-1")).toBe(true);
|
|
189
|
-
});
|
|
190
115
|
it("does not duplicate an inbound message seeded by the conversation store", async () => {
|
|
191
116
|
const fake = new FakeAdapter();
|
|
192
117
|
const agent = new FakeAgent();
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ export { createChannel } from "./create-channel.js";
|
|
|
2
2
|
export type { Channel, CreateChannelOptions, ManagedChannelProvider, ChannelHandler, ThreadStartHandler, ReactionEvent, ReactionHandler, ModalSubmitEvent, ModalSubmitHandler, ModalCloseEvent, ModalCloseHandler, StoreConfig, LockConflictDecision, StatefulThread, ChannelComponent, } from "./create-channel.js";
|
|
3
3
|
export { Thread } from "./thread.js";
|
|
4
4
|
export type { ThreadDeps } from "./thread.js";
|
|
5
|
-
export type { PlatformAdapter, AdapterStartContext, RunRenderer, IngressSink, IncomingTurn, InteractionEvent, IncomingCommand, IncomingThreadStart, IncomingReaction, IncomingModalSubmit, IncomingModalClose, ModalSubmitResult, SurfaceCapabilities, ReplyTarget, ConversationStore, AgentSession, CapturedToolCall, CapturedInterrupt,
|
|
5
|
+
export type { PlatformAdapter, AdapterStartContext, RunRenderer, IngressSink, IncomingTurn, InteractionEvent, IncomingCommand, IncomingThreadStart, IncomingReaction, IncomingModalSubmit, IncomingModalClose, ModalSubmitResult, SurfaceCapabilities, ReplyTarget, ConversationStore, AgentSession, CapturedToolCall, CapturedInterrupt, UserQuery, NativePayload, } from "./platform-adapter.js";
|
|
6
6
|
export { defineChannelCommand, normalizeCommandName, toCommandSpec, } from "./commands.js";
|
|
7
7
|
export type { ChannelCommand, CommandContext, CommandSpec, } from "./commands.js";
|
|
8
8
|
export { InMemoryActionStore } from "./action-store.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EACV,OAAO,EACP,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,WAAW,EACX,oBAAoB,EACpB,cAAc,EACd,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EACV,OAAO,EACP,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,WAAW,EACX,oBAAoB,EACpB,cAAc,EACd,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,SAAS,EACT,aAAa,GACd,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,aAAa,GACd,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,cAAc,EACd,cAAc,EACd,WAAW,GACZ,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1E,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAMtD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,kCAAkC,EAAE,MAAM,qCAAqC,CAAC;AAGzF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,YAAY,EACV,eAAe,EACf,QAAQ,EACR,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAKjD,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGhD,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAGpD,cAAc,yBAAyB,CAAC"}
|
|
@@ -2,7 +2,6 @@ import type { AgentSubscriber, AbstractAgent } from "@ag-ui/client";
|
|
|
2
2
|
import type { AgentContentPart, ChannelNode, EmojiValue, EphemeralResult, MessageRef, PlatformUser, ThreadMessage } from "@copilotkit/channels-ui";
|
|
3
3
|
import type { CommandSpec } from "./commands.js";
|
|
4
4
|
import type { StateStore } from "./state/state-store.js";
|
|
5
|
-
import type { AgentToolDescriptor, ContextEntry } from "./tools.js";
|
|
6
5
|
/** Opaque to the channel core — created by an adapter during ingress and passed back to post/createRunRenderer. */
|
|
7
6
|
export type ReplyTarget = unknown;
|
|
8
7
|
/** Opaque native payload produced by an adapter's render(). */
|
|
@@ -58,40 +57,6 @@ export interface RunRenderer {
|
|
|
58
57
|
*/
|
|
59
58
|
finish?(): Promise<void>;
|
|
60
59
|
}
|
|
61
|
-
/** Result of one public Channel agent invocation, including local tool steps. */
|
|
62
|
-
export interface ChannelAgentLoopResult {
|
|
63
|
-
iterations: number;
|
|
64
|
-
interrupted: boolean;
|
|
65
|
-
/**
|
|
66
|
-
* Managed renderer/provider failure deferred until the AgentRunner records
|
|
67
|
-
* its canonical terminal event. The managed lifecycle wrapper rejects the
|
|
68
|
-
* delivery with this error after the runner settles.
|
|
69
|
-
*/
|
|
70
|
-
deliveryError?: unknown;
|
|
71
|
-
}
|
|
72
|
-
/** Canonical thread/run ownership opened by the managed AgentRunner. */
|
|
73
|
-
export interface CanonicalRunIdentity {
|
|
74
|
-
threadId: string;
|
|
75
|
-
runId: string;
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Adapter hook for wrapping the whole local Channel tool loop in one canonical
|
|
79
|
-
* runner lifecycle. Managed Intelligence implements this; direct adapters omit
|
|
80
|
-
* it and keep calling the agent in process.
|
|
81
|
-
*/
|
|
82
|
-
export interface ChannelAgentLifecycleArgs {
|
|
83
|
-
replyTarget: ReplyTarget;
|
|
84
|
-
agent: AbstractAgent;
|
|
85
|
-
renderer: RunRenderer;
|
|
86
|
-
tools: readonly AgentToolDescriptor[];
|
|
87
|
-
context: readonly ContextEntry[];
|
|
88
|
-
/**
|
|
89
|
-
* True only for `Thread.resume()`. The resume value remains private to the
|
|
90
|
-
* agent command and never crosses the managed run-open boundary.
|
|
91
|
-
*/
|
|
92
|
-
isResume?: boolean;
|
|
93
|
-
execute(subscriber: AgentSubscriber, canonicalRun?: CanonicalRunIdentity): Promise<ChannelAgentLoopResult>;
|
|
94
|
-
}
|
|
95
60
|
/**
|
|
96
61
|
* Fields shared by every ingress event routed through the {@link IngressSink}:
|
|
97
62
|
* the conversation it belongs to, the opaque target to reply on, and the user
|
|
@@ -101,11 +66,6 @@ export interface IngressEventBase {
|
|
|
101
66
|
conversationKey: string;
|
|
102
67
|
replyTarget: ReplyTarget;
|
|
103
68
|
user?: PlatformUser;
|
|
104
|
-
/**
|
|
105
|
-
* Provider that produced this event when it differs from the transport
|
|
106
|
-
* adapter identity. Multiplexing adapters set it per event.
|
|
107
|
-
*/
|
|
108
|
-
platform?: string;
|
|
109
69
|
}
|
|
110
70
|
/**
|
|
111
71
|
* Idempotency ids carried by turn/command/interaction ingress. Set on the
|
|
@@ -181,6 +141,15 @@ export interface IncomingReaction extends IngressEventBase {
|
|
|
181
141
|
messageRef?: MessageRef;
|
|
182
142
|
/** Containing thread/conversation id, when distinct from the message. */
|
|
183
143
|
threadId?: string;
|
|
144
|
+
/**
|
|
145
|
+
* Source provider a managed delivery originated from (e.g. `"teams"`,
|
|
146
|
+
* `"slack"`). Direct adapters omit it — core then normalizes by
|
|
147
|
+
* {@link PlatformAdapter.platform}. The Intelligence adapter (whose own
|
|
148
|
+
* `platform` is `"intelligence"`, not an emoji platform) sets it to the
|
|
149
|
+
* delivery's source provider so central normalization runs on the managed
|
|
150
|
+
* path.
|
|
151
|
+
*/
|
|
152
|
+
readonly platform?: string;
|
|
184
153
|
/** Native payload. */
|
|
185
154
|
raw: unknown;
|
|
186
155
|
}
|
|
@@ -236,13 +205,6 @@ export interface UserQuery {
|
|
|
236
205
|
/** A resolved agent session for a conversation (the adapter may build the agent's history from its own state). */
|
|
237
206
|
export interface AgentSession {
|
|
238
207
|
agent: AbstractAgent;
|
|
239
|
-
/**
|
|
240
|
-
* Optional exclusive-session release hook.
|
|
241
|
-
*
|
|
242
|
-
* Managed adapters use it when an application supplied one mutable agent
|
|
243
|
-
* instance for more than one canonical thread.
|
|
244
|
-
*/
|
|
245
|
-
release?(): void | Promise<void>;
|
|
246
208
|
}
|
|
247
209
|
/** Adapter-owned conversation state; the adapter resolves (or creates) the agent session for a conversation. */
|
|
248
210
|
export interface ConversationStore {
|
|
@@ -276,21 +238,6 @@ export interface PlatformAdapter {
|
|
|
276
238
|
stream(target: ReplyTarget, chunks: AsyncIterable<string>): Promise<MessageRef>;
|
|
277
239
|
delete(ref: MessageRef): Promise<void>;
|
|
278
240
|
createRunRenderer(target: ReplyTarget): RunRenderer;
|
|
279
|
-
/**
|
|
280
|
-
* Optional synchronous preflight for a public `Thread.runAgent()` call.
|
|
281
|
-
*
|
|
282
|
-
* Surface-policy rejections happen before delivery-operation tracking so a
|
|
283
|
-
* handler may catch them and use a supported fallback without failing the
|
|
284
|
-
* containing delivery.
|
|
285
|
-
*/
|
|
286
|
-
assertRunAgentSupported?(target: ReplyTarget): void;
|
|
287
|
-
runAgentLifecycle?(args: ChannelAgentLifecycleArgs): Promise<ChannelAgentLoopResult>;
|
|
288
|
-
/**
|
|
289
|
-
* Optional delivery-lifecycle hook. {@link Thread} invokes this synchronously
|
|
290
|
-
* when a public operation starts so a managed transport can keep the delivery
|
|
291
|
-
* open even when a handler intentionally does not await that operation.
|
|
292
|
-
*/
|
|
293
|
-
trackThreadOperation?<T>(target: ReplyTarget, operation: () => Promise<T>): Promise<T>;
|
|
294
241
|
decodeInteraction(raw: unknown): InteractionEvent | undefined;
|
|
295
242
|
lookupUser(q: UserQuery): Promise<PlatformUser | undefined>;
|
|
296
243
|
readonly conversationStore: ConversationStore;
|
|
@@ -310,8 +257,6 @@ export interface PlatformAdapter {
|
|
|
310
257
|
* a legitimate retry.
|
|
311
258
|
*/
|
|
312
259
|
readonly skipIngressDedup?: boolean;
|
|
313
|
-
/** Inject the implicit inbound turn into only the first run in one handler. */
|
|
314
|
-
readonly injectInboundTurnOnce?: boolean;
|
|
315
260
|
/**
|
|
316
261
|
* Optional conversation-history read. Backs the capability-gated
|
|
317
262
|
* `Thread.getMessages()`; adapters that can't read history simply omit this,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform-adapter.d.ts","sourceRoot":"","sources":["../src/platform-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,KAAK,EACV,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,eAAe,EACf,UAAU,EACV,YAAY,EACZ,aAAa,EACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"platform-adapter.d.ts","sourceRoot":"","sources":["../src/platform-adapter.ts"],"names":[],"mappings":"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"}
|
package/dist/run-loop.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { AbstractAgent
|
|
2
|
-
import type { RunRenderer, CapturedToolCall, CapturedInterrupt
|
|
1
|
+
import type { AbstractAgent } from "@ag-ui/client";
|
|
2
|
+
import type { RunRenderer, CapturedToolCall, CapturedInterrupt } from "./platform-adapter.js";
|
|
3
3
|
import type { ChannelTool, ChannelToolContext, AgentToolDescriptor, ContextEntry } from "./tools.js";
|
|
4
4
|
export interface RunLoopArgs {
|
|
5
5
|
agent: AbstractAgent;
|
|
@@ -18,28 +18,7 @@ export interface RunLoopArgs {
|
|
|
18
18
|
initialResume?: {
|
|
19
19
|
resume: unknown;
|
|
20
20
|
};
|
|
21
|
-
/** Subscriber used for each underlying agent step. Defaults to the renderer. */
|
|
22
|
-
subscriber?: AgentSubscriber;
|
|
23
|
-
/**
|
|
24
|
-
* Canonical identity for a managed outer run. When set, inner agent lifecycle
|
|
25
|
-
* events stay private to each tool-loop step and this function emits one
|
|
26
|
-
* lifecycle around the whole loop.
|
|
27
|
-
*/
|
|
28
|
-
canonicalRun?: CanonicalRunIdentity;
|
|
29
21
|
}
|
|
30
|
-
interface SubscriberFanoutOptions {
|
|
31
|
-
canonicalRun?: CanonicalRunIdentity;
|
|
32
|
-
onInnerRunError?: (event: RunErrorEvent) => void;
|
|
33
|
-
onRendererError?: (error: unknown) => void;
|
|
34
|
-
/** Stops provider callbacks after their first terminal delivery error. */
|
|
35
|
-
isRendererClosed?: () => boolean;
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Fan one agent event stream out to both the provider renderer and a canonical
|
|
39
|
-
* runner subscriber. The proxy covers every current and future subscriber
|
|
40
|
-
* callback without keeping a second callback-name registry in Channels.
|
|
41
|
-
*/
|
|
42
|
-
export declare function mergeAgentSubscribers(first: AgentSubscriber, second: AgentSubscriber, options?: SubscriberFanoutOptions): AgentSubscriber;
|
|
43
22
|
/**
|
|
44
23
|
* Drive the agent, executing frontend-tool calls and re-invoking until the
|
|
45
24
|
* agent stops calling them (or we hit the iteration cap). On a captured
|
|
@@ -47,7 +26,10 @@ export declare function mergeAgentSubscribers(first: AgentSubscriber, second: Ag
|
|
|
47
26
|
* and returns immediately ("ack-first") — `thread.resume` re-enters later
|
|
48
27
|
* with `initialResume` set.
|
|
49
28
|
*/
|
|
50
|
-
export declare function runAgentLoop(args: RunLoopArgs): Promise<
|
|
29
|
+
export declare function runAgentLoop(args: RunLoopArgs): Promise<{
|
|
30
|
+
iterations: number;
|
|
31
|
+
interrupted: boolean;
|
|
32
|
+
}>;
|
|
51
33
|
/**
|
|
52
34
|
* If the agent's latest message isn't already the assistant message that
|
|
53
35
|
* issued these tool calls, append one. AG-UI's agent middleware *should*
|
|
@@ -56,5 +38,4 @@ export declare function runAgentLoop(args: RunLoopArgs): Promise<ChannelAgentLoo
|
|
|
56
38
|
*/
|
|
57
39
|
export declare function ensureAssistantToolCallMessage(agent: AbstractAgent, calls: ReadonlyArray<CapturedToolCall>): void;
|
|
58
40
|
export declare function pushToolResult(agent: AbstractAgent, toolCallId: string, content: string): void;
|
|
59
|
-
export {};
|
|
60
41
|
//# sourceMappingURL=run-loop.d.ts.map
|
package/dist/run-loop.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-loop.d.ts","sourceRoot":"","sources":["../src/run-loop.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run-loop.d.ts","sourceRoot":"","sources":["../src/run-loop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,EACV,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EACV,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACb,MAAM,YAAY,CAAC;AAGpB,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,WAAW,CAAC;IACtB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAChC,eAAe,EAAE,mBAAmB,EAAE,CAAC;IACvC,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,sDAAsD;IACtD,WAAW,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,kBAAkB,CAAC;IAC5D,sFAAsF;IACtF,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACzE,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC;IAC1B,8CAA8C;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wEAAwE;IACxE,aAAa,CAAC,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;CACrC;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,CAAC,CAsEvD;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC,GACrC,IAAI,CA4BN;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GACd,IAAI,CAQN"}
|