Skip to content
PluginStats

durable-harness weekly downloads statistics

By vercel-labs (8 listings) · npm · Claude Code

Durable coding-agent harnesses (Claude Code, Codex, OpenCode, Pi) on a Workflow SDK World: the session is a run, its event log the source of truth, and a crash resumes the turn from the log on another machine.

View on npm Fresh · Nov 5, 2026

durable-harness has 26,228 recorded weekly downloads on npm, a change of +157% over the past 7 days, ranking #924 of 2,855 tracked listings.

Weekly downloads
26,228
Official API · Nov 3, 2026
7-day growth
+157%
+16K weekly downloads
30-day growth
—
Insufficient history
90-day growth
—
Insufficient history
Rank
#924
Among tracked npm listings

About durable-harness

<div align="center"> <h1>durable-harness</h1>

<a href="https://vercel.com"><img alt="Vercel logo" src="https://img.shields.io/badge/MADE%20BY%20Vercel-000000.svg?style=for-the-badge&logo=Vercel&labelColor=000"></a> <a href="https://www.npmjs.com/package/durable-harness"><img alt="npm version" src="https://img.shields.io/npm/v/durable-harness?style=for-the-badge&labelColor=000000"></a> <a href="https://github.com/vercel-labs/durable-harness/blob/main/LICENSE.md"><img alt="License" src="https://img.shields.io/npm/l/durable-harness.svg?style=for-the-badge&labelColor=000000"></a>

</div>

durable-harness runs coding-agent harnesses (Pi, OpenCode, libfx's fx, Claude Code and Codex) as durable agents on a Workflow SDK World. Each session is a workflow run: its conversation, the turn in flight and every model and tool call are in the run's event log, so a crash anywhere resumes the turn from the log on another machine, and a tool call that isn't safe to repeat is never run twice.

[!NOTE] durable-harness is experimental: it's on 0.0.x, and its API may change between releases.

Quick start

Install it with a harness, here Pi with pi-durable, in a Next.js app:

npm install durable-harness @earendil-works/pi-durable @earendil-works/chord @earendil-works/pi-ai just-bash

Open Pi's own durable Harness on a World-backed storage. Agents are tool-less by default; Pi's coding tools go on a virtual workspace, whose files live in the session's log:

// lib/agent.ts
import { BACKGROUND_CONTEXT as ctx } from '@earendil-works/chord/context';
import { createRegistry, Harness, type Storage } from '@earendil-works/pi-durable';
import { CodingTools, GATEWAY_PROVIDER, gatewayModels, resumeWith, virtualEnv } from 'durable-harness/pi-durable';

const models = gatewayModels();
const registry = createRegistry();
registry.install(CodingTools);

export const agent = { model: { provider: GATEWAY_PROVIDER, modelId: 'anthropic/claude-sonnet-4.5' } };
export const open = resumeWith((storage: Storage) => Harness.open(storage, { models, registry, env: virtualEnv() }, ctx));

Serve it from a chat route, and configure the integration:

// app/api/chat/route.ts
import { chatRoute } from 'durable-harness/pi-durable';
import { agent, open } from '@/lib/agent';

export const { GET, POST } = chatRoute({ open, agent, authorize: async (request) => { /* your auth */ } });
// next.config.ts
import type { NextConfig } from 'next';
import { withDurableHarness } from 'durable-harness/next';

const nextConfig: NextConfig = {
  // your existing config
};

export default withDurableHarness(nextConfig);

withDurableHarness discovers modules that export agents created at module scope with durableAgent, claudeCode, codex, opencode or pi, and modules that register a pi-durable opener with resumeWith. A script that creates an agent for itself, an exported factory that creates one later, and code samples in strings or comments are excluded. Import aliases, default exports, export lists, and containers or accessors for an existing agent are supported. For custom factories or effect-only agent registration, list the modules explicitly: withDurableHarness(nextConfig, { agents: ['lib/agent.ts'] }).

Choose your harness and framework in the agent harnesses docs.

Harnesses

  • Pi: durable-harness/pi-durable (recommended: Pi's own durable Harness on a World), or durable-harness/pi.
  • OpenCode: durable-harness/opencode.
  • fx: durable-harness/fx, libfx's kernel tools for its own durable agents.
  • Claude Code and Codex: durable-harness/claude-code and durable-harness/codex. They run only in the session's own Vercel Sandbox, never in a shared Function (why).

Model-chosen commands and files run on a virtual workspace (virtual()) or in the session's own Vercel Sandbox (sandbox()), never on the machine that drives the session. See tools and security.

Run anywhere

Local development uses the Workflow SDK's local World with no configuration. Deploy to Vercel for managed storage, queuing and scaling, with sessions in Agent Runs. To self-host, use the Postgres World or any other World: see self-hosting.

Contributing

Contributions are welcome. Use issues to collaborate with the team, and read CONTRIBUTING.md before opening a pull request.

Security

If you find a security vulnerability in durable-harness, disclose it responsibly instead of opening a public issue.

To participate in our Open Source Software Bug Bounty program, please email responsible.disclosure@vercel.com. We will add you to the program and provide further instructions for submitting your report.

Description from the npm listing.

  • agent
  • agents
  • ai
  • harness
  • durable
  • durability
  • workflow
  • workflow-sdk
  • world
  • claude-code
  • codex
  • opencode
  • pi
  • libfx
  • nextjs
  • 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

durable-harness weekly downloads on npm, last 90 days: 26,228 weekly downloads as of Nov 3, 2026.durable-harnessWeekly downloads on npm · Last 90 days26,228downloads / week05K10K15K20K25K30KAug 5Aug 20Sep 4Sep 19Oct 4Oct 19Nov 3downloads / weekobservedarchived (Internet Archive)no observationsAug 7, 2026 – Nov 3, 2026 · 88 observations · Updated Nov …pluginstats.com
durable-harness weekly downloads on npm, last 90 days: 26,228 weekly downloads as of Nov 3, 2026.

7/30/90-day growth

durable-harness weekly downloads growth on npm: +157% over 7 days, 30-day growth unavailable, 90-day growth unavailable.durable-harnessWeekly downloads growth on npm26,228downloads / week now7-day growth+16,038 weekly downloads+157%30-day growth+26,228 weekly downloadsInsufficient history90-day growth+26,228 weekly downloadsInsufficient historyGrowth vs. nearest observation to each baseline date · Updated Nov 3, 2026pluginstats.com
durable-harness weekly downloads growth on npm: +157% over 7 days, 30-day growth unavailable, 90-day growth unavailable.

Ranking history

durable-harness npm ranking history: currently #924 (by weekly downloads).durable-harnessnpm ranking · by weekly downloads · Last 90 days#924current rank#900#950#1000#1050#1100#1150Aug 7Aug 22Sep 6Sep 21Oct 6Oct 21Nov 5rankOct 31, 2026 – Nov 5, 2026 · 6 observations · Updated Nov 3, 2026pluginstats.com
durable-harness npm ranking history: currently #924 (by weekly downloads).

Listing placement

All npm2,853 listings · 143 pages · 1,427 shown · page 47, #15 (overall #935)
All npm: every listing in weekly downloads order

Listing placement

Claude Code460 listings · 23 pages · page 2, #7 (overall #27)
Claude Code: 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 (123)
Recent weekly downloads observations for durable-harness
Date (UTC)Weekly downloadsChange vs. previous
26,228-729
26,957+13.7K
13,219-834
14,053-1.8K
15,804+2.4K
13,439+3.2K
10,190+2.9K
7,278+2.4K
4,834+883
3,951+792
3,159+1.2K
1,981+1.3K
7080
708—

Similar npm Claude Code plugins

All 20 durable-harness alternatives

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/durable-harness. First seen Oct 31, 2026; last successful collection Nov 5, 2026. See the methodology.