explainer-kit
Pass
Audited by Gen Agent Trust Hub on Oct 13, 2026
Risk Level: SAFEINDIRECT_PROMPT_INJECTIONEXTERNAL_DOWNLOADS
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill's primary function is to assemble fragments and JSON data into a single HTML page. This process interpolates untrusted or externally-provided content into the generated page's source code, creating a surface for indirect prompt injection.\n
- Ingestion points:
assets/assemble.pyreads content from fragment files;assets/preview.pyreads data from JSON files.\n - Boundary markers: The skill relies on structural delimiters defined in
assets/FRAGMENT-CONTRACT.mdbut lacks explicit warnings to the agent about ignoring potentially malicious instructions within processed data.\n - Capability inventory: The skill uses
assets/assemble.pyto write the final HTML artifact to the file system andassets/check.pyto launch a browser environment via Playwright for validation.\n - Sanitization: The
assets/assemble.pyscript validates against a list of forbidden HTML tags (likeiframe,object,embed) and enforces script IIFE wrapping. However,assets/preview.pyexplicitly allows raw HTML tags (e.g.,<b>,<code>,<a>) in several fields.\n- [EXTERNAL_DOWNLOADS]: The skill references external resources from well-known services.\n assets/kit.jsfetches Geist and other fonts from Google Fonts (fonts.googleapis.com).\nassets/check.pyrequires theplaywrightlibrary for automated testing, which downloads browser binaries.\nassets/assemble.pywhitelists specific well-known CDNs (cdnjs.cloudflare.com,cdn.jsdelivr.net,unpkg.com) for external script inclusion in fragments.
Audit Metadata