From a9d4f77b50d9612fdf3250186a36ff074040cc29 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 7 Jul 2026 22:13:46 +0000 Subject: [PATCH] chore(release): version packages --- .../cloudflare-agents-vendor-adapter.md | 6 ----- .changeset/create-chat-sdk-vercel-connect.md | 5 ----- .changeset/dedupe-ttl-outlives-retries.md | 5 ----- .changeset/dial-vendor-adapter.md | 6 ----- .changeset/discord-mention-scanner.md | 5 ----- .changeset/discord-rehydrate-attachment.md | 5 ----- .changeset/github-vercel-connect.md | 9 -------- .changeset/kind-hotels-sip.md | 7 ------ .changeset/linear-vercel-connect.md | 7 ------ .changeset/photon-vendor-adapter.md | 6 ----- .changeset/shared-bare-mention-scanner.md | 5 ----- .changeset/slack-process-retries.md | 5 ----- .changeset/social-loops-try.md | 5 ----- .changeset/teams-mention-scanner.md | 5 ----- .changeset/tests-behavior-contracts.md | 8 ------- .changeset/tests-connect-contract.md | 5 ----- packages/adapter-discord/CHANGELOG.md | 16 ++++++++++++++ packages/adapter-discord/package.json | 2 +- packages/adapter-gchat/CHANGELOG.md | 14 ++++++++++++ packages/adapter-gchat/package.json | 2 +- packages/adapter-github/CHANGELOG.md | 22 +++++++++++++++++++ packages/adapter-github/package.json | 2 +- packages/adapter-linear/CHANGELOG.md | 20 +++++++++++++++++ packages/adapter-linear/package.json | 2 +- packages/adapter-messenger/CHANGELOG.md | 14 ++++++++++++ packages/adapter-messenger/package.json | 2 +- packages/adapter-shared/CHANGELOG.md | 16 ++++++++++++++ packages/adapter-shared/package.json | 2 +- packages/adapter-slack/CHANGELOG.md | 15 +++++++++++++ packages/adapter-slack/package.json | 2 +- packages/adapter-teams/CHANGELOG.md | 15 +++++++++++++ packages/adapter-teams/package.json | 2 +- packages/adapter-telegram/CHANGELOG.md | 14 ++++++++++++ packages/adapter-telegram/package.json | 2 +- packages/adapter-twilio/CHANGELOG.md | 14 ++++++++++++ packages/adapter-twilio/package.json | 2 +- packages/adapter-web/CHANGELOG.md | 14 ++++++++++++ packages/adapter-web/package.json | 2 +- packages/adapter-whatsapp/CHANGELOG.md | 14 ++++++++++++ packages/adapter-whatsapp/package.json | 2 +- packages/adapter-x/CHANGELOG.md | 19 ++++++++++++++++ packages/adapter-x/package.json | 2 +- packages/chat/CHANGELOG.md | 14 ++++++++++++ packages/chat/package.json | 2 +- packages/create-chat-sdk/CHANGELOG.md | 13 +++++++++++ packages/create-chat-sdk/package.json | 2 +- packages/state-ioredis/CHANGELOG.md | 12 ++++++++++ packages/state-ioredis/package.json | 2 +- packages/state-memory/CHANGELOG.md | 12 ++++++++++ packages/state-memory/package.json | 2 +- packages/state-pg/CHANGELOG.md | 12 ++++++++++ packages/state-pg/package.json | 2 +- packages/state-redis/CHANGELOG.md | 12 ++++++++++ packages/state-redis/package.json | 2 +- packages/tests/CHANGELOG.md | 11 ++++++++++ packages/tests/package.json | 2 +- 56 files changed, 313 insertions(+), 114 deletions(-) delete mode 100644 .changeset/cloudflare-agents-vendor-adapter.md delete mode 100644 .changeset/create-chat-sdk-vercel-connect.md delete mode 100644 .changeset/dedupe-ttl-outlives-retries.md delete mode 100644 .changeset/dial-vendor-adapter.md delete mode 100644 .changeset/discord-mention-scanner.md delete mode 100644 .changeset/discord-rehydrate-attachment.md delete mode 100644 .changeset/github-vercel-connect.md delete mode 100644 .changeset/kind-hotels-sip.md delete mode 100644 .changeset/linear-vercel-connect.md delete mode 100644 .changeset/photon-vendor-adapter.md delete mode 100644 .changeset/shared-bare-mention-scanner.md delete mode 100644 .changeset/slack-process-retries.md delete mode 100644 .changeset/social-loops-try.md delete mode 100644 .changeset/teams-mention-scanner.md delete mode 100644 .changeset/tests-behavior-contracts.md delete mode 100644 .changeset/tests-connect-contract.md create mode 100644 packages/adapter-x/CHANGELOG.md diff --git a/.changeset/cloudflare-agents-vendor-adapter.md b/.changeset/cloudflare-agents-vendor-adapter.md deleted file mode 100644 index 81ea93f3..00000000 --- a/.changeset/cloudflare-agents-vendor-adapter.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"chat": patch -"create-chat-sdk": patch ---- - -docs(adapters): add Cloudflare Agents as a vendor-official state adapter (`agents/chat-sdk`) to the catalog and docs listing. It is hidden from the create-chat-sdk CLI (Worker/Durable Objects runtime), and the interactive state picker now filters out CLI-incompatible state adapters. diff --git a/.changeset/create-chat-sdk-vercel-connect.md b/.changeset/create-chat-sdk-vercel-connect.md deleted file mode 100644 index d3e25db5..00000000 --- a/.changeset/create-chat-sdk-vercel-connect.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"create-chat-sdk": minor ---- - -Add Vercel Connect support to the scaffolder. Pass `--connect` (or choose **Vercel Connect** at the new interactive auth-mode prompt) to authenticate the Slack, GitHub, and Linear adapters with a Vercel Connect connector instead of stored provider secrets. The generated `src/lib/bot.ts` spreads the matching helper from `@vercel/connect/chat` into the adapter factory, `@vercel/connect` is added to dependencies, and `.env.example` lists each connector UID (for example `SLACK_CONNECTOR`) plus the recommended `GITHUB_BOT_USER_ID` for GitHub, in place of native secrets. diff --git a/.changeset/dedupe-ttl-outlives-retries.md b/.changeset/dedupe-ttl-outlives-retries.md deleted file mode 100644 index 6f5ec224..00000000 --- a/.changeset/dedupe-ttl-outlives-retries.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"chat": patch ---- - -Raise the default message dedupe TTL from 5 to 10 minutes so it outlives the longest platform redelivery window. Slack's Events API retries up to ~5 minutes after the original delivery — exactly at the old TTL boundary, where a retried event could miss the expired dedupe entry from its first processing and be handled twice. Configurable behavior is unchanged (`dedupeTtlMs` still overrides). diff --git a/.changeset/dial-vendor-adapter.md b/.changeset/dial-vendor-adapter.md deleted file mode 100644 index e3711247..00000000 --- a/.changeset/dial-vendor-adapter.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"chat": patch -"create-chat-sdk": patch ---- - -docs(adapters): add Dial as a vendor-official adapter (`@getdial/chat-sdk-adapter`) to the catalog, docs listing, and CLI scaffold spec diff --git a/.changeset/discord-mention-scanner.md b/.changeset/discord-mention-scanner.md deleted file mode 100644 index 2cdbfe68..00000000 --- a/.changeset/discord-mention-scanner.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@chat-adapter/discord": patch ---- - -use the shared `replaceBareMentions` scanner for `@mention` conversion so email addresses, `@handles` inside URLs, and mentions inside code spans are no longer mangled into Discord mentions, and already-formatted `<@id>` tokens are not double-wrapped diff --git a/.changeset/discord-rehydrate-attachment.md b/.changeset/discord-rehydrate-attachment.md deleted file mode 100644 index 85a7dda1..00000000 --- a/.changeset/discord-rehydrate-attachment.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@chat-adapter/discord": patch ---- - -Implement `rehydrateAttachment` on the Discord adapter. Serialization strips an attachment's `fetchData` closure (queue/debounce strategies), and consumers rebuild it via `adapter.rehydrateAttachment`. The Discord adapter did not implement the method, so downstream consumers could not download inbound Discord attachments after deserialization. The Discord CDN `url` survives serialization, so `fetchData` is now rebuilt to fetch that url (preserving its signed query params), matching how the other adapters implement the method. diff --git a/.changeset/github-vercel-connect.md b/.changeset/github-vercel-connect.md deleted file mode 100644 index 906b3ae0..00000000 --- a/.changeset/github-vercel-connect.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -"@chat-adapter/github": minor ---- - -Add Vercel Connect support to the GitHub adapter. A new `installationToken` config option (string or resolver) supplies installation access tokens directly, skipping the GitHub App private-key JWT exchange, and an optional `webhookVerifier` verifies inbound webhooks (e.g. Connect trigger-forwarded requests via a Vercel OIDC token) in place of the GitHub webhook secret. Pair with `connectGitHubAdapter()` from `@vercel/connect/chat`. - -`botUserId` now also auto-detects from the `GITHUB_BOT_USER_ID` env var, and the adapter learns its bot user id from the first comment it posts. In Connect mode (where the bot user id can't be auto-detected from an installation token) set `botUserId` / `GITHUB_BOT_USER_ID` to enable self-message detection and avoid the adapter replying to its own comments. - -Note: the `connectGitHubAdapter()` helper ships in `@vercel/connect` — release this adapter together with (or after) the `@vercel/connect` version that adds the `@vercel/connect/chat` subpath so the documented helper resolves. diff --git a/.changeset/kind-hotels-sip.md b/.changeset/kind-hotels-sip.md deleted file mode 100644 index 10991b15..00000000 --- a/.changeset/kind-hotels-sip.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@chat-adapter/x": minor -"chat": minor -"create-chat-sdk": minor ---- - -add X (Twitter) adapter: reply to public mentions, send and receive direct messages, post and edit from the bot account, and like posts, using the X API v2 with OAuth 2.0 and managed token refresh diff --git a/.changeset/linear-vercel-connect.md b/.changeset/linear-vercel-connect.md deleted file mode 100644 index a35360c3..00000000 --- a/.changeset/linear-vercel-connect.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@chat-adapter/linear": minor ---- - -Add Vercel Connect support to the Linear adapter. The `accessToken` config option now accepts a resolver (`() => string | Promise`) in addition to a string, so tokens can be sourced from Vercel Connect at runtime, and a new optional `webhookVerifier` verifies inbound webhooks (e.g. Connect trigger-forwarded requests via a Vercel OIDC token) in place of the Linear webhook secret. Pair with `connectLinearAdapter()` from `@vercel/connect/chat`. Connect-mode outbound calls outside webhook handling are supported via `withInstallation(organizationId, fn)`. - -Note: the `connectLinearAdapter()` helper ships in `@vercel/connect` — release this adapter together with (or after) the `@vercel/connect` version that adds the `@vercel/connect/chat` subpath so the documented helper resolves. diff --git a/.changeset/photon-vendor-adapter.md b/.changeset/photon-vendor-adapter.md deleted file mode 100644 index 33041d68..00000000 --- a/.changeset/photon-vendor-adapter.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"chat": patch -"create-chat-sdk": patch ---- - -docs(adapters): add Photon as a vendor-official adapter (`@photon-ai/chat-adapter-imessage`) to the catalog, docs listing, and CLI scaffold spec diff --git a/.changeset/shared-bare-mention-scanner.md b/.changeset/shared-bare-mention-scanner.md deleted file mode 100644 index a13c4256..00000000 --- a/.changeset/shared-bare-mention-scanner.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@chat-adapter/shared": minor ---- - -add `replaceBareMentions`, a context-aware bare-`@mention` resolver that skips code spans, URLs, schemeless hosts, and existing angle-bracket tokens before handing each real `@name` to a platform-specific replacer diff --git a/.changeset/slack-process-retries.md b/.changeset/slack-process-retries.md deleted file mode 100644 index 565c0c9f..00000000 --- a/.changeset/slack-process-retries.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@chat-adapter/slack": patch ---- - -Process Slack Socket Mode retry envelopes instead of discarding them. Slack redelivers an event (immediately, +1 min, +5 min) when a prior delivery wasn't acknowledged — including events sent while the app had no open socket, e.g. during a restart or a routine connection refresh. The adapter previously acked and dropped every envelope with `retry_num > 0`, so such events were permanently lost even though Slack redelivered them. Retries are now routed like first deliveries (logged at info with `retry_num`/`retry_reason`); `Chat.processMessage`'s message-id dedupe drops true duplicates. diff --git a/.changeset/social-loops-try.md b/.changeset/social-loops-try.md deleted file mode 100644 index 530be21a..00000000 --- a/.changeset/social-loops-try.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"chat": patch ---- - -preserve skipped mention routing for debounce and message patterns diff --git a/.changeset/teams-mention-scanner.md b/.changeset/teams-mention-scanner.md deleted file mode 100644 index 19ecb11d..00000000 --- a/.changeset/teams-mention-scanner.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@chat-adapter/teams": patch ---- - -use the shared `replaceBareMentions` scanner for `@mention` conversion so email addresses, `@handles` inside URLs, and mentions inside code spans are no longer mangled into `` mention tags diff --git a/.changeset/tests-behavior-contracts.md b/.changeset/tests-behavior-contracts.md deleted file mode 100644 index e0c964bb..00000000 --- a/.changeset/tests-behavior-contracts.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -"@chat-adapter/tests": minor ---- - -Add two shared behavioral test contracts for adapter authors: - -- `threadIdContract` — verifies an adapter's thread-id codec round-trips (`decode(encode(x))`), prefixes ids with the adapter name, matches any pinned encoded strings, and (optionally) distinguishes DM from non-DM threads. -- `selfMessageContract` — verifies an adapter dispatches inbound messages from other users (to `processMessage` by default) but ignores messages the bot authored itself, so it never replies to itself. Requires the matchers to be registered via `setupFiles: ["@chat-adapter/tests/setup"]`. diff --git a/.changeset/tests-connect-contract.md b/.changeset/tests-connect-contract.md deleted file mode 100644 index a355cfa1..00000000 --- a/.changeset/tests-connect-contract.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@chat-adapter/tests": minor ---- - -Add `connectWebhookContract`, a shared Vitest suite for verifying an adapter's Vercel Connect webhook verification. Given a small per-adapter descriptor (how to build the adapter in Connect mode and craft an inbound webhook), it asserts the behavior every Connect-capable adapter shares: a `webhookVerifier` replaces the native signature/secret check and gates inbound requests — accept (`200`) on a truthy result, reject (`401`) on a thrown error or falsy result — and is invoked with the request and raw body. Connect-capable adapters can opt in with ~10 lines. diff --git a/packages/adapter-discord/CHANGELOG.md b/packages/adapter-discord/CHANGELOG.md index fdb4bd50..0ac2c180 100644 --- a/packages/adapter-discord/CHANGELOG.md +++ b/packages/adapter-discord/CHANGELOG.md @@ -1,5 +1,21 @@ # @chat-adapter/discord +## 4.33.0 + +### Patch Changes + +- d4c52ca: use the shared `replaceBareMentions` scanner for `@mention` conversion so email addresses, `@handles` inside URLs, and mentions inside code spans are no longer mangled into Discord mentions, and already-formatted `<@id>` tokens are not double-wrapped +- 6de4572: Implement `rehydrateAttachment` on the Discord adapter. Serialization strips an attachment's `fetchData` closure (queue/debounce strategies), and consumers rebuild it via `adapter.rehydrateAttachment`. The Discord adapter did not implement the method, so downstream consumers could not download inbound Discord attachments after deserialization. The Discord CDN `url` survives serialization, so `fetchData` is now rebuilt to fetch that url (preserving its signed query params), matching how the other adapters implement the method. +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 + ## 4.32.0 ### Minor Changes diff --git a/packages/adapter-discord/package.json b/packages/adapter-discord/package.json index d97ef5fc..c85adccc 100644 --- a/packages/adapter-discord/package.json +++ b/packages/adapter-discord/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/discord", - "version": "4.32.0", + "version": "4.33.0", "description": "Discord adapter for Chat SDK — HTTP interactions, Gateway events, slash commands, and embeds", "type": "module", "engines": { diff --git a/packages/adapter-gchat/CHANGELOG.md b/packages/adapter-gchat/CHANGELOG.md index 4321d970..98e82ba0 100644 --- a/packages/adapter-gchat/CHANGELOG.md +++ b/packages/adapter-gchat/CHANGELOG.md @@ -1,5 +1,19 @@ # @chat-adapter/gchat +## 4.33.0 + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/adapter-gchat/package.json b/packages/adapter-gchat/package.json index 242f88a3..e51592d1 100644 --- a/packages/adapter-gchat/package.json +++ b/packages/adapter-gchat/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/gchat", - "version": "4.32.0", + "version": "4.33.0", "description": "Google Chat adapter for Chat SDK — service account auth, Card v2, dialogs, and Workspace Events", "type": "module", "engines": { diff --git a/packages/adapter-github/CHANGELOG.md b/packages/adapter-github/CHANGELOG.md index 2981d718..661c460e 100644 --- a/packages/adapter-github/CHANGELOG.md +++ b/packages/adapter-github/CHANGELOG.md @@ -1,5 +1,27 @@ # @chat-adapter/github +## 4.33.0 + +### Minor Changes + +- 6750d59: Add Vercel Connect support to the GitHub adapter. A new `installationToken` config option (string or resolver) supplies installation access tokens directly, skipping the GitHub App private-key JWT exchange, and an optional `webhookVerifier` verifies inbound webhooks (e.g. Connect trigger-forwarded requests via a Vercel OIDC token) in place of the GitHub webhook secret. Pair with `connectGitHubAdapter()` from `@vercel/connect/chat`. + + `botUserId` now also auto-detects from the `GITHUB_BOT_USER_ID` env var, and the adapter learns its bot user id from the first comment it posts. In Connect mode (where the bot user id can't be auto-detected from an installation token) set `botUserId` / `GITHUB_BOT_USER_ID` to enable self-message detection and avoid the adapter replying to its own comments. + + Note: the `connectGitHubAdapter()` helper ships in `@vercel/connect` — release this adapter together with (or after) the `@vercel/connect` version that adds the `@vercel/connect/chat` subpath so the documented helper resolves. + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/adapter-github/package.json b/packages/adapter-github/package.json index 02d99867..a524183f 100644 --- a/packages/adapter-github/package.json +++ b/packages/adapter-github/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/github", - "version": "4.32.0", + "version": "4.33.0", "description": "GitHub adapter for Chat SDK — respond to @mentions in pull request and issue comment threads", "type": "module", "engines": { diff --git a/packages/adapter-linear/CHANGELOG.md b/packages/adapter-linear/CHANGELOG.md index 07a9b359..175fe4cf 100644 --- a/packages/adapter-linear/CHANGELOG.md +++ b/packages/adapter-linear/CHANGELOG.md @@ -1,5 +1,25 @@ # @chat-adapter/linear +## 4.33.0 + +### Minor Changes + +- 4115c94: Add Vercel Connect support to the Linear adapter. The `accessToken` config option now accepts a resolver (`() => string | Promise`) in addition to a string, so tokens can be sourced from Vercel Connect at runtime, and a new optional `webhookVerifier` verifies inbound webhooks (e.g. Connect trigger-forwarded requests via a Vercel OIDC token) in place of the Linear webhook secret. Pair with `connectLinearAdapter()` from `@vercel/connect/chat`. Connect-mode outbound calls outside webhook handling are supported via `withInstallation(organizationId, fn)`. + + Note: the `connectLinearAdapter()` helper ships in `@vercel/connect` — release this adapter together with (or after) the `@vercel/connect` version that adds the `@vercel/connect/chat` subpath so the documented helper resolves. + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/adapter-linear/package.json b/packages/adapter-linear/package.json index ab8e77df..cfa3ea27 100644 --- a/packages/adapter-linear/package.json +++ b/packages/adapter-linear/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/linear", - "version": "4.32.0", + "version": "4.33.0", "description": "Linear adapter for Chat SDK — @mentions in issue comments and Linear agent sessions", "type": "module", "engines": { diff --git a/packages/adapter-messenger/CHANGELOG.md b/packages/adapter-messenger/CHANGELOG.md index 702e94ab..4517c188 100644 --- a/packages/adapter-messenger/CHANGELOG.md +++ b/packages/adapter-messenger/CHANGELOG.md @@ -1,5 +1,19 @@ # @chat-adapter/messenger +## 4.33.0 + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/adapter-messenger/package.json b/packages/adapter-messenger/package.json index 6ca46f73..9648f49c 100644 --- a/packages/adapter-messenger/package.json +++ b/packages/adapter-messenger/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/messenger", - "version": "4.32.0", + "version": "4.33.0", "description": "Facebook Messenger adapter for Chat SDK — Send API webhooks, templates, and quick replies", "type": "module", "engines": { diff --git a/packages/adapter-shared/CHANGELOG.md b/packages/adapter-shared/CHANGELOG.md index 87d08bfa..c0eb7118 100644 --- a/packages/adapter-shared/CHANGELOG.md +++ b/packages/adapter-shared/CHANGELOG.md @@ -1,5 +1,21 @@ # @chat-adapter/shared +## 4.33.0 + +### Minor Changes + +- d4c52ca: add `replaceBareMentions`, a context-aware bare-`@mention` resolver that skips code spans, URLs, schemeless hosts, and existing angle-bracket tokens before handing each real `@name` to a platform-specific replacer + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [076fe5d] + - chat@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/adapter-shared/package.json b/packages/adapter-shared/package.json index 44107cdb..5e9a9c6f 100644 --- a/packages/adapter-shared/package.json +++ b/packages/adapter-shared/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/shared", - "version": "4.32.0", + "version": "4.33.0", "description": "Shared utilities for Chat SDK platform adapters", "type": "module", "engines": { diff --git a/packages/adapter-slack/CHANGELOG.md b/packages/adapter-slack/CHANGELOG.md index f596d8b5..8832a417 100644 --- a/packages/adapter-slack/CHANGELOG.md +++ b/packages/adapter-slack/CHANGELOG.md @@ -1,5 +1,20 @@ # @chat-adapter/slack +## 4.33.0 + +### Patch Changes + +- 0b63791: Process Slack Socket Mode retry envelopes instead of discarding them. Slack redelivers an event (immediately, +1 min, +5 min) when a prior delivery wasn't acknowledged — including events sent while the app had no open socket, e.g. during a restart or a routine connection refresh. The adapter previously acked and dropped every envelope with `retry_num > 0`, so such events were permanently lost even though Slack redelivered them. Retries are now routed like first deliveries (logged at info with `retry_num`/`retry_reason`); `Chat.processMessage`'s message-id dedupe drops true duplicates. +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/adapter-slack/package.json b/packages/adapter-slack/package.json index 1b2aded8..d82c4cf1 100644 --- a/packages/adapter-slack/package.json +++ b/packages/adapter-slack/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/slack", - "version": "4.32.0", + "version": "4.33.0", "description": "Slack adapter for Chat SDK — webhooks, Block Kit cards, OAuth, slash commands, and AI streaming", "type": "module", "engines": { diff --git a/packages/adapter-teams/CHANGELOG.md b/packages/adapter-teams/CHANGELOG.md index 3811244d..2ddbb668 100644 --- a/packages/adapter-teams/CHANGELOG.md +++ b/packages/adapter-teams/CHANGELOG.md @@ -1,5 +1,20 @@ # @chat-adapter/teams +## 4.33.0 + +### Patch Changes + +- d4c52ca: use the shared `replaceBareMentions` scanner for `@mention` conversion so email addresses, `@handles` inside URLs, and mentions inside code spans are no longer mangled into `` mention tags +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/adapter-teams/package.json b/packages/adapter-teams/package.json index 2cb54fd7..f6e0926b 100644 --- a/packages/adapter-teams/package.json +++ b/packages/adapter-teams/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/teams", - "version": "4.32.0", + "version": "4.33.0", "description": "Microsoft Teams adapter for Chat SDK — Bot Framework webhooks, Adaptive Cards, and Graph API", "type": "module", "engines": { diff --git a/packages/adapter-telegram/CHANGELOG.md b/packages/adapter-telegram/CHANGELOG.md index 11148e0d..770c1a34 100644 --- a/packages/adapter-telegram/CHANGELOG.md +++ b/packages/adapter-telegram/CHANGELOG.md @@ -1,5 +1,19 @@ # @chat-adapter/telegram +## 4.33.0 + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/adapter-telegram/package.json b/packages/adapter-telegram/package.json index 469f97e2..86ede5bf 100644 --- a/packages/adapter-telegram/package.json +++ b/packages/adapter-telegram/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/telegram", - "version": "4.32.0", + "version": "4.33.0", "description": "Telegram adapter for Chat SDK — Bot API webhooks, inline keyboards, reactions, and streaming", "type": "module", "engines": { diff --git a/packages/adapter-twilio/CHANGELOG.md b/packages/adapter-twilio/CHANGELOG.md index 97b944ea..69cfdd46 100644 --- a/packages/adapter-twilio/CHANGELOG.md +++ b/packages/adapter-twilio/CHANGELOG.md @@ -1,5 +1,19 @@ # @chat-adapter/twilio +## 4.33.0 + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/adapter-twilio/package.json b/packages/adapter-twilio/package.json index 6ac20f21..3bff40d4 100644 --- a/packages/adapter-twilio/package.json +++ b/packages/adapter-twilio/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/twilio", - "version": "4.32.0", + "version": "4.33.0", "description": "Twilio adapter for Chat SDK — SMS and MMS bots with Messaging webhooks and the Messages API", "type": "module", "engines": { diff --git a/packages/adapter-web/CHANGELOG.md b/packages/adapter-web/CHANGELOG.md index 203d772f..e5c4626f 100644 --- a/packages/adapter-web/CHANGELOG.md +++ b/packages/adapter-web/CHANGELOG.md @@ -1,5 +1,19 @@ # @chat-adapter/web +## 4.33.0 + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/adapter-web/package.json b/packages/adapter-web/package.json index 5c0e69f7..030f4699 100644 --- a/packages/adapter-web/package.json +++ b/packages/adapter-web/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/web", - "version": "4.32.0", + "version": "4.33.0", "description": "Web adapter for Chat SDK — browser chat UI via the AI SDK useChat stream protocol", "type": "module", "engines": { diff --git a/packages/adapter-whatsapp/CHANGELOG.md b/packages/adapter-whatsapp/CHANGELOG.md index fbaf07fc..b86e5db5 100644 --- a/packages/adapter-whatsapp/CHANGELOG.md +++ b/packages/adapter-whatsapp/CHANGELOG.md @@ -1,5 +1,19 @@ # @chat-adapter/whatsapp +## 4.33.0 + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/adapter-whatsapp/package.json b/packages/adapter-whatsapp/package.json index 9419cd4a..914ddb8d 100644 --- a/packages/adapter-whatsapp/package.json +++ b/packages/adapter-whatsapp/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/whatsapp", - "version": "4.32.0", + "version": "4.33.0", "description": "WhatsApp adapter for Chat SDK — Business Cloud API webhooks, interactive messages, and templates", "type": "module", "engines": { diff --git a/packages/adapter-x/CHANGELOG.md b/packages/adapter-x/CHANGELOG.md new file mode 100644 index 00000000..7b58bc29 --- /dev/null +++ b/packages/adapter-x/CHANGELOG.md @@ -0,0 +1,19 @@ +# @chat-adapter/x + +## 4.33.0 + +### Minor Changes + +- ef2542c: add X (Twitter) adapter: reply to public mentions, send and receive direct messages, post and edit from the bot account, and like posts, using the X API v2 with OAuth 2.0 and managed token refresh + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [d4c52ca] +- Updated dependencies [076fe5d] + - chat@4.33.0 + - @chat-adapter/shared@4.33.0 diff --git a/packages/adapter-x/package.json b/packages/adapter-x/package.json index a38b20ec..fe806d16 100644 --- a/packages/adapter-x/package.json +++ b/packages/adapter-x/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/x", - "version": "4.32.0", + "version": "4.33.0", "description": "X (Twitter) adapter for Chat SDK: reply to mentions, send direct messages, and post from your bot account with the X API v2", "type": "module", "engines": { diff --git a/packages/chat/CHANGELOG.md b/packages/chat/CHANGELOG.md index 55863f34..6fd7be3f 100644 --- a/packages/chat/CHANGELOG.md +++ b/packages/chat/CHANGELOG.md @@ -1,5 +1,19 @@ # chat +## 4.33.0 + +### Minor Changes + +- ef2542c: add X (Twitter) adapter: reply to public mentions, send and receive direct messages, post and edit from the bot account, and like posts, using the X API v2 with OAuth 2.0 and managed token refresh + +### Patch Changes + +- 3abdc69: docs(adapters): add Cloudflare Agents as a vendor-official state adapter (`agents/chat-sdk`) to the catalog and docs listing. It is hidden from the create-chat-sdk CLI (Worker/Durable Objects runtime), and the interactive state picker now filters out CLI-incompatible state adapters. +- 0b63791: Raise the default message dedupe TTL from 5 to 10 minutes so it outlives the longest platform redelivery window. Slack's Events API retries up to ~5 minutes after the original delivery — exactly at the old TTL boundary, where a retried event could miss the expired dedupe entry from its first processing and be handled twice. Configurable behavior is unchanged (`dedupeTtlMs` still overrides). +- 0c761f1: docs(adapters): add Dial as a vendor-official adapter (`@getdial/chat-sdk-adapter`) to the catalog, docs listing, and CLI scaffold spec +- 24a04d5: docs(adapters): add Photon as a vendor-official adapter (`@photon-ai/chat-adapter-imessage`) to the catalog, docs listing, and CLI scaffold spec +- 076fe5d: preserve skipped mention routing for debounce and message patterns + ## 4.32.0 ### Minor Changes diff --git a/packages/chat/package.json b/packages/chat/package.json index 2c5d5baf..e614e43b 100644 --- a/packages/chat/package.json +++ b/packages/chat/package.json @@ -1,6 +1,6 @@ { "name": "chat", - "version": "4.32.0", + "version": "4.33.0", "description": "Chat SDK — universal TypeScript toolkit for building multi-platform chat bots and AI agents on Slack, Teams, Google Chat, Discord, WhatsApp, and more", "type": "module", "engines": { diff --git a/packages/create-chat-sdk/CHANGELOG.md b/packages/create-chat-sdk/CHANGELOG.md index 76c08771..0eae80bd 100644 --- a/packages/create-chat-sdk/CHANGELOG.md +++ b/packages/create-chat-sdk/CHANGELOG.md @@ -1,5 +1,18 @@ # create-chat-sdk +## 0.2.0 + +### Minor Changes + +- ba375ce: Add Vercel Connect support to the scaffolder. Pass `--connect` (or choose **Vercel Connect** at the new interactive auth-mode prompt) to authenticate the Slack, GitHub, and Linear adapters with a Vercel Connect connector instead of stored provider secrets. The generated `src/lib/bot.ts` spreads the matching helper from `@vercel/connect/chat` into the adapter factory, `@vercel/connect` is added to dependencies, and `.env.example` lists each connector UID (for example `SLACK_CONNECTOR`) plus the recommended `GITHUB_BOT_USER_ID` for GitHub, in place of native secrets. +- ef2542c: add X (Twitter) adapter: reply to public mentions, send and receive direct messages, post and edit from the bot account, and like posts, using the X API v2 with OAuth 2.0 and managed token refresh + +### Patch Changes + +- 3abdc69: docs(adapters): add Cloudflare Agents as a vendor-official state adapter (`agents/chat-sdk`) to the catalog and docs listing. It is hidden from the create-chat-sdk CLI (Worker/Durable Objects runtime), and the interactive state picker now filters out CLI-incompatible state adapters. +- 0c761f1: docs(adapters): add Dial as a vendor-official adapter (`@getdial/chat-sdk-adapter`) to the catalog, docs listing, and CLI scaffold spec +- 24a04d5: docs(adapters): add Photon as a vendor-official adapter (`@photon-ai/chat-adapter-imessage`) to the catalog, docs listing, and CLI scaffold spec + ## 0.1.1 ### Patch Changes diff --git a/packages/create-chat-sdk/package.json b/packages/create-chat-sdk/package.json index 01ac5e06..55470402 100644 --- a/packages/create-chat-sdk/package.json +++ b/packages/create-chat-sdk/package.json @@ -9,7 +9,7 @@ "create", "cli" ], - "version": "0.1.1", + "version": "0.2.0", "type": "module", "main": "./dist/index.js", "module": "./dist/index.js", diff --git a/packages/state-ioredis/CHANGELOG.md b/packages/state-ioredis/CHANGELOG.md index 3af44063..c7ec7f29 100644 --- a/packages/state-ioredis/CHANGELOG.md +++ b/packages/state-ioredis/CHANGELOG.md @@ -1,5 +1,17 @@ # @chat-adapter/state-ioredis +## 4.33.0 + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [076fe5d] + - chat@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/state-ioredis/package.json b/packages/state-ioredis/package.json index b8923e56..4ee834ee 100644 --- a/packages/state-ioredis/package.json +++ b/packages/state-ioredis/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/state-ioredis", - "version": "4.32.0", + "version": "4.33.0", "description": "ioredis state adapter for Chat SDK — production state with Redis Cluster and Sentinel support via ioredis", "type": "module", "engines": { diff --git a/packages/state-memory/CHANGELOG.md b/packages/state-memory/CHANGELOG.md index 96b55bbf..33806db4 100644 --- a/packages/state-memory/CHANGELOG.md +++ b/packages/state-memory/CHANGELOG.md @@ -1,5 +1,17 @@ # @chat-adapter/state-memory +## 4.33.0 + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [076fe5d] + - chat@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/state-memory/package.json b/packages/state-memory/package.json index 620c1038..4135a45c 100644 --- a/packages/state-memory/package.json +++ b/packages/state-memory/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/state-memory", - "version": "4.32.0", + "version": "4.33.0", "description": "In-memory state adapter for Chat SDK — zero-dependency subscriptions, locks, and cache for local development and tests", "type": "module", "engines": { diff --git a/packages/state-pg/CHANGELOG.md b/packages/state-pg/CHANGELOG.md index dabde505..71c20380 100644 --- a/packages/state-pg/CHANGELOG.md +++ b/packages/state-pg/CHANGELOG.md @@ -1,5 +1,17 @@ # @chat-adapter/state-pg +## 4.33.0 + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [076fe5d] + - chat@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/state-pg/package.json b/packages/state-pg/package.json index 1c20b645..0bbb5b37 100644 --- a/packages/state-pg/package.json +++ b/packages/state-pg/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/state-pg", - "version": "4.32.0", + "version": "4.33.0", "description": "PostgreSQL state adapter for Chat SDK — production subscriptions, distributed locks, cache, lists, and queues", "type": "module", "engines": { diff --git a/packages/state-redis/CHANGELOG.md b/packages/state-redis/CHANGELOG.md index e19ebcc8..74da5940 100644 --- a/packages/state-redis/CHANGELOG.md +++ b/packages/state-redis/CHANGELOG.md @@ -1,5 +1,17 @@ # @chat-adapter/state-redis +## 4.33.0 + +### Patch Changes + +- Updated dependencies [3abdc69] +- Updated dependencies [0b63791] +- Updated dependencies [0c761f1] +- Updated dependencies [ef2542c] +- Updated dependencies [24a04d5] +- Updated dependencies [076fe5d] + - chat@4.33.0 + ## 4.32.0 ### Patch Changes diff --git a/packages/state-redis/package.json b/packages/state-redis/package.json index bc0d647f..bd3b0724 100644 --- a/packages/state-redis/package.json +++ b/packages/state-redis/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/state-redis", - "version": "4.32.0", + "version": "4.33.0", "description": "Redis state adapter for Chat SDK — production subscriptions, distributed locks, cache, lists, and queues via node-redis", "type": "module", "engines": { diff --git a/packages/tests/CHANGELOG.md b/packages/tests/CHANGELOG.md index 5411662d..4336948f 100644 --- a/packages/tests/CHANGELOG.md +++ b/packages/tests/CHANGELOG.md @@ -1,5 +1,16 @@ # @chat-adapter/tests +## 4.33.0 + +### Minor Changes + +- e7a396a: Add two shared behavioral test contracts for adapter authors: + + - `threadIdContract` — verifies an adapter's thread-id codec round-trips (`decode(encode(x))`), prefixes ids with the adapter name, matches any pinned encoded strings, and (optionally) distinguishes DM from non-DM threads. + - `selfMessageContract` — verifies an adapter dispatches inbound messages from other users (to `processMessage` by default) but ignores messages the bot authored itself, so it never replies to itself. Requires the matchers to be registered via `setupFiles: ["@chat-adapter/tests/setup"]`. + +- a7fb1bc: Add `connectWebhookContract`, a shared Vitest suite for verifying an adapter's Vercel Connect webhook verification. Given a small per-adapter descriptor (how to build the adapter in Connect mode and craft an inbound webhook), it asserts the behavior every Connect-capable adapter shares: a `webhookVerifier` replaces the native signature/secret check and gates inbound requests — accept (`200`) on a truthy result, reject (`401`) on a thrown error or falsy result — and is invoked with the request and raw body. Connect-capable adapters can opt in with ~10 lines. + ## 4.32.0 ## 4.31.0 diff --git a/packages/tests/package.json b/packages/tests/package.json index 3ed031af..a0db9a48 100644 --- a/packages/tests/package.json +++ b/packages/tests/package.json @@ -1,6 +1,6 @@ { "name": "@chat-adapter/tests", - "version": "4.32.0", + "version": "4.33.0", "description": "Vitest factories, matchers, and setup utilities for testing Chat SDK adapters and bots", "type": "module", "main": "./dist/index.js",