Deprecate AI Libraries#588
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR deprecates the repository’s internal AI-related packages and shifts guidance toward using third-party SDKs directly, while also removing legacy AI example/template scaffolding that relied on the deprecated packages.
Changes:
- Marked
@microsoft/teams.ai,@microsoft/teams.openai,@microsoft/teams.mcp,@microsoft/teams.mcpclient, and@microsoft/teams.a2aas deprecated and added migration guidance in READMEs/entrypoints. - Removed AI/MCP-related TypeScript CLI templates and deleted the
examples/lightsexample app. - Updated root documentation and build configuration (Turbo) to reflect the new recommended examples/patterns.
Reviewed changes
Copilot reviewed 42 out of 48 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| turbo/generators/templates/examples/package.json.hbs | Removes @microsoft/teams.ai from newly generated example dependencies. |
| README.md | Reorganizes package listing to a “Deprecated Packages” section and updates example app references. |
| packages/openai/src/index.ts | Adds package-level deprecation notice in the entry point. |
| packages/openai/README.md | Adds prominent deprecation/migration banner. |
| packages/openai/package.json | Adds npm deprecated message for the package. |
| packages/cli/templates/typescript/mcpclient/tsup.config.js | Removes deprecated CLI template (mcpclient) build config. |
| packages/cli/templates/typescript/mcpclient/tsconfig.json | Removes deprecated CLI template (mcpclient) TS config. |
| packages/cli/templates/typescript/mcpclient/src/index.ts.hbs | Removes deprecated CLI template (mcpclient) source template. |
| packages/cli/templates/typescript/mcpclient/package.json.hbs | Removes deprecated CLI template (mcpclient) package template. |
| packages/cli/templates/typescript/mcpclient/appPackage/manifest.json.hbs | Removes deprecated CLI template (mcpclient) Teams manifest template. |
| packages/cli/templates/typescript/mcp/tsup.config.js | Removes deprecated CLI template (mcp) build config. |
| packages/cli/templates/typescript/mcp/tsconfig.json | Removes deprecated CLI template (mcp) TS config. |
| packages/cli/templates/typescript/mcp/src/index.ts.hbs | Removes deprecated CLI template (mcp) source template. |
| packages/cli/templates/typescript/mcp/package.json.hbs | Removes deprecated CLI template (mcp) package template. |
| packages/cli/templates/typescript/mcp/appPackage/manifest.json.hbs | Removes deprecated CLI template (mcp) Teams manifest template. |
| packages/cli/templates/typescript/ai/tsup.config.js | Removes deprecated CLI template (ai) build config. |
| packages/cli/templates/typescript/ai/tsconfig.json | Removes deprecated CLI template (ai) TS config. |
| packages/cli/templates/typescript/ai/src/index.ts | Removes deprecated CLI template (ai) source template. |
| packages/cli/templates/typescript/ai/package.json.hbs | Removes deprecated CLI template (ai) package template. |
| packages/cli/templates/typescript/ai/appPackage/manifest.json.hbs | Removes deprecated CLI template (ai) Teams manifest template. |
| packages/cli/templates/typescript/ai/AGENTS.md | Removes AI-template-specific agent guidance file. |
| packages/ai/src/index.ts | Adds package-level deprecation notice in the entry point. |
| packages/ai/README.md | Adds prominent deprecation/migration banner. |
| packages/ai/package.json | Adds npm deprecated message for the package. |
| external/mcpclient/src/index.ts | Adds package-level deprecation notice in the entry point. |
| external/mcpclient/README.md | Adds prominent deprecation/migration banner. |
| external/mcpclient/package.json | Adds npm deprecated message for the package. |
| external/mcp/src/index.ts | Adds package-level deprecation notice in the entry point. |
| external/mcp/README.md | Adds prominent deprecation/migration banner. |
| external/mcp/package.json | Adds npm deprecated message for the package. |
| external/a2a/src/index.ts | Adds package-level deprecation notice in the entry point. |
| external/a2a/README.md | Adds prominent deprecation/migration banner. |
| external/a2a/package.json | Adds npm deprecated message for the package. |
| examples/mcp-server/turbo.json | Drops build-time dependencies on deprecated packages from the example’s Turbo pipeline. |
| examples/lights/turbo.json | Removes legacy AI example build config (example deleted). |
| examples/lights/tsconfig.json | Removes legacy AI example TS config (example deleted). |
| examples/lights/src/index.ts | Removes legacy AI example implementation (example deleted). |
| examples/lights/README.md | Removes legacy AI example docs (example deleted). |
| examples/lights/package.json | Removes legacy AI example package definition (example deleted). |
| examples/lights/eslint.config.js | Removes legacy AI example lint config (example deleted). |
| examples/lights/CHANGELOG.md | Removes legacy AI example changelog (example deleted). |
| AGENTS_TEMPLATE.md | Removes top-level agent instructions template that referenced the deprecated AI setup. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
rido-min
approved these changes
May 21, 2026
7 tasks
corinagum
added a commit
that referenced
this pull request
May 27, 2026
## Summary
Brings `origin/main` into `release` for the **2.0.12** release. **No
carve-outs this time** — Quoted Replies is included.
`version.json`: `2.0.12-preview.{height}` → `2.0.12`.
Aligns with teams.py 2.0.12 (PR #442 already on PyPI / pending publish).
## What's in this release (delta from 2.0.11)
**Features**
- Quoted Replies + new quotes features — previously held back via the
2.0.11 carve-out (#576)
- SuggestedActionSubmitActivity for `suggestedAction/submit` invoke
(#591)
- Default targeted replies for targeted inbound messages (#592)
- Filter colliding keys before `Object.assign` in `ActivityContext`
(#596)
- Prompt Preview support (#536)
- A2A sample (#584)
- AI/MCPClient (#572)
- Allow passing custom HTTP client via `AppOptions`-equivalent
- Reactions API marked GA (#575), Rename `ReactionClient.remove()` →
`delete()` (#567)
**Security & fixes**
- Security hardening: tighten cross-origin policies (#595)
- Lock JsonWebToken trust-boundary contract (#586)
- `fix(deps)`: npm audit fix — clears all high-severity advisories
(#599)
- `fix(apps)`: log inbound activities at info, warn on missing
Authorization (#568)
- `fix`: App user-agent merging (#573)
- `fix`: Add null checks in `local-memory.ts` to prevent role crash
(#438)
- `fix`: `@microsoft/teams.client` import error in webpack 5 (#566)
- Switch to named imports without subpaths (#561)
**Deprecations / package changes**
- Deprecate `DevtoolsPlugin` in favor of Microsoft 365 Agents Playground
(#593)
- Remove in-repo Teams CLI package (#580) — moved to
`teams-sdk/packages/cli`
- Deprecate AI Libraries (#588)
- Correct imports + return types in misc. packages (#589)
**Dependency bumps**
- turbo 2.8.11 → 2.9.14 (#587)
- qs 6.15.0 → 6.15.2 (#594)
- hono 4.12.14 → 4.12.16 (#562)
- npm audit fix bundle (#599): axios 1.13.5 → 1.16.1, fast-uri 3.1.0 →
3.1.2, ws 8.19.0 → 8.21.0, @azure/msal-node hoisted 5.2.2, uuid 11.1.0 →
11.1.1, @azure/identity 4.13.0 → 4.13.1, express-rate-limit, ip-address,
brace-expansion, etc.
## Quoted Replies inclusion notes
- Teams client rendering is in-sync with the wire format as of
2026-05-06.
- APX QR rollout completed: Public 2026-04-10, GCCH/DoD/Gallatin
2026-04-14.
- No SDK-side carve-outs needed; this matches the teams.py 2.0.12 (PR
#442) decision.
## Branch structure note
`prep-release/2.0.12` is reset to `origin/main` + a one-line
`version.json` bump. Diff against `release` (this PR) shows the full
delta from 2.0.11. We deliberately did not use a 2-parent merge commit —
the auto-merge tried to interleave non-overlapping hunks from main's QR
additions with release's QR carve-outs in `activity.ts`, producing a
semantically broken file. Reset-to-main + version bump is the clean way
to express "release should equal main."
## Test plan
- [x] `npm install` clean (post-audit-fix lockfile)
- [x] `npm run build` — 33/33 targets clean
- [x] `npm test` — 14/14 task targets, 279+ tests pass
- [x] E2E echo bot smoke test against `cg-test-bot-py` via canary ABS —
done on `cg/audit-deps-ts` (now merged); covers axios + msal-node code
paths
- [ ] Pipeline Build + Test stages green on `release` after merge
- [ ] Publish pipeline run with **Public** → ESRP → npm
`@microsoft/teams.*@2.0.12`
- [ ] Smoke install: `npm view @microsoft/teams.apps@2.0.12` after
publish
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request deprecates several internal packages and updates documentation to guide users toward using dedicated third-party SDKs directly. It also removes the
examples/lightsexample and all its related files, reflecting a shift in recommended development patterns for AI and agent integrations.Deprecation of internal packages and guidance for migration:
@microsoft/teams.ai,@microsoft/teams.openai,@microsoft/teams.mcp,@microsoft/teams.mcpclient, and@microsoft/teams.a2a. Updated theirREADME.md,package.json, and entry points to include deprecation notices and migration instructions to use open-source SDKs likeopenai,@modelcontextprotocol/sdk, and@a2a-js/sdkdirectly. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]Documentation and example updates:
README.mdto move deprecated packages to a new section with clear migration paths and added references to new example apps (examples/ai-mcp,examples/a2a) that demonstrate the preferred integration approach. [1] [2] [3]Removal of the
examples/lightsexample:examples/lightsdirectory, including source code, configuration, changelog, and documentation, as this example relied on deprecated patterns. [1] [2] [3] [4] [5] [6] [7] [8]Build and dependency configuration cleanup:
examples/mcp-server/turbo.jsonto remove references to deprecated packages, ensuring only supported packages are built.These changes help clarify the project's direction, encourage best practices by leveraging dedicated SDKs, and reduce maintenance overhead by removing deprecated code and examples.