See the plan before you run it
See the plan before you run it
vx run --dry prints the task graph, which tasks would hit the cache and which would run, their keys and how long they should take. Nothing executes.
vx info answers the questions a bug report starts with: versions, projects, workers, memory, cache size, flaky tasks, sandbox. And the cache keeps itself in bounds without a word.
“Which version? How big is the cache? Can this machine sandbox?” Every
bug report starts with those questions, and so does every agent that
lands in a new repository. vx info answers them in one screen.
$ vx infovx: 0.0.0bun: 1.4.2git: 2.43.0git status cache: core.fsmonitor, core.untrackedCache offprojects: 4 (8 tasks)plugins: noneworkers: 4 — the CPU countmemory: 13 GB usable — cgroup limit; the machine has 16 GBcache store: ~/.vx/2077a074894d4183/cachecache versions: keys vx-cache-v42 · index schema v32cache entries: 41 (9.8 KB)task runs (24h): 71 (27 cache hits: 23 up-to-date, 4 restored)flaky tasks: nonesandbox: available (0 tasks declare exec.sandbox)vx-lock.json: noIt reads what vx already knows: the run history, the cache index, the
host. It notes when a container caps memory below the machine’s, and
whether git’s fast status cache is on. --format json gives agents the
same facts, and vx mcp serves them as a tool.
A content-addressed cache only grows. Set a policy once, in
vx.workspace.ts:
import { defineWorkspace } from '@vzn/vx/config'
export default defineWorkspace({ cacheRetention: { olderThan: '30d', maxSize: '10G' },})After each run, entries unused for 30 days go first, then the least recently used until the cache is under 10 GB. It prints nothing, and a run with nothing due pays one scan of the index.
flowchart LR
RUN["a run ends"] --> DUE{"anything due?"}
DUE -- no --> DONE["done, silently"]
DUE -- yes --> OLD["evict unused > olderThan"]
OLD --> LRU["evict LRU until < maxSize"]
style LRU stroke:#c6f84e,stroke-width:2px
Or prune by hand, and look first:
$ vx cache prune --max-size 4KB --dry-runWould prune 25 entries (5.9 KB)Learn more: the CLI reference and the workspace schema.