Skip to content
PluginStats

@ai-dossier/worktree-pool weekly downloads statistics

By ai-dossier (5 listings) · npm · Claude Code

Pre-warmed Git worktree pool for agent orchestration: instant, isolated checkouts for coding agents running signed, versioned agent skills in parallel.

View on npm Fresh · Oct 17, 2026

@ai-dossier/worktree-pool has 4,364 recorded weekly downloads on npm, an increase of 558% over the past 30 days.

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

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

PluginStats has 543 daily observations since Apr 23, 2025; the latest is from Oct 17, 2026.

Weekly downloads
4,364
Official API · Oct 17, 2026
7-day growth
-65.7%
-8.4K weekly downloads
30-day growth
+558%
+3.7K weekly downloads
90-day growth
+87180%
+4.4K weekly downloads
Rank
#1127
Among tracked npm listings

About @ai-dossier/worktree-pool

@ai-dossier/worktree-pool

Use one portable AI-agent skill across Claude Code, Codex, OpenCode, and MCP-compatible workflows.

@ai-dossier/worktree-pool is for developers and coding-agent teams that need isolated, parallel Git worktrees without repeated setup. It maintains ready-to-use worktrees so issue work can begin in seconds instead of repeating a dependency install and build for every agent.

Part of the ai-dossier ecosystem: use @ai-dossier/sched to orchestrate agents, @ai-dossier/cli to run workflows, and the ai-dossier project for the complete platform.

Works with pnpm, yarn, bun and npm — the package manager, lockfile and build command are detected from the project, or pinned explicitly in .worktree-pool.json.

Install

Or use directly with npx:

Requires Node.js >= 20.0.0.

Commands

| Command | Description |

| worktree-pool status [--json] | Show pool inventory (warm/assigned/broken counts); --json prints the whole inventory, including per-entry status, for callers. Not strictly read-only: first repairs stale worktree links of pool entries (git metadata only) | | worktree-pool replenish [--count N] | Pre-warm spares up to target count, after repairing stale worktree links | | worktree-pool claim --issue N --branch B | Claim a warm worktree, print path (repairs stale worktree links first); exits non-zero, renaming nothing, if a folder named after the branch already exists | | worktree-pool return --path P [--json] | Return worktree to pool for reuse; kills any process still running out of it first, self-checks on success, and on failure marks the entry broken and exits non-zero naming the step | | worktree-pool refresh | Fetch origin + rebuild in all warm worktrees | | worktree-pool gc [--dry-run] [--yes] | Remove stale/orphaned pool worktrees (never anything else), killing any process still running out of one first | | worktree-pool reap [--older-than H] [--dry-run] [--yes] | Kill processes orphaned by a removed or non-assigned worktree, at least H hours old (default 24) — the sweep for what return/gc already missed | | worktree-pool init | Configure pool directory for this project | | worktree-pool detect [dir] | Print the detected package-manager env as JSON |

Quick Start

How It Works

1. Replenish creates worktrees from base_ref (default origin/main) on temp branches, then runs the warm commands (install + build) 2. Claim renames a warm worktree, switches to your feature branch — instant setup (~2s) 3. Return first kills any process still running out of the worktree (see Process cleanup below), then recycles it back to pool on a fresh temp branch, then verifies the result against reality — the entry really reads warm, no tracked file is dirty, and the new pool/spare-* branch is really checked out — before reporting success. A failure at any step leaves the entry broken (never assigned, never a falsely-warm spare), leaves the directory on disk, and exits non-zero naming the step 4. GC kills any process still running out of a worktree it is about to touch, then removes broken entries and stale entries (>72h) and reconciles disk state vs pool state — only for worktrees the pool created (see Sharing the pool directory)

Claim and return only re-run the warm commands when the project's lockfile changed between the worktree's base commit and base_ref — otherwise the existing node_modules and build output are reused.

Process cleanup

A dev server, jest run, or vite server started inside a worktree by a verification step does not stop on its own when the worktree it was started in is recycled or removed. Left unaddressed, these outlive the worktree, the branch and the issue that spawned them — a real sweep on a dev host found 13 such processes across four merged worktrees, one holding open connections to a shared test database for 10 days.

• return and gc kill first. Before recycling or removing a worktree, both send SIGTERM to every process whose cwd or command line is rooted under that exact worktree path, wait up to 5 seconds, then SIGKILL anything still alive. The kill is scoped to that one worktree — a sibling worktree sharing the same pool directory is never touched — and the killed pids are printed and included in return --json's killedProcesses / gc's killedProcesses field. • reap is the sweep for what got away — a process from a worktree that was removed by something other than this tool, or that is otherwise no longer assigned:

reap never touches a worktree the pool did not create (the same ownership rule gc uses), and never a currently-registered worktree in an active pool status (assigned, recycling, creating, warming) — that is active work, not an orphan, and includes a return that is mid-flight but has not reached its own kill step yet. Run it on a schedule (a host cron/timer calling reap --older-than 24 --yes), not per-issue; return/gc already handle the common case at the moment a worktree changes hands. • The Linux discovery path (/proc/*/cwd + /proc/*/cmdline) always excludes the invoking process and its whole parent chain, so running return --path from a shell whose own cwd is inside cannot kill its own invoker. The ps-based fallback (non-Linux) can only exclude the invoking process itself — an ancestor's cwd/ppid is not determinable without /proc. return, gc, and reap all print skipped self/ancestors: whenever a match was excluded this way — routinely true for return, since its own command line contains the worktree path it was given. • return and gc refuse an unsafe kill root outright rather than silently skipping it: an empty path, the filesystem root, the git root itself, or anything outside the pool directory. Every current call site already derives a safe path, so this should never fire — it exists so a future one cannot skip the check.

Pool State

Pool state is stored in worktrees/.pool-state.json (automatically gitignored). Each worktree transitions through:

A broken entry is never handed out — claim only ever selects warm.…

Description from the npm listing.

  • git-worktree
  • coding-agents
  • parallel-development
  • agent-workflows
  • worktree-pool
  • developer-productivity
  • monorepo
  • agent-orchestration
  • ai-agents
  • agent-skills
  • claude-code
  • llm

Where @ai-dossier/worktree-pool 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 57, #7 (overall #1127)
All npm: every listing in weekly downloads order
PNG SVG
Claude Code233 listings · 12 pages · page 3, #18 (overall #58)
Claude Code: every listing in weekly downloads order
PNG SVG

Charts

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

Adoption over time

@ai-dossier/worktree-pool weekly downloads on npm, last 90 days: 4,364 weekly downloads as of Oct 17, 2026, +87180% over 90 days.@ai-dossier/worktree-poolWeekly downloads on npm · Last 90 days4,364downloads / week+87180% over 90 days02K4K6K8K10K12K14KJul 19Aug 3Aug 18Sep 2Sep 17Oct 2Oct 17downloads / weekobservedarchived (Internet Archive)no observationsJul 21, 2026 – Oct 17, 2026 · 89 observations · Updated Oc…pluginstats.com
@ai-dossier/worktree-pool weekly downloads on npm, last 90 days: 4,364 weekly downloads as of Oct 17, 2026, +87180% over 90 days.
PNG SVG

7/30/90-day growth

@ai-dossier/worktree-pool weekly downloads growth on npm: -65.7% over 7 days, +558% over 30 days, +87180% over 90 days.@ai-dossier/worktree-poolWeekly downloads growth on npm4,364downloads / week now7-day growth-8,359 weekly downloads-65.7%30-day growth+3,701 weekly downloads+558%90-day growth+4,359 weekly downloads+87180%Growth vs. nearest observation to each baseline date · Updated Oct 17, 2026pluginstats.com
@ai-dossier/worktree-pool weekly downloads growth on npm: -65.7% over 7 days, +558% over 30 days, +87180% over 90 days.
PNG SVG

Ranking history

@ai-dossier/worktree-pool npm ranking history: currently #1127 (by weekly downloads).@ai-dossier/worktree-poolnpm ranking · by weekly downloads · Last 90 days#1127current rank#400#500#600#700#800#900#1000#1100#1200Jul 21Aug 5Aug 20Sep 4Sep 19Oct 4Oct 19rankOct 17, 2026 – Oct 19, 2026 · 3 observations · Updated Oct 17, 2026pluginstats.com
@ai-dossier/worktree-pool npm ranking history: currently #1127 (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 (543)
Recent weekly downloads observations for @ai-dossier/worktree-pool
Date (UTC)Weekly downloadsChange vs. previous
4,364-1.2K
5,587+914
4,673-2.5K
7,160-6.4K
13,5450
13,545+372
13,173+450
12,723+676
12,047+725
11,322+2K
9,319+6.1K
3,225-388
3,613+944
2,669—

Similar npm Claude Code 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/@ai-dossier/worktree-pool. First seen Oct 16, 2026; last successful collection Oct 19, 2026. See the methodology.