stella storage
See every storage layer, namespace, table, and field in your workspace, with its purpose, and control how much history your store keeps.
stella storage shows the storage map: every storage layer, namespace, relation, and field in your workspace, along with its purpose and limits, taken from stella.storage.toml. It reads the local index that stella init builds (.stella/private/codegraph.db), plus that manifest file, so it works fully offline and needs no API key. One command, prune, also manages how much history your store keeps.
Synopsis
stella storage tree
stella storage show <address>
stella storage grep <name>
stella storage drift
stella storage prune [--older-than <AGE>] [--max-rows <N>] [--force] [--vacuum] [--dry-run]What it does
The storage map is stella's index of where your data actually lives: SQL tables, key-value namespaces, document collections, and their fields. It works the same way no matter what database or storage system you use, so the agent (and you) can understand how data is stored without re-reading the schema every time. It pairs with stella search: search answers "who calls what," and the storage map answers "what is stored where, and what does it mean."
treeThe whole map, as a tree: layer → namespace → relation. Each one shows its
stated purpose.
show <address>Details for one relation: its fields, constraints, meaning, and where that
information came from. Accepts a store:// address, a plain address, or just the
relation's name.
grep <name>Every relation and field whose name contains your search text.
driftChecks for problems without changing anything: near-duplicate relations, manifest entries with no matching relation, and how much of your data has a stated purpose.
pruneThe only command here that changes anything. It limits how big store.db gets by
deleting whole executions and every row linked to them — see below.
stella storage tree
stella storage show store://sqlite/main/users
stella storage grep session
stella storage driftThe map is only as up to date as your last stella init run. Purpose and limits come from stella.storage.toml; run stella storage drift to see where that file has fallen behind your actual code.
stella storage prune
Limits the size of this workspace's session store, <workspace>/.stella/private/store.db,
by deleting whole executions past --older-than and --max-rows, along with every row
linked to them. This is the exact same feature as
stella stats prune,
just available under a second name — same five flags, same engine, so you can manage
store retention from wherever you happen to be looking.
# What would go, without touching anything.
stella storage prune --older-than 90d --dry-run
# Keep a quarter of history, and hand the freed pages back to the filesystem.
stella storage prune --older-than 90d --vacuum
# Or bound it by row count instead of age.
stella storage prune --max-rows 5000--older-than <AGE>Deletes executions older than this amount of time — 90d, 12w, 720h, 3mo.
--max-rows <N>The most executions to keep.
--dry-runShows what would be deleted. Deletes nothing.
--vacuumRuns VACUUM afterward, returning freed space to your filesystem.
--forceAlso deletes executions whose telemetry hasn't reached the usage hub yet. Irreversible.
Every flag is explained in full, including units, the replication-safety guarantee,
and what --force actually costs you, on
stella stats prune.
Unlike the other stella storage commands, prune does not just read data. It deletes rows from store.db, and only --dry-run makes it safe to run without thinking first.