@mohitkumawat/warmup-cli 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +57 -64
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,11 +1,14 @@
1
+ <div align="center">
2
+
1
3
  # ☕ warmup
2
4
 
3
- [![npm version](https://badge.fury.io/js/warmup-cli.svg)](https://badge.fury.io/js/warmup-cli)
4
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
+ **Pre-warm your Claude rate limits while you sleep.**<br>
6
+ *One command. Zero daily effort. Full Claude capacity when you need it.*
5
7
 
6
- **Pre-warm your Claude rate limits while you sleep.**
8
+ [![npm version](https://img.shields.io/npm/v/@mohitkumawat/warmup-cli.svg?style=for-the-badge&color=6C5CE7)](https://www.npmjs.com/package/@mohitkumawat/warmup-cli)
9
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=for-the-badge&color=00B894)](https://opensource.org/licenses/MIT)
7
10
 
8
- One command. Zero daily effort. Full Claude capacity when you need it.
11
+ </div>
9
12
 
10
13
  ---
11
14
 
@@ -15,21 +18,20 @@ Claude Pro and Max subscribers share a **5-hour rolling rate limit window** acro
15
18
 
16
19
  ## 🟢 The Solution
17
20
 
18
- **warmup** starts your rate limit window _before_ you wake up by scheduling one tiny Claude Code ping (~10 tokens) at the right time.
21
+ **`warmup`** starts your rate limit window _before_ you wake up by scheduling one tiny Claude Code ping (~10 tokens) at the exact right time.
19
22
 
20
23
  By the time you sit down to work, the window is perfectly timed to expire exactly when you need it, granting you a **100% fresh allocation** right in the middle of your workday.
21
24
 
22
- ```
23
- Without warmup:
24
- 10:00 AMYou start working, window starts
25
- 12:00 PM → Rate limited! Must wait until 3:00 PM
26
-
27
- With Smart warmup (2-hour exhaustion):
28
- 7:00 AM → warmup sends one tiny Claude Code ping
29
- 10:00 AM → You start working using the active window.
30
- 12:00 PM → You exhaust your limits. BUT the 7:00 AM window ends right now!
31
- 12:00 PM → Window resets instantly! Full capacity continues.
32
- ```
25
+ > **Without warmup:**
26
+ > 10:00 AM → You start working, window starts.
27
+ > 12:00 PMRate limited! Must wait until 3:00 PM.
28
+ >
29
+ > **With warmup (2-hour exhaustion):**
30
+ > 7:00 AM warmup sends one tiny ping (window starts).
31
+ > 10:00 AM → You start working using the active window.
32
+ > 12:00 PM → You exhaust your limits, BUT the 7:00 AM window ends right now!
33
+ > 12:00 PM → Window resets instantly. Full capacity continues.
34
+
33
35
  *You just saved 3 hours of waiting.*
34
36
 
35
37
  ---
@@ -39,8 +41,7 @@ By the time you sit down to work, the window is perfectly timed to expire exactl
39
41
  ```bash
40
42
  npm install -g @mohitkumawat/warmup-cli
41
43
  ```
42
-
43
- **Prerequisites:** [Claude Code](https://code.claude.com) must be installed and authenticated.
44
+ *Prerequisites: [Claude Code](https://code.claude.com) must be installed and authenticated.*
44
45
 
45
46
  ## 🚀 Quick Start
46
47
 
@@ -48,41 +49,27 @@ npm install -g @mohitkumawat/warmup-cli
48
49
  warmup
49
50
  ```
50
51
 
51
- Fresh installs now open a **guided onboarding wizard**. If you want to skip straight to the wizard later, `warmup setup` still works too.
52
-
53
- ## What happens
52
+ Fresh installs open a **guided onboarding wizard**.
54
53
 
55
- - `warmup` shows the exact scheduled Claude command before it installs anything:
54
+ ### 🔍 What happens
55
+ * Shows the exact background command (`claude -p ping --max-turns 1`) transparently.
56
+ * Asks about your typical work schedule.
57
+ * Shows a detailed geometric preview of the scheduled timeline before explicitly asking for confirmation.
58
+ * Stores config and logs purely locally in `~/.warmup/`.
56
59
 
57
- ```bash
58
- claude -p ping --max-turns 1
59
- ```
60
-
61
- - Setup checks Claude Code install + auth, asks about your work start time and how fast you hit limits, then shows an install preview before saving anything.
62
- - Config and logs stay local in `~/.warmup/`.
63
- - The scheduler runs locally through native OS tooling.
60
+ ### 🛡 What DOES NOT happen
61
+ * Setup does **not** send a live Claude request or burn any limits.
62
+ * `warmup` does **not** proxy your session, extract tokens, or phone home to any backend api.
64
63
 
65
- ## What does not happen
66
-
67
- - Setup does **not** send a live Claude request or start your 5-hour window.
68
- - `warmup` does **not** extract tokens, proxy your session, or depend on a backend service.
69
- - Nothing is installed until you confirm the schedule preview.
64
+ ---
70
65
 
71
66
  ## 🧠 Smart Setup
72
67
 
73
- We don't ask you to do modulo-math to figure out your 5-hour window. `warmup` uses a **Smart Scheduler**.
74
-
75
- ```bash
76
- warmup setup
77
- ```
78
-
79
- Just tell it:
80
- 1. **When you start working** (e.g., 9:00 AM)
81
- 2. **How quickly you exhaust your limits** (e.g., 1-2 hours)
68
+ We don't ask you to do modulo-math to figure out your 5-hour window. `warmup` asks you two plain-English questions:
69
+ 1. **When do you start working?** (e.g., 9:00 AM)
70
+ 2. **How quickly do you exhaust limits?** (e.g., 1-2 hours)
82
71
 
83
- `warmup` automatically calculates the **exact optimal pre-warm time** to ensure your rate limit resets exactly the minute you run out of messages.
84
-
85
- Then it shows an install preview with your schedule, expected reset time, local file paths, and scheduler backend before installing the OS-native task.
72
+ It then automatically calculates the **exact optimal pre-warm time** to ensure your rate limit resets exactly the minute you run out of messages.
86
73
 
87
74
  ## 🛡️ Bulletproof Boot-Recovery
88
75
 
@@ -90,12 +77,13 @@ Then it shows an install preview with your schedule, expected reset time, local
90
77
 
91
78
  `warmup` handles this automatically using native OS features. If your laptop was closed at your 5:00 AM pre-warm time, the pre-warm fires **immediately upon waking your machine** (e.g., at 8:00 AM).
92
79
 
93
- It has built-in deduplication guards, so it will *never* double-fire or accidentally consume a second rate-limit window, even if you restart your computer 10 times a day.
80
+ It has built-in deduplication guards: it will *never* double-fire or accidentally consume a second rate-limit window, even if you restart your computer 10 times a day.
81
+
82
+ * **macOS:** `launchd` via `RunAtLoad`
83
+ * **Linux:** `systemd` timers via `Persistent=true`
84
+ * **Windows:** `schtasks` via `StartWhenAvailable`
94
85
 
95
- Supported universally:
96
- - **macOS:** `launchd` with `RunAtLoad`
97
- - **Linux:** `systemd` user timers with `Persistent=true`
98
- - **Windows:** Task Scheduler with `StartWhenAvailable`
86
+ ---
99
87
 
100
88
  ## 🛠️ Commands
101
89
 
@@ -109,25 +97,30 @@ Supported universally:
109
97
  | `warmup resume` | Resume the daily schedule |
110
98
  | `warmup uninstall` | Remove the background task |
111
99
 
100
+ ---
112
101
 
113
102
  ## ❓ FAQ
114
103
 
115
- **Is this ToS-compliant?**
116
- Yes. The request goes strictly through the official Claude Code CLI using your local authenticated session. We never extract, store, or proxy your OAuth token. This is functionally identical to you typing a message into the CLI.
104
+ <details>
105
+ <summary><b>Is this ToS-compliant?</b></summary>
106
+ <br>
107
+ Yes. The request goes strictly through the official Claude Code CLI using your local authenticated session. We never extract, store, or proxy your OAuth token. This is functionally identical to you typing a message into the CLI yourself.
108
+ </details>
117
109
 
118
- **Does this work for claude.ai web chat?**
110
+ <details>
111
+ <summary><b>Does this work for claude.ai web chat?</b></summary>
112
+ <br>
119
113
  Yes! The subscription rate limit pool is shared across claude.ai, Claude Code, and Cowork. Pre-warming through the CLI grants you limits on the web interface too.
114
+ </details>
120
115
 
121
- **What if I travel to a different timezone?**
116
+ <details>
117
+ <summary><b>What if I travel to a different timezone?</b></summary>
118
+ <br>
122
119
  Run `warmup update`. Your new timezone is auto-detected.
123
-
124
- ## 🗑️ Uninstall
125
-
126
- ```bash
127
- warmup uninstall # removes the OS background task
128
- npm uninstall -g warmup-cli # removes the package
129
- ```
120
+ </details>
130
121
 
131
122
  ---
132
- **License:** MIT
133
- **Author:** Mohit
123
+
124
+ <div align="center">
125
+ <sub>Built with ❤️ by Mohit. MIT License.</sub>
126
+ </div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mohitkumawat/warmup-cli",
3
- "version": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "Pre-warm your Claude rate limits while you sleep. One command, zero daily effort.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {