notion-report
Pass
Audited by Gen Agent Trust Hub on Oct 13, 2026
Risk Level: SAFECOMMAND_EXECUTIONDYNAMIC_EXECUTIONINDIRECT_PROMPT_INJECTION
Full Analysis
- [COMMAND_EXECUTION]: The skill uses the
Bashtool to execute local Python scripts (notion_api.py,notion_browser.py) and theplaywright-cliutility. These commands are essential for the skill's workflow, which involves querying the Notion API and automating browser sessions for users who lack API access. - [DYNAMIC_EXECUTION]: The skill implements dynamic code execution by generating JavaScript snippets in
notion_browser.pyand executing them viaplaywright-cli eval. This mechanism is used to probe the Notion Document Object Model (DOM) and perform synthetic paste operations to insert content into the editor without requiring clipboard permissions. - [INDIRECT_PROMPT_INJECTION]: The skill reads data from external sources (Notion pages) during its verification and probing steps. While this is necessary for its function, it introduces a vulnerability surface where malicious content within a Notion page could attempt to influence the agent's context or behavior.
- Ingestion points: Data enters the agent's context through API responses in
notion_api.py(cmd_probe,cmd_readback) and browser DOM text extraction innotion_browser.py(probe-js,verify-js). - Boundary markers: The skill requires a mandatory dry-run (
Step 3) where the user reviews the draft before writing, providing a manual verification layer. However, it lacks explicit delimiters to isolate the data read back from Notion. - Capability inventory: The agent has access to
Bash(shell execution),urllib.request(network operations via Python), andplaywright-cli(browser automation). - Sanitization: Content inserted via browser automation is sanitized using
json.dumpsbefore being interpolated into a JavaScript string literal, preventing basic script injection into the automation logic.
Audit Metadata