核心用法
Perkoon 是专为 AI Agent 设计的文件传输协议,填补"数字智能体"与"物理世界用户"之间的鸿沟。它提供两条核心路径:
- Agent → Human:Agent 生成加密分享链接,人类用户通过浏览器直接下载,接收端无需安装任何软件
- Agent → Agent:CLI 对 CLI 的 P2P 直连传输,两台机器自主完成数据交换,无需人工介入
技术实现上,Perkoon 基于 WebRTC 建立点对点连接,采用端到端加密保障隐私,支持 JSON 事件流输出便于机器解析,并设计了结构化的退出码体系(0-5)用于自动化决策。
显著优点
1. 零配置体验:无需注册账号、无需配置服务器、无需处理防火墙穿透,Node.js 环境即可运行
2. 跨端兼容:接收端仅需浏览器,覆盖手机、平板、PC 等全平台
3. 机器原生设计:--json 输出、结构化事件流、transfer_complete/error 等明确状态,天然适配自动化脚本
4. 成本优势:P2P 架构使传输免费且无限量,无云端存储费用
5. 安全增强:支持 --password 端到端密码保护,会话码 12 位随机生成
潜在局限
1. 在线依赖:收发双方必须同时在线,无离线中转能力
2. 网络穿透限制:部分企业防火墙或对称 NAT 环境可能阻碍 WebRTC 直连
3. 生态成熟度:作为新兴协议,长期维护承诺、企业级 SLA 尚未验证
4. 单文件限制:文档未明确说明大文件断点续传、多文件批量传输能力
5. 命令复杂度:生产级使用需自行封装进程管理、日志轮询、超时处理等逻辑
适合人群
- AI Agent 开发者:需要让 LLM/自动化脚本具备"交付文件给用户"的能力
- DevOps/运维工程师:服务器间快速传输日志、配置文件,免开 SFTP/SCP
- 隐私敏感用户:不愿将文件上传至公有云盘,追求端到端加密
- 临时文件分享场景:快速传递大文件而不消耗网盘容量
常规风险
| 风险类型 | 说明 | 缓解建议 |
|---------|------|---------|
| 中间人攻击 | 分享链接通过非加密渠道传播可能被拦截 | 启用 `--password` 并分渠道传输密码 |
| 会话劫持 | 12位会话码理论上存在暴力破解可能 | 使用密码保护 + 缩短 `--timeout` 窗口 |
| 恶意文件传播 | 浏览器端缺乏文件类型校验 | 接收端自行校验文件扩展名与哈希 |
| 持久化漏洞 | Node.js 依赖可能存在供应链风险 | 审计 `npm audit`,锁定版本 |
| 元数据泄露 | 日志文件可能残留敏感路径信息 | 定期清理 `/tmp/perkoon-*.log` |
总体而言,Perkoon 是 AI 时代文件传输的创新实验,适合技术用户作为现有工具链的补充,但关键业务场景建议保留备用方案。