{"record":{"id":"d3bde59e5dc3e19c","repo":"jackwener/OpenCLI","slug":"opencli-notebooklm-list","errorCode":null,"errorMessage":"opencli notebooklm list","messagePattern":"opencli notebooklm list","errorType":"exception","errorClass":"EmptyResultError","httpStatus":null,"severity":"error","filePath":"clis/notebooklm/list.js","lineNumber":48,"sourceCode":"        }\n        let domRows;\n        try {\n            domRows = await listNotebooklmLinks(page);\n        }\n        catch (error) {\n            if (currentFallback)\n                return [currentFallback];\n            if (rpcError)\n                throw rpcError;\n            throw error;\n        }\n        if (domRows.length > 0)\n            return domRows;\n        if (currentFallback)\n            return [currentFallback];\n        if (rpcError)\n            throw rpcError;\n        throw new EmptyResultError('opencli notebooklm list', 'No NotebookLM notebooks were found after the authenticated RPC and home-page fallback both returned empty.');\n    },\n});\n","sourceCodeStart":30,"sourceCodeEnd":51,"githubUrl":"https://github.com/jackwener/OpenCLI/blob/49907e53dc3ade5c223ff0c4c2c2785687cec4e6/clis/notebooklm/list.js#L30-L51","documentation":"`opencli notebooklm list` throws this EmptyResultError only after all three recovery paths fail: the authenticated batchexecute RPC returned no rows, the home-page DOM link scrape returned no rows, and readCurrentNotebooklm produced no current-notebook fallback (and rpcError was null or suppressed). It signals the account genuinely exposes no notebooks to this session.","triggerScenarios":"listNotebooklmViaRpc returns [] (not throwing), listNotebooklmLinks returns [], and readCurrentNotebooklm was null — i.e. logged into a Google account with zero notebooks, or the account/workspace hides them all.","commonSituations":"Wrong Google profile in the browser session; a brand-new Workspace account with no notebooks yet; enterprise policy blocking NotebookLM; querying the wrong authenticated profile than expected.","solutions":["Log into the intended Google account in the adapter's browser session and confirm notebooks are visible at notebooklm.google.com.","Run `opencli notebooklm list` again after confirming the web UI shows notebooks (if it does, this is an adapter/selector issue — update opencli).","Create at least one notebook in the UI if the account is genuinely empty.","Check Workspace admin policies if notebooks exist but are not listed for this account."],"exampleFix":"// before\nopencli notebooklm list   # empty error on wrong profile\n// after\n# switch the adapter browser session to the correct Google profile, then\nopencli notebooklm list","handlingStrategy":"try-catch","validationCode":"// Confirm the browser session's Google account can see notebooks at notebooklm.google.com before scripting.","typeGuard":null,"tryCatchPattern":"try {\n  notebooks = await run('opencli notebooklm list -f json');\n} catch (e) {\n  if (String(e.message).includes('both returned empty')) {\n    console.warn('No notebooks visible for this Google account; check profile/permissions');\n    notebooks = [];\n  } else throw e;\n}","preventionTips":["Verify the intended Google profile is the one logged into the adapter browser.","Check notebooklm.google.com manually to distinguish empty account from adapter breakage.","Update opencli if the web UI lists notebooks but the CLI returns empty.","Handle genuinely empty accounts explicitly instead of treating it as a bug."],"tags":["notebooklm","empty-result","auth"],"backgroundTag":"empty-result-error","analyzedSha":"49907e53dc3ade5c223ff0c4c2c2785687cec4e6","analyzedAt":"2026-08-29T08:14:47.543Z","schemaVersion":2},"datasetVersion":"2026-08-29T12:17:43.993Z"}