npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

claude-peak

v1.2.4

Published

Know when your Claude tokens stretch further. Detects Anthropic peak/off-peak hours from your terminal.

Readme

   _____ _                 _        _____            _
  / ____| |               | |      |  __ \          | |
 | |    | | __ _ _   _  __| | ___  | |__) |___  __ _| | __
 | |    | |/ _` | | | |/ _` |/ _ \ |  ___/ _ \/ _` | |/ /
 | |____| | (_| | |_| | (_| |  __/ | |  |  __/ (_| |   <
  \_____|_|\__,_|\__,_|\__,_|\___| |_|   \___|\__,_|_|\_\

Know when your Claude tokens stretch further.

npm version license node platform


Anthropic silently throttles Claude's token limits during high-demand hours. claude-peak tells you, in real time, whether you're in a peak or off-peak window — so you can plan your heaviest sessions when your tokens go the furthest.

No dependencies. No config files. Works on Windows, macOS, and Linux.


How it works

Anthropic defines peak hours as Monday–Friday, 5:00 AM – 11:00 AM Pacific Time. During this window, each session costs more tokens, so your usage quota drains faster.

claude-peak detects your configured timezone, converts it to PT (including DST adjustments), and tells you your current status — plus how long until the next state change.


Installation

Option 1 — Global install (recommended)

npm install -g claude-peak

Then run from anywhere:

claude-peak

Option 2 — Without installing (npx)

npx claude-peak

Requirements: Node.js 12 or higher. No other dependencies.


First run

On the first run, claude-peak starts in English and uses your system timezone. If your system is set to UTC (common on Linux servers), run:

claude-peak tz

to pick your real timezone from an interactive list.


Usage

claude-peak              Current status (default)
claude-peak status       Current status
claude-peak watch        Live monitor — refreshes every minute
claude-peak schedule     Full weekly schedule in your local timezone
claude-peak json         JSON output (for scripting)
claude-peak tz           Set your timezone (interactive list)
claude-peak lang         Switch language (interactive list)
claude-peak help         Show help

Commands in action

claude-peak — instant status

   _____ _                 _        _____            _
  / ____| |               | |      |  __ \          | |
 | |    | | __ _ _   _  __| | ___  | |__) |___  __ _| | __
 | |    | |/ _` | | | |/ _` |/ _ \ |  ___/ _ \/ _` | |/ /
 | |____| | (_| | |_| | (_| |  __/ | |  |  __/ (_| |   <
  \_____|_|\__,_|\__,_|\__,_|\___| |_|   \___|\__,_|_|\_\

  🟢  OFF-PEAK: tokens at full capacity

  ⏰ Local time         21:14:03  America/Bogota
  🌍 Pacific time      19:14  PDT (UTC-7)
  📅 PT day           Tuesday

  📊 Peak hours (local)  07:00 – 13:00  Mon–Fri

  ⏱️ Next peak in:     9h 46m  ███░░░░░░░░░

  ✨ Tip: great time for long coding sessions or document analysis

claude-peak watch — live monitor

Refreshes every minute to show real-time countdown. Hit Ctrl+C to exit.

   _____ _                 _        _____            _
  / ____| |               | |      |  __ \          | |
 | |    | | __ _ _   _  __| | ___  | |__) |___  __ _| | __
 | |    | |/ _` | | | |/ _` |/ _ \ |  ___/ _ \/ _` | |/ /
 | |____| | (_| | |_| | (_| |  __/ | |  |  __/ (_| |   <
  \_____|_|\__,_|\__,_|\__,_|\___| |_|   \___|\__,_|_|\_\

  claude-peak watch  —  Ctrl+C to exit

  🔴  PEAK HOUR: tokens drain faster

  ⏰ Local time        12:35:42  America/New_York
  🌍 Pacific time      09:35  PDT (UTC-7)
  📅 PT day           Wednesday

  📊 Peak hours (local)  05:00 – 11:00  Mon–Fri

  ⏳ Changes to off-peak:  0h 25m  ██████░░░░░░░

  💡 Tip: save heavy tasks for after 11:00

claude-peak schedule — weekly overview

   _____ _                 _        _____            _
  / ____| |               | |      |  __ \          | |
 | |    | | __ _ _   _  __| | ___  | |__) |___  __ _| | __
 | |    | |/ _` | | | |/ _` |/ _ \ |  ___/ _ \/ _` | |/ /
 | |____| | (_| | |_| | (_| |  __/ | |  |  __/ (_| |   <
  \_____|_|\__,_|\__,_|\__,_|\___| |_|   \___|\__,_|_|\_\

  📅 Weekly schedule — America/New_York

  🔴 Monday    00:00–05:00  05:00–11:00  11:00–24:00
  🔴 Tuesday   00:00–05:00  05:00–11:00  11:00–24:00
  🔴 Wednesday 00:00–05:00  05:00–11:00  11:00–24:00
  🔴 Thursday  00:00–05:00  05:00–11:00  11:00–24:00
  🔴 Friday    00:00–05:00  05:00–11:00  11:00–24:00
  🟢 Saturday  00:00–24:00  (no peak)
  🟢 Sunday    00:00–24:00  (no peak)

claude-peak tz — interactive timezone selector

  Select your timezone

  ── America — North ──
   America/New_York  UTC-04:00
   America/Chicago   UTC-05:00
  ── America — Central & Caribbean ──
 > America/Bogota    UTC-05:00
   America/Lima      UTC-05:00
   ...

  12/67  up/down arrows  Enter select  q quit

Navigate with arrow keys, confirm with Enter. Covers 67 timezones grouped by region, each showing its current UTC offset.

claude-peak lang — language selector

  Selecciona idioma / Select language

 > English   English
   Español   Spanish

  up/down arrows  Enter to select

claude-peak json — scripting-friendly output

{
  "status": "off-peak",
  "isPeak": false,
  "localTime": "2026-04-07T21:14:03.000Z",
  "timezone": "America/Bogota",
  "pacificTime": "2026-04-07T19:14:03.000Z",
  "pacificOffset": "PDT (UTC-7)",
  "peakHoursLocal": {
    "start": "07:00",
    "end": "13:00",
    "days": "Mon-Fri"
  },
  "nextChange": {
    "label": "peak (tomorrow)",
    "inHours": 9,
    "inMinutes": 46
  }
}

Linux servers (UTC timezone)

If you're running claude-peak on a server where the system timezone is UTC, just set your real timezone once:

claude-peak tz
# navigate to your timezone and press Enter

Your preference is saved to ~/.claude-peak and persists across sessions. From that point on, all commands show times in your configured timezone regardless of what the server OS is set to.


Use in scripts

# Bash — only run heavy tasks during off-peak
STATUS=$(claude-peak json | python3 -c "import sys,json; print(json.load(sys.stdin)['status'])")
if [ "$STATUS" = "off-peak" ]; then
  echo "Off-peak — running analysis..."
else
  echo "Peak hours — skipping for now."
fi
# PowerShell
$data = claude-peak json | ConvertFrom-Json
if (-not $data.isPeak) {
  Write-Host "Off-peak — good to go!"
}

Peak hours by timezone

| Timezone | Peak window (local) | |---|---| | Pacific (PT) | 05:00 – 11:00 | | Mountain (MT) | 06:00 – 12:00 | | Central (CT) | 07:00 – 13:00 | | Eastern (ET) | 08:00 – 14:00 | | Colombia / Peru (COT) | 07:00 – 13:00 | | Brazil (BRT) | 09:00 – 15:00 | | UK (GMT/BST) | 13:00 – 19:00 | | Central Europe (CET) | 14:00 – 20:00 | | India (IST) | 18:30 – 00:30 | | Japan / Korea (JST/KST) | 21:00 – 03:00 |

Your exact local range is always shown in claude-peak schedule. DST is handled automatically.


Language support

Ships with English (default) and Spanish. Switch anytime:

claude-peak lang

Your preference is saved and persists across sessions.


Configuration

All settings are stored in ~/.claude-peak as a simple JSON file:

{
  "lang": "en",
  "tz": "America/Bogota"
}

You can edit it directly or use the interactive commands claude-peak lang and claude-peak tz.


Why peak hours matter

Anthropic adjusts token costs dynamically based on server load. During peak hours (US business morning), each session is more expensive in terms of quota — meaning your Pro or Max plan drains noticeably faster.

Scheduling document analysis, long coding sessions, or iterative prompting outside the 5–11 AM PT window can meaningfully extend how much you get done before hitting a limit.


No dependencies

claude-peak uses only Node.js built-ins — readline, fs, os, path — and ANSI escape codes for colors. Zero npm dependencies. Installs in milliseconds.



License

MIT © 2026


Made for Claude users who want to get more out of every session.