# Fitness Planner

> Create forward-looking training plans from Strava-derived fitness notes already stored in an Obsidian vault. Use when the user wants a realistic next-week or next-two-week plan generated from recent load, consistency, sport mix, and recovery signals in their existing notes.

- Skill: `zxt6991-source/fitness-planner` (Agent Skill, multi-file: 13 files)
- Install (CLI): `npx skillmds@latest add zxt6991-source/fitness-planner`
- Raw SKILL.md: https://api.skillmd.com/api/skills/zxt6991-source/fitness-planner/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: zxt6991-source (https://skillmd.com/u/zxt6991-source)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/zxt6991-source/fitness-planner

---


# Fitness Planner

Use the bundled wrapper script to run the planning CLI:

```bash
scripts/run_fitness_planner.sh --help
```

This skill is for turning the existing Obsidian training log into an actionable upcoming plan.

## When To Use It

Use this skill when the user wants to:

- generate a next 7-day or 14-day training plan from historical notes
- convert recent training load and sport mix into a realistic upcoming schedule
- produce a conservative `recover`, `maintain`, or `build` plan
- write the generated plan back into Obsidian as a note and planning dashboard

Do not use this skill to fetch new Strava data. Use `fitness-agent` for ingest and `fitness-insights` for retrospective analysis. Use `fitness-planner` for the next-step plan.

## Workflow

1. Confirm the vault already contains `fitness-log` notes under `Activities/`.
2. Read the existing notes and compute recent load, consistency, and dominant sport.
3. Choose a planning mode:
   - `auto`: infer `recover`, `maintain`, or `build`
   - explicit override: force one of those modes
4. Generate a plan note plus planning dashboard files under `Plans/`.
5. Explain that the plan is heuristic and should be adjusted for injury status, event goals, and real-life constraints.

## Command

Generate the next 7-day plan from the configured vault:

```bash
scripts/run_fitness_planner.sh plan generate
```

Generate a 14-day build plan with explicit overrides:

```bash
scripts/run_fitness_planner.sh \
  --vault-path "/path/to/YourVault" \
  --root-folder "Fitness/Strava" \
  plan generate \
  --days 14 \
  --goal build \
  --start-date 2026-03-16
```

## Outputs

The skill writes these artifacts under the configured root folder:

- `Plans/Training Plans.base`
- `Plans/Fitness Planner.md`
- `Plans/Generated/YYYY-MM-DD-next-7-days-auto.md` or similar

The generated plan note includes:

- plan mode and rationale
- weekly target sessions, duration, and load proxy
- a day-by-day schedule
- caution notes and review prompts

## Guardrails

- Treat generated plans as structured suggestions, not medical advice or coach-grade programming.
- Prefer conservative progression. The default auto mode should not create aggressive load jumps.
- Be explicit when the user forces `build` despite recovery signals in recent data.
- Depend only on note-level metrics already present in the vault.
- Keep generated plan notes deterministic enough to be regenerated safely.

## Trigger Examples

- `$fitness-planner 基于我现有的运动数据生成下一周训练计划`
- `$fitness-planner 给我做一个未来两周的 build 计划`
- `$fitness-planner 根据最近训练量生成更保守的恢复周安排`

## Resources

- `fitness_planner.py`: self-contained CLI entrypoint packaged with the skill.
- `src/fitness_planner/`: parser, analysis engine, planning heuristics, and output generators.
- `scripts/run_fitness_planner.sh`: stable wrapper for local execution.
- `references/planning_heuristics.md`: heuristic planning rules and caution language.

