open-notebook
7 findings (3 critical, 2 high, 2 medium), mainly data exfiltration, social engineering, resource abuse. Most recent scan 2026-10-21.
Second scanner: NVIDIA SkillSpector
Independent static run, no language model, over the same files as the Cisco scan above. How the two scanners compare across the whole corpus: Two scanners, one corpus.
What this skill does
Organizes research with the self-hosted Open Notebook alternative to NotebookLM. Supports source ingestion (PDFs, web pages, audio, video, and Office documents), cited document chat, text and vector search, notes, custom transformations, and multi-speaker podcasts. Use when automating Open Notebook through its REST API or configuring its local or cloud AI providers, including OpenAI, Anthropic, Google, Ollama, Groq, and Mistral.
- Package
- 9 files, 66 KB
- SKILL.md
- 1234 words, 12+ sections
- Code
- Python (4)
- License
- MIT
- Compatibility
- Requires a running Open Notebook backend and worker; Python 3.11+ with requests for bundled helpers. Docker Compose is the documented deployment option. Network access to the instance and any configured providers is required.
SKILL.md covers: Open Notebook · Overview · Quick Start · Installation · Configure AI providers · Use the bundled helpers · Core Features and Workflow · Notebooks and notes · Source ingestion · Context-aware chat · Search and Ask · Transformations and podcasts
Findings
CRITICAL Cross-file env var exfiltration: 1 files Data Exfiltrationbehavioral
Environment variable access with network calls in scripts/_common.py
CRITICAL Cross-file exfiltration chain: 1 files Data Exfiltrationbehavioral
Multi-file exfiltration chain detected: scripts/_common.py collect data → encode → scripts/_common.py transmit to network
CRITICAL Environment variable access with network calls detected Data Exfiltrationbehavioral
Script accesses environment variables and makes network calls in /home/runner/work/skill-scanner-test/skill-scanner-test/skills/K-Dense-AI-scientific-agent-skills/skills/open-notebook/scripts/_common.py
/home/runner/work/skill-scanner-test/skill-scanner-test/skills/K-Dense-AI-scientific-agent-skills/skills/open-notebook/scripts/_common.py
HIGH Sensitive source reaches a network sink Data Exfiltrationcorrelation
Correlated sensitive_environment → network behavior across scripts/_common.py.
scripts/_common.py:29
HIGH Infinite loop without clear exit condition Resource Abusestatic
Pattern detected: while True:
scripts/source_ingestion.py:56
while True:MEDIUM Potential description-behavior mismatch Social Engineeringstatic
Skill performs actions not reflected in its description
SKILL.md
MEDIUM Outbound network request primitives that can transmit data externally Data Exfiltrationstatic
Pattern detected: requests.request(
scripts/_common.py:29
response = requests.request(What is in the package
| File | Kind | Size |
|---|---|---|
SKILL.md | doc | 11 KB |
references/api_reference.md | doc | 19 KB |
references/architecture.md | doc | 4.9 KB |
references/configuration.md | doc | 9.2 KB |
references/examples.md | doc | 8.2 KB |
scripts/_common.py | script | 1.5 KB |
scripts/chat_interaction.py | script | 3.5 KB |
scripts/notebook_management.py | script | 2.6 KB |
scripts/source_ingestion.py | script | 6.0 KB |
External hosts referenced
github.com arxiv.org raw.githubusercontent.com doi.org export.arxiv.org
Hostnames that appear in the skill's files. Referencing a host is not a finding; compare against the findings above and the skill's stated purpose.
Environment variables referenced
OPEN_NOTEBOOK_PASSWORD OPEN_NOTEBOOK_ENCRYPTION_KEY OPEN_NOTEBOOK_URL API_URL SURREAL_PASS SURREAL_PASSWORD ANTHROPIC_API_KEY GOOGLE_API_KEY GROQ_API_KEY INTERNAL_API_URL OPENAI_API_KEY SURREAL_DATABASE SURREAL_URL
Package contents recorded 2026-10-22 at commit 593377bb0487. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.
What we checked
- Static analyzer. Pattern rules over SKILL.md and bundled files: known-bad commands, exfiltration URLs, secrets, obfuscation.
- Bytecode analyzer.
- Pipeline analyzer.
- Correlation analyzer.
- Behavioral analyzer. Checks what the skill asks the agent to do against what its description claims it does.
- Trigger analyzer. Looks for instructions that fire on conditions the user did not ask for.
What we did not check
- Runtime behaviour. The skill was not executed; findings come from reading its files.
- Anything fetched at install or run time, including remote scripts, package dependencies, and URLs the skill tells the agent to open.
- Content the analyzers cannot read: images, binaries, and some non-English text.
- Known scanner bypass classes. See the methodology and limitations page.
Sources
- Repository: https://github.com/K-Dense-AI/scientific-agent-skills
- Raw scan result: skills-open-notebook-scan.json
- Badge for your README:
 - Request a re-scan