Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add dralkh/iktinah --skill open-notebookgit clone --depth 1 https://github.com/dralkh/iktinahWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/dralkh/iktinah/open-notebook)<a href="https://agentmods.dev/skills/dralkh/iktinah/open-notebook"><img src="https://agentmods.dev/badge/skills/dralkh/iktinah/open-notebook/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/dralkh/iktinah/open-notebook"><img src="https://agentmods.dev/badge/skills/dralkh/iktinah/open-notebook.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00123 | $0.02439 |
| Opus 5 | $0.00062 | $0.01220 |
| Sonnet 5 | $0.00025 | $0.00488 |
| Haiku 4.5 | $0.00012 | $0.00244 |
Grade A, and why
open-notebook scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -o docker-compose.yml https://raw.githubusercontent.com/lfnovo/open-notebook/main/docker-compose.yml This is a copy
86% identical to open-notebook — 34 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 285 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Open Notebook
Overview
Open Notebook is an open-source, self-hosted alternative to Google's NotebookLM that enables researchers to organize materials, generate AI-powered insights, create podcasts, and have context-aware conversations with their documents — all while maintaining complete data privacy.
Unlike Google's Notebook LM, which has no publicly available API outside of the Enterprise version, Open Notebook provides a comprehensive REST API, supports 16+ AI providers, and runs entirely on your own infrastructure.
Key advantages over NotebookLM:
- Full REST API for programmatic access and automation
- Choice of 16+ AI providers (not locked to Google models)
- Multi-speaker podcast generation with 1-4 customizable speakers (vs. 2-speaker limit)
- Complete data sovereignty through self-hosting
- Open source and fully extensible (MIT license)
Repository: https://github.com/lfnovo/open-notebook
Quick Start
Prerequisites
- Docker Desktop installed
- API key for at least one AI provider (or local Ollama for free local inference)
Installation
Deploy Open Notebook using Docker Compose:
# Download the docker-compose file
curl -o docker-compose.yml https://raw.githubusercontent.com/lfnovo/open-notebook/main/docker-compose.yml
# Set the required encryption key
export OPEN_NOTEBOOK_ENCRYPTION_KEY="your-secret-key-here"
# Launch the services
docker-compose up -d
Access the application:
- Frontend UI: http://localhost:8502
- REST API: http://localhost:5055
- API Documentation: http://localhost:5055/docs
Configure AI Provider
After startup, configure at least one AI provider:
- Navigate to Settings > API Keys in the UI
- Add credentials for your preferred provider (OpenAI, Anthropic, etc.)
- Test the connection and discover available models
- Register models for use across the platform
Or configure via the REST API:
import requests
BASE_URL = "http://localhost:5055/api"
# Add a credential for an AI provider
response = requests.post(f"{BASE_URL}/credentials", json={
"provider": "openai",
"name": "My OpenAI Key",
"api_key": "sk-..."
})
credential = response.json()
# Discover available models
response = requests.post(
f"{BASE_URL}/credentials/{credential['id']}/discover"
)
discovered = response.json()
# Register discovered models
requests.post(
f"{BASE_URL}/credentials/{credential['id']}/register-models",
json={"model_ids": [m["id"] for m in discovered["models"]]}
)
What ships with it
8 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/api_reference.md 10 KB
- references/architecture.md 7.3 KB
- references/configuration.md 5.2 KB
- references/examples.md 8.2 KB
- scripts/chat_interaction.py 6.1 KB runs code
- scripts/notebook_management.py 4.1 KB runs code
- scripts/source_ingestion.py 4.8 KB runs code
- scripts/test_open_notebook_skill.py 15 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago First seen · 285 lines · 123 tokens per session scan A 30736d5da208
open-notebook is a skill published in the GitHub repository dralkh/iktinah (77 stars, last pushed 2mo ago), licensed MIT. It adds 123 tokens to every session and 2,439 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). It is 86% identical to open-notebook, differing in 34 lines, and is treated as a copy.
Other skills, from other repositories
sci-figure
A tool for finding and saving figures and smaller panels from academic PDF papers as PNG images. It recognizes common figure types and labels such as (a), (b), and (i).
sci-download
An academic-paper PDF downloader that supports eight research sources and routes requests by DOI, a paper's persistent identifier. For unknown DOI formats, it tries Unpaywall and then Semantic Scholar.
officecli
Create, analyze, proofread, and modify Office documents (.docx, .xlsx, .pptx) using the officecli CLI tool. Use when the user wants to create, inspect, check formatting, find issues, add charts, or modify Office documents.
A set of instructions for working with PDF files, which are documents designed to preserve their layout across devices.
hive.pdf
Read, write, merge, split, rotate, watermark, encrypt, and OCR PDF files using Python (pypdf, pdfplumber, reportlab, pypdfium2) and command-line tools (poppler-utils, qpdf). Use when the user asks to extract text/tables/images from a PDF, create or modify a PDF, combine or split PDFs, OCR a scanned PDF…
pdf-toolkit
Structured .pdf operations: extract text/tables, merge pages from multiple PDFs, split a PDF by page ranges, fill PDF form fields, and generate fresh PDFs from JSON. Trigger when the user wants programmatic PDF work without natural-language rewriting — examples: pull tables from a report, combine three PDFs, extract…