feat: integrate Google NotebookLM as a skill with 12 tools - #3
Open
cchen362 wants to merge 3 commits into
Open
Conversation
Replace os.uname() calls with sys.platform checks for Windows compat. Add platform-aware shell execution (cmd.exe on Windows, bash on Unix). Add PowerShell equivalents of setup/start/restart scripts. Add run.py for Windows-safe uvicorn startup (SelectorEventLoop). Unpin strict dependency versions for Python 3.13 compatibility.
Add AUTONOMY_FRAMEWORK identity/values/systems prompt injected into all LLM calls. Add platform-aware context builder for macOS/Windows/Linux. Make heartbeat triage triggers channel-agnostic with _build_channel_guidance() replacing hardcoded iMessage references. Update default system prompt to values-aligned version.
Add notebooklm_service.py with lazy singleton client, name-based notebook resolution, and defensive response handling. Register 12 nlm_* tools (list/create/delete notebooks, add/list/get sources, ask, research, generate/wait artifacts, push documents/files). Add skill definition with status checks and lifecycle hooks in main.py startup/shutdown.
3 tasks
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
notebooklm_service.py-- lazy singleton client with name-based notebook resolutionnlm_*tools (list/create/delete notebooks, add/list/get sources, ask, research, generate/wait artifacts, push documents/files)getattr()for undocumented API responsesContext
Implementation Plan 003. Builds on PR #2 (autonomy framework). Uses
notebooklm-pylibrary. Merge PRs #1 and #2 first.Test plan
nlm_*tools registered when skill enabled