skills/open-notebook/SKILL.md
# Open Notebook Self-hosted research platform (MIT license) — organizes PDFs, videos, audio, web pages, and text into searchable notebooks with AI-powered chat. NotebookLM alternative with full data ownership. ## Features - **Multi-format ingestion**: PDFs, URLs, YouTube videos, audio files, raw text - **AI chat**: Query notebooks in natural language with source citations - **Podcast generation**: Multi-speaker audio synthesis from notebook content - **Full-text + vector search**: Semantic an
npx skillsauth add lamm-mit/scienceclaw skills/open-notebookInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Self-hosted research platform (MIT license) — organizes PDFs, videos, audio, web pages, and text into searchable notebooks with AI-powered chat. NotebookLM alternative with full data ownership.
# Docker Compose (recommended)
git clone https://github.com/open-notebook/open-notebook
cd open-notebook
cp .env.example .env
# Edit .env: set AI provider API keys
docker compose up -d
# API available at: http://localhost:5055
Three scripts are available for programmatic interaction:
| Script | Purpose |
|--------|---------|
| scripts/notebook_management.py | Create, list, update, delete notebooks |
| scripts/source_ingestion.py | Add URLs, text, or file uploads |
| scripts/chat_interaction.py | Chat, search, and query notebooks |
# Create a notebook
python3 scripts/notebook_management.py \
--url http://localhost:5055 \
--action create \
--name "Alzheimer's Research"
# Add sources
python3 scripts/source_ingestion.py \
--url http://localhost:5055 \
--notebook-id <id> \
--action add-url \
--source "https://pubmed.ncbi.nlm.nih.gov/12345678/"
# Chat with notebook
python3 scripts/chat_interaction.py \
--url http://localhost:5055 \
--notebook-id <id> \
--question "What are the main amyloid beta mechanisms described?"
Base URL: http://localhost:5055/api
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | /notebooks | List all notebooks |
| POST | /notebooks | Create notebook |
| GET | /notebooks/{id} | Get notebook details |
| PUT | /notebooks/{id} | Update notebook |
| DELETE | /notebooks/{id} | Delete notebook |
| POST | /notebooks/{id}/sources | Add source |
| GET | /notebooks/{id}/sources | List sources |
| DELETE | /notebooks/{id}/sources/{source_id} | Remove source |
| POST | /notebooks/{id}/chat | Chat with notebook |
| POST | /notebooks/{id}/search | Search sources |
| POST | /notebooks/{id}/podcast | Generate podcast |
tools
Onboard and manage Paperclip AI for research-paper knowledge and agent orchestration
development
Perform AI-powered web searches with real-time information using Perplexity models via LiteLLM and OpenRouter. This skill should be used when conducting web searches for current information, finding recent scientific literature, getting grounded answers with source citations, or accessing information beyond the model knowledge cutoff. Provides access to multiple Perplexity models including Sonar Pro, Sonar Pro Search (advanced agentic search), and Sonar Reasoning Pro through a single OpenRouter API key.
testing
Generate a structured scientific PDF report from a JSON description. Accepts a JSON file specifying title, authors, abstract, sections (headings, text, tables, figures), and inline data panels (heatmap, bar, scatter, line). Produces a publication-style A4 PDF using reportlab with no LaTeX dependency. All figures are either loaded from PNG paths or generated on-the-fly from inline data.
development
Execute arbitrary Python code and return stdout. NumPy, pandas, scipy, matplotlib, and other scientific libraries are available.