Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/configuration-model.md
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ Coordination lives under `~/.claude-use/headroom/`: `state.json` (supervisor pid
Two settings live in the global `~/.claude-use/config.json` under `headroom` (they describe one daemon per machine, so they are deliberately global-only, never per-directory):

```json
{ "headroom": { "source": "headroom[proxy] @ git+https://github.com/ExaDev/headroom", "idleShutdownMinutes": 15 } }
{ "headroom": { "source": "headroom-ai[proxy] @ git+https://github.com/ExaDev/headroom@feat/per-session-savings", "idleShutdownMinutes": 15 } }
```

`source` is the install spec handed to `uv tool install` (any PEP 508 form works; a pinned `headroom==0.39.0` is checked against the installed version on every start), and `idleShutdownMinutes` is how long an idle daemon lingers before shutdown.
Expand Down
2 changes: 1 addition & 1 deletion src/config/schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ const HeadroomGlobalConfigSchema = z.strictObject({
/**
* The default `headroom.source` install spec: the ExaDev headroom repository, with the `proxy` extra that provides the `headroom proxy` entry point. Kept here rather than in the supervisor because it is the schema's own documented default, referenced by `HeadroomGlobalConfigSchema`'s field docs.
*/
export const HEADROOM_DEFAULT_SOURCE = "headroom[proxy] @ git+https://github.com/ExaDev/headroom";
export const HEADROOM_DEFAULT_SOURCE = "headroom-ai[proxy] @ git+https://github.com/ExaDev/headroom@feat/per-session-savings";

/**
* The default `headroom.idleShutdownMinutes`: long enough that back-to-back sessions keep the daemon warm through a coffee break, short enough that an abandoned daemon frees its memory the same working day rather than squatting until reboot.
Expand Down
2 changes: 1 addition & 1 deletion src/headroom/supervisor.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -344,7 +344,7 @@ describe("runSupervisor", () => {
const world = makeWorld();
writeHeadroomState(world.fs, paths.headroomStateFile, {
supervisorPid: 1,
installedSource: "headroom[proxy] @ git+https://github.com/ExaDev/headroom",
installedSource: "headroom-ai[proxy] @ git+https://github.com/ExaDev/headroom@feat/per-session-savings",
});
await runSupervisor(resolveSupervisorConfig({ source: "headroom==0.39.0" }), world.ports, { tickLimit: TICKS_SHORT });
expect(world.installs).toEqual(["headroom==0.39.0"]);
Expand Down
Loading