tuzi-url-to-markdown

Pass

Audited by Gen Agent Trust Hub on Oct 8, 2026

Risk Level: SAFECOMMAND_EXECUTIONEXTERNAL_DOWNLOADSINDIRECT_PROMPT_INJECTIONDYNAMIC_EXECUTION
Full Analysis
  • [COMMAND_EXECUTION]: The skill spawns local browser processes (Chrome, Edge, or Chromium) to render web pages. It searches for these binaries in standard system paths across Windows, macOS, and Linux, or allows a custom path via the URL_CHROME_PATH environment variable.
  • [EXTERNAL_DOWNLOADS]: The skill fetches HTML content from user-provided URLs and can download associated image and video assets to local storage. Media downloading is gated by user preferences in EXTEND.md and requires explicit confirmation through AskUserQuestion if not pre-configured.
  • [INDIRECT_PROMPT_INJECTION]: By processing arbitrary HTML from the internet and converting it to Markdown for the agent to read, the skill creates a surface for indirect prompt injection. Malicious instructions hidden in source web pages could be interpreted by the agent during the conversion or post-processing phase.
  • Ingestion points: scripts/main.ts and scripts/cdp.ts fetch content from arbitrary remote URLs.
  • Boundary markers: While the output uses YAML frontmatter for metadata, there are no specific delimiters or warnings used in the markdown body to isolate untrusted content from the agent's instructions.
  • Capability inventory: The skill has the ability to write to the file system (writeFile), perform network requests (fetch), and spawn subprocesses (spawn).
  • Sanitization: The skill uses jsdom for structural parsing and defuddle for content extraction, which helps normalize the output format but does not semantically filter the text for potential instructions.
  • [DYNAMIC_EXECUTION]: The skill uses the Chrome DevTools Protocol (Runtime.evaluate) to execute JavaScript within the browser context. This is used for tasks like converting relative URLs to absolute paths and triggering lazy-loading via auto-scrolling.
Audit Metadata
Risk Level
SAFE
Analyzed
Oct 8, 2026, 11:30 PM