Public scan — anyone with this URL can view this analysis. Sign up to track your own repos privately, run scheduled re-scans, and get AI fix prompts via your dashboard.

Scan timing: clone 4.19s · analysis 8.43s · 43.6 MB · GitHub preflight 481ms

teng-lin/notebooklm-py

https://github.com/teng-lin/notebooklm-py.git · scanned 2026-05-21 12:05 UTC (2 weeks ago) · 10 languages

675 findings (165 legacy + 510 scanner) 11/13 scanners ran 96th percentile · Python · large (100-500K LoC) Scanner says 88 (higher by 5)

UNIFIED Repobility · multi-layer engine · AI coders

Complete repo analysis

Last scanned 2 weeks ago · v2 · 420 findings from 2 sources. Findings combine the legacy security pipeline AND the multi-layer engine (atlas, wiring, flows, ranked) AND verified AI agent contributions.

JSON
Score breakdown â 2026-05-18-v5
Component Sub-score Weight Contribution
structure_score 100.0 0.15 15.00
security_score 100.0 0.25 25.00
testing_score 100.0 0.20 20.00
documentation_score 100.0 0.15 15.00
practices_score 89.0 0.15 13.35
code_quality 45.0 0.10 4.50
Overall 1.00 92.8
security_score may be inflated — optional security scanners were skipped on this fast scan
Severity distribution — click a segment to filter
Active filters: excluding tests × Reset all

All 9045 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.

LabelLayerStatusPath
_isolate_notebooklm_home software healthy tests/conftest.py:17
_reset_poke_state software healthy tests/conftest.py:37
_synthetic_error_mode software healthy tests/conftest.py:82
_mock_keepalive_poke software healthy tests/conftest.py:122
pytest_configure software healthy tests/conftest.py:149
pytest_collection_modifyitems software healthy tests/conftest.py:184
sample_storage_state software healthy tests/conftest.py:203
sample_homepage_html software healthy tests/conftest.py:224
mock_list_notebooks_response software healthy tests/conftest.py:241
build_rpc_response software healthy tests/conftest.py:270
_build software healthy tests/conftest.py:278
mock_get_conversation_id software healthy tests/conftest.py:289
_add software healthy tests/conftest.py:309
auth_tokens software healthy tests/conftest.py:331
recompute_chunk_prefix software healthy tests/cassette_patterns.py:121
_cookie_header_replacer software healthy tests/cassette_patterns.py:383
scrub_string software healthy tests/cassette_patterns.py:599
is_clean software healthy tests/cassette_patterns.py:717
synthetic_error_cassette_name software healthy tests/cassette_patterns.py:853
build_synthetic_error_response software healthy tests/cassette_patterns.py:870
_load_sibling software healthy tests/vcr_config.py:70
_is_vcr_record_mode software healthy tests/vcr_config.py:109
get_error_injection_mode software healthy tests/vcr_config.py:123
scrub_request software healthy tests/vcr_config.py:141
_substitute_synthetic_error software healthy tests/vcr_config.py:171
scrub_response software healthy tests/vcr_config.py:209
_rpcids_matcher software healthy tests/vcr_config.py:272
_normalize_uuids software healthy tests/vcr_config.py:333
_strip_volatile software healthy tests/vcr_config.py:352
_shape_only software healthy tests/vcr_config.py:392
_normalize_freq_string software healthy tests/vcr_config.py:438
_freq_body_matcher software healthy tests/vcr_config.py:456
_decode_freq_envelope software healthy tests/vcr_config.py:508
artifacts_api software healthy tests/integration/test_artifacts_drift.py:40
test_create_artifact_real_shape software healthy tests/integration/test_artifacts_drift.py:63
test_revise_slide_real_shape software healthy tests/integration/test_artifacts_drift.py:75
test_none_result_returns_failed software healthy tests/integration/test_artifacts_drift.py:101
test_empty_list_returns_failed software healthy tests/integration/test_artifacts_drift.py:114
test_missing_inner_leaf_returns_failed software healthy tests/integration/test_artifacts_drift.py:124
test_status_code_missing_still_returns_pending software healthy tests/integration/test_artifacts_drift.py:136
test_none_result_raises software healthy tests/integration/test_artifacts_drift.py:161
test_empty_list_raises_for_revise_slide software healthy tests/integration/test_artifacts_drift.py:173
test_inner_leaf_missing_raises software healthy tests/integration/test_artifacts_drift.py:183
test_status_code_missing_raises_in_strict_mode software healthy tests/integration/test_artifacts_drift.py:195
test_list_notes software healthy tests/integration/test_notes_integration.py:22
test_list_notes_empty software healthy tests/integration/test_notes_integration.py:51
test_list_notes_excludes_mind_maps software healthy tests/integration/test_notes_integration.py:67
test_get_note software healthy tests/integration/test_notes_integration.py:95
test_get_note_not_found software healthy tests/integration/test_notes_integration.py:122
test_create_note software healthy tests/integration/test_notes_integration.py:145

Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.

LabelLayerStatusPath
TestParseGenerationResultHappyPath software healthy tests/integration/test_artifacts_drift.py:60
TestParseGenerationResultSoftDrift software healthy tests/integration/test_artifacts_drift.py:94
TestParseGenerationResultStrictDrift software healthy tests/integration/test_artifacts_drift.py:158
TestNotesAPI software healthy tests/integration/test_notes_integration.py:18
TestErrorPaths software healthy tests/integration/test_error_paths_vcr.py:106
TestRegistryClassification software healthy tests/integration/test_artifact_generation_idempotency.py:1…
TestListNotebooks software healthy tests/integration/test_notebooks_integration.py:20
TestCreateNotebook software healthy tests/integration/test_notebooks_integration.py:91
TestGetNotebook software healthy tests/integration/test_notebooks_integration.py:155
TestDeleteNotebook software healthy tests/integration/test_notebooks_integration.py:256
TestSummary software healthy tests/integration/test_notebooks_integration.py:273
TestRenameNotebook software healthy tests/integration/test_notebooks_integration.py:292
TestNotebooksAPIAdditional software healthy tests/integration/test_notebooks_integration.py:360
TestGetNotebookFailures software healthy tests/integration/test_notebooks_integration.py:477
TestNotebookEdgeCases software healthy tests/integration/test_notebooks_integration.py:546
TestDescribeEdgeCases software healthy tests/integration/test_notebooks_integration.py:659
TestShareEdgeCases software healthy tests/integration/test_notebooks_integration.py:726
TestResolveChatReferencePassage software healthy tests/integration/test_chat_passage_resolver.py:59
TestArtifactSelection software healthy tests/integration/test_download_multi_artifact.py:16
TestFilenameGeneration software healthy tests/integration/test_download_multi_artifact.py:165
TestIntegrationScenarios software healthy tests/integration/test_download_multi_artifact.py:245
TestPollingReplay software healthy tests/integration/test_polling_vcr.py:140
TestEmptyResults software healthy tests/integration/test_empty_results_vcr.py:50
TestDeepResearchPollReplay software healthy tests/integration/test_research_deep_poll_vcr.py:235
TestRealAPIWithVCR software healthy tests/integration/test_vcr_real_api.py:34
TestArtifactsWithVCR software healthy tests/integration/test_vcr_real_api.py:79
TestMindMapChain software healthy tests/integration/test_mind_map_chain_vcr.py:80
TestSettingsAPI software healthy tests/integration/test_settings_integration.py:22
TestLoginLanguageSync software healthy tests/integration/test_settings_integration.py:153
TestClientInitialization software healthy tests/integration/test_session_integration.py:34
TestIsAuthError software healthy tests/integration/test_session_integration.py:88
TestRPCCallHTTPErrors software healthy tests/integration/test_session_integration.py:149
TestRPCCallAuthRetry software healthy tests/integration/test_session_integration.py:283
TestGetHttpClient software healthy tests/integration/test_session_integration.py:319
TestGetSourceIds software healthy tests/integration/test_session_integration.py:334
TestCrossDomainCookiePreservation software healthy tests/integration/test_session_integration.py:428
TestBuildUrlHL software healthy tests/integration/test_session_integration.py:507
TestDeleteConversationVCR software healthy tests/integration/test_chat_delete_conversation_vcr.py:151
TestWorkflowTracerBullet software healthy tests/integration/test_workflow_tracer_vcr.py:105
TestGetShareStatus software healthy tests/integration/test_sharing_integration.py:19
TestSetPublic software healthy tests/integration/test_sharing_integration.py:98
TestSetViewLevel software healthy tests/integration/test_sharing_integration.py:155
TestAddUser software healthy tests/integration/test_sharing_integration.py:218
TestUpdateUser software healthy tests/integration/test_sharing_integration.py:324
TestRemoveUser software healthy tests/integration/test_sharing_integration.py:361
TestSharingAPIIntegration software healthy tests/integration/test_sharing_integration.py:393
TestAutoRefreshIntegration software healthy tests/integration/test_auto_refresh.py:19
TestNotebooksAPI software healthy tests/integration/test_vcr_comprehensive.py:74
TestSourcesAPI software healthy tests/integration/test_vcr_comprehensive.py:141
TestNotesAPI software healthy tests/integration/test_vcr_comprehensive.py:243

Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.

LabelLayerStatusPath
README.md software healthy README.md
CLAUDE.md software healthy CLAUDE.md
CONTRIBUTING.md software healthy CONTRIBUTING.md
.pre-commit-config.yaml software healthy .pre-commit-config.yaml
.env.example software healthy .env.example
pyproject.toml software healthy pyproject.toml
SKILL.md software healthy SKILL.md
SECURITY.md software healthy SECURITY.md
AGENTS.md software healthy AGENTS.md
CHANGELOG.md software healthy CHANGELOG.md
conftest.py software healthy tests/conftest.py
cassette_patterns.py software healthy tests/cassette_patterns.py
vcr_config.py software healthy tests/vcr_config.py
test_artifacts_drift.py software healthy tests/integration/test_artifacts_drift.py
test_notes_integration.py software healthy tests/integration/test_notes_integration.py
test_error_paths_vcr.py software healthy tests/integration/test_error_paths_vcr.py
test_save_chat_as_note_integration.py software healthy tests/integration/test_save_chat_as_note_integration.py
test_gzip_cassette_replay.py software healthy tests/integration/test_gzip_cassette_replay.py
test_get_summary_drift.py software healthy tests/integration/test_get_summary_drift.py
test_artifact_generation_idempotency.py software healthy tests/integration/test_artifact_generation_idempotency.py
conftest.py software healthy tests/integration/conftest.py
test_notebooks_integration.py software healthy tests/integration/test_notebooks_integration.py
test_chat_passage_resolver.py software healthy tests/integration/test_chat_passage_resolver.py
test_download_multi_artifact.py software healthy tests/integration/test_download_multi_artifact.py
README.md software healthy tests/integration/README.md
test_polling_vcr.py software healthy tests/integration/test_polling_vcr.py
test_empty_results_vcr.py software healthy tests/integration/test_empty_results_vcr.py
test_research_deep_poll_vcr.py software healthy tests/integration/test_research_deep_poll_vcr.py
test_auth_refresh_vcr.py software healthy tests/integration/test_auth_refresh_vcr.py
test_vcr_real_api.py software healthy tests/integration/test_vcr_real_api.py
test_mind_map_chain_vcr.py software healthy tests/integration/test_mind_map_chain_vcr.py
test_settings_vcr.py software healthy tests/integration/test_settings_vcr.py
test_settings_integration.py software healthy tests/integration/test_settings_integration.py
test_notes_idempotency.py software healthy tests/integration/test_notes_idempotency.py
test_session_integration.py software healthy tests/integration/test_session_integration.py
test_chat_delete_conversation_vcr.py software healthy tests/integration/test_chat_delete_conversation_vcr.py
test_workflow_tracer_vcr.py software healthy tests/integration/test_workflow_tracer_vcr.py
test_sharing_integration.py software healthy tests/integration/test_sharing_integration.py
test_skill_packaging.py software healthy tests/integration/test_skill_packaging.py
test_auto_refresh.py software healthy tests/integration/test_auto_refresh.py
test_vcr_comprehensive.py software healthy tests/integration/test_vcr_comprehensive.py
test_artifacts_integration.py software healthy tests/integration/test_artifacts_integration.py
test_sources_integration.py software healthy tests/integration/test_sources_integration.py
test_research_idempotency.py software healthy tests/integration/test_research_idempotency.py
test_side_effects_idempotency.py software healthy tests/integration/test_side_effects_idempotency.py
test_vcr_example.py software healthy tests/integration/test_vcr_example.py
test_sources_idempotency.py software healthy tests/integration/test_sources_idempotency.py
test_chat_multi_source_vcr.py software healthy tests/integration/test_chat_multi_source_vcr.py
test_sharing_vcr.py software healthy tests/integration/test_sharing_vcr.py
test_cli_session_local.py software healthy tests/integration/test_cli_session_local.py

Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.

LabelLayerStatusPath
tests software healthy tests
integration software healthy tests/integration
concurrency software healthy tests/integration/concurrency
cli_vcr software healthy tests/integration/cli_vcr
unit software healthy tests/unit
concurrency software healthy tests/unit/concurrency
fixtures software healthy tests/unit/fixtures
cli software healthy tests/unit/cli
fixtures software healthy tests/fixtures
bad_cassettes software healthy tests/fixtures/bad_cassettes
scripts software healthy tests/scripts
_lint software healthy tests/_lint
_fixtures software healthy tests/_fixtures
cassettes software healthy tests/cassettes
examples software healthy tests/cassettes/examples
gzip_coverage software healthy tests/cassettes/gzip_coverage
e2e software healthy tests/e2e
docs software healthy docs
adr software healthy docs/adr
examples software healthy docs/examples
scripts software healthy scripts
examples software healthy examples
.github software healthy .github
ISSUE_TEMPLATE software healthy .github/ISSUE_TEMPLATE
workflows software healthy .github/workflows
src software healthy src
notebooklm software healthy src/notebooklm
cli software healthy src/notebooklm/cli
services software healthy src/notebooklm/cli/services
_auth software healthy src/notebooklm/_auth
rpc software healthy src/notebooklm/rpc
_types software healthy src/notebooklm/_types

LabelLayerStatusPath
auth::src/notebooklm/_logging.py security healthy src/notebooklm/_logging.py
auth::tests/cassettes/artifacts_list_slide_decks.yaml security healthy tests/cassettes/artifacts_list_slide_decks.yaml
auth::tests/cassettes/real_api_list_quizzes.yaml security healthy tests/cassettes/real_api_list_quizzes.yaml
auth::tests/cassettes/artifacts_download_report.yaml security healthy tests/cassettes/artifacts_download_report.yaml
auth::tests/cassettes/artifacts_download_mind_map.yaml security healthy tests/cassettes/artifacts_download_mind_map.yaml
auth::scripts/check_action_pinning.py security healthy scripts/check_action_pinning.py
auth::tests/cassettes/artifacts_list_quizzes.yaml security healthy tests/cassettes/artifacts_list_quizzes.yaml
auth::tests/cassette_patterns.py security healthy tests/cassette_patterns.py
auth::tests/cassettes/artifacts_list_reports.yaml security healthy tests/cassettes/artifacts_list_reports.yaml
auth::tests/cassettes/real_api_list_artifacts.yaml security healthy tests/cassettes/real_api_list_artifacts.yaml
auth::tests/cassettes/artifacts_list_infographics.yaml security healthy tests/cassettes/artifacts_list_infographics.yaml
auth::tests/cassettes/artifacts_list_flashcards.yaml security healthy tests/cassettes/artifacts_list_flashcards.yaml
auth::tests/cassettes/real_api_list_audio.yaml security healthy tests/cassettes/real_api_list_audio.yaml
auth::tests/unit/test_logging.py security healthy tests/unit/test_logging.py
auth::.github/workflows/publish.yml security healthy .github/workflows/publish.yml
auth::tests/cassettes/artifacts_list.yaml security healthy tests/cassettes/artifacts_list.yaml
auth::tests/unit/test_auth_extraction.py security healthy tests/unit/test_auth_extraction.py
auth::tests/cassettes/artifacts_list_data_tables.yaml security healthy tests/cassettes/artifacts_list_data_tables.yaml
auth::tests/cassettes/artifacts_download_data_table.yaml security healthy tests/cassettes/artifacts_download_data_table.yaml
auth::src/notebooklm/_auth/extraction.py security healthy src/notebooklm/_auth/extraction.py
auth::tests/cassettes/real_api_list_reports.yaml security healthy tests/cassettes/real_api_list_reports.yaml
auth::tests/cassettes/artifacts_list_audio.yaml security healthy tests/cassettes/artifacts_list_audio.yaml
auth::.github/workflows/testpypi-publish.yml security healthy .github/workflows/testpypi-publish.yml
auth::tests/integration/cli_vcr/test_login_browser_cookies.… security healthy tests/integration/cli_vcr/test_login_browser_cookies.py
auth::.github/codeql-config.yml security healthy .github/codeql-config.yml
auth::tests/cassettes/artifacts_list_video.yaml security healthy tests/cassettes/artifacts_list_video.yaml
auth::tests/cassettes/notes_list_mind_maps.yaml security healthy tests/cassettes/notes_list_mind_maps.yaml

LabelLayerStatusPath
port:13 network healthy tests/cassettes/settings_get_user_tier.yaml
port:20 network healthy tests/cassettes/settings_get_user_tier.yaml
port:02 network healthy tests/cassettes/research_start_fast.yaml
port:50 network healthy tests/cassettes/research_start_fast.yaml
port:14 network healthy tests/cassettes/real_api_list_audio.yaml
port:01 network healthy tests/cassettes/real_api_list_audio.yaml
port:48 network healthy tests/cassettes/sources_rename.yaml
port:49 network healthy tests/cassettes/artifacts_delete.yaml
port:12 network healthy tests/cassettes/chat_ask_multi_source.yaml
port:33 network healthy tests/cassettes/chat_ask_multi_source.yaml
port:46 network healthy tests/cassettes/settings_get_output_language.yaml
port:47 network healthy tests/cassettes/sharing_set_public.yaml
port:19 network healthy tests/cassettes/research_poll_empty.yaml
port:23 network healthy tests/cassettes/research_poll_empty.yaml
port:21 network healthy tests/cassettes/generate_mind_map_chain.yaml
port:52 network healthy tests/cassettes/notebooks_get.yaml
port:29 network healthy tests/cassettes/artifacts_revise_slide.yaml
port:15 network healthy tests/cassettes/chat_delete_conversation.yaml
port:36 network healthy tests/cassettes/chat_delete_conversation.yaml
port:22 network healthy tests/cassettes/artifacts_suggest_reports.yaml
port:38 network healthy tests/cassettes/artifacts_suggest_reports.yaml
port:51 network healthy tests/cassettes/chat_get_history.yaml
port:18 network healthy tests/cassettes/sources_check_freshness_drive.yaml
port:54 network healthy tests/cassettes/artifacts_download_report.yaml
port:06 network healthy .github/workflows/dependency-audit.yml

LabelLayerStatusPath
analyze cicd healthy .github/workflows/codeql.yml
quality cicd healthy .github/workflows/test.yml
test cicd healthy .github/workflows/test.yml
health-check cicd healthy .github/workflows/rpc-health.yml
pip-audit cicd healthy .github/workflows/dependency-audit.yml
build-and-test cicd healthy .github/workflows/testpypi-publish.yml
publish cicd healthy .github/workflows/testpypi-publish.yml
claude cicd healthy .github/workflows/claude.yml
resolve-branch cicd healthy .github/workflows/nightly.yml
e2e cicd healthy .github/workflows/nightly.yml
verify cicd healthy .github/workflows/verify-package.yml
verify cicd healthy .github/workflows/verify-artifacts.yml
build-and-test cicd healthy .github/workflows/publish.yml
publish cicd healthy .github/workflows/publish.yml

LabelLayerStatusPath
gha::codeql cicd healthy .github/workflows/codeql.yml
gha::test cicd healthy .github/workflows/test.yml
gha::rpc-health cicd healthy .github/workflows/rpc-health.yml
gha::dependency-audit cicd healthy .github/workflows/dependency-audit.yml
gha::testpypi-publish cicd healthy .github/workflows/testpypi-publish.yml
gha::claude cicd healthy .github/workflows/claude.yml
gha::nightly cicd healthy .github/workflows/nightly.yml
gha::verify-package cicd healthy .github/workflows/verify-package.yml
gha::verify-artifacts cicd healthy .github/workflows/verify-artifacts.yml
gha::publish cicd healthy .github/workflows/publish.yml

LabelLayerStatusPath
NOTEBOOKLM_GENERATION_NOTEBOOK_ID cicd healthy
CLAUDE_CODE_OAUTH_TOKEN cicd healthy
GITHUB_TOKEN cicd healthy
NOTEBOOKLM_AUTH_JSON cicd healthy
NAME cicd healthy
NOTEBOOKLM_READ_ONLY_NOTEBOOK_ID cicd healthy

LabelLayerStatusPath
sqlite data healthy tests/unit/test_firefox_containers.py
postgresql data healthy tests/e2e/conftest.py
mongodb data healthy tests/e2e/conftest.py

LabelLayerStatusPath
test_migration.py data healthy tests/unit/test_migration.py
test_migration_lock.py data healthy tests/unit/test_migration_lock.py
migration.py data healthy src/notebooklm/migration.py

LabelLayerStatusPath
108.5.149.175 network healthy tests/unit/test_cassette_shapes.py
7.1.1.1 network healthy src/notebooklm/_authed_transport.py
138.0.0.0 network healthy src/notebooklm/_auth/account.py

LabelLayerStatusPath
vps::aws hardware healthy tests/cassettes/artifacts_generate_study_guide.yaml
vps::azure hardware healthy tests/e2e/conftest.py

LabelLayerStatusPath
repobility-clone-69asujg3 software healthy /tmp/repobility-clone-69asujg3

LabelLayerStatusPath
gpu (detected) hardware healthy tests/cassettes/real_api_list_audio.yaml
For AI agents: Voting guide (TP/FP) MCP manifest Stdio wrapper SARIF Integrate Findings queue Vote TP/FP on findings to calibrate the engine.
For AI agents + API integrations
Email me when this repo regresses
Free. We re-scan periodically; new criticals → your inbox. No signup required for the scan itself.
API access

This page is publicly accessible at: https://repobility.com/scan/75c7c183-8ca9-4413-9906-2ac2428ad799/

To check status programmatically (no auth required):

curl -s https://repobility.com/api/v1/public/scan/75c7c183-8ca9-4413-9906-2ac2428ad799/

Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.