← 返回 Skills 市场
katla50

Concept2-logbook

作者 Katla · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ 安全检测通过
253
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install concept2
功能描述
Fetch and analyze Concept2 Logbook workout data via API with pulse zone analysis and trend tracking. Use when the user wants to retrieve rowing/skiing/biking...
使用说明 (SKILL.md)

Concept2 Logbook API Skill

Fetch and analyze workout data from Concept2 Logbook with advanced pulse zone and trend analysis.

Quick Start

Use the provided script to fetch workouts:

python3 scripts/fetch_workouts.py --token \x3CAPI_TOKEN> --from-date 2026-03-01 --format table

API Authentication

Requires a Concept2 API access token. Get one from: https://log.concept2.com/developers/keys

Token must be passed with Authorization: Bearer \x3Ctoken> header.

Main Endpoints

Endpoint Description
GET /api/users/me Get authenticated user info
GET /api/users/me/results Get workouts (paginated)
GET /api/users/me/results/{id} Get specific workout
GET /api/users/me/results/{id}/strokes Get stroke-level data

Query Parameters for Results

Param Type Description
from date Start date (YYYY-MM-DD)
to date End date (YYYY-MM-DD)
type string Workout type: rower, skierg, bike, etc.
per_page integer Results per page (max 250)

Workout Types

Type Description
JustRow Free rowing
FixedDistanceSplits Fixed distance with splits
FixedTimeSplits Fixed time with splits
FixedCalorie Fixed calorie target
FixedWattMinute Fixed watt-minute target
FixedTimeInterval Time-based intervals
FixedDistanceInterval Distance-based intervals
FixedCalorieInterval Calorie intervals
FixedWattMinuteInterval Watt-minute intervals
VariableInterval Variable intervals
VariableIntervalUndefinedRest Variable with undefined rest

Equipment Types

Type Description
rower RowErg
skierg SkiErg
bike BikeErg
dynamic Dynamic RowErg
slides RowErg with slides
paddle PaddleErg
water WaterRower
snow Snow (Nordic skiing)
rollerski Roller skiing
multierg MultiErg

Script Usage

Basic Usage - Summary with Pulse Zones

# Auto-detect max HR from birthdate in profile
python3 scripts/fetch_workouts.py --token \x3CTOKEN> --from-date 2026-03-01

# Specify max HR manually
python3 scripts/fetch_workouts.py --token \x3CTOKEN> --max-hr 165 --from-date 2026-02-01

# Estimate max HR from age
python3 scripts/fetch_workouts.py --token \x3CTOKEN> --age 59 --from-date 2026-02-01

Trend Analysis (8 weeks)

python3 scripts/fetch_workouts.py --token \x3CTOKEN> --trends 8 --from-date 2026-01-01

Other Formats

# Simple table
python3 scripts/fetch_workouts.py --token \x3CTOKEN> --format table

# JSON export
python3 scripts/fetch_workouts.py --token \x3CTOKEN> --format json > workouts.json

# Filter by equipment type
python3 scripts/fetch_workouts.py --token \x3CTOKEN> --type skierg

Pulse Zone Analysis (5-Zone Model)

Zones based on percentage of maximum HR:

Zone Name Range Purpose
🟢 1 Restitusjon 0-60% Recovery, warmup
🔵 2 Aerob kapasitet 60-70% Base building
🟡 3 Aerob effekt 70-80% Tempo training
🟠 4 Anaerob terskel 80-90% Threshold/intervals
🔴 5 Maks kapasitet 90-100% VO2max/sprints

Max HR Calculation

  • Manual: --max-hr 165
  • From age: --age 59 (uses Tanaka formula: 208 - 0.7×age)
  • From profile: reads birthdate from user data

Trend Analysis

Weekly aggregation of:

  • Total distance
  • Total time
  • Number of workouts
  • Average pace
  • Improvement rate (pace change %)

Workout Quality Metrics

Pace Consistency

  • Calculated from split data if available
  • Standard deviation / average pace
  • Rating: 🟢 Jevn | 🟡 OK | 🔴 Ujevn

Stroke Rate (SPM) Assessment

  • 🟢 18-22: Efficient, strong drive
  • 🔵 \x3C18: Fast recovery phase
  • 🟡 24-28: Tempo pace
  • 🟠 >30: High rate, check technique

Training Recommendations

The script provides personalized tips:

  • Training frequency assessment
  • High intensity balance (20% rule for zones 4-5)
  • Long workout suggestions
  • Interval training reminders

Common Calculations

Calculate Pace

pace_tenths = (time_tenths / distance_m) * 500

Format Time

total_seconds = time_tenths / 10
minutes = int(total_seconds // 60)
seconds = total_seconds % 60
formatted = f"{minutes}:{seconds:04.1f}"

Distance Format

  • Stored in meters
  • 5000 = 5km

Stroke Data

  • Distance in decimeters (incremental)
  • Time in tenths of seconds (incremental)
  • Pace in tenths of sec per 500m (rower) or 1000m (bike)

Error Codes

Code Meaning Resolution
200 OK Success
201 Created Resource created successfully
400 Bad Request Check request format
401 Unauthorized Invalid or expired token
403 Forbidden User hasn't authorized app
404 Not Found Resource doesn't exist
409 Conflict Duplicate entry
422 Unprocessable Validation error
500 Server Error Try again later
503 Service Unavailable API temporarily down

Pagination

Paginated responses include a meta.pagination object:

{
  "meta": {
    "pagination": {
      "total": 150,
      "count": 50,
      "per_page": 50,
      "current_page": 1,
      "total_pages": 3,
      "links": {
        "next": "https://log.concept2.com/api/users/me/results?page=2"
      }
    }
  }
}

Default per_page is 50, maximum is 250.

See Also

安全使用建议
This skill appears to do exactly what it says: fetch and analyze Concept2 Logbook data. Before you install/use it, be aware that you must supply your Concept2 API token (via --token or equivalent). Treat that token as a secret: don't paste it into shared logs or public places. If you plan to run the script on a machine you don't control, consider creating a limited Concept2 token or running it locally. If you need higher assurance, review the full fetch_workouts.py file yourself (it only calls log.concept2.com and performs local calculations) and check any output before sharing it with third parties.
功能分析
Type: OpenClaw Skill Name: concept2 Version: 1.0.0 The skill bundle provides a legitimate tool for fetching and analyzing Concept2 Logbook workout data. The Python script (scripts/fetch_workouts.py) interacts only with the official Concept2 API (log.concept2.com) using a user-provided token. It performs standard fitness calculations like heart rate zone distribution and weekly trends without any signs of malicious intent, data exfiltration, or unsafe execution.
能力评估
Purpose & Capability
Name/description match the included code and docs: the script calls Concept2's API, computes HR zones, trends, and workout metrics. The SKILL.md and references describe the same endpoints used by the script. The skill does not request unrelated cloud credentials or system-level access.
Instruction Scope
Runtime instructions are limited to calling the Concept2 API with an access token (passed via --token) and formatting/printing or exporting the returned workout data. The SKILL.md does not instruct reading arbitrary local files, system secrets, or sending data to third parties outside the Concept2 API.
Install Mechanism
No install spec is provided (instruction-only with a bundled script). This minimizes disk-write/install risk. The Python script uses standard libraries and optionally requests; no external downloads or archive extraction are performed by an installer.
Credentials
No environment variables or credentials are declared in the registry metadata. The SKILL.md and script require a Concept2 API token supplied at runtime (CLI argument), which is appropriate and proportionate for the described functionality. There are no other secret-like env variables requested.
Persistence & Privilege
The skill is not always-enabled, does not request persistent system modifications, and does not modify other skills' configs. It runs as an on-demand script and has normal autonomous-invocation defaults.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install concept2
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /concept2 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
- Initial release of Concept2 skill to fetch and analyze Concept2 Logbook workout data via API. - Supports pulse zone analysis (5-zone model) and weekly trend tracking for rowing, skiing, and biking. - Provides detailed workout summaries, performance insights, and personalized training recommendations. - Includes advanced metrics like pace consistency, heart rate zone distribution, and improvement tracking. - Requires Concept2 API access token for authentication.
元数据
Slug concept2
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

Concept2-logbook 是什么?

Fetch and analyze Concept2 Logbook workout data via API with pulse zone analysis and trend tracking. Use when the user wants to retrieve rowing/skiing/biking... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 253 次。

如何安装 Concept2-logbook?

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

Concept2-logbook 是免费的吗?

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

Concept2-logbook 支持哪些平台?

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

谁开发了 Concept2-logbook?

由 Katla(@katla50)开发并维护,当前版本 v1.0.0。

💬 留言讨论