Skip to content
Upstash Workflow (TypeScript)

Upstash Workflow (TypeScript) Skill

Upstash's official skill for the Workflow TypeScript SDK - define serverless workflow endpoints, run durable steps, and trigger and manage runs from the client.

GitHub Docs

Install

Install with the skills CLI

One command for Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf and dozens of other agents. Needs Node.js; the skill is fetched straight from upstash/skills.

$ npx skills add upstash/skills --skill upstash-workflow-js

Run it in a terminal. The CLI finds the agents installed on your machine, asks which ones to add the skill to, and whether to install it into the folder you ran it from or for all your projects.

Other ways to install

  1. Open the skill on GitHub and download the folder that holds its SKILL.md.
  2. Put it at ~/.claude/skills/upstash-workflow-js/, where Claude Code picks it up in every project.

No scripts or references next to it? Saving the SKILL.md alone as ~/.claude/skills/upstash-workflow-js/SKILL.md works too.

Using another agent? Its personal skills folder
Codex
~/.agents/skills/
Cursor
~/.cursor/skills/
GitHub Copilot
~/.copilot/skills/
Gemini CLI
~/.gemini/skills/
Windsurf
~/.codeium/windsurf/skills/
OpenCode
~/.config/opencode/skills/

About

  • Define workflow endpoints with serve() from @upstash/workflow
  • Structure durable, checkpointed steps with context.run()
  • Trigger and manage workflow runs from the client
  • Progressive references so context stays small
  • Works as an Agent Skills repo, Claude Code plugin and Codex plugin

Upstash Workflow lets you expose an HTTP endpoint that runs a multi-step process durably, with QStash handling delivery and retries underneath. This skill gives an agent the SDK's actual shape so it writes working endpoints instead of approximations.

What it covers

Installing @upstash/workflow, defining a workflow endpoint with serve(), and structuring work as context.run() steps - the unit that makes a workflow resumable, because each completed step is checkpointed rather than replayed. From there it moves to triggering workflows and managing runs through the client.

The skill points on to companion files for deeper areas of the SDK, so the loaded context stays small until a task needs more.

Use it when

Creating workflow endpoints, breaking a long-running process into durable steps, or interacting with the Upstash Workflow client - in any TypeScript or JavaScript runtime where Upstash Workflow runs, including serverless platforms where a single request cannot stay open long enough to finish the job.

Where it fits

One of the upstash/skills collection, which also covers Upstash Redis, Vector, Search, QStash, Rate Limit and Box (sandboxed cloud containers), plus a combined skill spanning every SDK. The repo doubles as an Agent Skills repo, a Claude Code plugin and an OpenAI Codex plugin.

Install with npx skills add upstash/skills, /plugin marketplace add upstash/skills in Claude Code, codex plugin marketplace add upstash/skills, or npx ctx7 skills install upstash/skills. For operations that call the Upstash API directly - creating databases, publishing messages, querying vectors - Upstash also publishes an MCP server, @upstash/mcp-server.

Try it

Once installed, ask your agent something like:

Create an Upstash Workflow endpoint that enriches a signup, waits for email verification, then provisions the account.

SKILL.md

The instructions your agent loads, as published by Upstash.

SKILL.md
name
upstash-workflow-js
description
Skills for the Upstash Workflow TypeScript/JavaScript SDK to define, trigger, and manage workflows. Use this Skill whenever a user wants to create workflow endpoints, run steps, or interact with the Upstash Workflow client.

Upstash Workflow SDK

Quick Start

The Upstash Workflow SDK lets you expose serverless workflow endpoints and run them reliably using QStash under the hood.

Install:

npm install @upstash/workflow

Define a simple workflow endpoint:

import { serve } from "@upstash/workflow";

export const { POST } = serve(async (context) => {
  await context.run("step-1", () => console.log("step 1"));
  await context.run("step-2", () => console.log("step 2"));
});

Trigger it from your backend:

import { Client } from "@upstash/workflow";

const client = new Client({ token: process.env.QSTASH_TOKEN! });
await client.trigger({ url: "https://your-app.com/api/workflow" });
Other Skill Files

These files contain the full documentation. Use them for details, patterns, and advanced behavior.

  • basics:
  • basics/serve – How to expose workflow endpoints.
  • basics/context – Full API for workflow context (steps, waits, webhooks, events, invoke, etc.).
  • basics/client – Using the Workflow client to trigger, cancel, inspect, and notify runs.
  • features:
  • features/invoke – Cross‑workflow invocation.
  • features/reliability – Retries, failure callbacks, and DLQ.
  • features/flow-control – Rate limits, concurrency, and parallelism.
  • features/wait-for-event – Notify and wait-for-event patterns.
  • features/webhooks – Webhook creation and consumption.
  • how to:
  • how-to/local-dev – Local QStash dev server (auto via QSTASH_DEV=true) and tunneling.
  • how-to/realtime – Realtime and human‑in‑the‑loop workflows.
  • how-to/migrations – Migrating workflows safely.
  • how-to/middleware – Adding middleware to workflows.
  • other files:
  • rest-api – Low-level REST endpoints for interacting with QStash/Workflow.
  • troubleshooting – Common debugging and environment issues.
  • agents – Using Workflow with agents, orchestrators, and automation patterns.
Install
Featured

Inngest's durable-execution playbook as an agent skill — steps and memoisation, event and cron triggers, idempotency, cancellation, retries and non-retriable errors.

Seven ways to throttle agent and background workloads — concurrency keys, throttling, rate limiting, debounce, singleton, priority and batching — with a decision guide that picks the right one.

Build multi-step Lambda workflows that survive interruption and run for up to a year — the replay model, step operations, wait/callback patterns, saga-style compensation and local testing.

Skill: Convex

by Convex

Featured

Convex's official top-level agent skill — routes an agent to the right convex-* skill for the task and to a served capability catalogue that stays current without a reinstall.

Browse all skills →