wechat-article-md-local
Pass
Audited by Gen Agent Trust Hub on Oct 22, 2026
Risk Level: SAFEINDIRECT_PROMPT_INJECTIONEXTERNAL_DOWNLOADSCOMMAND_EXECUTION
Full Analysis
- [COMMAND_EXECUTION]: The skill relies on executing local shell (
scripts/download_wechat_article.sh) and Python (scripts/save_wechat_article.py) scripts to orchestrate the scraping and conversion process. These scripts are invoked with arguments like URLs and output directories provided by the agent. - [EXTERNAL_DOWNLOADS]: The shell script automatically performs an
npm installfor theplaywright-corepackage if it is missing from the localnode_modulesdirectory. Additionally, the Python script uses therequestslibrary to fetch article images from external URLs found within the scraped HTML. - [INDIRECT_PROMPT_INJECTION]: The skill processes raw content from external web pages (
mp.weixin.qq.com). Maliciously crafted articles could contain instructions designed to trick the AI agent when it later reads, summarizes, or analyzes the generated Markdown file. - Ingestion points: The
scripts/extract_wechat_article.mjsscript extracts the full#js_contentHTML from the target URL. - Boundary markers: The
WechatArticleSaver.build_markdownmethod inscripts/save_wechat_article.pycreates a Markdown file but does not wrap the untrusted article content in boundary markers or include warnings to ignore embedded instructions. - Capability inventory: The skill has the ability to execute shell commands, write files to the workspace, and make network requests via Playwright and Python's
requestslibrary. - Sanitization: While filenames and metadata are sanitized for filesystem safety, the main article body is converted to Markdown without filtering or sanitizing potential instruction-like text.
- [DATA_EXFILTRATION]: The image downloading logic in
scripts/save_wechat_article.pyfetches content from URLs extracted from the article's HTML. A malicious article could potentially include URLs pointing to sensitive internal network services (SSRF), causing the script to attempt to download and store that data in the local workspace.
Audit Metadata