Skip to content
PluginStats

@chat-adapter/linear weekly downloads statistics

By chat-adapter (14 listings) · npm · AI SDKs

Linear adapter for Chat SDK — @mentions in issue comments and Linear agent sessions

View on npm Fresh · Oct 18, 2026

@chat-adapter/linear has 60,954 recorded weekly downloads on npm, a decrease of 44.6% over the past 30 days, ranking #555 of 2,322 tracked listings.

Weekly downloads
60,954
Official API · Oct 18, 2026
7-day growth
-24.1%
-19.4K weekly downloads
30-day growth
-44.6%
-49K weekly downloads
90-day growth
-24.4%
-19.7K weekly downloads
Rank
#555
Among tracked npm listings

About @chat-adapter/linear

Linear adapter for Chat SDK

@chat-adapter/linear

npm package: @chat-adapter/linear

Agent Stack MIT License

Linear adapter for Chat SDK. Respond to @mentions in issue comment threads and Linear app-actor agent sessions.

The Linear adapter treats issue comments as messages and issues as threads.

Documentation: chat-sdk.dev/adapters/official/linear · Guides: vercel.com/kb/chat-sdk

Installation

pnpm add @chat-adapter/linear

Scaffold with the CLI

To scaffold a new Linear bot with this adapter preselected:

npx create-chat-sdk@latest my-bot --adapter linear memory

Visit the adapters directory to see other available official and vendor-official adapters.

Quick start

For managed credentials and webhook verification, see Vercel Connect.

The adapter auto-detects credentials from LINEAR_API_KEY, LINEAR_ACCESS_TOKEN, LINEAR_CLIENT_CREDENTIALS_CLIENT_ID/LINEAR_CLIENT_CREDENTIALS_CLIENT_SECRET, or LINEAR_CLIENT_ID/LINEAR_CLIENT_SECRET, plus LINEAR_WEBHOOK_SECRET and LINEAR_BOT_USERNAME:

import { Chat } from "chat";
import { createLinearAdapter } from "@chat-adapter/linear";

const bot = new Chat({
  userName: "my-bot",
  adapters: {
    linear: createLinearAdapter(),
  },
});

bot.onNewMention(async (thread, message) => {
  await thread.post("Hello from Linear!");
});

The adapter defaults to mode: "comments" and handles Comment webhooks. For Vercel Connect and Linear app-actor installations, we recommend explicitly setting mode: "agent-sessions" to handle AgentSessionEvent webhooks, including mentions and replies within a session.

Configuration

All options are auto-detected from environment variables when not provided.

OptionRequiredDescription
apiKeyNo*Personal API key. Auto-detected from LINEAR_API_KEY
accessTokenNo*OAuth access token. Accepts a string, or (Vercel Connect) a () => string | Promise<string> resolver invoked per API call. Auto-detected from LINEAR_ACCESS_TOKEN
clientIdNo*Multi-tenant OAuth app client ID. Auto-detected from LINEAR_CLIENT_ID
clientSecretNo*Multi-tenant OAuth app client secret. Auto-detected from LINEAR_CLIENT_SECRET
encryptionKeyNoAES-256-GCM key for encrypting stored OAuth tokens. Auto-detected from LINEAR_ENCRYPTION_KEY
clientCredentialsNo*Single-tenant client credentials config
clientCredentials.scopesNoScopes for client credentials auth. Defaults to ["read", "write", "comments:create", "issues:create"]
modeNoInbound webhook handling mode. Defaults to "comments". Set "agent-sessions" for the recommended Connect setup
webhookSecretNo**Webhook signing secret. Auto-detected from LINEAR_WEBHOOK_SECRET
webhookVerifierNo**Custom verifier (request, body) => unknown | Promise<unknown> used in place of webhookSecret. Takes precedence over webhookSecret/LINEAR_WEBHOOK_SECRET. Required in Connect mode
userNameNoBot display name. Auto-detected from LINEAR_BOT_USERNAME (default: "linear-bot")
apiUrlNoOverride the Linear GraphQL API base URL. Auto-detected from LINEAR_API_URL
loggerNoLogger instance (defaults to ConsoleLogger("info"))

*One of apiKey, accessToken (string or Vercel Connect resolver), top-level clientId/clientSecret, or clientCredentials is required (via config or env vars).

**Either webhookSecret (via config or LINEAR_WEBHOOK_SECRET) or a webhookVerifier is required. When webhookVerifier is set it takes precedence and the secret is ignored.

Authentication

Option A — Vercel Connect

Use Vercel Connect to source the Linear access token at runtime instead of storing a long-lived token or OAuth secret. Pass accessToken as a resolver and verify inbound webhooks with webhookVerifier (a Vercel OIDC token from Connect trigger forwarding) instead of a webhook secret.

The simplest path is the connectLinearAdapter() helper from @vercel/connect/chat:

import { createLinearAdapter } from "@chat-adapter/linear";
import { connectLinearAdapter } from "@vercel/connect/chat";

createLinearAdapter({
  ...connectLinearAdapter("linear/acme-linear"),
  mode: "agent-sessions",
});

Or wire the fields yourself:

import { getToken } from "@vercel/connect";

createLinearAdapter({
  accessToken: () =>
    getToken("linear/acme-linear", { subject: { type: "app" } }),
  webhookVerifier: myConnectWebhookVerifier,
  mode: "agent-sessions",
});

We recommend agent sessions for Vercel Connect bots. Enable Agent session events on the Linear app and use an app-actor installation. Omitting mode keeps the "comments" default; existing bots do not need to change their configuration. Changing the adapter mode does not change the app's webhook subscriptions or permissions.

accessToken accepts a string or () => string | Promise<string> resolver invoked per API call, so it composes with Connect's short-lived tokens. When webhookVerifier is set it takes precedence over webhookSecret and LINEAR_WEBHOOK_SECRET.…

Description from the npm listing.

  • chat
  • chat-sdk
  • chatbot
  • linear
  • linear-bot
  • bot
  • adapter
  • issues
  • project-management
  • ai-agent
  • ai-sdk
  • vercel

README badge

Show your rank in a README or on your website. The badge updates automatically.

Charts

Images: 30d · 1y · all time · 1600×900 dark

Adoption over time

@chat-adapter/linear weekly downloads on npm, last 90 days: 60,954 weekly downloads as of Oct 18, 2026, -24.4% over 90 days.@chat-adapter/linearWeekly downloads on npm · Last 90 days60,954downloads / week-24.4% over 90 days050K100K150K200K250K300KJul 20Aug 4Aug 19Sep 3Sep 18Oct 3Oct 18downloads / weekobservedarchived (Internet Archive)no observationsJul 22, 2026 – Oct 18, 2026 · 89 observations · Updated Oc…pluginstats.com
@chat-adapter/linear weekly downloads on npm, last 90 days: 60,954 weekly downloads as of Oct 18, 2026, -24.4% over 90 days.

7/30/90-day growth

@chat-adapter/linear weekly downloads growth on npm: -24.1% over 7 days, -44.6% over 30 days, -24.4% over 90 days.@chat-adapter/linearWeekly downloads growth on npm60,954downloads / week now7-day growth-19,394 weekly downloads-24.1%30-day growth-48,997 weekly downloads-44.6%90-day growth-19,707 weekly downloads-24.4%Growth vs. nearest observation to each baseline date · Updated Oct 18, 2026pluginstats.com
@chat-adapter/linear weekly downloads growth on npm: -24.1% over 7 days, -44.6% over 30 days, -24.4% over 90 days.

Ranking history

@chat-adapter/linear npm ranking history: currently #555 (by weekly downloads).@chat-adapter/linearnpm ranking · by weekly downloads · Last 90 days#555current rank#150#200#250#300#350#400#450#500#550#600Jul 22Aug 6Aug 21Sep 5Sep 20Oct 5Oct 20rankOct 17, 2026 – Oct 20, 2026 · 4 observations · Updated Oct 18, 2026pluginstats.com
@chat-adapter/linear npm ranking history: currently #555 (by weekly downloads).

Listing placement

All npm2,320 listings · 116 pages · 1,161 shown · page 28, #15 (overall #555)
All npm: every listing in weekly downloads order

Listing placement

AI SDKs259 listings · 13 pages · page 2, #8 (overall #28)
AI SDKs: every listing in weekly downloads order

Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.

Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.

Recent observations

Full history (544)
Recent weekly downloads observations for @chat-adapter/linear
Date (UTC)Weekly downloadsChange vs. previous
60,954+9.2K
51,728-11.5K
63,214+2.3K
60,893-18.2K
79,047-19.9K
98,9660
98,966+18.6K
80,348-7.1K
87,467-3.1K
90,591-6.8K
97,425-10.2K
107,664-19.7K
127,326-43.4K
170,723—

Data source

Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.

Listing: https://www.npmjs.com/package/@chat-adapter/linear. First seen Oct 16, 2026; last successful collection Oct 20, 2026. See the methodology.