Install
openclaw skills install ielts-tuyaya-uploadUpload IELTS reading review JSON files to tuyaya.online — your personal IELTS progress tracker. Supports end-to-end pipeline with ielts-reading-review: auto-scan → generate JSON → batch upload. Trigger phrases: 上传复盘 / 同步服务器 / 上传到 tuyaya / 把复盘上传 / 注册 tuyaya / 登录 tuyaya / 查看我的成绩 / 批量同步雅思成绩 / 批量导入历史复盘 / 一条龙处理复盘 / 端到端同步雅思 / 把老笔记导入 tuyaya / upload ielts reviews / sync to tuyaya / register tuyaya / tuyaya 账号 / tuyaya 上传.
openclaw skills install ielts-tuyaya-upload把本地生成的雅思阅读复盘 JSON(通常来自 ielts-reading-review skill)一键上传到 tuyaya.online 服务器,不再需要手动拖文件到 submit 页面。
✨ 多用户支持:每个用户有独立账号,token 本地保存,一次登录长期有效。
当用户说以下话时,触发本 skill:
*.json 复盘文件(通常在 ./batch-output/ 或 ./history-json/)Skill 目录(包含 scripts/upload.js)所在路径会在安装时自动设置。典型路径:
~/.clawhub/skills/ielts-tuyaya-upload/AI 在调用脚本时,使用 skill 所在目录下的 scripts/upload.js,不要假设绝对路径。
触发信号:用户说"批量导入我的历史复盘"、"把我电脑里的老笔记一次性同步到 tuyaya"、"一条龙处理我的复盘"、"从扫描到上传全流程"。
前提:同时安装了 ielts-reading-review v3.4.0+(提供 Auto-Discovery + 深扫 + JSON 生成)。
AI 动作(必须分步停下来等确认,不要一口气跑完):
ielts-reading-review 的 scan-legacy-reviews.js --auto 扫常见位置(桌面/文档/下载/iCloud/WorkBuddy)--deep 深扫,列出识别到的篇目清单(含 __unknown__)./batch-output/--whoami 检查登录状态
--diff ./batch-output/ 展示差量(新/已存在/冲突)--batch ./batch-output/ 批量上传⚠️ 关键规则:
触发信号:用户说"我想用 tuyaya"、"帮我注册"、"我还没账号",或者运行命令报错"还没登录"。
AI 动作:
node <skill_dir>/scripts/upload.js --register⚠️ 不要替用户生成密码,让用户自己输入。
触发信号:用户说"我想登录"、"换个账号",或者 --whoami 提示未登录。
AI 动作:
node <skill_dir>/scripts/upload.js --login~/.ielts-tuyaya-token,下次不用再登录触发信号:用户说"把 batch-output 里的 JSON 上传"、"同步所有复盘"。
AI 动作:
先检查登录状态:node <skill_dir>/scripts/upload.js --whoami
(推荐)先 diff 看差量:
node <skill_dir>/scripts/upload.js --diff <用户的 JSON 目录>
确认后批量上传:
node <skill_dir>/scripts/upload.js --batch <用户的 JSON 目录>
完成后:告诉用户去 https://tuyaya.online/ielts/ 查看成绩
node <skill_dir>/scripts/upload.js <文件路径>
node <skill_dir>/scripts/upload.js --status
--logout:清除本地 token--whoami:查看当前登录的用户名| 命令 | 说明 | 是否需要登录 |
|---|---|---|
--register | 注册新账号(交互式) | ❌ |
--login | 登录并保存 token | ❌ |
--logout | 清除本地 token | ❌ |
--whoami | 查看当前登录账号 | ❌ |
--status | 查看服务器成绩 | ✅ |
--diff <dir> | 对比本地和服务器差量 | ✅ |
--batch <dir> | 批量上传目录下所有 JSON | ✅ |
<file.json> | 上传单个文件 | ✅ |
登录后 token 保存在:~/.ielts-tuyaya-token(文件权限 0600)
内容示例:
{
"token": "eyJ1Ijoi...",
"username": "alice",
"savedAt": "2026-04-21T15:00:00.000Z"
}
Token 有效期 30 天,过期后重新 --login 即可。
本 skill 消费 ielts-reading-review v3.0 产出的 JSON:
{
"version": "3.0.0",
"source": { "book": 5, "test": 1, "passage": 2 },
"score": { "correct": 9, "total": 13 },
"timing": { "minutes": 25 },
"date": "2026-04-20",
"wrongQuestions": [...],
"vocabulary": [...]
}
也兼容旧格式(平铺 book/test/passage/score/total)。
用户:帮我一条龙处理我的历史雅思复盘,从扫我电脑到上传 tuyaya 都搞定
AI: 好,我分三段处理,每段停下来等你确认。
[A. 自动扫描] 运行
ielts-reading-review的scan-legacy-reviews.js --auto找到 3 个候选目录,推荐/Users/xx/Documents/雅思学习(命中 28 个复盘文件)。用这个吗?用户:用这个
[B. 深扫 + 生成] 运行
--deep深扫 识别到 20 篇(剑4 全本 + 剑5 T1-T3),2 篇__unknown__需要你补充。清单 OK 吗?用户:OK,unknown 那 2 篇先跳过
逐篇生成 JSON 到
./batch-output/生成完:18 成功,2 跳过。[C. 上传 tuyaya] 运行
--whoami→ 还没登录 你有 tuyaya 账号吗?用户:没有,帮我注册
运行
--register(用户在终端输入用户名密码)运行
--diff ./batch-output/18 个全是新的,服务器还没有。开始上传?用户:上传
运行
--batch ./batch-output/✅ 18 条全部成功。去 https://tuyaya.online/ielts/ 看趋势图吧~
用户:我想把我的雅思复盘同步到 tuyaya
AI: 我先检查一下你的登录状态。 运行
node scripts/upload.js --whoami还没登录。tuyaya.online 需要一个账号——你有账号吗?
- 有 → 我帮你登录
- 没有 → 我引导你注册一个(免费、只要用户名密码)
用户:把 batch-output 目录下的 JSON 全上传
AI: 运行
--diff ./batch-output/本地有 12 个,服务器已有 5 个,8 个是新的。我开始上传这 8 个。 运行--batch ./batch-output/✅ 上传完成:8 条成功。去 https://tuyaya.online/ielts/ 看看吧~
用户:--status 报错说 token 过期了
AI: Token 30 天有效期到了,重新登录就行: 运行
--login输入用户名密码后,token 会自动更新保存。
| 错误 | 处理 |
|---|---|
还没登录 | 引导运行 --register 或 --login |
token 过期 | 运行 --login 重新获取 |
用户名已存在(注册时) | 让用户换个名字,或改用 --login |
用户名或密码错误(登录时) | 让用户重试,或 --register 新账号 |
HTTP 500 | 服务器问题,建议稍后重试 |
| 网络错误 | 检查是否能访问 https://tuyaya.online |
~/.ielts-tuyaya-token,权限 0600(只有自己可读)ielts-reading-review:生成复盘 JSON,本 skill 负责上传这些 JSONielts-reading-review 批量生成 → 再用本 skill 批量上传