Storage, cleanup, and migration
NERVE_HOME defaults to ~/.nerve. It contains file-first authoritative state for projects, conversations, events, settings, provider/tool authentication, tasks, plans, logs, reports, and caches. SQLite is a rebuildable index/cache rather than the sole source of truth.
Electron’s active Chromium profile is intentionally outside NERVE_HOME. Backing up only ~/.nerve does not capture browser local/session storage or the active Electron profile.
Inspect and clean up
Section titled “Inspect and clean up”Settings can estimate usage and run asynchronous cleanup for old conversations/logs, event/tool-call compaction, reports, cache/temp data, and index rebuild. Cleanup skips symlinks during directory clearing and observes cancellation between targets; it cannot interrupt every target operation once started.
Conversation pruning supports age and keep-latest boundaries. It skips running/awaiting agents and conversations with active tasks, then removes associated inactive task/tool/plan/log/index records.
Legacy desktop migration
Section titled “Legacy desktop migration”When local desktop mode finds an unversioned legacy home, it asks before changing it. Acceptance:
- renames the whole directory to a timestamped backup such as
~/.nerve-bk-20260716-013229; - initializes current versioned state;
- imports validated settings, the custom provider/model catalog, and recoverable provider/tool credentials.
Projects, conversations, agents, tasks, plans, logs, run history, indexes, and daemon/session state remain only in the backup. Malformed settings/catalog abort and restore the original home. Credentials that cannot be decrypted cause reauthentication but do not destroy the backup.