← 返回 Skills 市场
stozo04

Speediance Gym Monster

作者 Steven Gates · GitHub ↗ · v1.0.1 · MIT-0
cross-platform ✓ 安全检测通过
30
总下载
1
收藏
0
当前安装
2
版本数
在 OpenClaw 中安装
/install speediance
功能描述
Read completed workouts (summaries and full per-set detail), browse and export the exercise catalog, push custom training programs to your Speediance (Gym Mo...
使用说明 (SKILL.md)

Speediance — Gym Monster CLI Skill

Talk to your Speediance (Gym Monster) smart cable machine from any agent. Read completed workouts and push custom programs that appear on the machine ready to run — no app navigation mid-session.

Unofficial — reverse-engineered from the Android app. Personal use, your own account only. Built on the MIT-licensed UnofficialSpeedianceWorkoutManager (hbui3) and speediance-influx (gavinmcfall).

Tested on Gym Monster v1 (SPEEDIANCE_DEVICE_TYPE=1). GM2 is untested.

Setup (one time)

Install the CLI:

pip install git+https://github.com/stozo04/speediance-cli
speediance-cli login   # authenticates and caches a token

Or clone and run as a module (no install needed):

git clone https://github.com/stozo04/speediance-cli && cd speediance-cli
pip install -r requirements.txt
python -m speediance login

Once installed, speediance-cli and python -m speediance are interchangeable.

Credentials

Set as environment variables — the CLI reads them automatically:

Variable Required Default Notes
SPEEDIANCE_EMAIL Account email
SPEEDIANCE_PASSWORD Account password
SPEEDIANCE_REGION Global Global or EU
SPEEDIANCE_DEVICE_TYPE 1 1 = Gym Monster v1

Alternatively, write a config.json in the working directory (gitignored by the repo):

{
  "email": "[email protected]",
  "password": "yourpassword",
  "region": "Global"
}

Commands

Read workouts

speediance-cli workouts --days 7 --json      # recent sessions (summaries)
speediance-cli session \x3Ctraining_id> --json  # full per-set detail for one session

Sample workouts --json output:

[
  {
    "training_id": 123456,
    "title": "Upper Body",
    "date": "2025-06-15",
    "duration_secs": 2700,
    "calories": 320,
    "volume": 4200.0,
    "type": "Strength"
  }
]

Sample session \x3Cid> --json output:

{
  "training_id": 123456,
  "completion_rate": 0.95,
  "exercises": [
    {
      "name": "Seated Dual-Handle Lat Pulldown",
      "sets": [
        {"set": 1, "reps": 12, "target_reps": 12, "weight": 20.0, "max_hr": 148, "left_right": 0}
      ]
    }
  ]
}

"Free Lift" (freestyle) sessions return totals only — no per-set detail. Sessions started from a program return full set data.

Browse the exercise catalog

speediance-cli library --search "chest" --json   # filter by name or muscle
speediance-cli library                           # save full catalog to library.json

Returns [{id, name, muscle, tab}]. The id is required for plan JSON. A committed library.json snapshot ships with the repo (Gym Monster v1) for offline browsing — regenerate with speediance-cli library to get the freshest catalog or a different device's exercises.

Create a training program

Author a plan JSON, then push it — the program appears on the machine immediately:

speediance-cli push plan.json --dry-run   # preview payload, no network write
speediance-cli push plan.json             # create it on the account

Plan JSON format:

{
  "name": "Pull Day",
  "exercises": [
    {
      "id": 434,
      "title": "Seated Dual-Handle Lat Pulldown",
      "sets": [
        {"reps": 12, "weight": 20, "mode": 1, "rest": 75},
        {"reps": 10, "weight": 22, "mode": 1, "rest": 75},
        {"reps": 8,  "weight": 25, "mode": 1, "rest": 90}
      ]
    },
    {
      "id": 291,
      "title": "Seated Row",
      "sets": [
        {"reps": 12, "weight": 18, "mode": 1, "rest": 60}
      ]
    }
  ]
}
Field Type Notes
id int From speediance-cli library — IDs differ per account/device
weight float Kilograms
mode int 1=Standard, 2=Eccentric, 3=Isokinetic, 4=Constant, 5=Spotter
rest int Seconds between sets

Optional: Markdown week-sheet sync

If you keep workout logs as WEEKS/Week-XX.md Markdown checklists, sync writes a completed session into the matching file automatically:

speediance-cli sync --weeks-dir /path/to/WEEKS --date today
speediance-cli sync --weeks-dir /path/to/WEEKS --date 2025-06-10

This is entirely opt-in — ignore it if you don't use that convention. Core commands (login, workouts, session, library, push) never need a sheets folder.

Full command reference

Command What it does --json
login Authenticate and cache a token in .token.json
workouts [--days N] List recent completed sessions
session \x3Ctraining_id> Full per-set detail for one session
library [--search X] [--out FILE] Dump or search exercise catalog
push \x3Cplan.json> [--dry-run] Create a training program on the account
sync [--date DATE] [--weeks-dir DIR] (Optional) Write session into Markdown sheet

Conventions

  • stdout is parseable with --json; all human-readable hints go to stderr.
  • Secrets: config.json, .token.json, .env are gitignored — never commit them.
  • Token caching: after the first login, the token is cached in .token.json and refreshed automatically on expiry.
  • Dry-run first: always use --dry-run before push when authoring new programs to confirm exercise IDs resolved correctly.
  • If an endpoint breaks after a Speediance app update, speediance/client.py is where all API calls live.
安全使用建议
Install only if you are comfortable giving this CLI your Speediance account credentials and letting it cache a local session token. Use environment variables or a private config.json, keep .token.json out of sync and source control, and use push --dry-run before creating programs on your account.
能力标签
crypto
能力评估
Purpose & Capability
The code and documentation consistently match the stated purpose: authenticate to the Speediance cloud API, read workout/session/library data, create custom training templates, and optionally sync completed sessions into Markdown sheets.
Instruction Scope
Runtime instructions are scoped to explicit CLI commands, with dry-run support for program creation and an opt-in sync command that requires a user-provided weeks directory.
Install Mechanism
Installation uses a normal Python package flow from a GitHub repository with a single runtime dependency on requests; users should recognize that the documented git+ install pulls code from the remote repo at install time.
Credentials
The skill requires Speediance email/password credentials and outbound HTTPS access to Speediance API hosts, which is sensitive but proportionate to the account-management functionality and disclosed in the skill metadata.
Persistence & Privilege
It caches a Speediance session token in .token.json, chmods it owner-only when possible, and writes library.json or Markdown sheets only through explicit commands; no hidden background persistence or privilege escalation was found.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install speediance
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /speediance 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.1
- Expanded skill description to clarify all features and detail required file/network permissions. - Added explicit permissions section listing file read/write and network access in SKILL.md metadata. - Description now documents automatic session token caching and optional Markdown week-sheet sync. - Minor wording, clarification, and formatting improvements across documentation.
v1.0.0
Initial release of the Speediance skill. - Read completed workouts and per-set session details from your Speediance (Gym Monster) device via its cloud API. - Browse and search the full exercise catalog; output as JSON or save snapshots for offline use. - Push author-custom training programs directly to your device, ready to run. - Environment variable and config file support for credentials and device configuration. - Optional sync of completed sessions into Markdown workout checklists. - Unofficial tool, reverse-engineered for personal use; tested on Gym Monster v1.
元数据
Slug speediance
版本 1.0.1
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 2
常见问题

Speediance Gym Monster 是什么?

Read completed workouts (summaries and full per-set detail), browse and export the exercise catalog, push custom training programs to your Speediance (Gym Mo... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 30 次。

如何安装 Speediance Gym Monster?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install speediance」即可一键安装,无需额外配置。

Speediance Gym Monster 是免费的吗?

是的,Speediance Gym Monster 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Speediance Gym Monster 支持哪些平台?

Speediance Gym Monster 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Speediance Gym Monster?

由 Steven Gates(@stozo04)开发并维护,当前版本 v1.0.1。

💬 留言讨论