@copilotkit/channels-teams 0.1.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.
Files changed (84) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +141 -0
  3. package/dist/adapter.d.ts +133 -0
  4. package/dist/adapter.d.ts.map +1 -0
  5. package/dist/adapter.js +539 -0
  6. package/dist/adapter.test.d.ts +2 -0
  7. package/dist/adapter.test.d.ts.map +1 -0
  8. package/dist/adapter.test.js +202 -0
  9. package/dist/conversation-store.d.ts +36 -0
  10. package/dist/conversation-store.d.ts.map +1 -0
  11. package/dist/conversation-store.js +78 -0
  12. package/dist/conversation-store.test.d.ts +2 -0
  13. package/dist/conversation-store.test.d.ts.map +1 -0
  14. package/dist/conversation-store.test.js +72 -0
  15. package/dist/download-files.d.ts +62 -0
  16. package/dist/download-files.d.ts.map +1 -0
  17. package/dist/download-files.js +190 -0
  18. package/dist/download-files.test.d.ts +2 -0
  19. package/dist/download-files.test.d.ts.map +1 -0
  20. package/dist/download-files.test.js +96 -0
  21. package/dist/event-renderer.d.ts +23 -0
  22. package/dist/event-renderer.d.ts.map +1 -0
  23. package/dist/event-renderer.js +135 -0
  24. package/dist/event-renderer.test.d.ts +2 -0
  25. package/dist/event-renderer.test.d.ts.map +1 -0
  26. package/dist/event-renderer.test.js +95 -0
  27. package/dist/graph-files.d.ts +50 -0
  28. package/dist/graph-files.d.ts.map +1 -0
  29. package/dist/graph-files.js +126 -0
  30. package/dist/graph-files.test.d.ts +2 -0
  31. package/dist/graph-files.test.d.ts.map +1 -0
  32. package/dist/graph-files.test.js +114 -0
  33. package/dist/index.d.ts +20 -0
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/index.js +14 -0
  36. package/dist/interaction.d.ts +36 -0
  37. package/dist/interaction.d.ts.map +1 -0
  38. package/dist/interaction.js +35 -0
  39. package/dist/interaction.test.d.ts +2 -0
  40. package/dist/interaction.test.d.ts.map +1 -0
  41. package/dist/interaction.test.js +43 -0
  42. package/dist/listener.d.ts +26 -0
  43. package/dist/listener.d.ts.map +1 -0
  44. package/dist/listener.js +55 -0
  45. package/dist/listener.test.d.ts +2 -0
  46. package/dist/listener.test.d.ts.map +1 -0
  47. package/dist/listener.test.js +43 -0
  48. package/dist/message-stream.d.ts +52 -0
  49. package/dist/message-stream.d.ts.map +1 -0
  50. package/dist/message-stream.js +78 -0
  51. package/dist/message-stream.test.d.ts +2 -0
  52. package/dist/message-stream.test.d.ts.map +1 -0
  53. package/dist/message-stream.test.js +44 -0
  54. package/dist/render/adaptive-card.d.ts +43 -0
  55. package/dist/render/adaptive-card.d.ts.map +1 -0
  56. package/dist/render/adaptive-card.js +401 -0
  57. package/dist/render/adaptive-card.test.d.ts +2 -0
  58. package/dist/render/adaptive-card.test.d.ts.map +1 -0
  59. package/dist/render/adaptive-card.test.js +240 -0
  60. package/dist/render/auto-close.d.ts +27 -0
  61. package/dist/render/auto-close.d.ts.map +1 -0
  62. package/dist/render/auto-close.js +153 -0
  63. package/dist/render/auto-close.test.d.ts +2 -0
  64. package/dist/render/auto-close.test.d.ts.map +1 -0
  65. package/dist/render/auto-close.test.js +46 -0
  66. package/dist/render/budget.d.ts +38 -0
  67. package/dist/render/budget.d.ts.map +1 -0
  68. package/dist/render/budget.js +44 -0
  69. package/dist/render/budget.test.d.ts +2 -0
  70. package/dist/render/budget.test.d.ts.map +1 -0
  71. package/dist/render/budget.test.js +25 -0
  72. package/dist/render/markdown.d.ts +13 -0
  73. package/dist/render/markdown.d.ts.map +1 -0
  74. package/dist/render/markdown.js +121 -0
  75. package/dist/render/markdown.test.d.ts +2 -0
  76. package/dist/render/markdown.test.d.ts.map +1 -0
  77. package/dist/render/markdown.test.js +58 -0
  78. package/dist/sanitizing-http-agent.d.ts +35 -0
  79. package/dist/sanitizing-http-agent.d.ts.map +1 -0
  80. package/dist/sanitizing-http-agent.js +58 -0
  81. package/dist/types.d.ts +53 -0
  82. package/dist/types.d.ts.map +1 -0
  83. package/dist/types.js +1 -0
  84. package/package.json +67 -0
@@ -0,0 +1,53 @@
1
+ import type { TurnContext } from "@microsoft/agents-hosting";
2
+ import type { ConversationReference } from "@microsoft/agents-activity";
3
+ import type { FileDeliveryConfig } from "./download-files.js";
4
+ /**
5
+ * Stable per-conversation key. Teams gives every conversation (1:1 chat, group
6
+ * chat, or channel) a durable `conversation.id`, which is exactly the grain we
7
+ * want: one agent session per conversation.
8
+ */
9
+ export type ConversationKey = string;
10
+ /**
11
+ * Where a reply goes.
12
+ *
13
+ * Replies sent *inside* the originating turn use the live {@link TurnContext}
14
+ * (the simplest path, and the one the M365 Agents Playground exercises). The
15
+ * {@link ConversationReference} is captured alongside it so the same target can
16
+ * later drive proactive (out-of-turn) sends via
17
+ * `CloudAdapter.continueConversation`.
18
+ */
19
+ export interface TeamsReplyTarget {
20
+ conversationKey: ConversationKey;
21
+ reference: Partial<ConversationReference>;
22
+ /** Live turn context, present while replying within the originating activity. */
23
+ context?: TurnContext;
24
+ }
25
+ export interface TeamsAdapterOptions {
26
+ /**
27
+ * Port for the bot's `POST /api/messages` endpoint. Defaults to `3978`, the
28
+ * endpoint the M365 Agents Playground connects to.
29
+ */
30
+ port?: number;
31
+ /**
32
+ * Microsoft app (client) id. Omit for anonymous local development with the
33
+ * M365 Agents Playground; required to talk to real Teams via Azure Bot
34
+ * Service. Falls back to the `clientId` env var.
35
+ */
36
+ clientId?: string;
37
+ /** Microsoft client secret. Omit for anonymous local dev. Falls back to `clientSecret`. */
38
+ clientSecret?: string;
39
+ /** Microsoft tenant (directory) id. Omit for multi-tenant / anonymous. Falls back to `tenantId`. */
40
+ tenantId?: string;
41
+ /**
42
+ * Custom-event names treated as interrupts by the run renderer (captured for
43
+ * an `onInterrupt` handler). Defaults to `on_interrupt`, the name
44
+ * LangGraph's AG-UI adapter emits.
45
+ */
46
+ interruptEventNames?: ReadonlySet<string>;
47
+ /**
48
+ * Tunables for inbound file handling (size/count caps applied when a user
49
+ * uploads files). Defaults are sane; override only to widen or tighten them.
50
+ */
51
+ files?: FileDeliveryConfig;
52
+ }
53
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9D;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC;AAErC;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,eAAe,CAAC;IACjC,SAAS,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC1C,iFAAiF;IACjF,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oGAAoG;IACpG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1C;;;OAGG;IACH,KAAK,CAAC,EAAE,kBAAkB,CAAC;CAC5B"}
package/dist/types.js ADDED
@@ -0,0 +1 @@
1
+ export {};
package/package.json ADDED
@@ -0,0 +1,67 @@
1
+ {
2
+ "name": "@copilotkit/channels-teams",
3
+ "version": "0.1.0",
4
+ "description": "Microsoft Teams platform adapter for CopilotKit JSX channels (@copilotkit/channels).",
5
+ "license": "MIT",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/CopilotKit/CopilotKit.git",
9
+ "directory": "packages/channels-teams"
10
+ },
11
+ "homepage": "https://github.com/CopilotKit/CopilotKit",
12
+ "keywords": [
13
+ "ai",
14
+ "agent",
15
+ "bot",
16
+ "microsoft-teams",
17
+ "teams",
18
+ "adaptive-cards",
19
+ "m365-agents-sdk",
20
+ "copilotkit",
21
+ "ag-ui"
22
+ ],
23
+ "publishConfig": {
24
+ "access": "public"
25
+ },
26
+ "files": [
27
+ "dist"
28
+ ],
29
+ "type": "module",
30
+ "main": "./dist/index.js",
31
+ "types": "./dist/index.d.ts",
32
+ "exports": {
33
+ ".": {
34
+ "types": "./dist/index.d.ts",
35
+ "import": "./dist/index.js"
36
+ }
37
+ },
38
+ "dependencies": {
39
+ "@ag-ui/client": "0.0.57",
40
+ "@ag-ui/core": "0.0.57",
41
+ "@microsoft/agents-activity": "^1.5.3",
42
+ "@microsoft/agents-hosting": "^1.5.3",
43
+ "express": "^4.21.2",
44
+ "rxjs": "^7.8.1",
45
+ "zod": "^3.25.76",
46
+ "zod-to-json-schema": "^3.25.1",
47
+ "@copilotkit/channels": "~0.1.0",
48
+ "@copilotkit/channels-ui": "~0.1.0",
49
+ "@copilotkit/core": "^1.62.3",
50
+ "@copilotkit/shared": "^1.62.3"
51
+ },
52
+ "devDependencies": {
53
+ "@types/express": "^4.17.21",
54
+ "@types/node": "^22.10.0",
55
+ "typescript": "^5.6.3",
56
+ "vitest": "^4.1.3",
57
+ "@copilotkit/typescript-config": "^1.55.0-next.8"
58
+ },
59
+ "scripts": {
60
+ "build": "tsc -p tsconfig.json",
61
+ "check-types": "tsc --noEmit -p tsconfig.json && tsc --noEmit -p tsconfig.check.json",
62
+ "test": "vitest run",
63
+ "test:watch": "vitest",
64
+ "publint": "publint .",
65
+ "attw": "attw --pack . --profile esm-only"
66
+ }
67
+ }