v0.3.0 — now with --fix, --fix-barrels & Remix support
★ CLI is free & open source · MIT

Track client creep
across every PR.

Push analysis results from your CI pipeline. See how your client bundle evolves over time. Catch regressions before they ship.

Next.js 13–16RemixVite RSCMonorepo readyZero configCLI is open source

How it works

Three commands. Full visibility.

01

Run the CLI

Static analysis of your entire import graph. No running app required. Works on any Next.js, Remix, or Vite RSC project.

npx client-creep
02

Push to dashboard

Send results to your dashboard with one flag. Wire it into your CI pipeline to track every PR automatically.

npx client-creep --push --token <token>
03

Watch trends

See creep candidates, boundaries, and recoverable KB trend over time. Catch regressions the PR they're introduced.

→ dashboard shows delta per PR
zsh — ~/projects/my-next-app
npx client-creep
────────────────────────────────────────────────────────────
client-creep Next.js client component analysis
────────────────────────────────────────────────────────────
Project: ~/projects/my-next-app
Files scanned: 534
Client components: 418 (182 boundaries)
Estimated JS: 2.29 MB (estimate — raw source bytes)
Recoverable: 237.4 KB (113 creep candidates)
────────────────────────────────────────────────────────────
⚠ Accidental Client Creep
src/components/EmptyState.tsx 19.7 KB recoverable
No client-only signals detected
⚡ src/app/chat/page.tsx ← use client
└─ src/components/index.ts
└─ src/components/EmptyState.tsx
src/components/ui/Badge.tsx 4.2 KB recoverable
No client-only signals detected

Dashboard features

Everything in one place

Trend charts per repo

Creep candidates and boundaries plotted over every push. See the moment your bundle started growing and trace it to the commit.

Delta per run

Every stat card shows the change since your last push — ▲ +3 or ▼ -2. Know instantly if a PR made things better or worse.

PR diff comments

The GitHub Action posts a comment on every pull request showing what changed: new creep introduced, boundaries added, KB recovered.

Creep candidates list

Per-repo list of files flagged as accidental client components — with the full import chain showing exactly why they ended up client.

Budget enforcement

Set a KB limit in your CI config. The action exits 1 if estimated client JS exceeds your threshold. Gate every merge.

Auto-fix commands

The settings page shows ready-to-run --fix and --fix-barrels commands pre-filled with your token. Fix and push in one step.

Pricing

Free to start

Free
$0
forever
Up to 3 repos
7 days history
Trend charts
Basic PR comments (totals only)
All CLI features
Auto-fix commands
Get started free
COMING SOON
Pro
$—
per month
Unlimited repos
Unlimited history
Trend charts
Detailed PR comments (file-level)
All CLI features
Auto-fix commands
Slack / email alerts
REST API access
Team seats (up to 5)
Org-wide view
Priority support
Join waitlist

Start tracking in two minutes.

Sign in with GitHub, copy your token, push your first analysis. Free forever for up to 3 repos.

Sign in with GitHub