{"record":{"id":"3c328ec2de4ed26e","repo":"jackwener/OpenCLI","slug":"antigravity-idb-list-no-indexeddb-databases","errorCode":null,"errorMessage":"antigravity idb-list: No IndexedDB databases.","messagePattern":"antigravity idb-list: No IndexedDB databases\\.","errorType":"exception","errorClass":"EmptyResultError","httpStatus":null,"severity":"info","filePath":"clis/antigravity/storage.js","lineNumber":188,"sourceCode":"            Preview: c.value.slice(0, 40) + (c.value.length > 40 ? '…' : ''),\n        }));\n    },\n});\n\n// ====== Renderer-side: idb-list ======\ncli({\n    site: 'antigravity',\n    name: 'idb-list',\n    access: 'read',\n    description: 'List IndexedDB databases on the Antigravity renderer.',\n    domain: '127.0.0.1',\n    strategy: Strategy.UI,\n    browser: true,\n    args: [],\n    columns: STORAGE_COLUMNS,\n    func: async (page) => {\n        const dbs = unwrapEvaluateResult(await page.evaluate(`(async () => indexedDB.databases ? await indexedDB.databases() : [])()`));\n        if (!Array.isArray(dbs) || !dbs.length) throw new EmptyResultError('antigravity idb-list', 'No IndexedDB databases.');\n        return dbs.map((d, i) => ({ Index: i + 1, Database: d.name || '(unnamed)', Version: String(d.version || '') }));\n    },\n});\n\n// ====== FS-side: state-keys ======\ncli({\n    site: 'antigravity',\n    name: 'state-keys',\n    access: 'read',\n    description: 'List keys in Antigravity\\'s globalStorage state.vscdb (VSCode-style). Pass --workspace <id> to query a per-workspace DB. Works while Antigravity is closed.',\n    domain: 'localhost',\n    strategy: Strategy.LOCAL,\n    browser: false,\n    args: [\n        { name: 'filter', required: false, help: 'Case-insensitive substring filter over keys' },\n        { name: 'workspace', required: false, help: 'Workspace id (from workspaces-list) to query per-workspace DB' },\n        { name: 'limit', type: 'int', required: false, default: 200, help: 'Max rows to return' },\n    ],","sourceCodeStart":170,"sourceCodeEnd":206,"githubUrl":"https://github.com/jackwener/OpenCLI/blob/49907e53dc3ade5c223ff0c4c2c2785687cec4e6/clis/antigravity/storage.js#L170-L206","documentation":"idb-list calls indexedDB.databases() inside the renderer and throws EmptyResultError when the returned array is missing or empty. It reports that the Antigravity renderer currently has no IndexedDB databases — an informational empty state, not a malfunction. (indexedDB.databases() also returns [] in some browsers that lack the API, handled by the fallback.)","triggerScenarios":"Running `opencli antigravity idb-list` on a renderer profile where no code has ever opened an IndexedDB database, or after site data was cleared.","commonSituations":"Developers expecting VSCode-style workbench data in IndexedDB when Antigravity actually persists state in state.vscdb (SQLite); a clean install with no extensions using IndexedDB.","solutions":["If you want persisted app state, use `opencli antigravity state-keys` / `state-get` (SQLite state.vscdb) instead.","Open the feature in the IDE that creates the IndexedDB store, then re-run.","Confirm you are attached to the correct renderer target/window.","If you expected databases after using the app, check for multiple renderer processes — attach to the right one."],"exampleFix":"// before (looking for app state)\nopencli antigravity idb-list\n// after\nopencli antigravity state-keys","handlingStrategy":"try-catch","validationCode":"// App state in Antigravity lives in state.vscdb, not IndexedDB; check that first\nconst hasDb = require('node:fs').existsSync(process.env.HOME + '/Library/Application Support/Antigravity/User/globalStorage/state.vscdb');\nif (!hasDb) console.warn('no state.vscdb — Antigravity may never have run; idb-list would also be empty');","typeGuard":"function persistedStateLikelyExists() {\n  return require('node:fs').existsSync(\n    process.env.HOME + '/Library/Application Support/Antigravity/User/globalStorage/state.vscdb'\n  );\n}","tryCatchPattern":"try {\n  run('opencli antigravity idb-list');\n} catch (e) {\n  if (/No IndexedDB databases/.test(e.message)) {\n    run('opencli antigravity state-keys'); // app state lives here instead\n  } else throw e;\n}","preventionTips":["Use idb-list only when you specifically need renderer IndexedDB, not app state.","Open the IDE feature that creates the IDB store before listing.","Prefer state-keys/state-get for persisted workbench data.","Clearing site data empties IndexedDB — expect empty results afterward."],"tags":["indexeddb","empty-result","browser","antigravity"],"backgroundTag":"no-indexeddb-databases","analyzedSha":"49907e53dc3ade5c223ff0c4c2c2785687cec4e6","analyzedAt":"2026-08-29T08:14:47.543Z","schemaVersion":2},"datasetVersion":"2026-08-29T12:17:43.993Z"}