claude-overnight 0.1.1 → 0.1.2

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 +18 -8
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,8 +1,8 @@
1
1
  # claude-overnight
2
2
 
3
- Fire off Claude agents, come back to shipped work.
3
+ Set a task budget, describe an objective, walk away. Come back to shipped work.
4
4
 
5
- Describe what you want, set an agent budget, review the plan, then walk away. Come back hours or days later your agents will have maximized every token in your plan turning your codebase into what you described. Each agent gets full Claude Code tooling (Read, Edit, Bash, etc.) and runs in an isolated git worktree. A live TUI shows progress, cost, rate limits, and per-agent status.
5
+ Tell it what to build. Set a budget 10 tasks, 100, 1000, whatever the job needs. A planner agent analyzes your codebase and breaks the objective into that many independent tasks. Then they all run: parallel autonomous Claude Code agents, each in its own git worktree, each with full tooling (Read, Edit, Bash, grep, tests — everything). Rate limits hit? It waits. Windows reset? It resumes. It doesn't stop until every task is done or you tell it to.
6
6
 
7
7
  ## Install
8
8
 
@@ -20,7 +20,7 @@ Requires Node.js >= 20 and a valid Claude authentication (OAuth via `claude` CLI
20
20
  claude-overnight
21
21
  ```
22
22
 
23
- Asks what to do, how many agents to spend, picks a model (arrow keys), then a planner agent analyzes your codebase and generates tasks. You can review, edit, chat about the plan, or run it.
23
+ Describe your objective, set a task budget, pick a model. The planner generates the task breakdown you can review, edit, chat about it, then run.
24
24
 
25
25
  ### Task file
26
26
 
@@ -38,8 +38,6 @@ Each quoted argument becomes one parallel task.
38
38
 
39
39
  ## Task file format
40
40
 
41
- A JSON file with a `tasks` array and optional configuration:
42
-
43
41
  ```json
44
42
  {
45
43
  "tasks": [
@@ -69,15 +67,27 @@ A plain JSON array of strings also works: `["task one", "task two"]`.
69
67
 
70
68
  | Flag | Default | Description |
71
69
  |---|---|---|
72
- | `--budget=N` | `10` | Target number of agent runs (planner aims for this many tasks) |
73
- | `--concurrency=N` | `5` | Max parallel agents (overrides task file) |
70
+ | `--budget=N` | `10` | How many tasks the planner generates the total size of the run |
71
+ | `--concurrency=N` | `5` | How many agents run at the same time (budget = total, concurrency = pace) |
74
72
  | `--model=NAME` | — | Model override for all agents |
75
73
  | `--timeout=SECONDS` | `300` | Agent inactivity timeout (kills only silent agents) |
76
74
  | `--dry-run` | — | Show planned tasks without executing them |
75
+ | `-h, --help` | — | Show help |
76
+ | `-v, --version` | — | Print version |
77
+
78
+ ## Rate limits and long runs
79
+
80
+ claude-overnight is built to run unattended for hours, days, weeks, or months. It handles API rate limits without supervision:
81
+
82
+ - **Hard block**: when the API rejects a request and returns a reset timestamp, the swarm pauses and resumes exactly when the window opens.
83
+ - **Soft throttle**: at >75% utilization, dispatch slows proactively to avoid hitting the limit.
84
+ - **Retry with backoff**: transient errors (429, overloaded, connection reset) retry with exponential backoff.
85
+
86
+ No tasks are dropped. Set a budget of 1000, go to sleep, and it will work through every rate limit window until the run is complete.
77
87
 
78
88
  ## Worktrees and merging
79
89
 
80
- When worktrees are enabled, each agent runs in an isolated git worktree on a `swarm/task-N` branch. Changes are auto-committed when the agent finishes. After all agents complete, branches are merged back sequentially. The default `"yolo"` strategy merges directly into your current branch; `"branch"` creates a new `swarm/run-{timestamp}` branch instead. If a merge conflicts, the swarm retries with `-X theirs`; if that still fails, the branch is preserved for manual resolution. Stale worktrees and orphaned `swarm/*` branches from previous runs are cleaned up automatically on startup.
90
+ Each agent runs in an isolated git worktree on a `swarm/task-N` branch. Changes are auto-committed when the agent finishes. After all agents complete, branches merge back sequentially. The default `"yolo"` strategy merges directly into your current branch; `"branch"` creates a new `swarm/run-{timestamp}` branch instead. Merge conflicts retry with `-X theirs`; if that still fails, the branch is preserved for manual resolution. Stale worktrees and orphaned `swarm/*` branches from previous runs are cleaned up automatically on startup.
81
91
 
82
92
  ## Exit codes
83
93
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-overnight",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "Fire off Claude agents, come back days later to shipped work. Maximizes every token in your plan.",
5
5
  "type": "module",
6
6
  "bin": {