Skip to content
PluginStats

@upstash/agentkit-ai-sdk weekly downloads statistics

By upstash (9 listings) · npm · AI SDKs

Upstash AgentKit adapter for the Vercel AI SDK: chat history, memory tools, Redis-Search tools, rate limiting, and cached tools.

View on npm Fresh · Oct 17, 2026

@upstash/agentkit-ai-sdk has 7,993 recorded weekly downloads on npm, a decrease of 33.6% over the past 30 days.

It ranks #979 of 2,256 tracked npm listings by weekly downloads.

Over 90 days, weekly downloads changed by +114086%.

PluginStats has 121 daily observations since Jun 19, 2026; the latest is from Oct 17, 2026.

Weekly downloads
7,993
Official API · Oct 17, 2026
7-day growth
-66.8%
-16.1K weekly downloads
30-day growth
-33.6%
-4.1K weekly downloads
90-day growth
+114086%
+8K weekly downloads
Rank
#979
Among tracked npm listings

About @upstash/agentkit-ai-sdk

@upstash/agentkit-ai-sdk

Vercel AI SDK adapter for Upstash AgentKit — drop-ins for generateText / streamText. redis defaults to Redis.fromEnv(), so you import only from this package.

| Import | Feature |

| createChatHistory | Durable chat history on Redis Search — save, list, and $smart-search a user's transcripts. | | createMemoryTools | recall_memory + save_memory tools so the model reads and writes long-term memory. | | createSearchTools | search / aggregate / count tools over a Redis Search index (this is how you do RAG). | | createRateLimit | A configured Upstash Ratelimit to call before the model. | | cachedTools | Memoize a map of AI SDK tools' results in Redis. |

Chat history

A Redis-backed ChatHistory, the durable source of truth for your conversations. userId comes from your auth session; chatId is the useChat id that the client posts. Save the full transcript from your route's onFinish:

To load a chat, take chatId from the page route and userId from the session, then seed useChat:

Config & how it's stored

Each chat is one JSON doc at agentkit:chat:: (keyed per user, so two users can't collide on a sessionId), indexed over userId + sessionId (filters) and userMessages + modelMessages ($smart fuzzy text); the raw messages array rides along unindexed. saveChat overwrites the whole array (no delta merge) — useChat sends the full conversation. Other methods: getChat / deleteChat ({ userId, sessionId }), listChats / searchChats ({ userId }).

Security: userId is the tenant boundary

Every method takes a single object; userId is required, non-empty, and may not contain :. Derive it from a verified server-side auth source — the subject/user id from your auth provider (Clerk, Auth.js/NextAuth, Supabase Auth, Auth0, …) — and **never from a client-supplied header, query param, or body** (read it from the session in your route, not the request the browser controls). A chat can't be read or overwritten under a different userId.

Agent memory

recall_memory and save_memory tools so the model reads and writes its own long-term memory.

Options & the userId tenant boundary

• userId _(required)_ — a string, or (input, options) => string. • redis — defaults to Redis.fromEnv(). • topK — max memories recall returns. • minScore — BM25 relevance floor. • recallToolName / saveToolName — override the tool names.

userId is the only tenant boundary (required, non-empty, no :). **Derive it from a verified server-side auth source** (Clerk, Auth.js/NextAuth, Supabase Auth, Auth0, …) — never a client-supplied value. Memories are stored at agentkit:memory::.

Search tools

search / aggregate / count over an Upstash Redis Search index; the model-facing descriptions are generated from your schema. Use these over your own documents for RAG.

Options

• schema _(required)_ — built with s from @upstash/redis. • redis — defaults to Redis.fromEnv(). • indexName — defaults to "agentkit:search". • prefix — key prefix for indexed JSON docs (defaults to ":"). • defaultLimit — default page size for search (10).

The index is created (and waitIndexing-ed) reactively on first use — no setup step.

Rate limiting

A configured Upstash Ratelimit. Call .limit(identifier) before the model and short-circuit when over the limit.

Options

• limiter _(required)_ — e.g. Ratelimit.slidingWindow(20, "1 m") or fixedWindow(...). • redis — defaults to Redis.fromEnv(). • prefix — base key prefix; keys are : (default agentkit:rateLimit).

There is no model wrapper; pass a per-user identifier to .limit() to throttle per user.

Tool cache

Memoize a map of AI SDK tools' results in Redis. Each tool is cached under its map key, scoped to userId.

Options

Pass tools built with the AI SDK's tool() (so each keeps full input/output inference). Second arg:

• userId _(required)_ — a string, or (input, options) => string; scopes every entry to this user. • redis — defaults to Redis.fromEnv(). • ttlSeconds — default per-result TTL for every tool.

Cache keys are agentkit:toolCache::: — the toolName is the map key, so you never pass a name yourself.

Telemetry

The SDK reports its name and version to Upstash as a header on the requests made by the redis client, so we know which SDK versions are in use. No personal data, keys or identifiers are collected. The header looks like @upstash/redis@1.38.0,@upstash/agentkit-sdk@0.2.0,@upstash/agentkit-ai-sdk@0.2.0.

Opt out with enableTelemetry: false on any helper:

or by setting the UPSTASH_DISABLE_TELEMETRY environment variable. Disabling telemetry on the redis client itself also disables it here.

Testing

Tests run against a real Upstash Redis (only LLM calls are mocked). Set UPSTASH_REDIS_REST_URL / UPSTASH_REDIS_REST_TOKEN (suites skip when absent).

License

MIT

Description from the npm listing.

  • upstash
  • ai-sdk
  • vercel
  • ai
  • agent
  • memory
  • rag
  • llm
  • cache
  • tools

Where @upstash/agentkit-ai-sdk sits in the listing

Each band is one page of 20. Weekly downloads on a log 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.

All npm2,256 listings · 113 pages · page 49, #19 (overall #979)
All npm: every listing in weekly downloads order
PNG SVG
AI SDKs250 listings · 13 pages · page 4, #2 (overall #62)
AI SDKs: every listing in weekly downloads order
PNG SVG

Charts

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

Adoption over time

@upstash/agentkit-ai-sdk weekly downloads on npm, last 90 days: 7,993 weekly downloads as of Oct 17, 2026, +114086% over 90 days.@upstash/agentkit-ai-sdkWeekly downloads on npm · Last 90 days7,993downloads / week+114086% over 90 days010K20K30K40K50K60KJul 19Aug 3Aug 18Sep 2Sep 17Oct 2Oct 17downloads / weekobservedarchived (Internet Archive)no observationsJul 21, 2026 – Oct 17, 2026 · 89 observations · Updated Oc…pluginstats.com
@upstash/agentkit-ai-sdk weekly downloads on npm, last 90 days: 7,993 weekly downloads as of Oct 17, 2026, +114086% over 90 days.
PNG SVG

7/30/90-day growth

@upstash/agentkit-ai-sdk weekly downloads growth on npm: -66.8% over 7 days, -33.6% over 30 days, +114086% over 90 days.@upstash/agentkit-ai-sdkWeekly downloads growth on npm7,993downloads / week now7-day growth-16,091 weekly downloads-66.8%30-day growth-4,051 weekly downloads-33.6%90-day growth+7,986 weekly downloads+114086%Growth vs. nearest observation to each baseline date · Updated Oct 17, 2026pluginstats.com
@upstash/agentkit-ai-sdk weekly downloads growth on npm: -66.8% over 7 days, -33.6% over 30 days, +114086% over 90 days.
PNG SVG

Ranking history

@upstash/agentkit-ai-sdk npm ranking history: currently #979 (by weekly downloads).@upstash/agentkit-ai-sdknpm ranking · by weekly downloads · Last 90 days#979current rank#975#976#977#978#979#980#981Jul 21Aug 5Aug 20Sep 4Sep 19Oct 4Oct 19rankOct 18, 2026 – Oct 19, 2026 · 2 observations · Updated Oct 17, 2026pluginstats.com
@upstash/agentkit-ai-sdk npm ranking history: currently #979 (by weekly downloads).
PNG SVG

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.

Recent observations

Full history (121)
Recent weekly downloads observations for @upstash/agentkit-ai-sdk
Date (UTC)Weekly downloadsChange vs. previous
7,993-2.1K
10,092+744
9,348-5.6K
14,909-7.4K
22,2930
22,293-1.6K
23,857-227
24,084-1.7K
25,737-5.5K
31,221-3.3K
34,559+360
34,199-8.8K
42,996-2.2K
45,159—

Similar npm AI SDKs plugins

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/@upstash/agentkit-ai-sdk. First seen Oct 16, 2026; last successful collection Oct 19, 2026. See the methodology.