← Back to Skills Marketplace
ckboss

fit-device-id-modifier

by 码代码的猿猿 · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
156
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install fit-device-id-modifier
Description
Modify FIT files to set device manufacturer to Garmin (1) and product ID to Edge 500 China (1030) for proper recognition on Garmin Connect.
README (SKILL.md)

fit-device-id-modifier

修改 FIT 文件的设备 ID(manufacturer 和 garmin_product),将骑行记录转换为 Garmin Edge 500 China 设备生成的格式。

用途

  • 修改 FIT 文件中的 manufacturer 字段为 1 (Garmin)
  • 修改 garmin_product 字段为 1030 (Edge 500 China)
  • 用于让第三方骑行软件生成的 FIT 文件能被 Garmin Connect 等平台正确识别

依赖

  • Python 3.x
  • fitparse 库 (pip install fitparse)

使用方法

批量处理子目录中的 FIT 文件

cd /home/ckboss/.openclaw/workspace/skills/fit-device-id-modifier/scripts
/home/ckboss/anaconda3/bin/python modify_fit.py

这会处理 ./ */*.fit 匹配的所有 FIT 文件,生成 _GM.fit 后缀的修改版。

处理单个文件

/home/ckboss/anaconda3/bin/python modify_fit.py /path/to/ride.fit

处理整个目录

/home/ckboss/anaconda3/bin/python modify_fit.py /path/to/rides/

输出

  • 原文件保持不变
  • 生成新文件:原文件名_GM.fit

注意事项

  • 会自动跳过已处理的文件(文件名包含 _GM.fit
  • 会重新计算 CRC 校验和确保文件完整性
  • 使用 conda Python:/home/ckboss/anaconda3/bin/python

文件结构

skills/fit-device-id-modifier/
├── SKILL.md
└── scripts/
    └── modify_fit.py
Usage Guidance
This skill appears to be what it says: a local tool to modify FIT files so Garmin Connect recognizes them. Before using it widely: 1) Back up original FIT files (the script can corrupt files because it replaces raw byte sequences and may match unintended bytes). 2) Test on a small sample and verify the generated _GM.fit is accepted by Garmin Connect. 3) Use an isolated Python environment and pip install fitparse rather than running the absolute /home/ckboss path in the SKILL.md. 4) Review/consider improving the script (identify fields by message structure rather than byte-pattern search and verify the CRC algorithm matches the FIT specification). 5) There are no network calls or credential requests in the code, so there is low privacy risk, but always inspect outputs before uploading to external services.
Capability Analysis
Type: OpenClaw Skill Name: fit-device-id-modifier Version: 1.0.0 The skill is designed to modify device identification fields in FIT files to mimic a Garmin Edge 500 China. The Python script `modify_fit.py` performs binary replacement of specific fields and recalculates the CRC checksum as described. While `SKILL.md` contains hardcoded absolute paths specific to a user environment ('ckboss'), the code lacks any indicators of data exfiltration, malicious execution, or persistence.
Capability Assessment
Purpose & Capability
Name, description, SKILL.md, and the included modify_fit.py are consistent: the skill reads FIT files, sets manufacturer to 1 and garmin_product to 1030, recalculates CRC, and writes new *_GM.fit files. The only external dependency mentioned is fitparse (pip), which is appropriate for parsing FIT files.
Instruction Scope
Runtime instructions only ask the agent/user to run the provided Python script against FIT files. The script only reads local files and writes new files; it prints message/field values to stdout. Caveats: the script performs binary replacement by searching for the old numeric value's byte sequence anywhere in the file (data.find) which can accidentally replace unrelated occurrences, and it uses a custom CRC calculation that may not match the official FIT CRC algorithm. SKILL.md references an absolute conda/python path and to run from a specific workspace directory — these are benign but environment-specific and should be adjusted to your system.
Install Mechanism
There is no install spec (instruction-only skill with a Python script). The only required package is fitparse (pip), which is reasonable and expected. No remote downloads or archives are fetched by the skill itself.
Credentials
The skill does not request environment variables, credentials, or config paths. SKILL.md mentions a local Python interpreter path but that is an instruction, not a secret. No access to unrelated services is requested.
Persistence & Privilege
always is false and the skill does not attempt to modify other skills or system-wide configuration. It only operates on files given to it and writes per-file outputs.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install fit-device-id-modifier
  3. After installation, invoke the skill by name or use /fit-device-id-modifier
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of fit-device-id-modifier. - Modifies FIT file device IDs to `manufacturer: 1 (Garmin)` and `garmin_product: 1030 (Edge 500 China)`. - Supports batch processing within subdirectories, single file, or entire directory. - Outputs new files with `_GM.fit` suffix, preserving originals. - Skips files already processed and recalculates FIT file CRC for integrity. - Requires Python 3.x and `fitparse` library.
Metadata
Slug fit-device-id-modifier
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is fit-device-id-modifier?

Modify FIT files to set device manufacturer to Garmin (1) and product ID to Edge 500 China (1030) for proper recognition on Garmin Connect. It is an AI Agent Skill for Claude Code / OpenClaw, with 156 downloads so far.

How do I install fit-device-id-modifier?

Run "/install fit-device-id-modifier" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is fit-device-id-modifier free?

Yes, fit-device-id-modifier is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does fit-device-id-modifier support?

fit-device-id-modifier is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created fit-device-id-modifier?

It is built and maintained by 码代码的猿猿 (@ckboss); the current version is v1.0.0.

💬 Comments