@cuylabs/agent-channel-teams 7.1.0 → 7.2.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/README.md +7 -7
- package/dist/{chunk-MBDHSFBF.js → chunk-IM63UBA3.js} +2 -2
- package/dist/index.d.ts +4 -4
- package/dist/index.js +4 -4
- package/dist/{proactive-DF5XvDLJ.d.ts → proactive-CYBE0Mw-.d.ts} +2 -2
- package/dist/proactive.d.ts +3 -3
- package/dist/proactive.js +1 -1
- package/docs/README.md +1 -1
- package/docs/architecture.md +5 -5
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# @cuylabs/agent-channel-teams
|
|
2
2
|
|
|
3
|
-
Teams-native channel features for `@cuylabs/agent-core`, layered above `@cuylabs/
|
|
3
|
+
Teams-native channel features for `@cuylabs/agent-core`, layered above `@cuylabs/channel-m365-agent-core`.
|
|
4
4
|
|
|
5
|
-
This package exists because `
|
|
5
|
+
This package exists because `channel-m365-agent-core` is intentionally transport-first:
|
|
6
6
|
|
|
7
7
|
- it is the right layer for ordinary message turns over the Microsoft 365 Activity Protocol
|
|
8
8
|
- it is not the right layer for every Teams-specific surface
|
|
@@ -17,7 +17,7 @@ This package exists because `agent-channel-m365` is intentionally transport-firs
|
|
|
17
17
|
Teams
|
|
18
18
|
-> @microsoft/agents-hosting
|
|
19
19
|
-> @cuylabs/agent-channel-teams
|
|
20
|
-
-> @cuylabs/
|
|
20
|
+
-> @cuylabs/channel-m365-agent-core
|
|
21
21
|
-> @cuylabs/agent-core
|
|
22
22
|
```
|
|
23
23
|
|
|
@@ -34,14 +34,14 @@ The value is:
|
|
|
34
34
|
|
|
35
35
|
## What It Does Not Do
|
|
36
36
|
|
|
37
|
-
- it does not replace `
|
|
37
|
+
- it does not replace `channel-m365-agent-core`
|
|
38
38
|
- it does not copy Microsoft's routing model
|
|
39
39
|
- it does not turn `agent-core` into a Teams-only framework
|
|
40
40
|
|
|
41
41
|
## Install
|
|
42
42
|
|
|
43
43
|
```bash
|
|
44
|
-
pnpm add @cuylabs/agent-channel-teams @cuylabs/
|
|
44
|
+
pnpm add @cuylabs/agent-channel-teams @cuylabs/channel-m365-agent-core @microsoft/agents-hosting @microsoft/agents-hosting-extensions-teams express
|
|
45
45
|
```
|
|
46
46
|
|
|
47
47
|
`agent-channel-teams` depends on `@microsoft/agents-hosting-extensions-teams`
|
|
@@ -53,7 +53,7 @@ contract, not an optional add-on.
|
|
|
53
53
|
`agent-channel-teams` is the Teams-native facade for the cuylabs stack:
|
|
54
54
|
|
|
55
55
|
- `agent-core` still owns the agentic loop, tools, and inference
|
|
56
|
-
- `
|
|
56
|
+
- `channel-m365-agent-core` still owns generic M365 transport and `TurnContext` bridging
|
|
57
57
|
- `agent-channel-teams` adds Teams-specific dispatch, typed metadata, and helper access
|
|
58
58
|
- Microsoft `AgentApplication` routing abstractions are intentionally not the public programming model here
|
|
59
59
|
|
|
@@ -398,7 +398,7 @@ The upstream `Proactive` class (which is bound to `AgentApplication`) is
|
|
|
398
398
|
intentionally not used; this package exposes the underlying
|
|
399
399
|
`Conversation` / builder primitives plus a thin wrapper around
|
|
400
400
|
`CloudAdapter.continueConversation`. See
|
|
401
|
-
[`@cuylabs/
|
|
401
|
+
[`@cuylabs/channel-m365-agent-core` README](https://github.com/cuylabs-ai/agent-channels-ts/tree/main/packages/channel-m365-agent-core#proactive-messaging)
|
|
402
402
|
for the M365-level details and telemetry coverage.
|
|
403
403
|
|
|
404
404
|
## Docs
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
// src/proactive.ts
|
|
6
6
|
import {
|
|
7
7
|
captureM365ConversationReference
|
|
8
|
-
} from "@cuylabs/
|
|
8
|
+
} from "@cuylabs/channel-m365-agent-core/proactive";
|
|
9
9
|
|
|
10
10
|
// src/teams-activity.ts
|
|
11
11
|
import {
|
|
@@ -313,7 +313,7 @@ import {
|
|
|
313
313
|
captureM365ConversationReference as captureM365ConversationReference2,
|
|
314
314
|
continueM365Conversation,
|
|
315
315
|
restoreM365ConversationReference
|
|
316
|
-
} from "@cuylabs/
|
|
316
|
+
} from "@cuylabs/channel-m365-agent-core/proactive";
|
|
317
317
|
function captureTeamsConversationReference(context) {
|
|
318
318
|
const conversation = captureM365ConversationReference(context);
|
|
319
319
|
const teams = parseTeamsActivity(context, { strictChannelData: false });
|
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { T as TeamsChannelOptions, a as TeamsChannelAdapter, b as TeamsActivityInfo, c as TeamsActivityKind } from './proactive-
|
|
2
|
-
export { d as TeamsActivityHandler, e as TeamsActivityHandlers, f as TeamsActorReference, g as TeamsCardActionHandlers, h as TeamsConfigHandlers, i as TeamsConversationUpdateHandlers, j as TeamsHandlerContext, k as TeamsHandlerDecision, l as TeamsInvokeResult, m as TeamsMeetingHandlers, n as TeamsMessageActivityHandlers, o as TeamsMessageExtensionHandlers, p as TeamsProactiveCapture, q as TeamsSurface, r as TeamsTabHandlers, s as TeamsTaskModuleHandlers, t as TeamsTurnPreparation, u as TeamsTurnRequestContext, v as captureTeamsConversationReference, w as createTeamsInvokeActivity, x as sendTeamsInvoke } from './proactive-
|
|
1
|
+
import { T as TeamsChannelOptions, a as TeamsChannelAdapter, b as TeamsActivityInfo, c as TeamsActivityKind } from './proactive-CYBE0Mw-.js';
|
|
2
|
+
export { d as TeamsActivityHandler, e as TeamsActivityHandlers, f as TeamsActorReference, g as TeamsCardActionHandlers, h as TeamsConfigHandlers, i as TeamsConversationUpdateHandlers, j as TeamsHandlerContext, k as TeamsHandlerDecision, l as TeamsInvokeResult, m as TeamsMeetingHandlers, n as TeamsMessageActivityHandlers, o as TeamsMessageExtensionHandlers, p as TeamsProactiveCapture, q as TeamsSurface, r as TeamsTabHandlers, s as TeamsTaskModuleHandlers, t as TeamsTurnPreparation, u as TeamsTurnRequestContext, v as captureTeamsConversationReference, w as createTeamsInvokeActivity, x as sendTeamsInvoke } from './proactive-CYBE0Mw-.js';
|
|
3
3
|
import { Server } from 'node:http';
|
|
4
4
|
import { AgentTurnSource, ApprovalRequest, HumanInputRequest, ApprovalAction, ApprovalRememberScope, HumanInputResponse } from '@cuylabs/agent-core';
|
|
5
5
|
import { AuthConfiguration, CloudAdapter, TurnContext } from '@microsoft/agents-hosting';
|
|
6
6
|
import { Application } from 'express';
|
|
7
|
-
import { M365AmbientTurnContext } from '@cuylabs/
|
|
7
|
+
import { M365AmbientTurnContext } from '@cuylabs/channel-m365-agent-core';
|
|
8
8
|
import { Attachment, Activity } from '@microsoft/agents-activity';
|
|
9
9
|
export { BatchFailedEntriesResponse, BatchOperationResponse, BatchOperationStateResponse, CancelOperationResponse, ChannelInfo, FeedbackLoopData, MeetingNotification, NotificationInfo, OnBehalfOf, TeamDetails, TeamInfo, TeamsAttachmentDownloader, TeamsChannelAccount, TeamsChannelData, TeamsChannelDataSettings, TeamsInfo, TeamsMeetingInfo, TeamsMember, TeamsPagedMembersResult, TenantInfo, parseTeamsChannelData } from '@microsoft/agents-hosting-extensions-teams';
|
|
10
|
-
export { Conversation, ConversationBuilder, ConversationClaims, ConversationReference, ConversationReferenceBuilder, CreateConversationOptions, CreateConversationOptionsBuilder, M365ConversationInput, M365ConversationRecord, ProactiveIdentity, captureM365ConversationReference, continueM365Conversation, restoreM365ConversationReference } from '@cuylabs/
|
|
10
|
+
export { Conversation, ConversationBuilder, ConversationClaims, ConversationReference, ConversationReferenceBuilder, CreateConversationOptions, CreateConversationOptionsBuilder, M365ConversationInput, M365ConversationRecord, ProactiveIdentity, captureM365ConversationReference, continueM365Conversation, restoreM365ConversationReference } from '@cuylabs/channel-m365-agent-core/proactive';
|
|
11
11
|
|
|
12
12
|
declare function createTeamsChannelAdapter(options: TeamsChannelOptions): TeamsChannelAdapter;
|
|
13
13
|
|
package/dist/index.js
CHANGED
|
@@ -32,7 +32,7 @@ import {
|
|
|
32
32
|
parseTeamsActivity,
|
|
33
33
|
parseTeamsActivitySafe,
|
|
34
34
|
restoreM365ConversationReference
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-IM63UBA3.js";
|
|
36
36
|
import {
|
|
37
37
|
TeamsAttachmentDownloader,
|
|
38
38
|
TeamsInfo,
|
|
@@ -44,7 +44,7 @@ import {
|
|
|
44
44
|
createM365ChannelAdapter,
|
|
45
45
|
extractUserIdentity,
|
|
46
46
|
runWithM365TurnContext
|
|
47
|
-
} from "@cuylabs/
|
|
47
|
+
} from "@cuylabs/channel-m365-agent-core";
|
|
48
48
|
import { ActivityTypes as ActivityTypes2 } from "@microsoft/agents-activity";
|
|
49
49
|
|
|
50
50
|
// src/invoke.ts
|
|
@@ -405,7 +405,7 @@ async function* streamAgentWithTeamsContext(ambient, source, sessionId, message,
|
|
|
405
405
|
import {
|
|
406
406
|
adaptJwtMiddleware,
|
|
407
407
|
processWithAdapter
|
|
408
|
-
} from "@cuylabs/
|
|
408
|
+
} from "@cuylabs/channel-m365-agent-core/express-compat";
|
|
409
409
|
async function mountTeamsAgent(source, options = {}) {
|
|
410
410
|
const expressModule = await import("express");
|
|
411
411
|
const hostingModule = await import("@microsoft/agents-hosting");
|
|
@@ -469,7 +469,7 @@ function resolvePort(port) {
|
|
|
469
469
|
import {
|
|
470
470
|
currentM365TurnContext,
|
|
471
471
|
runWithM365TurnContext as runWithM365TurnContext2
|
|
472
|
-
} from "@cuylabs/
|
|
472
|
+
} from "@cuylabs/channel-m365-agent-core";
|
|
473
473
|
function readTeamsContext(context) {
|
|
474
474
|
const payload = context?.context;
|
|
475
475
|
if (!payload || typeof payload !== "object") return void 0;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TurnContext } from '@microsoft/agents-hosting';
|
|
2
|
-
import { Conversation } from '@cuylabs/
|
|
2
|
+
import { Conversation } from '@cuylabs/channel-m365-agent-core/proactive';
|
|
3
3
|
import { AgentTurnSource, AgentEvent } from '@cuylabs/agent-core';
|
|
4
|
-
import { M365ChannelOptions, M365TurnRequestContext, M365TurnPreparation, M365UserIdentity, M365ChannelAdapter } from '@cuylabs/
|
|
4
|
+
import { M365ChannelOptions, M365TurnRequestContext, M365TurnPreparation, M365UserIdentity, M365ChannelAdapter } from '@cuylabs/channel-m365-agent-core';
|
|
5
5
|
import { TeamsChannelData } from '@microsoft/agents-hosting-extensions-teams';
|
|
6
6
|
import { Activity } from '@microsoft/agents-activity';
|
|
7
7
|
|
package/dist/proactive.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import '@microsoft/agents-hosting';
|
|
2
|
-
export { Conversation, ConversationBuilder, ConversationClaims, ConversationReference, ConversationReferenceBuilder, CreateConversationOptions, CreateConversationOptionsBuilder, M365ConversationInput, M365ConversationRecord, ProactiveIdentity, captureM365ConversationReference, continueM365Conversation, restoreM365ConversationReference } from '@cuylabs/
|
|
3
|
-
export { p as TeamsProactiveCapture, v as captureTeamsConversationReference } from './proactive-
|
|
2
|
+
export { Conversation, ConversationBuilder, ConversationClaims, ConversationReference, ConversationReferenceBuilder, CreateConversationOptions, CreateConversationOptionsBuilder, M365ConversationInput, M365ConversationRecord, ProactiveIdentity, captureM365ConversationReference, continueM365Conversation, restoreM365ConversationReference } from '@cuylabs/channel-m365-agent-core/proactive';
|
|
3
|
+
export { p as TeamsProactiveCapture, v as captureTeamsConversationReference } from './proactive-CYBE0Mw-.js';
|
|
4
4
|
import '@cuylabs/agent-core';
|
|
5
|
-
import '@cuylabs/
|
|
5
|
+
import '@cuylabs/channel-m365-agent-core';
|
|
6
6
|
import '@microsoft/agents-hosting-extensions-teams';
|
|
7
7
|
import '@microsoft/agents-activity';
|
package/dist/proactive.js
CHANGED
package/docs/README.md
CHANGED
|
@@ -8,7 +8,7 @@ instead of adopting Microsoft `AgentApplication`.
|
|
|
8
8
|
|
|
9
9
|
| Document | Purpose |
|
|
10
10
|
| -------------------------------------- | -------------------------------------------------------------------------------------- |
|
|
11
|
-
| [architecture.md](./architecture.md) | Layering between `agent-core`, `
|
|
11
|
+
| [architecture.md](./architecture.md) | Layering between `agent-core`, `channel-m365-agent-core`, and `agent-channel-teams` |
|
|
12
12
|
| [handler-model.md](./handler-model.md) | Handler groups, meeting routing, invoke flows, and `onTurn` middleware |
|
|
13
13
|
| [teams-helpers.md](./teams-helpers.md) | `TeamsInfo`, typed channel data, safe DTOs, and when to use the `./extensions` subpath |
|
|
14
14
|
|
package/docs/architecture.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Teams Bridge Architecture
|
|
2
2
|
|
|
3
3
|
`@cuylabs/agent-channel-teams` is the Teams-native facade that sits on top of
|
|
4
|
-
`@cuylabs/
|
|
4
|
+
`@cuylabs/channel-m365-agent-core`.
|
|
5
5
|
|
|
6
6
|
It exists so you can add Teams concepts such as meeting events, message
|
|
7
7
|
extensions, task modules, typed channel data, and Teams helper APIs without
|
|
@@ -12,7 +12,7 @@ moving your app to Microsoft `AgentApplication` as the runtime model.
|
|
|
12
12
|
| Layer | Package | Responsibility |
|
|
13
13
|
| ------------------- | -------------------------------------------- | ----------------------------------------------------------------------------------- |
|
|
14
14
|
| Execution | `@cuylabs/agent-core` | Agentic loop, tools, sessions, inference, middleware |
|
|
15
|
-
| Generic transport | `@cuylabs/
|
|
15
|
+
| Generic transport | `@cuylabs/channel-m365-agent-core` | Activity Protocol transport, `TurnContext` bridge, session mapping, event streaming |
|
|
16
16
|
| Teams-native facade | `@cuylabs/agent-channel-teams` | Teams parsing, Teams handlers, Teams response builders, Teams helper bridge |
|
|
17
17
|
| SDK helpers | `@microsoft/agents-hosting-extensions-teams` | Teams REST helpers, typed channel data, DTOs |
|
|
18
18
|
|
|
@@ -44,14 +44,14 @@ model:
|
|
|
44
44
|
```text
|
|
45
45
|
Teams
|
|
46
46
|
-> @microsoft/agents-hosting
|
|
47
|
-
-> @cuylabs/
|
|
47
|
+
-> @cuylabs/channel-m365-agent-core
|
|
48
48
|
-> @cuylabs/agent-channel-teams
|
|
49
49
|
-> @cuylabs/agent-core
|
|
50
50
|
```
|
|
51
51
|
|
|
52
52
|
## What `agent-channel-teams` Adds
|
|
53
53
|
|
|
54
|
-
Compared with `
|
|
54
|
+
Compared with `channel-m365-agent-core`, this package adds:
|
|
55
55
|
|
|
56
56
|
- Teams-specific parsed metadata via `parseTeamsActivity()`
|
|
57
57
|
- typed `channelData` projection into handler and `prepareTurn()` contexts
|
|
@@ -65,7 +65,7 @@ Compared with `agent-channel-m365`, this package adds:
|
|
|
65
65
|
This layering lets you:
|
|
66
66
|
|
|
67
67
|
- keep `agent-core` as the only execution engine
|
|
68
|
-
- keep `
|
|
68
|
+
- keep `channel-m365-agent-core` generic and reusable across Activity clients
|
|
69
69
|
- add Teams-specific capabilities without forking the runtime model
|
|
70
70
|
- consume Microsoft Teams helper code without leaking Microsoft routing
|
|
71
71
|
abstractions into app code
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cuylabs/agent-channel-teams",
|
|
3
|
-
"version": "7.1
|
|
4
|
-
"description": "Teams-native channel layer for @cuylabs/agent-core built on top of @cuylabs/
|
|
3
|
+
"version": "7.2.1",
|
|
4
|
+
"description": "Teams-native channel layer for @cuylabs/agent-core built on top of @cuylabs/channel-m365-agent-core",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
@@ -28,9 +28,9 @@
|
|
|
28
28
|
"README.md"
|
|
29
29
|
],
|
|
30
30
|
"dependencies": {
|
|
31
|
+
"@cuylabs/channel-m365-agent-core": "^0.3.0",
|
|
31
32
|
"@microsoft/agents-hosting-extensions-teams": "^1.5.3",
|
|
32
|
-
"@cuylabs/agent-
|
|
33
|
-
"@cuylabs/agent-core": "^7.1.0"
|
|
33
|
+
"@cuylabs/agent-core": "^7.2.1"
|
|
34
34
|
},
|
|
35
35
|
"peerDependencies": {
|
|
36
36
|
"@microsoft/agents-activity": "^1.5.0",
|