Skip to content

Releases: SamStull9007/limitcast

Limitcast 0.17.3: split Grok statusline by provider

Choose a tag to compare

@SamStull9007 SamStull9007 released this 28 Oct 23:03

The Grok status line prints one line per tool. Claude and Grok windows no longer share one unlabeled row (two 7d figures and two daily shares). Host windows stay on limitcast:; Claude on Grok is limitcast claude:.

Validation: 206 tests passed; Biome checked 70 files.

Limitcast 0.17.2: accurate doctor and memory checks

Choose a tag to compare

@SamStull9007 SamStull9007 released this 28 Oct 02:43

Fixes doctor failures for Claude sessions that have not received their first assistant response and for legitimately absent subscription rate-limit fields. Malformed readings still fail validation.

Memory checks now follow plain filename citations, exclude agent policy files, and identify files without local links as review candidates that may be tracked in an external catalog. The memory audit command checks external provenance before proposing repairs.

Validation: 201 tests passed; Biome checked 74 files.

Limitcast 0.17.1: Grok usage identifies itself

Choose a tag to compare

@SamStull9007 SamStull9007 released this 28 Oct 02:21

Free and MIT licensed.

  • Fix: the Grok weekly-usage request now sends User-Agent: limitcast instead of Grok Build, so it says who is asking. grok.com gave the same answer with either. limitcast grok-usage on and the docs no longer say the request is the one Grok Build makes: that was never verified.

0.17.0 added limitcast grok-usage on (Grok's real weekly % used, off by default). Install: npm install -g limitcast

Limitcast 0.17.0: Grok weekly usage

Choose a tag to compare

@SamStull9007 SamStull9007 released this 28 Oct 02:06

Free and MIT licensed.

  • New: limitcast grok-usage on shows Grok's real weekly % used. Grok keeps no % on disk, so limitcast asks grok.com for your billing cycle with the login in ~/.grok/auth.json, about every 5 minutes. It is off by default because it is the one place limitcast uses a login: the login is read in memory, sent only to grok.com (redirects refused) and never stored or logged. The readings feed status, the Grok status line, the guard and doctor, and a weekly dollar cap steps aside for them. limitcast grok-usage off stops it. Weekly plans only; a monthly credit plan is reported but not forecast.

Install: npm install -g limitcast

Limitcast 0.16.0: memory audit and split

Choose a tag to compare

@SamStull9007 SamStull9007 released this 28 Oct 01:31

Free and MIT licensed.

  • New: limitcast memory [dir] checks this project's auto-memory folder: how much of MEMORY.md fits in what Claude Code loads every session (the first 200 lines or 25 KB), broken links, topic files nothing links to, and files over 150 lines. limitcast doctor shows the same as one line and fails it only when the index is past the cap.
  • New plugin commands: /limitcast:memory-audit and /limitcast:memory-split.

npm: npm install -g limitcast (0.16.0 replaces 0.15.0 there; 0.15.0 on npm was an earlier build with a different license).

Limitcast 0.15.0 — free and MIT licensed

Choose a tag to compare

@SamStull9007 SamStull9007 released this 28 Oct 00:04

Limitcast is now free and open source under the MIT License, copyright Sam Stull. All formerly paid features work without a subscription, license key, trial or device limit.

Includes guided onboarding and accurate weekly capacity reporting. Guards, model controls, budgets, reversible trimming, alerts, notifications and dashboards are available to everyone. Runtime billing checks are removed; old license files are left untouched.

Upgrade note: previously installed preview guards now enforce forecasts and enabled budgets. Existing agents keep running. LIMITCAST_ALLOW=1 overrides a hold; limitcast uninstall removes the integration.

Install this free release directly:

npm install -g https://github.com/SamStull9007/limitcast/releases/download/v0.15.0/limitcast-0.15.0.tgz
limitcast onboard

The npm registry publication is awaiting maintainer authentication. The attached package contains the free release and can be installed immediately.

Validation: 191 tests pass; GitHub CI passes Linux/macOS on Node 20, 22 and 24.

v0.14.0

Choose a tag to compare

@SamStull9007 SamStull9007 released this 27 Oct 14:36
  • New: limitcast trim keep <name>[,<name>] lists servers and skills that trim --apply never turns off or hides (Claude, Codex and Grok), for example limitcast trim keep ego-browser. trim shows what it would keep, and --remove <name> drops one.
  • New (Pro): the today N% left pace of a weekly window now acts. You get one notification a day at 80% of today's share, and limitcast budget today on makes the guard hold new subagents once today's share is used up, until local midnight. It is off by default, a window already at 100% is left to the tool, and LIMITCAST_ALLOW=1 overrides it. Free installs see what Pro would have held in results.
  • limitcast status now says which window runs out first and where else there is room, for example "You'll hit Claude 7d first (Thu 14:00). Grok 5h still has $38."

v0.13.1

Choose a tag to compare

@SamStull9007 SamStull9007 released this 27 Oct 02:58
  • Fix: the advice at the end of limitcast report --jobs told you to launch a job with --setting-sources "" --strict-mcp-config, which also drops the claude.ai connectors, so a job that reads from HubSpot or Slack would stop working. It now leads with --settings '{"disableAllHooks": true}' (hooks off, connectors kept; about 16k new tokens down to about 5k per start in one test) and says plainly that the harder flags drop the connectors.

  • Grok API-equivalent cost. limitcast report prices Grok models at xAI list prices (docs.x.ai, 2026-10-26): grok-4.7 / 4.6 / 4.5 / 4.3 / 4.20 and grok-build-0.1, including the 200k-prompt long-context rate. Cache creation is billed as input (xAI lists cached reads, not a write multiplier). grok-4.6-build matches grok-4.6. Unknown models stay uncounted.

  • Grok subagent-model. limitcast subagent-model explore grok-4.3 accepts grok ids, matches types case-insensitively, and writes [subagents.models] in ~/.grok/config.toml (restart Grok). The guard rewrites spawn_subagent only when the spawn already has a model field: adding one fails Grok's schema and would deny the call.

v0.13.0

Choose a tag to compare

@SamStull9007 SamStull9007 released this 27 Oct 02:27
  • New (Pro): limitcast plan says whether your Claude plan fits how much you use. It keeps a record of the peak of every 5-hour and weekly window (so it needs a week or two of history before it recommends anything), then points to the next plan with the monthly price difference if you reached a limit three or more times (or the weekly limit once), or to a smaller plan if its limits would have held your busiest windows with room to spare. It also shows what your Claude Code tokens would cost at API list prices. Set your plan with limitcast plan set pro|max5|max20.

  • New (Pro): limitcast report shows the API-equivalent cost of your tokens: a total line, and a dollar column by tool, day, project, model and session. It prices input, 5-minute and 1-hour cache writes, cache reads and output at the API's list prices for Claude 5.x models (Haiku is priced higher above 100k-token prompts); any other model is left out and counted as "not counted", never as $0. Add or change prices in ~/.local/state/limitcast/prices.json.

  • New (Pro): limitcast subagent-model <type> <model> runs every new subagent of that type on the model you choose, for example limitcast subagent-model Explore haiku. A spawn that names its own model is left alone. While a window is tight, a type pinned to Opus is still moved to Sonnet. limitcast subagent-model lists what is pinned and the types you ran in the last 30 days, and results counts the subagents it moved (free installs see what it would have done).

v0.12.0

Choose a tag to compare

@SamStull9007 SamStull9007 released this 27 Oct 01:34
  • Grok status line, trim and guard. limitcast install wraps [ui.status_line] in ~/.grok/config.toml. --guard writes ~/.grok/hooks/limitcast.json for spawn_subagent. limitcast trim --grok measures the system prompt and unused MCP servers (--apply / --undo like Codex). Grok stores spend, not a % used: the status line shows grok 5h $X · 7d $Y from usage.json; limitcast budget grok <usd> (Pro) turns that into a forecast the guard can block on.

  • limitcast report --why now splits subagent tokens by type and model and shows all new tokens by model. A subagent's type comes from the .meta.json file next to its transcript. Models may count differently against your limit, so these are token counts, not window shares.

  • limitcast report --jobs adds a cold-starts column per job and a "Cold starts" section: how many runs started without the prompt cache, how much more that cost than the same job's warm runs, and whether starting a job's runs closer together would help.

  • New (Pro): limitcast report --jobs lists the scheduled (headless) jobs whose runs spend the most new tokens just starting. Runs of one job are grouped by the first 45 characters of their prompt, with runs, average new tokens at start, average starting prompt, share of all new tokens and calls per run, plus how to launch a job leaner. report --why points to it when there are headless runs.

  • New (Pro, install --alerts): a PostToolUse hook tells you, once per tool per session, when a single tool result is very large (about 20k tokens or more, from its size; LIMITCAST_TOOL_TOKENS changes the threshold), with what to ask for next time. It runs on Bash, Read, Grep, WebFetch and MCP tools, shows the message to you only, and adds about 30 ms per call. Re-run limitcast install --alerts (or doctor --fix) to add it to an existing install.

  • limitcast report --why ends with "What to try": how many single steps added over 20k new tokens and what share of tool-result tokens they were, and advice for the sources whose results average 2k+ new tokens.

  • New (Pro, with the guard): before a subagent starts you see what that kind has cost you, e.g. "Explore subagents have cost you a median ≈1.2% (max ≈3.6%) of a 5-hour window over 7 runs; this window is 38% used". It appears once there are 3 priced runs, uses all your subagents when that kind has fewer, and stays quiet when a typical run is under 1% of a window and the window is not NEAR. It never blocks.

  • New: limitcast report --why shows where your new tokens went (subagents, session starts, cache rebuilds after idle, tool results by tool, model output) and the largest single steps. It reads your Claude Code transcripts once and caches them, so only the first run over a few GB is slow (3 to 40 seconds, depending on whether the disk cache is warm) and later runs only read what changed.

  • limitcast report now ranks projects, models and sessions by new tokens (input, cache writes, output) instead of total tokens, so cached reads no longer decide the order.