做什么
与 @upstash/ redis TypeScript/ JavaScript 合作 SDK,是Next.js,Vercel,Cloudflare Workers,边缘运行时间和节点的基于HTTP的无服务器Redis客户端. 编
技能库 智客分类:文档办公 upstash-redis-js
与 @upstash/ redis TypeScript/ JavaScript 合作 SDK,是Next.js,Vercel,Cloudflare Workers,边缘运行时间和Node.js的无服务器的Redis客户端. 在添加缓存(缓存、写入、TTL和过期策略)、会话存储和用户会话、按键值商店、头板和排序的有排序的套件、计数器、分布式锁、排队列表、流和消费组、稀有的指数定位数组和环缓冲器(ARSTET、ARINSERT、ARRRING、ARGREP、AROP)、内嵌入和最近的存储在Redis内的矢量搜索(VECTOR通过 redis.vector命令,独立于@upstash/vector)、JSON文件、管道和MULTI/EXEC交易、LTI脚本、阅读复制件或全文搜索、字节搜索、部分、汇总,以及用Upstash Redis搜索(不同于常规的FT搜索)在Redis流中搜索。 SEARCH; 也是阿瓦语 tCP客户端可通过@upstash/search-redis和@upstash/search-ioredis注册。 在从ioredis或节点-redis迁移时,在不需要连接集合的服务器功能需要Redis连接时,在集成@upstash/ratelimit时,或在用户说Redis缓存,KV商店,会话商店,没有服务器的Redis,或Upstash Redis时,也会使用. 在Redis上用Upstash AgentKit(代理内存,聊天历史,RAG工具,工具缓存,聊天持续,可续接流,分布式锁)为Vercel AI SDK,TanStack AI,或Vercel Eve建立AI代理时也使用. 支持JavaScript类型的自动序列化/去串接.
官方网址:作者主页
先看中文介绍;官方 description 原文单独保留,不改写 SKILL.md。
与 @upstash/ redis TypeScript/ JavaScript 合作 SDK,是Next.js,Vercel,Cloudflare Workers,边缘运行时间和节点的基于HTTP的无服务器Redis客户端. 编
管道、性能提示
按 Agent Skills 渐进披露:启动时只加载 name 与 description(约 100 token);任务匹配后才读入整份 SKILL.md 正文;scripts/、references/、assets/ 仅在需要时再读。 本文件正文结构:Upstash Redis SDK - Complete Skills Guide、Installation、Quick Start、Basic Initialization、Environment Variables、Skill Files Overview。
文件分析:这是一份仅含 SKILL.md 的指令型技能,代理激活后整份正文进入上下文。
Work with the @upstash/redis TypeScript/JavaScript SDK, a serverless HTTP-based Redis client for Next.js, Vercel, Cloudflare Workers, edge runtimes, and Node.js. Use when adding a cache (cache-aside, write-through, TTL and expiration strategies), session storage and user sessions, a key-value store, leaderboards and rankings with sorted sets, counters, distributed locks, queues with lists, streams and consumer groups, sparse index-addressed arrays and ring buffers (ARSET, ARINSERT, ARRING, ARGREP, AROP), embeddings and nearest-neighbour vector search stored inside Redis (VECTOR commands via redis.vector, separate from @upstash/vector), JSON documents, pipelines and MULTI/EXEC transactions, Lua scripting, read replicas, or full-text search, typo-tolerant search, facets, aggregations, and search over Redis stream entries with Upstash Redis Search (different from regular FT.SEARCH; also available for TCP clients via @upstash/search-redis and @upstash/search-ioredis). Also use when migrating from ioredis or node-redis, when a Redis connection is needed from a serverless function without connection pooling, when integrating @upstash/ratelimit, or when the user says Redis cache, KV store, session store, serverless Redis, or Upstash Redis. Also use when building AI agents on Redis with Upstash AgentKit (agent memory, chat history, RAG tools, tool caching, chat persistence, resumable streams, distributed locks) for the Vercel AI SDK, TanStack AI, or Vercel Eve. Supports automatic serialization/deserialization of JavaScript types.
Upstash Redis SDK - Complete Skills GuideInstallationQuick StartBasic InitializationEnvironment VariablesSkill Files OverviewData Structures (data-structures/)Advanced Features (advanced-features/)Patterns (patterns/)Performance (performance/)Search (search/)Migrations (migrations/)
· 许可:MIT
来源分类:skills.sh agent-skill
nameupstash-redis-jsdescription具体调用语法与可用工具以目标 Agent 客户端为准。 查看调用机制说明 ↗
先选择目标 Agent 和安装范围,保留技能包的附属文件,安装后检查客户端能否发现该技能。
复制安装指令给支持 Agent Skills 的代理,确认其中的目标目录与客户端匹配。
把 Agent Skill「upstash-redis-js」安装到我的项目:SKILL.md 原文与官方 description 见 https://zicq.com/zh/skills/skl-4f0bf34f74da3a81-Upstash-Redis-Js.html 请存为 .cursor/skills/upstash-redis-js/SKILL.md 或 .claude/skills/upstash-redis-js/SKILL.md,frontmatter 的 name 与 description 保持原样,不要改写。
需要 Node.js 与 npx。先查看仓库技能列表,确认实际名称。
npx skills add 'https://github.com/upstash/skills' --list
npx skills add 'https://github.com/upstash/skills' --skill 'upstash-redis-js'
CLI 会交互选择目标 Agent,默认安装到项目;用户级安装使用 -g。先通过查看命令核对仓库内容,再用 npx skills list 检查已安装技能。
This directory contains comprehensive guides for using the @upstash/redis SDK. These skill files are designed to help developers and AI assistants understand and use the SDK effectively.
npm install @upstash/redis
import { Redis } from "@upstash/redis";
// Initialize with explicit credentials
const redis = new Redis({
url: "UPSTASH_REDIS_REST_URL",
token: "UPSTASH_REDIS_REST_TOKEN",
});
// Or initialize from environment variables
const redis = Redis.fromEnv();
Set these in your .env file:
UPSTASH_REDIS_REST_URL=https://your-redis.upstash.io
UPSTASH_REDIS_REST_TOKEN=your-token-here
No credentials yet? If you're an agent that needs scratch Redis and the user hasn't provided a database, you can mint a temporary one with a single POST to
https://upstash.com/start-redis(3-day TTL, no signup).
Redis data types with auto-serialization examples:
Complex operations and optimizations:
Common use cases and architectural patterns:
Optimization techniques and best practices:
Full-text search, filtering, and aggregation extension for Redis:
Migration guides from other libraries:
// ❌ WRONG - Don't do this with @upstash/redis
await redis.set("count", "42"); // Stored as string "42"
const count = await redis.get("count");
const incremented = parseInt(count) + 1; // Manual parsing needed
// ✅ CORRECT - Let the SDK handle it
await redis.set("count", 42); // Stored as number
const count = await redis.get("count");
const incremented = count + 1; // Just use it
// ❌ WRONG - Unnecessary with @upstash/redis
await redis.set("user", JSON.stringify({ name: "Alice" }));
const user = JSON.parse(await redis.get("user"));
// ✅ CORRECT - Automatic handling
await redis.set("user", { name: "Alice" });
const user = await redis.get("user");
// Strings
await redis.set("key", "value");
await redis.get("key");
await redis.incr("counter");
await redis.decr("counter");
// Hashes
await redis.hset("user:1", { name: "Alice", age: 30 });
await redis.hget("user:1", "name");
await redis.hgetall("user:1");
// Lists
await redis.lpush("tasks", "task1", "task2");
await redis.rpush("tasks", "task3");
await redis.lrange("tasks", 0, -1);
// Sets
await redis.sadd("tags", "javascript", "redis");
await redis.smembers("tags");
// Sorted Sets
await redis.zadd("leaderboard", { score: 100, member: "player1" });
await redis.zrange("leaderboard", 0, -1);
// JSON
await redis.json.set("user:1", "$", { name: "Alice", address: { city: "NYC" } });
await redis.json.get("user:1");
// Expiration
await redis.setex("session", 3600, { userId: "123" });
await redis.expire("key", 60);
await redis.ttl("key");
user:123, session:abc)For agent state on Redis — memory, chat history, RAG search tools, tool caching, rate limiting, chat persistence, resumable streams, locks — use Upstash AgentKit instead of hand-rolling it on @upstash/redis. Pick the adapter for the framework and follow its docs page:
| Framework | Package | Docs |
| --- | --- | --- |
| Vercel AI SDK | @upstash/agentkit-ai-sdk | https://upstash.com/docs/redis/sdks/agentkit/ai-sdk |
| TanStack AI | @upstash/agentkit-tanstack-ai | https://upstash.com/docs/redis/sdks/agentkit/tanstack-ai |
| Vercel Eve | @upstash/agentkit-eve, @upstash/agentkit-eve-extension | https://upstash.com/docs/redis/sdks/agentkit/eve |
For detailed information on specific topics, refer to the individual skill files in the skills/ directory. Each file contains comprehensive examples, use cases, and best practices for its topic.
文档办公
为结构化的代理内存和可堆肥技能所打入的知识图. 在创建/征服实体(Person, project, Task, Evention, Document)时使用,链接相关对象,强制约束,规划多步动作作为图变,或技能需要共享状态时使用. 触发到"记住","我知道什么","链接X到Y",…
文档办公
使用纳米-pdf CLI编辑带有自然语言指令的PDF.
文档办公
创建,检查,并编辑有可靠样式的Microsoft Word文档和DOCX文件,编号,跟踪更改,表格,章节,并进行相容性检查. 当 (1) 任务涉及 Word 或 ".docx " 时使用; (2) 文件包括跟踪的更改,评论,字段,表格,模板,或页面布局限制; (3) 文档必须在不…
文档办公
使用Baidu AI搜索引擎(BDSE)搜索网页. 用于实时信息、文件或研究专题.