Skill Trust Decision

perkoon-transfer

Perkoon是一个正当的文件传输工具,提供了CLI/MCP/A2A/Browser四种集成方式。主要风险来自Browser Automation路径的远程脚本下载执行,但已通过文档和skill-card明确警告用户优先使用CLI/MCP安全路径,风险可控。

Install decision first Source: ClawHub Scanned: Sep 1, 2026
Files 2
Artifacts 14
Violations 0
Findings 3

Why this conclusion was reached

0/4 dimensions flagged
Pass
Declared vs actual capability

Declared resources and inferred behavior are broadly aligned.

Review
Hidden execution and egress

14 lower-risk artifacts were extracted and still need context.

Pass
Attack chain and severe findings

There is no explicit malicious chain in the report.

Review
Dependencies and supply chain hygiene

3 dependency or supply-chain issues need attention.

What drove the risk score up

Browser Automation远程脚本执行 +12

Browser方法通过curl下载并执行远程.mjs脚本,未签名无版本锁定,但文档明确标注为可选重路径并警告优先使用CLI/MCP

localStorage确认跳过 +5

Browser自动化包含localStorage.setItem跳过确认对话框的代码,文档标注需用户已批准文件后才能使用

所有传输经过外部服务 +5

文件通过perkoon.com云端或P2P中转,服务端可访问传输内容(无服务端加密),但skill-card已披露此风险并建议敏感文件用密码保护

Most important evidence

Medium Supply Chain

Browser Automation路径下载执行远程未签名脚本

Browser Automation方法(METHOD 4)通过curl从perkoon.com下载.mjs脚本并直接node执行,无版本锁定、无签名验证。相比之下CLI方法正确使用pinned版本npx -y [email protected]。

SKILL.md:157
优先使用CLI或MCP路径,Browser Automation仅作为无shell环境的最后手段。考虑在自动化环境中预置perkoon包而非运行时下载。
Low Doc Mismatch

localStorage确认跳过代码

Browser自动化脚本包含localStorage.setItem设置跳过确认对话框的代码,可能被滥用绕过用户交互确认。

SKILL.md:165
此功能文档要求用户已明确批准文件后才能使用,符合预期。仅当用户主动要求自动化时使用。
Low Sensitive Access

明确警告避免敏感目录

SKILL.md规则10明确禁止发送~/.ssh、~/.gnupg、/etc等敏感目录文件,需用户明确批准。

SKILL.md:223
遵循文档规则,发送前确认文件路径。

Declared capability vs actual capability

Filesystem Pass
Declared READ,WRITE
→
Inferred READ,WRITE
SKILL.md: 发送文件路径确认、接收文件保存到/home/openclaw/.openclaw/workspace/received/
Shell Pass
Declared WRITE
→
Inferred WRITE
SKILL.md: CLI方法使用npx/bash循环监控日志、后台进程管理
Network Pass
Declared READ
→
Inferred READ,WRITE
SKILL.md: A2A endpoint POST到https://perkoon.com/a2a、Browser自动化访问perkoon.com
Environment Pass
Declared NONE
→
Inferred NONE
SKILL.md: 无环境变量访问代码

Suspicious artifacts and egress

Medium External URL
https://perkoon.com

SKILL.md:12

Medium External URL
https://perkoon.com/K7MX4QPR9W2N

SKILL.md:117

Medium External URL
https://perkoon.com/a2a

SKILL.md:212

Medium External URL
https://perkoon.com/.well-known/agent.json

SKILL.md:214

Medium External URL
https://perkoon.com/perkoon_send.mjs

SKILL.md:323

Medium External URL
https://perkoon.com/perkoon_receive.mjs

SKILL.md:324

Medium External URL
https://perkoon.com/create

SKILL.md:329

Medium External URL
https://perkoon.com/

SKILL.md:340

Medium External URL
https://perkoon.com/llms.txt

SKILL.md:440

Medium External URL
https://perkoon.com/automate

SKILL.md:441

Medium External URL
https://www.npmjs.com/package/@perkoon/mcp

SKILL.md:442

Medium External URL
https://www.npmjs.com/package/perkoon

SKILL.md:443

Dependencies and supply chain

PackageVersionSourceKnown vulnNotes
perkoon 0.5.0 npm (CLI) No pinned版本
@perkoon/mcp 0.3.0 npm (MCP) No pinned版本
playwright * npm (Browser) No Browser Automation可选依赖,无版本锁定

File composition

2 files · 510 lines
Markdown 2 files · 510 lines
Files of concern · 2
SKILL.md Markdown · 443 lines
Browser Automation路径下载执行远程未签名脚本 · localStorage确认跳过代码 · 明确警告避免敏感目录 · https://perkoon.com · https://perkoon.com/K7MX4QPR9W2N · https://perkoon.com/a2a · https://perkoon.com/.well-known/agent.json · https://perkoon.com/perkoon_send.mjs · https://perkoon.com/perkoon_receive.mjs · https://perkoon.com/create · https://perkoon.com/ · https://perkoon.com/llms.txt · https://perkoon.com/automate · https://www.npmjs.com/package/@perkoon/mcp · https://www.npmjs.com/package/perkoon
skill-card.md Markdown · 67 lines
https://clawhub.ai/user/alex-vy · https://clawhub.ai/alex-vy/skills/perkoon-transfer

Security positives

CLI和MCP方法使用pinned版本([email protected]、@perkoon/[email protected]),避免动态拉取latest版本
文档包含明确的10条安全规则,包括文件路径确认、结果报告、敏感目录警告
skill-card.md已知风险披露完整,包括外部传输、链接泄露、远程脚本、速率限制等风险及缓解措施
支持密码保护传输(--password),WebRTC/DTLS加密P2P传输
A2A Protocol提供纯HTTP路径,适合无shell环境的隔离场景
建议使用--json便于自动化解析,避免依赖日志文本匹配
接收文件默认保存到workspace/received隔离目录