桃噗噗回复助手

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.

ConcernHigh Confidence
ASI01: Agent Goal Hijack
What this means

A commenter could try to manipulate the AI into generating an inappropriate or off-brand public reply from the user's Douyin account.

Why it was flagged

External Douyin comment text is inserted directly into an AI prompt for generating a reply, and the visible prompt does not instruct the model to treat the comment only as untrusted data.

Skill content
other: `用户评论:"${comment}"\n请生成一个积极、大方、热情的回复。回复要自然亲切,不超过100字。`
Recommendation

Add prompt-injection defenses, treat comments strictly as quoted data, restrict replies to safe templates for risky cases, and require human review before posting AI-generated replies.

What this means

A bad rule, model error, or hostile comment could cause many unwanted public replies and may affect the user's account reputation or platform standing.

Why it was flagged

The skill is designed to monitor many videos and automatically post replies, which is public account mutation at scale; the visible artifacts do not show per-reply user confirmation.

Skill content
多视频批量监控 | 同时监控多个视频的评论 ... 自动添加监控 | 自动添加有评论的视频到监控列表 ... 自动回复 - 生成积极、大方、热情、合法的回复
Recommendation

Default to review-before-send, require an explicit target list, provide clear stop/pause controls, cap daily activity conservatively, and log every action for user audit.

What this means

The account may be exposed to platform enforcement risk, and disabling browser sandboxing can increase local risk if a browsed page is compromised.

Why it was flagged

The browser is launched with automation-hiding flags and sandbox-disabling flags, which goes beyond ordinary browser automation and can weaken local browser isolation.

Skill content
args: [ '--disable-blink-features=AutomationControlled', '--disable-infobars', '--no-sandbox', '--disable-setuid-sandbox' ]
Recommendation

Avoid stealth/anti-detection flags and sandbox disabling unless absolutely necessary and explicitly approved; prefer official platform APIs or documented integration methods.

What this means

Anyone or any process that can read or reuse that saved state may be able to act as the logged-in Douyin account, and the skill can continue acting without another login.

Why it was flagged

The skill saves browser authentication/session state to a local file so it can keep using a logged-in Douyin account.

Skill content
userDataDir: path.join(process.env.LOCALAPPDATA || process.env.TEMP, 'douyin-automation-browser') ... await state.context.storageState({ path: savePath });
Recommendation

Clearly disclose session storage, protect the auth-state file, allow easy deletion/logout, scope the browser context only to Douyin, and declare this credential/session handling in metadata.

ConcernHigh Confidence
ASI10: Rogue Agents
What this means

After the user starts monitoring, the automation may continue or recover from failures and keep replying unless the user clearly stops it.

Why it was flagged

The browser manager is designed to keep the session alive and automatically restart after disconnects while running.

Skill content
keepAlive: { enabled: true, intervalMs: 60000 ... } ... if (state.isRunning) { console.log('[BrowserManager] 尝试自动重启...'); await restartBrowser(); }
Recommendation

Provide explicit stop, timeout, and status controls; require renewed user consent after restarts or long idle periods; and make persistence opt-in.

What this means

Local state may reveal which videos are monitored and which comments were processed, and stale state could influence future automated replies.

Why it was flagged

The skill persists monitor targets and processed-comment state locally, which is expected for incremental monitoring but should be visible to users.

Skill content
fs.writeFileSync(MONITOR_TARGETS_PATH, JSON.stringify({ updatedAt: new Date().toISOString(), targets: this.targets }, null, 2), 'utf8'); ... fs.writeFileSync(PROCESSED_PATH, JSON.stringify({ updatedAt: new Date().toISOString(), processed: this.processedComments }, null, 2), 'utf8');
Recommendation

Document the stored files, offer cleanup/export controls, avoid storing unnecessary comment content, and separate state per account.

What this means

Users may install an unpinned dependency manually or encounter unclear setup behavior.

Why it was flagged

The code depends on Playwright, but the provided install metadata says there is no install spec and no required binaries, so dependency installation and version pinning are not clearly declared.

Skill content
chromium = require('playwright').chromium; ... throw new Error('playwright 未安装,请先安装: npm install playwright');
Recommendation

Declare Playwright as a dependency with pinned versions and installation steps, and avoid ad-hoc manual package installation guidance.