---
name: notebooklm-automation
description: |
  Complete NotebookLM automation for notebooks, sources, and artifacts management.
  Triggers: manage NotebookLM, create notebook, add sources, 노트북 관리, NotebookLM 자동화.
---

# NotebookLM Automation

Complete programmatic control over NotebookLM notebooks, sources, and artifacts.

## Prerequisites

```bash
pip install notebooklm-py
playwright install chromium
notebooklm login
```

## When This Skill Activates

- "Create a NotebookLM notebook"
- "Add sources to NotebookLM"
- "Manage my notebooks"
- Korean: "노트북 만들어줘", "소스 추가"

## Quick Reference

### Notebook Operations

| Task | Command |
|------|---------|
| List all | `notebooklm list` |
| List (JSON) | `notebooklm list --json` |
| Create | `notebooklm create "Title"` |
| Rename | `notebooklm rename <id> "New"` |
| Delete | `notebooklm delete <id>` |
| Set context | `notebooklm use <id>` |

### Source Operations

| Task | Command |
|------|---------|
| Add URL | `notebooklm source add "https://..."` |
| Add file | `notebooklm source add ./file.pdf` |
| Add YouTube | `notebooklm source add "youtube.com/..."` |
| List sources | `notebooklm source list` |
| Delete source | `notebooklm source delete <id>` |
| Wait for ready | `notebooklm source wait <id>` |

### Artifact Operations

| Task | Command |
|------|---------|
| List artifacts | `notebooklm artifact list` |
| Wait for completion | `notebooklm artifact wait <id>` |
| Delete artifact | `notebooklm artifact delete <id>` |

## Workflows

### Bulk Import Sources

```bash
notebooklm create "Research Collection"
notebooklm source add "https://url1.com"
notebooklm source add "https://url2.com"
notebooklm source add ./local.pdf
notebooklm source list
```

### CI/CD Integration

Use `--json` for machine-readable output:

```bash
# Create and capture ID
NOTEBOOK_ID=$(notebooklm create "Docs" --json | jq -r '.id')

# Add sources
notebooklm source add "https://docs.example.com" --json

# Export for downstream processing
notebooklm list --json > notebooks.json
```

## Environment Variables

| Variable | Purpose |
|----------|---------|
| `NOTEBOOKLM_HOME` | Custom config directory |
| `NOTEBOOKLM_AUTH_JSON` | Inline auth (CI/CD) |

## Autonomy Rules

**Auto-run:** `list`, `status`, `source list`, `artifact list`, `create`, `use`
**Ask first:** `delete`, `rename`

## Error Handling

| Error | Solution |
|-------|----------|
| Auth error | `notebooklm login` |
| No context | `notebooklm use <id>` |
| Rate limit | Wait 5-10 min, retry |
