Claude Skill

garmin-connect

在 WorkBuddy 中下载并配置 dsh-plugin-garmin-connect npm 包,通过 MCP 工具分析 Garmin 活动、睡眠、步数、心率、体重、训练库、跑步趋势和有限的恢复信息,也可按用户要求创建 Garmin 训练或下载活动 FIT 文件。适用于 Garmin 配置、回顾、比较和明确授权的写操作;不用于医疗诊断。

LLM Mart · 0 points · 9 views 15 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download likenttt-garmin-connect-plugin-for-dsh-skills_garmin-connect-dc02ea7.zip · 8 KB

Install

skills CLI npx skills add https://github.com/Likenttt/garmin-connect-plugin-for-dsh/tree/main/skills/garmin-connect
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install likenttt-garmin-connect-plugin-for-dsh@llmmart
Git git clone https://github.com/Likenttt/garmin-connect-plugin-for-dsh.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole likenttt/garmin-connect-plugin-for-dsh collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

Garmin Connect

Credit:李二牛

使用 npm 官方仓库中的社区维护、非 Garmin 官方软件包 dsh-plugin-garmin-connect。该包不指定版本,始终跟随 npm 当前的 latest 正式版本。不要抓取 Garmin 网页,也不要擅自替换成其他 Garmin 库。

连接工具

首先检查当前 WorkBuddy 会话能否使用下方列出的 Garmin MCP 工具。

  • 如果工具不可用,读取 references/workbuddy-setup.md。仅下载软件包 不会给正在运行的会话增加工具;必须在 WorkBuddy 中注册 stdio MCP 服务并 重新加载。
  • 如果 Garmin 工具提示凭据缺失、过期或需要浏览器认证,在展示或打开任何 内容前,先阅读同一参考文档中的认证部分。
  • 将配置视为两个阶段:先配置并重新加载 WorkBuddy,再请用户重新调用本技能 进行分析。不要承诺在原会话内同时完成配置和分析。
  • 在以下操作发生前分别获得用户授权:① 下载并执行 npm 软件包;② 修改 WorkBuddy 配置;③ 打开会写入会话文件的浏览器认证。不要把这些副作用 混入用户对数据分析的授权中。
  • 不要在对话中索取 Garmin 密码、MFA 验证码、OAuth 令牌、会话内容或 npm 令牌。回环页面由本社区插件提供;账号、密码和验证码只能输入其嵌入的 Garmin 表单。插件会以程序方式把 frame 服务地址限定为 https://sso.garmin.cn/sso/embed 或 https://sso.garmin.com/sso/embed,并校验对应的 Web origin。浏览器地址栏 仍会显示 127.0.0.1,因此不要声称用户可仅凭地址栏独立验证 iframe 来源。 如果 Garmin 表单缺失或被拦截,立即停止输入。

用户没有指定账号时,使用已配置的默认 Garmin 服务。如果多个账号可能明显 影响答案且无法确定默认账号,询问账号别名;不要合并不同账号的数据。

获取最少必要数据

查询和分析数据时使用以下只读工具:

  • get_garmin_activities
  • get_garmin_sleep
  • get_garmin_steps
  • get_garmin_heart_rate
  • get_garmin_weight
  • get_garmin_workouts
  • get_garmin_profile
  • get_running_skill_advice

根据用户的问题选择工具,不要一次获取所有数据。按照用户 Garmin 账号或本地 日历时区,把相对日期换算成明确的 YYYY-MM-DD。确认是否需要包含尚未结束的 当天;否则优先使用完整日历日,并说明起止日期均包含在内。超过 30 天的范围 应拆成互不重叠、每批最多 30 天的数据,并标注合并后的总范围。

查询活动时默认使用 detail="compact",只有用户确实需要扩展字段时才提高 详细程度。full 可能暴露精确路线或位置;请求前说明其隐私影响。小表格或 摘要足以回答时,不要复述原始响应。

分析时避免过度推断

结果应明确区分:

  1. 数据范围以及缺失的日期或字段;
  2. 带日期和单位的直接观察;
  3. 明确标为推断的谨慎解释;
  4. 与用户目标匹配的可行下一步;
  5. 局限性,以及哪些补充数据可能改变结论。

至少比较多次测量后再称其为趋势。不要把相关性解释为因果关系,不要诊断疾病, 也不要把 Garmin 估算值当成医学结论。出现警示症状或异常测量时,应建议降低 训练强度,并在适当情况下寻求专业医疗帮助。

本插件未提供 HRV 状态、Body Battery、压力、训练准备度、恢复时间或训练负荷 工具。睡眠和静息心率趋势只能作为有限的恢复参考,不能称为完整恢复评分。

解释训练方法时,调用 get_running_skill_advice 并设置 mode="explain"。 提供个性化建议或计划时,使用 mode="personalized",收集工具返回的全部缺失 信息,并遵守其安全停止条件。Garmin 历史数据可以补充,但不能代替用户的目标、 当前成绩、训练背景、可用时间、健康与恢复情况以及训练负荷偏好。

写操作

用户明确要求创建 Garmin 训练或下载活动 FIT 时,可以使用下列工具。仅请求 分析、建议或生成计划时,不自动向 Garmin 训练库写入,也不自动下载文件。

创建 Garmin 训练

使用 create_garmin_workout,遵循工具已有的预览与确认流程:

  1. 将用户指定的训练编码为工具支持的 name、steps,以及必要的 description、sport。如果训练内容由本技能个性化制定,先完成上文 get_running_skill_advice 的信息收集;用户直接给出的明确训练可直接编码。
  2. 首次调用省略 confirmed 或设置为 false,取得预览和 confirmationId。 展示目标账号、训练名称、步骤与强度,供用户确认。
  3. 用户明确确认该预览后,使用完全相同的训练定义,以及 confirmed: true 和对应的 confirmationId 再次调用,提交创建。
  4. 确认 ID 为一次性使用;预览过期、服务重启、账号切换或训练内容改变时, 重新预览并取得用户确认。创建失败或返回结果不明确时,不自动重放写请求; 先查询训练库核对是否已创建,再决定是否重新预览,避免重复训练。

成功后报告工具实际返回的训练名称和 ID(如有)。此工具只创建 Garmin Connect 训练库中的训练,不提供更新、删除、日历排期或主动推送手表功能。

下载活动 FIT

用户明确要求下载某次活动时,使用 download_garmin_activity_fit:

  • 先用 get_garmin_activities 核对用户指定的活动,传入其正整数 activityId。 多条活动可能匹配时,先确定具体活动,不擅自扩大下载范围。
  • MCP 服务必须已设置 GARMIN_FIT_DOWNLOAD_DIR,值为用户选择的可信本地 父目录的绝对路径;缺失时按 references/workbuddy-setup.md 配置并重新加载。 不向工具传入额外的保存路径参数。
  • 文件按区域和账号保存到独立子目录。插件不覆盖已有文件;遇到 OUTPUT_EXISTS 时报告文件已存在,不删除或覆盖文件来重试。
  • 根据返回的文件元数据报告结果,不将 FIT 二进制或原始活动数据塞入对话。
Files (garmin-connect-plugin-for-dsh)
  • references
    • workbuddy-setup.md 9.4 KB
      # WorkBuddy 配置
      
      当 Garmin MCP 工具不可用、首次认证、需要修复认证、配置 FIT 下载目录或更新
      已安装技能时,读取本参考文档。
      
      本流程适用于个人版 WorkBuddy 桌面客户端,并在同一台电脑上运行本地 stdio
      MCP 服务。它不是 WorkBuddy 企业版上传清单,也不支持纯网页、纯移动端、远程
      或通过隧道完成认证。
      
      ## 环境与软件包
      
      - Node.js 20 或更高版本
      - 公共软件包:`dsh-plugin-garmin-connect`
      - npm 仓库:`https://registry.npmjs.org/`
      - MCP 可执行程序:`garmin-connect-mcp`
      
      下载这个公共软件包不需要 npm access token。软件包名称不附带版本,npm 会
      解析当前的 `latest` 正式版本。这样可以自动跟随正式发布,但不属于可复现的
      固定版本安装。执行前应向用户展示 npm 当前解析出的版本和完整性信息。不要
      擅自切换到预发布标签。
      
      这是社区软件包,而非 Garmin 官方软件。执行前说明软件包名称、当前解析结果、
      完整性信息,以及 `npx` 会在本机运行软件包代码。
      
      `garmin-connect-auth --version` 只是可执行程序的冒烟测试,不是独立的软件供应链
      审计,不要把它描述成安全审计。
      
      先查找并验证 Node 的绝对路径,再解析真实的 `npm` 和 `npx` CLI 脚本。只写
      绝对 `npx` 启动器仍不够,因为它的 shebang 可能依赖 WorkBuddy 图形界面
      `PATH` 中不存在的 `node`:
      
      ```bash
      NODE_BIN="$(command -v node)"
      NPM_CLI="$(node -e 'console.log(require("fs").realpathSync(process.argv[1]))' "$(command -v npm)")"
      NPX_CLI="$(node -e 'console.log(require("fs").realpathSync(process.argv[1]))' "$(command -v npx)")"
      "$NODE_BIN" --version
      printf '%s\n' "$NODE_BIN" "$NPM_CLI" "$NPX_CLI"
      ```
      
      必须确认 Node 为 `v20` 或更高版本。Windows 上使用 `where node`、`where npm`
      和 `where npx`,找到对应的 `node_modules/npm/bin/npm-cli.js` 与
      `npx-cli.js`;JSON 路径使用正斜杠或转义后的反斜杠。
      
      执行前,查看 npm 当前选中的正式版本,并在不运行生命周期脚本的情况下下载
      tarball。`npm pack` 会根据仓库元数据校验 tarball:
      
      ```bash
      DOWNLOAD_DIR="$(mktemp -d)"
      "$NODE_BIN" "$NPM_CLI" view \
        dsh-plugin-garmin-connect \
        version dist.integrity \
        --registry=https://registry.npmjs.org/
      "$NODE_BIN" "$NPM_CLI" pack \
        dsh-plugin-garmin-connect \
        --ignore-scripts \
        --registry=https://registry.npmjs.org/ \
        --pack-destination "$DOWNLOAD_DIR"
      ```
      
      记录紧接执行前显示的版本与完整性信息。如果元数据缺失或 `npm pack` 报告
      完整性失败,应停止。此流程仍依赖 npm 解析软件包及其依赖树,并非完全封闭、
      完全内置依赖的安装;必要时向用户说明这一限制。
      
      获得用户明确的下载与执行授权后,获取软件包并进行冒烟测试:
      
      ```bash
      /absolute/path/to/node /absolute/path/to/npx-cli.js -y \
        --registry=https://registry.npmjs.org/ \
        --package dsh-plugin-garmin-connect \
        garmin-connect-auth --version
      ```
      
      报告程序返回的版本,并确认它与前面的 npm 元数据查询一致。
      
      ## 注册 WorkBuddy MCP 服务
      
      打开 **插件 → MCP 服务器 → 配置 MCP**,或者将下方服务合并到用户级
      `~/.workbuddy/mcp.json`。绝不要覆盖其中无关的既有服务。修改用户配置前需要
      单独获得授权。
      
      ```json
      {
        "mcpServers": {
          "garmin-connect": {
            "command": "/absolute/path/to/node",
            "args": [
              "/absolute/path/to/npx-cli.js",
              "-y",
              "--registry=https://registry.npmjs.org/",
              "--package",
              "dsh-plugin-garmin-connect",
              "garmin-connect-mcp"
            ],
            "env": {
              "GARMIN_USERNAME": "user@example.com",
              "GARMIN_REGION": "cn",
              "GARMIN_ACCOUNT": "workbuddy-cn",
              "GARMIN_SESSION_TOKEN_FILE": "/absolute/private/path/workbuddy-cn.session.json",
              "GARMIN_ACTIVITY_DETAIL": "compact"
            }
          }
        }
      }
      ```
      
      替换示例邮箱和所有路径。`GARMIN_REGION` 只能是 `cn` 或 `global`。会话文件应
      使用只有当前用户可访问、且仅供这个 WorkBuddy MCP 进程使用的本地路径。邮箱
      会保存在本地 WorkBuddy 配置中,保存前应向用户说明。不要配置
      `GARMIN_PASSWORD`、MFA 验证码或内联令牌。
      
      在 macOS/Linux 上,只创建确切的会话文件父目录,并限制为仅所有者可访问:
      
      ```bash
      install -d -m 700 "$HOME/.garmin-connect-auth/accounts"
      ```
      
      会话文件使用该目录下的绝对路径。Windows 上优先使用 `%LOCALAPPDATA%` 下的
      路径;插件会创建或验证仅限当前用户的精确 ACL。如果现有目录权限不安全,插件
      应直接失败,而不是放宽其权限。
      
      配置两个账号时,添加两个不同名称的 MCP 服务,并分别设置不同的
      `GARMIN_ACCOUNT`、`GARMIN_REGION` 和 `GARMIN_SESSION_TOKEN_FILE`。并发客户端
      或不同账号绝不能共用同一个会话文件。
      
      保存配置,重新加载 WorkBuddy MCP 服务,并确认服务已经连接。然后开始一个新
      请求并再次调用 `garmin-connect`。WorkBuddy 重新加载前,原会话无法使用刚注册
      的工具。
      
      ## 可选:配置 FIT 下载目录
      
      创建 Garmin 训练不需要额外的写权限环境变量,按技能中的预览与确认流程使用
      `create_garmin_workout` 即可。下载活动 FIT 则需要在上面对应 MCP 服务现有的
      `env` 中新增:
      
      ```json
      "GARMIN_FIT_DOWNLOAD_DIR": "/absolute/path/to/garmin-fit-downloads"
      ```
      
      该值必须替换为用户选择的可信本地父目录的绝对路径。保留现有的账号、区域、
      会话文件和其他环境变量;修改配置仍遵循上文的授权要求。保存后重新加载 MCP
      服务,并开始新请求。
      
      插件会在该父目录下按区域与账号分别保存到 `GARMIN_FIT_<region>_<account-email>`
      子目录;账号包含特殊字符时会编码处理。已有 FIT 文件不会被覆盖,重复下载
      会返回 `OUTPUT_EXISTS`。调用工具时只传入已核对的 `activityId`,不要添加
      `path`、`outputDir` 或其他工具未提供的参数。
      
      ## 更新已安装技能
      
      升级 npm 软件包不会自动替换 WorkBuddy 已安装的技能文件。要启用本技能中的
      写操作流程,应将当前版本的 `skills/garmin-connect/SKILL.md` 与
      `skills/garmin-connect/references/workbuddy-setup.md` 同步到 WorkBuddy 实际
      安装的 `garmin-connect` 技能目录,保留用户与本次更新无关的本地修改和其他技能。
      
      重新加载 WorkBuddy 的技能与 MCP 服务,再新开会话调用 `garmin-connect`。
      确认当前会话能看到 `create_garmin_workout` 和 `download_garmin_activity_fit`
      后,按技能中的写操作流程执行用户请求。修改项目里的副本或仅在旧会话中继续
      对话,不能保证已安装技能和工具得到更新。
      
      ## 浏览器认证
      
      即使由只读 Garmin 工具触发,认证仍会产生本地副作用:它将打开浏览器并写入
      仅所有者可访问的会话文件。因此,启动认证前必须立即获得用户授权。
      
      首次调用只读工具时,会话缺失或过期可能触发随机、短时有效的
      `http://127.0.0.1:<port>/...` 认证提示。让 WorkBuddy 在本机展示或打开它;
      不要把 URL 复制到模型回复、日志或其他设备。外层回环桥接页面属于本社区插件。
      插件会以程序方式只允许 `https://sso.garmin.cn/sso/embed` 和
      `https://sso.garmin.com/sso/embed` 这两个精确 frame 服务地址,并校验相应
      origin。浏览器地址栏无法独立证明跨域 iframe 的来源,不要告诉用户可以这样
      验证。如果嵌入的 Garmin 表单缺失或被拦截,停止输入。流程显示完成后,明确
      重试原来的只读查询。
      
      如果 WorkBuddy 无法展示 URL elicitation,并且用户另行批准打开浏览器和写入
      会话文件,请在可信的本地终端中,使用相同账号、区域和会话路径运行备用流程。
      首先确认 npm 当前选择的正式版本包含浏览器命令:
      
      ```bash
      /absolute/path/to/node /absolute/path/to/npx-cli.js -y \
        --registry=https://registry.npmjs.org/ \
        --package dsh-plugin-garmin-connect \
        garmin-connect-auth serve --help
      ```
      
      如果该命令不存在,停止并说明 npm 当前的 `latest` 正式版本尚未提供这种浏览器
      认证方式;不要擅自安装预发布版本。如果命令可用,先在当前终端环境中设置
      与 MCP 配置相同的 `GARMIN_USERNAME`(邮箱),再运行下方命令。MCP 服务的
      `env` 不会自动传给独立终端;该显式邮箱配置也适用于 0.1.6。
      
      ```bash
      /absolute/path/to/node /absolute/path/to/npx-cli.js -y \
        --registry=https://registry.npmjs.org/ \
        --package dsh-plugin-garmin-connect \
        garmin-connect-auth serve \
        --account workbuddy-cn \
        --region cn \
        --output /absolute/private/path/workbuddy-cn.session.json \
        --open
      ```
      
      不要把生成的会话文件或其内容复制进对话。浏览器桥接仅监听本机回环地址,必须
      与 WorkBuddy 运行在同一台电脑上。
      
      断开连接时,先禁用对应 MCP 服务。只有在用户明确确认后,才删除配置中指定的
      确切会话文件;不要使用通配符或递归删除。删除本地文件不会撤销 Garmin 服务端
      的账号会话。
      
      ## 认证能力边界
      
      认证能力取决于 npm `latest` 当前指向的软件包。承诺支持浏览器 MFA 前,应先
      验证实际可用的命令。对于尚未测试的地区、WorkBuddy URL elicitation 和刷新
      令牌行为,应如实说明限制,不要声称普遍支持 MFA。
      
  • SKILL.md 6.6 KB
    ---
    name: garmin-connect
    description: 在 WorkBuddy 中下载并配置 dsh-plugin-garmin-connect npm 包,通过 MCP 工具分析 Garmin 活动、睡眠、步数、心率、体重、训练库、跑步趋势和有限的恢复信息,也可按用户要求创建 Garmin 训练或下载活动 FIT 文件。适用于 Garmin 配置、回顾、比较和明确授权的写操作;不用于医疗诊断。
    agent_created: true
    ---
    
    # Garmin Connect
    
    **Credit:李二牛**
    
    使用 npm 官方仓库中的社区维护、非 Garmin 官方软件包
    `dsh-plugin-garmin-connect`。该包不指定版本,始终跟随 npm 当前的
    `latest` 正式版本。不要抓取 Garmin 网页,也不要擅自替换成其他 Garmin
    库。
    
    ## 连接工具
    
    首先检查当前 WorkBuddy 会话能否使用下方列出的 Garmin MCP 工具。
    
    - 如果工具不可用,读取
      [references/workbuddy-setup.md](references/workbuddy-setup.md)。仅下载软件包
      不会给正在运行的会话增加工具;必须在 WorkBuddy 中注册 stdio MCP 服务并
      重新加载。
    - 如果 Garmin 工具提示凭据缺失、过期或需要浏览器认证,在展示或打开任何
      内容前,先阅读同一参考文档中的认证部分。
    - 将配置视为两个阶段:先配置并重新加载 WorkBuddy,再请用户重新调用本技能
      进行分析。不要承诺在原会话内同时完成配置和分析。
    - 在以下操作发生前分别获得用户授权:① 下载并执行 npm 软件包;② 修改
      WorkBuddy 配置;③ 打开会写入会话文件的浏览器认证。不要把这些副作用
      混入用户对数据分析的授权中。
    - 不要在对话中索取 Garmin 密码、MFA 验证码、OAuth 令牌、会话内容或 npm
      令牌。回环页面由本社区插件提供;账号、密码和验证码只能输入其嵌入的
      Garmin 表单。插件会以程序方式把 frame 服务地址限定为
      `https://sso.garmin.cn/sso/embed` 或
      `https://sso.garmin.com/sso/embed`,并校验对应的 Web origin。浏览器地址栏
      仍会显示 `127.0.0.1`,因此不要声称用户可仅凭地址栏独立验证 iframe 来源。
      如果 Garmin 表单缺失或被拦截,立即停止输入。
    
    用户没有指定账号时,使用已配置的默认 Garmin 服务。如果多个账号可能明显
    影响答案且无法确定默认账号,询问账号别名;不要合并不同账号的数据。
    
    ## 获取最少必要数据
    
    查询和分析数据时使用以下只读工具:
    
    - `get_garmin_activities`
    - `get_garmin_sleep`
    - `get_garmin_steps`
    - `get_garmin_heart_rate`
    - `get_garmin_weight`
    - `get_garmin_workouts`
    - `get_garmin_profile`
    - `get_running_skill_advice`
    
    根据用户的问题选择工具,不要一次获取所有数据。按照用户 Garmin 账号或本地
    日历时区,把相对日期换算成明确的 `YYYY-MM-DD`。确认是否需要包含尚未结束的
    当天;否则优先使用完整日历日,并说明起止日期均包含在内。超过 30 天的范围
    应拆成互不重叠、每批最多 30 天的数据,并标注合并后的总范围。
    
    查询活动时默认使用 `detail="compact"`,只有用户确实需要扩展字段时才提高
    详细程度。`full` 可能暴露精确路线或位置;请求前说明其隐私影响。小表格或
    摘要足以回答时,不要复述原始响应。
    
    ## 分析时避免过度推断
    
    结果应明确区分:
    
    1. 数据范围以及缺失的日期或字段;
    2. 带日期和单位的直接观察;
    3. 明确标为推断的谨慎解释;
    4. 与用户目标匹配的可行下一步;
    5. 局限性,以及哪些补充数据可能改变结论。
    
    至少比较多次测量后再称其为趋势。不要把相关性解释为因果关系,不要诊断疾病,
    也不要把 Garmin 估算值当成医学结论。出现警示症状或异常测量时,应建议降低
    训练强度,并在适当情况下寻求专业医疗帮助。
    
    本插件未提供 HRV 状态、Body Battery、压力、训练准备度、恢复时间或训练负荷
    工具。睡眠和静息心率趋势只能作为有限的恢复参考,不能称为完整恢复评分。
    
    解释训练方法时,调用 `get_running_skill_advice` 并设置 `mode="explain"`。
    提供个性化建议或计划时,使用 `mode="personalized"`,收集工具返回的全部缺失
    信息,并遵守其安全停止条件。Garmin 历史数据可以补充,但不能代替用户的目标、
    当前成绩、训练背景、可用时间、健康与恢复情况以及训练负荷偏好。
    
    ## 写操作
    
    用户明确要求创建 Garmin 训练或下载活动 FIT 时,可以使用下列工具。仅请求
    分析、建议或生成计划时,不自动向 Garmin 训练库写入,也不自动下载文件。
    
    ### 创建 Garmin 训练
    
    使用 `create_garmin_workout`,遵循工具已有的预览与确认流程:
    
    1. 将用户指定的训练编码为工具支持的 `name`、`steps`,以及必要的
       `description`、`sport`。如果训练内容由本技能个性化制定,先完成上文
       `get_running_skill_advice` 的信息收集;用户直接给出的明确训练可直接编码。
    2. 首次调用省略 `confirmed` 或设置为 `false`,取得预览和 `confirmationId`。
       展示目标账号、训练名称、步骤与强度,供用户确认。
    3. 用户明确确认该预览后,使用完全相同的训练定义,以及 `confirmed: true`
       和对应的 `confirmationId` 再次调用,提交创建。
    4. 确认 ID 为一次性使用;预览过期、服务重启、账号切换或训练内容改变时,
       重新预览并取得用户确认。创建失败或返回结果不明确时,不自动重放写请求;
       先查询训练库核对是否已创建,再决定是否重新预览,避免重复训练。
    
    成功后报告工具实际返回的训练名称和 ID(如有)。此工具只创建 Garmin Connect
    训练库中的训练,不提供更新、删除、日历排期或主动推送手表功能。
    
    ### 下载活动 FIT
    
    用户明确要求下载某次活动时,使用 `download_garmin_activity_fit`:
    
    - 先用 `get_garmin_activities` 核对用户指定的活动,传入其正整数 `activityId`。
      多条活动可能匹配时,先确定具体活动,不擅自扩大下载范围。
    - MCP 服务必须已设置 `GARMIN_FIT_DOWNLOAD_DIR`,值为用户选择的可信本地
      父目录的绝对路径;缺失时按
      [references/workbuddy-setup.md](references/workbuddy-setup.md) 配置并重新加载。
      不向工具传入额外的保存路径参数。
    - 文件按区域和账号保存到独立子目录。插件不覆盖已有文件;遇到 `OUTPUT_EXISTS`
      时报告文件已存在,不删除或覆盖文件来重试。
    - 根据返回的文件元数据报告结果,不将 FIT 二进制或原始活动数据塞入对话。
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related