amazon-sorftime-research-keywords-skill
Analysis
The skill’s Amazon keyword-research purpose is coherent, but its generated HTML dashboard appears to insert user/API-derived text without escaping, which could let malicious content run in the browser when the report is opened.
Findings (3)
Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.
Checks for instructions or behavior that redirect the agent, misuse tools, execute unexpected code, cascade across systems, exploit user trust, or continue outside the intended task.
product_name = product_info.get('product_name', '') ... product_name = infer_product_name(core_keywords) ... html_content = html_content.replace('{{PRODUCT_NAME}}', product_name)Product names can come from user-provided product_info or inferred keyword data, then are inserted directly into the HTML template. The visible code does not HTML-escape these placeholder replacements, so malicious text could become active HTML/JavaScript in the generated dashboard.
【待分类关键词】
{keywords_json}
【输出格式】
请以 JSON 格式输出The workflow places externally collected keyword data into an LLM classification prompt. This is central to the skill, but keyword text should be treated strictly as data because unexpected strings could influence classification or report recommendations.
Checks whether tool use, credentials, dependencies, identity, account access, or inter-agent boundaries are broader than the stated purpose.
**API Key**: 自动从 `.mcp.json` 读取
The skill expects to read a local Sorftime MCP API key, while the registry metadata declares no primary credential or required config path. This appears purpose-aligned but should be visible to installers.
