文章总结: T00lsCheckin是基于T00lsSign开发的自动化论坛签到管理平台,支持多账号独立定时签到、Webhook结果推送和完整执行日志记录。项目采用Flask+Vue3技术栈,提供Docker一键部署方案,需配置验证码识别服务并注意密钥安全管理。 综合评分: 82 文章分类: 安全工具,WEB安全,安全运营,自动化,其他
T00lsCheckin —— 基于 T00lsSign 的自动签到管理平台
原创
s0cke3t s0cke3t
警戒线安全
2026年6月1日 10:50 山东
在小说阅读器读本章
去阅读
简介
T00lsCheckin 是一个 T00ls 论坛的自动签到管理平台,可以帮你自动完成 T00ls 论坛的每日签到任务。支持管理多个账号、为每个账号设置独立的签到时间、通过 Webhook 推送签到结果通知,适合有多个 T00ls 账号需要维护的师傅使用。
核心签到逻辑源自 thunder-sec/T00lsSign 项目,在此表示感谢。本项目在此基础上增加了 Web 管理界面、多账号管理、定时任务调度和 Webhook 通知等功能,所有代码均由 Vibe Coding 生成。
声明
本工具仅供学习交流,请勿用于非法用途。工具涉及账号密码信息,建议只在可信环境内部署。
特性
- 多账号管理:支持添加多个 T00ls 账号,带安全提问支持
- 定时执行:每个账号可以独立配置签到时间,互不干扰
- Webhook 通知:对接钉钉、飞书、企业微信机器人,签到结果实时推送
- 执行日志:每次签到的状态、返回信息和执行时间均有完整记录
- 中英文界面:内置 Vue I18n 国际化支持
- 美观 UI:Vue 3 + Tailwind CSS 构建的现代化管理界面
技术栈
后端
- Python Flask
- SQLite + SQLAlchemy ORM
- Flask-APScheduler 任务调度
- JWT 认证
- Requests + BeautifulSoup4 爬虫
前端
- Vue 3 (Composition API) + Vite 构建
- Tailwind CSS
- Pinia 状态管理 + Vue Router
- Lucide Vue Next 图标 + Vue I18n 国际化
Docker 部署(推荐)
使用 Docker Compose 一键部署:
services:
backend:
image: s0cke3t/t00lscheckin-backend:latest
restart: always
environment:
- TZ=Asia/Shanghai
- FLASK_CONFIG=production # 生产环境
# - SECRET_KEY=${SECRET_KEY} # 不设置时每次启动使用随机密钥
# - JWT_SECRET_KEY=${JWT_SECRET_KEY} # 不设置时每次启动使用随机密钥
- AES_SECRET_KEY=12345678901234567890123456789012 # 用于加密t00ls账户密码,添加账户后请勿修改.
- ANTI_CAPTCHA_KEY=xxxxxxxxxxxxxxxxxxx# https://anti-captcha.com 验证码识别服务api key
- DATABASE_URL=sqlite:////app/data/app.db
volumes:
- /opt/t00lscheckin:/app/data # 数据卷挂载
ports:
- "5000:5000"
frontend:
image: s0cke3t/t00lscheckin-frontend:latest
restart: always
environment:
- TZ=Asia/Shanghai
ports:
- "80:80"
启动后访问 http://[服务器IP]:80 即可进入管理界面。
手动部署
后端
cd backend
python -m venv venv
source venv/bin/activate # Linux/macOS
# .\venv\Scripts\activate # Windows
pip install -r requirements.txt
python app.py
后端运行在 http://localhost:5000。
前端
cd frontend
npm install
npm run dev
前端开发服务器通常运行在 http://localhost:5173。
默认账户
| 用户名 | 密码 | | — | — | | admin | admin123 |
登录后请第一时间修改默认密码。
通知模板变量
配置 Webhook 通知时,可使用以下模板变量来定制消息内容:
{{result}}:签到结果{{content}}:签到返回的详细内容
根据钉钉/飞书/企业微信机器人的消息格式要求,将变量嵌入到对应的 JSON 或 Markdown 模板中即可。
注意事项
- AES_SECRET_KEY 用于加密存储 T00ls 账号密码,添加账户后切勿修改,否则已存储的密码将无法解密
- ANTI_CAPTCHA_KEY 为验证码识别服务的 API Key,需自行准备识别服务
- 数据库文件位于
backend目录下的app.db,建议定期备份 - 涉及账号密码,请勿在公网直接暴露服务,建议配合 VPN 或反向代理加认证使用
- JWT_SECRET_KEY 和 SECRET_KEY 若未设置,每次启动会使用随机密钥,多实例部署时建议显式指定
项目结构
T00lsCheckin/
├── backend/ # Flask 后端
│ ├── api/ # 接口
│ ├── services/ # 核心业务逻辑
│ ├── models.py # 数据库模型
│ └── app.py # 入口
├── frontend/ # Vue 3 前端
│ ├── src/ # 源代码
│ ├── public/ # 静态资源
│ └── index.html # 入口
└── requirements.txt # 后端依赖
界面导览
登录
仪表盘
账号管理
调度任务
通知通道
致谢
感谢 thunder-sec/T00lsSign 项目提供核心签到逻辑
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:警戒线安全 s0cke3t s0cke3t《T00lsCheckin —— 基于 T00lsSign 的自动签到管理平台》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论