upload-fit-to-blackbird-web
v1.0.0Automatically batch upload modified _GM.fit files to the Blackbird Cycling web platform with login detection and upload status handling.
MIT-0
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
Name/description match the included Python script and instructions. The code uses Playwright to open the Blackbird upload page and set file inputs to upload local .fit files—this is consistent with the stated purpose.
Instruction Scope
SKILL.md stays within scope (install Playwright, run the script, wait for interactive login). It includes user-specific absolute example paths (/home/ckboss/...) and references another skill path, which are documentation artifacts and should be replaced with generic examples; otherwise instructions do not request unrelated files or secrets.
Install Mechanism
This is instruction-only (no install spec). It requires the user to install Playwright and the Chromium browser manually; that is expected for a browser-automation script and is proportionate to the task.
Credentials
The skill declares no required environment variables or credentials, which is appropriate. The documentation and examples use explicit absolute interpreter and pip paths tied to a specific user account; these are odd but not dangerous—users should adapt them to their environment.
Persistence & Privilege
The skill is not always-enabled and does not request system-level persistence or other skills' credentials. It runs interactively and relies on manual login; nothing indicates elevated privileges or automatic long-term presence.
Assessment
This skill appears coherent: it bundles a Playwright-based Python script that opens a browser to https://www.blackbirdsport.com and uploads local .fit files you provide. Before installing/running: 1) Review and run the script locally in a controlled environment (it only interacts with the Blackbird site and the local filesystem you point to). 2) Install Playwright and Chromium per the README rather than blindly running the example absolute paths—those examples reference a specific user account and are not generic. 3) Expect to log in interactively in a non-headless browser; the script's claim that cookies will persist across runs is misleading unless you use a persistent browser context or a user-data directory. 4) If you are concerned about sensitive data, inspect the script for network calls (it makes none beyond navigating to the site) and only point it at FIT files you intend to upload. Overall the skill is internally consistent, but adapt the paths and install steps to your environment and inspect the code before executing.Like a lobster shell, security has layers — review code before you run it.
latest
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
SKILL.md
blackbird-upload
批量上传 FIT 文件到黑鸟骑行网页版 (https://www.blackbirdsport.com)
用途
- 自动上传修改后的
_GM.fit文件到黑鸟骑行平台 - 支持批量上传多个文件
- 自动检测登录状态,支持手动登录
依赖
- Python 3.x
- Playwright:
pip install playwright - Playwright 浏览器:
playwright install chromium
安装依赖
# 使用 conda Python
/home/ckboss/anaconda3/bin/pip install playwright
/home/ckboss/anaconda3/bin/playwright install chromium
使用方法
上传单个文件
cd /home/ckboss/.openclaw/workspace/skills/blackbird-upload/scripts
/home/ckboss/anaconda3/bin/python upload_to_blackbird.py /path/to/ride_GM.fit
上传整个目录
/home/ckboss/anaconda3/bin/python upload_to_blackbird.py /home/ckboss/Downloads/onelap-rides-0316-0321/
上传多个文件(通配符)
/home/ckboss/anaconda3/bin/python upload_to_blackbird.py /home/ckboss/Downloads/onelap-rides-0316-0321/*_GM.fit
工作流程
- 启动浏览器 - 打开黑鸟骑行上传页面
- 检测登录 - 如果未登录,等待用户手动登录(最长 5 分钟)
- 上传文件 - 自动选择并上传所有 FIT 文件
- 等待完成 - 等待上传完成后显示结果
注意事项
- 首次运行需要登录 - 脚本会等待你在浏览器中登录黑鸟账号
- 登录状态保持 - 浏览器会保存 cookies,下次运行可能无需重新登录
- 文件命名 - 优先上传
_GM.fit文件(已修改设备 ID 的版本) - 重复检测 - 黑鸟会自动检测重复文件,避免重复上传
完整流程示例
# 1. 修改 FIT 文件设备 ID
/home/ckboss/anaconda3/bin/python /home/ckboss/.openclaw/workspace/skills/fit-device-id-modifier/scripts/modify_fit.py /path/to/rides/
# 2. 上传到黑鸟
/home/ckboss/anaconda3/bin/python /home/ckboss/.openclaw/workspace/skills/blackbird-upload/scripts/upload_to_blackbird.py /path/to/rides/*_GM.fit
文件结构
skills/blackbird-upload/
├── SKILL.md
└── scripts/
└── upload_to_blackbird.py
相关 Skill
fit-device-id-modifier- 修改 FIT 文件设备 ID 为 Garmin Edge 500
故障排除
浏览器无法启动
# 重新安装 Playwright 浏览器
/home/ckboss/anaconda3/bin/playwright install chromium
上传超时
- 检查网络连接
- 确认黑鸟网站可访问
- 尝试减少单次上传的文件数量
登录状态失效
- 清除浏览器缓存后重新登录
- 或者使用
headless=False模式手动登录
Files
2 totalSelect a file
Select a file to preview.
Comments
Loading comments…
