X Read

AdvisoryAudited by Static analysis on Apr 30, 2026.

Overview

No suspicious patterns detected.

Findings (0)

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.

What this means

A prompt or caller could cause the headless browser to visit unrelated or internal URLs from the user's environment, broadening the tool beyond a public X reader.

Why it was flagged

The documented purpose is to read public X/Twitter permalinks, but the runtime navigates to whatever URL argument it receives, with no visible allowlist for x.com/twitter.com status URLs.

Skill content
const url = process.argv[2]; ... await page.goto(url, { waitUntil: 'domcontentloaded', timeout: 30000 });
Recommendation

Validate the input before navigation, allowing only public x.com/twitter.com status or article URLs, and require explicit user approval for any other destination.

ConcernHigh Confidence
ASI05: Unexpected Code Execution
What this means

The skill is still read-only at the X account level, but remote page content is processed with weaker browser isolation than users would expect.

Why it was flagged

The skill renders remote web pages in Chromium, and these flags explicitly disable Chromium's sandbox, reducing containment if a malicious page or browser vulnerability is encountered.

Skill content
args: ['--no-sandbox', '--disable-setuid-sandbox', '--disable-dev-shm-usage']
Recommendation

Avoid disabling the Chromium sandbox where possible, or run the skill inside a separate locked-down container or VM with restricted network access.

What this means

Users may overestimate the isolation provided by the browser run.

Why it was flagged

This safety statement is contradicted by index.js, which launches Chromium with '--no-sandbox' and '--disable-setuid-sandbox'.

Skill content
Puppeteer launches a sandboxed Chromium instance with a realistic user-agent
Recommendation

Update the documentation to accurately describe the sandbox status, or change the launch options so the implementation matches the safety claim.

What this means

Installation may pull or update browser automation code outside the reviewed source if dependency locking is not applied.

Why it was flagged

Puppeteer is purpose-aligned for this skill, but it is a large browser automation dependency and the caret range can allow newer dependency resolution if the lockfile is not enforced.

Skill content
"dependencies": { "puppeteer": "^24.37.5" }
Recommendation

Install using the provided lockfile, consider pinning exact dependency versions, and verify the package source before use.