Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
hamsterider-m avatar

Themodernsoftware Notebooklm

  • 6 installs
  • Updated February 25, 2026
  • hamsterider-m/themodernsoftware-notebooklm-skill

Crawls weekly course materials from themodernsoftware.dev, ingests them into NotebookLM, and generates bilingual lesson plans, lecture notes, and video overviews.

About

An agent-controlled workflow that crawls a course site, loads materials into NotebookLM, and produces deep-study outputs tracked through state files. A developer uses it to turn a syllabus and slides that lack lecture videos into structured study artifacts.

  • State-file driven pipeline (course.yaml/weeks.json) with discovered/ingested/completed statuses
  • Strict failure policy: aborts the run if the source site is unreachable

Themodernsoftware Notebooklm by the numbers

  • 6 all-time installs (skills.sh)
  • Ranked #1,691 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
  • Data as of Aug 2, 2026 (Skillselion catalog sync)
npx skills add https://github.com/hamsterider-m/themodernsoftware-notebooklm-skill --skill themodernsoftware-notebooklm

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs6
Last updatedFebruary 25, 2026
Repositoryhamsterider-m/themodernsoftware-notebooklm-skill

What it does

Crawls weekly course materials from themodernsoftware.dev, ingests them into NotebookLM, and generates bilingual lesson plans, lecture notes, and video overviews.

Files

SKILL.mdMarkdownGitHub ↗

TheModernSoftware NotebookLM

Overview

Run an agent-first workflow where Codex is the controller. Crawl weekly course materials from themodernsoftware.dev, ingest them into NotebookLM, and produce deep-study outputs without requiring a custom standalone agent service.

The workflow is deterministic through state files and templates:

  • Use templates/course.yaml and templates/weeks.json as the single source of run state.
  • Use agent-browser for page crawling and link extraction.
  • Use notebooklm for source ingestion and output generation.

Workflow

Step 0: Initialize runtime workspace

Create a runtime folder and copy templates:

./themodernsoftware-notebooklm/scripts/init-workspace.sh ./runtime

This creates:

  • ./runtime/course.yaml
  • ./runtime/weeks.json
  • ./runtime/prompts/*.prompt.md

Step 1: Preflight checks

Verify required tools before crawling:

agent-browser --help
notebooklm status --json

If notebooklm status --json fails, run notebooklm login.

Step 2: Crawl weekly materials (Codex-controlled)

Open https://themodernsoftware.dev/ with agent-browser and recursively discover week pages.

For each week, extract and classify links into:

  • syllabus
  • ppt
  • reference

Persist each discovered week entry into weeks.json with status: "discovered".

Use crawl and classification rules from references/crawl-rules.md.

Step 3: Ingest into NotebookLM

For each status: discovered week: 1. Ensure notebook exists (from course.yaml.notebook_id; create once if empty). 2. Add all URLs/files for the week to NotebookLM sources. 3. Wait for source processing. 4. Write source_ids back into weeks.json. 5. Move status to ingested.

Use generation behavior and retries from references/notebooklm-deep-mode.md.

Step 4: Generate deep outputs

For each status: ingested week: 1. Generate bilingual lesson plan using prompts/lesson-plan.prompt.md. 2. Generate bilingual lecture notes using prompts/lecture-notes.prompt.md. 3. Generate video overview task using prompts/video.prompt.md. 4. Wait for video artifact completion. 5. Download video to local output path. 6. Update week status:

  • drafted after document outputs
  • video_pending while video is generating/downloading
  • completed only when all required artifacts exist

Step 5: Failure policy

Apply strict policy from references/failure-handling.md:

  • If themodernsoftware.dev is unreachable: fail the current run immediately.
  • No automatic fallback source.
  • Keep failure reason in weeks.json.error for the affected week/run.

Output Contract

Each completed week must include:

  • lesson_plan_path
  • lecture_notes_path
  • video_artifact_id
  • video_local_path
  • status: completed

Do not mark completed if video generation is unfinished.

Resources

  • references/crawl-rules.md: URL discovery and week classification rules.
  • references/notebooklm-deep-mode.md: source ingestion, output generation, language and quality requirements.
  • references/failure-handling.md: stop/retry/error recording policy.
  • references/execution-checklist.md: runbook checklist.
  • templates/course.yaml: runtime config template.
  • templates/weeks.json: runtime state template.
  • templates/weeks.schema.json: structure contract for state validation.
  • templates/prompts/*.prompt.md: prompt templates.
  • scripts/init-workspace.sh: initialize runtime workspace.
  • scripts/verify-week-state.sh: validate weeks.json structure.

Common mistakes

  • Running generation before source processing finishes.
  • Marking week as completed before video download succeeds.
  • Losing state by not persisting source_ids and artifact IDs.
  • Mixing unrelated links into week assets.

Related skills

Automation & Workflowsautomationagents

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.