NBLMqueue is a Chrome extension for NotebookLM that lets you queue multiple prompts and send them one after another automatically. Instead of waiting for NotebookLM to finish each response before typing the next prompt, you can stack your prompts, review them, edit them, and let the extension handle the sequence.
NBLMqueue runs locally in your browser. It does not need an external server for the queue feature.
NBLMqueue is an independent project and is not affiliated with, endorsed by, or sponsored by Google or NotebookLM.
- NotebookLM normally accepts one prompt at a time.
- NBLMqueue lets you prepare the next prompts while NotebookLM is still responding.
- You can edit or remove pending prompts before they are sent.
- Sent prompts disappear from the queue automatically.
- Queue data is stored per notebook, so different notebooks can keep different pending items.
- The extension interface is in English, while the underlying NotebookLM page can be in English or Spanish.
- A green
Add prompt to queuebutton next to the native NotebookLM send button. Clicking it opens the queue modal with its own input so you can type prompts without touching the NotebookLM textarea. - A purple round button next to the green one that shows the current queue size (
0when empty). Click it to open the queue modal and review or edit pending prompts. - A queue modal with its own textarea for quickly adding prompts, plus the list of pending prompts.
- Automatic chained sending after NotebookLM finishes each response.
If you have never installed a Chrome extension manually before, this is the important part:
- You are not installing it from the Chrome Web Store yet.
- You will load a local folder into Chrome once.
- Chrome calls this
Load unpacked. - You can remove the extension at any time from the Chrome extensions page.
Use one of these options:
- If you downloaded the project as a ZIP file from GitHub, unzip it first.
- If you cloned the repository with Git, open the project folder on your machine.
You should end up with a local folder named NBLMqueue.
Node.js is required to build the extension.
- Go to https://nodejs.org
- Download the current LTS version.
- Install it with the default options.
After installation, open a terminal inside the project folder.
Run:
npm installThis downloads the packages needed to build and test the extension.
Run:
npm run buildThis creates a folder named dist/. That folder is the one you will load into Chrome.
If you want to confirm everything is working before loading the extension, run:
npm test
npm run typecheckIn Chrome, open:
chrome://extensions
Look at the top-right corner of the page and enable Developer mode.
This is required for loading unpacked extensions from a local folder.
Chrome will open a folder picker.
Choose the dist/ folder inside this project.
Do not select the root project folder. Select dist/ specifically.
This step is optional, but useful:
- Click the Chrome extensions puzzle icon.
- Find
NBLMqueue. - Click the pin icon.
Open a notebook page in NotebookLM where the question box is visible.
Click the green + button (or the purple button that shows the queue size). The modal opens with its own input field on top.
You do not need to type anything in the NotebookLM textarea: the extension never touches it while you are queueing.
Type a prompt in the modal input and press Enter (or click Add to queue). The prompt is added to the pending list below.
Repeat for as many prompts as you want.
The same modal lists every pending prompt. From there you can:
- Read all pending prompts.
- Edit any pending prompt.
- Remove any pending prompt.
The purple button on the toolbar always shows the current pending count.
Close the modal. When NotebookLM is idle, NBLMqueue starts sending queued prompts automatically.
After NotebookLM finishes one answer, the next pending prompt is sent.
- Only pending prompts stay in the queue.
- The prompt that is currently being sent is tracked internally, then removed from the visible queue.
- Once a prompt has been sent, it no longer appears in the queue.
- Each notebook keeps its own local queue state.
- Auto-send is paused while the modal is open, so you can edit prompts without one being dispatched mid-edit. Close the modal to resume sending.
- The extension never writes into the NotebookLM textarea except to dispatch a queued prompt. While NotebookLM is responding, you can still queue more prompts from the modal.
If you change the source code:
- Run
npm run buildagain. - Open
chrome://extensions. - Find the
NBLMqueuecard. - Click
Reload. - Refresh the NotebookLM tab.
- Make sure you are on an actual NotebookLM notebook page, not just the homepage.
- Refresh the NotebookLM tab.
- Check that the extension is enabled in
chrome://extensions.
- Wait until NotebookLM has fully finished the current response.
- Make sure the native NotebookLM stop button is gone and the page is idle.
- Make sure the queue modal is closed: auto-send is paused while it is open.
- Open the queue and confirm there are still pending prompts.
- Make sure you selected the
dist/folder, not the project root. - Run
npm run buildagain before loading it.
- The VS Code integrated browser does not load unpacked Chrome extensions.
- Use real Chrome for extension testing.
npm install
npm test
npm run build
npm run typecheck.
├── logo.png
├── manifest.json
├── build.mjs
├── src/
│ ├── content-script.ts
│ ├── notebooklm-dom.ts
│ ├── queue-controller.ts
│ ├── queue-store.ts
│ └── types.ts
├── tests/
│ ├── notebooklm-dom.test.ts
│ ├── queue-controller.test.ts
│ ├── queue-store.test.ts
│ └── test-helpers.ts
└── dist/
The extension is intentionally anchored to the NotebookLM elements that control prompt sending:
- Query input:
textarea.query-box-input - Native send button:
button.submit-button - Native stop button while generating:
button.stop-button - Native controls container:
.bottom-right-container
These anchors were validated against the live NotebookLM UI before implementation.
- NBLMqueue only works on NotebookLM notebook pages.
- Queue data is stored locally in the browser.
- If you remove the extension, local queue data is removed with it.
- NotebookLM itself may still appear in the language configured for your Google account.
Privacy details for Chrome Web Store publication are documented in PRIVACY.md.
