# What changed in @chat-adapter/linear

> 22 changes in @chat-adapter/linear 4 from its official release notes, upgrade guides and advisories: 1 breaking, 2 security, 6 new APIs and options. Each one cited. Sources checked 2026-10-19. HTML: https://unstale.sh/npm/@chat-adapter/linear/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## @chat-adapter/linear 4

### Breaking changes

- Adapter and StateAdapter now require channelIdFromThreadId, so implementations must provide it. (4.19.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.19.0)

### Security

- Validates agent session issue ownership before fetching history to prevent cross-issue reads. (4.41.1) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.41.1)
- Validates comment ownership before fetching Linear thread replies to prevent cross-issue content exposure. (4.41.1) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.41.1)

### New APIs and options

- A new optional webhookVerifier verifies inbound webhooks in place of the Linear webhook secret. (4.33.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.33.0)
- Connect-mode outbound calls outside webhook handling are supported via withInstallation(organizationId, fn). (4.33.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.33.0)
- The Linear adapter exposes its native client as linearClient, returning LinearClient; the previous client getter remains available as a deprecated alias. (4.29.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.29.0)
- EphemeralMessage is now generic over TRawMessage, allowing its raw message type to be specified. (4.19.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.19.0)
- Adds the CardLink element. (4.15.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.15.0)
- Adds GitHub and Linear integrations. (4.8.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.8.0)

### Behavior and default changes

- Generated Linear Connect bots use explicit agent-session mode and setup guidance; initialization recommends agent sessions when a token resolver and webhook verifier are configured without a mode, while preserving the adapter's comments default. (4.41.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.41.0)
- The accessToken config option accepts a string or a resolver returning a string or Promise<string>, allowing tokens to be sourced from Vercel Connect at runtime. (4.33.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.33.0)
- Adapter internals are protected rather than private, allowing consumers to subclass an adapter to override or extend its behavior. (4.29.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.29.0)
- The adapter now declares chat as a full dependency instead of an optional dependency, so it is installed as a required package dependency. (4.21.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.21.0)
- Adapters have improved fallback-render behavior. (4.16.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.16.0)
- Markdown rendering is fully streaming, including for Slack, which has native streaming. (4.16.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.16.0)
- Markdown rendering now supports tables. (4.16.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.16.0)
- The Slack adapter adds typing indicators using the Slack assistants API. (4.14.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.14.0)
- Configuration is now automatically loaded from environment variables. (4.13.4) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.13.4)

### Fixes and other changes

- The Linear adapter checks that a comment belongs to the supplied thread before edits, deletions, and reactions. (4.42.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.42.0)
- Linear ordinary comments leave isMention undetermined, allowing SDK text detection to apply; a definitive false from an adapter now suppresses mention detection based on message text. (4.41.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.41.0)
- Linear agent-session events stay on one stable thread, including sessions created by automation or without a root comment. (4.40.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.40.0)
- Expanded npm keywords to improve discoverability of adapter and state packages. (4.30.0) — [release notes](https://github.com/vercel/chat/releases/tag/%40chat-adapter/linear%404.30.0)
