Skip to content

uppark/accio

Repository files navigation

Accio Auto Register

Accio (accio.com) 账号自动注册、客户端切换与会话迁移工具。

免责声明: 本项目仅供学习研究,不得用于商业用途。使用本项目所产生的一切后果由使用者自行承担。

功能

  • 自动注册 — Camoufox 浏览器自动化,支持 Magic Link(优先)和验证码两种登录方式
  • 临时邮箱 — 集成 Freemail (Cloudflare Worker 自建邮箱),自动生成邮箱、接收验证码
  • 批量注册 — 支持一次注册多个账号,结果自动保存到 JSON
  • 客户端切换 — 一键关闭 Accio → 清除 session → 重启登录新账号
  • 会话迁移 — 切号后自动备份旧会话,检测新账号登录后迁移(CID 重写),重启即可看到旧对话
  • 守护模式 — 后台监控账号目录变化,自动执行备份→迁移→重启

环境要求

  • Python 3.10+
  • Windows 10/11
  • Accio 桌面客户端已安装
  • Freemail 自建邮箱(或其他支持 API 的临时邮箱服务)

安装

git clone https://github.com/yourname/accio-auto-register.git
cd accio-auto-register

pip install -r requirements.txt
python -m camoufox fetch

配置

首次运行会自动提示配置,也可以手动编辑 config.json

{
  "freemail_url": "https://your-freemail-worker.workers.dev",
  "freemail_token": "your-jwt-token",
  "accio_exe": "D:\\software\\accio\\Accio.exe"
}
字段 说明
freemail_url Freemail Worker 的 API 地址
freemail_token Freemail 的 JWT 管理令牌
accio_exe Accio 客户端可执行文件路径(可选,支持自动检测)

邮箱服务

项目使用 Cloudflare Worker 自建临时邮箱 作为邮箱服务。你需要自行部署一个 Freemail Worker 并配置域名和 Email Routing。

使用

注册账号

# 注册单个(有头模式,显示浏览器窗口)
python accio_register.py --headed

# 注册单个(无头模式)
python accio_register.py

# 批量注册
python accio_register.py --count 5

# 指定邮箱
python accio_register.py --email [email protected] --headed

# 使用代理
python accio_register.py --proxy http://127.0.0.1:7890

注册成功后账号信息保存到 accounts.json

[
  {
    "email": "[email protected]",
    "token": "...",
    "access_token": "...",
    "cookies": { ... },
    "registered_at": "2026-03-28 23:07:17"
  }
]

切换客户端账号

# 交互式切换(备份旧会话 → 清session → 重启 → 监控迁移)
python accio_switch.py

# 一键换号(注册新号 + 切换 + 自动迁移)
python accio_switch.py --auto

# 仅迁移旧会话到当前账号
python accio_switch.py --migrate

# 查看客户端状态
python accio_switch.py --info

会话迁移(社区版完整工具)

# 备份当前账号
python accio_migrate.py backup

# 恢复到新账号(自动重写 CID)
python accio_migrate.py restore

# 列出所有备份
python accio_migrate.py list

# 对比备份与当前账号
python accio_migrate.py diff

# 守护模式(后台自动监控切换并迁移)
python accio_migrate.py watch

菜单启动

Windows 用户可以直接双击 start.bat

========================================
  Accio 工具集
========================================

  1. 注册新账号
  2. 批量注册 (5个)
  3. 切换客户端账号 (保留会话)
  4. 一键换号 (注册+切换+迁移)
  5. 迁移旧会话到当前账号
  6. 查看客户端状态
  0. 退出

注册流程

┌──────────────┐    ┌──────────────┐    ┌──────────────┐
│  生成临时邮箱  │───>│ 浏览器打开登录页 │───>│  输入邮箱+继续  │
│  (Freemail)  │    │  (Camoufox)  │    │              │
└──────────────┘    └──────────────┘    └──────┬───────┘
                                               │
                    ┌──────────────┐    ┌───────▼──────┐
                    │  提取登录凭证  │<───│ 访问Magic Link│
                    │ cookies/token│    │  直接完成登录  │
                    └──────┬───────┘    └──────────────┘
                           │                   ▲
                    ┌──────▼───────┐    ┌───────┴──────┐
                    │  保存到 JSON  │    │ 从邮件提取Link │
                    │ accounts.json│    │  (Freemail)  │
                    └──────────────┘    └──────────────┘

切换流程

┌──────────┐   ┌──────────┐   ┌──────────┐   ┌──────────┐   ┌──────────┐
│ 备份旧会话 │──>│ 关闭Accio │──>│ 清除session│──>│ 重启Accio │──>│ 登录新账号 │
└──────────┘   └──────────┘   └──────────┘   └──────────┘   └────┬─────┘
                                                                  │
┌──────────┐   ┌──────────┐                              ┌───────▼─────┐
│ 重启Accio │<──│ CID重写   │<─────────────────────────────│ 监控新账号目录│
│ 看到旧会话 │   │ 文件名替换 │                              │ 自动迁移会话 │
└──────────┘   └──────────┘                              └─────────────┘

会话迁移原理

Accio 客户端在 ~/.accio/accounts/<userId>/ 下存储会话数据。切换账号后新目录名(userId)不同,会话文件中的 CID (Conversation ID) 也包含旧 userId。迁移工具会:

  1. 备份旧账号的 conversations/agents/tasks/subagent-sessions/ 等目录
  2. 将备份复制到新账号目录
  3. 递归替换所有 JSON 文件内容中的旧 userId 为新 userId
  4. 重命名包含旧 userId 的文件和目录名
  5. 合并 session_1.jsonsessions.json 等索引文件,避免覆盖新会话

项目结构

accio/
├── accio_register.py      # 注册工具(浏览器自动化 + Freemail)
├── accio_switch.py         # 客户端切换工具(切换 + 自动迁移)
├── accio_migrate.py        # 会话迁移工具(社区版完整功能)
├── config.json             # 邮箱服务配置
├── migrate_config.json     # 迁移工具配置
├── accounts.json           # 注册账号输出(自动生成)
├── requirements.txt        # Python 依赖
└── start.bat               # Windows 菜单启动脚本

输出格式

accounts.json 中每个账号包含完整登录凭证,可用于:

  • accio-anthropic-bridge — 将 Accio 转为 Anthropic/OpenAI API
  • 自定义脚本直接调用 Accio 的 LLM 网关

关键字段:

字段 说明
email 注册邮箱
token _m_h5_tk cookie
access_token phoenix_cookie 提取的 accessToken,可直接请求 phoenix-gw.alibaba.com
cookies 完整 cookie 字典

常见问题

浏览器启动失败

# 重新下载 Camoufox 浏览器
python -m camoufox fetch

验证码/Magic Link 收不到

  • 检查 Freemail Worker 是否正常运行
  • 检查域名的 Cloudflare Email Routing 是否配置正确
  • 部分域名可能被 Accio 风控拦截,换一个域名试试

切号后会话丢失

# 手动迁移
python accio_switch.py --migrate

# 或使用完整迁移工具
python accio_migrate.py restore

Accio 客户端找不到

编辑 config.json,将 accio_exe 设为正确路径:

{
  "accio_exe": "C:\\Users\\你的用户名\\AppData\\Local\\Programs\\Accio\\Accio.exe"
}

致谢

License

MIT License — 仅供学习研究,禁止商业使用。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages