1. 项目定位与用途
Cookey 是一个 minimalist、self-hostable、CLI-first 的自托管工具,核心定位是将移动端浏览器登录会话安全转移至本地自动化环境。它允许用户通过手机扫码完成网站登录,并将 resulting 的加密浏览器会话传回终端,解密为 Playwright 兼容的 storageState JSON 文件,从而在自动化脚本中复用已认证状态。
Lakr233/Cookey:Cookey是一款自托管CLI工具,通过手机扫码登录网站并将加密浏览器会话安全传回终端,解密为Playwright兼容的storageState本页整理它解决什么问题、适用场景、安装方式和使用方法。
Cookey是一款自托管CLI工具,通过手机扫码登录网站并将加密浏览器会话安全传回终端,解密为Playwright兼容的storageState JSON,专为解决移动端或MFA登录的自动化难题而设计。
Cookey 是一个 minimalist、self-hostable、CLI-first 的自托管工具,核心定位是将移动端浏览器登录会话安全转移至本地自动化环境。它允许用户通过手机扫码完成网站登录,并将 resulting 的加密浏览器会话传回终端,解密为 Playwright 兼容的 storageState JSON 文件,从而在自动化脚本中复用已认证状态。
主要解决自动化测试中难以处理移动端专属或 MFA(多因素认证)登录流程的问题。传统自动化脚本需直接处理复杂登录,而 Cookey 通过将登录环节转移到手机端完成,并安全传递会话,避免了在自动化代码中暴露凭证或处理验证码的麻烦。
1. 在手机上完成一次登录后,在本地自动化流程中复用会话;2. 将认证状态导入 Playwright 测试;3. 访问需要移动端或 MFA 的登录流。适用于需要绕过复杂验证、复用移动端登录状态的 Web 自动化场景。
AI 代理(如 Claude Code)可通过 `npx skills add Lakr233/Cookey --skill website-login` 安装 CLI 技能。普通用户的安装方式仓库中未明确给出,但项目包含 npm 包构建脚本(scripts/build-npm-package.mjs)和 pip 包构建脚本(scripts/build-pip-package.mjs),表明可能提供多语言包分发。
1. 在终端运行 Cookey CLI 发起登录请求,生成 QR 码;2. 使用 iPhone 扫描 QR 码,在应用内完成目标网站登录;3. 加密的会话数据通过中继服务器发送回 CLI;4. CLI 解密会话并生成 Playwright 兼容的 storageState JSON 文件。具体命令参数未在 README 中列出。
采用端到端加密:会话数据在移动端加密,中继服务器仅传输密文,不接触任何明文。使用 X25519 ECDH 密钥交换,内存临时存储并设有 TTL 自动清理。WebSocket 实现实时双向通信,职责严格分离:CLI 负责请求与解密,移动端负责登录与加密,服务器仅做中继。
Cookey是一个自托管CLI工具,通过手机扫码登录网站,将加密的浏览器会话传回终端并解密为Playwright兼容的storageState JSON,用于自动化测试场景。
AI代理可通过`npx skills add Lakr233/Cookey --skill website-login`安装CLI技能;普通用户安装方式仓库中未明确给出,但包含npm和pip包构建脚本,可能提供多语言包分发。
输出为Playwright兼容的storageState JSON格式,可直接用于Playwright测试;理论上也可适配其他支持该格式的浏览器自动化工具。
采用端到端加密,会话数据在移动端加密,中继服务器仅传输密文;所有数据内存临时存储,短期请求自动清理,服务器不接触任何明文信息。
仓库包含Frontend/Android模块结构和签名配置示例,但README未明确其完成状态或发布计划,可能处于开发阶段。