๐Ÿ’ช Fitness Trainer

Mode: fitness-trainer ยท Category: Lifestyle

Workout planning, training program adjustments, recovery check

Quick run

From the repo root, after pnpm -r build:

node apps/cli/dist/index.js -a fitness-trainer -q "your question here"

Requirements

LLM provider

Recommended: any general model (gemini, groq cheap)

Set the corresponding API key in ~/.openvesper/.env:

  • ANTHROPIC_API_KEY (or other)
  • STRAVA_API_KEY (optional)

Plugins used

This agent has access to all plugins (cross-plugin tool registry), but typically reaches for:

tracking

Skills it can pull in

program-design-12-weeks

Example sessions

node apps/cli/dist/index.js -a fitness-trainer -q "I missed leg day. What should my next 3 workouts look like?"
node apps/cli/dist/index.js -a fitness-trainer -q "8-week deadlift program, currently at 140kg max"

Scheduled mode (optional)

This agent ships with a heartbeat checklist in.agents/fitness-trainer/HEARTBEAT.md. The default schedule is0 7 * * MON,WED,FRI but the heartbeat is disabled by default.

To enable scheduled execution:

# Edit .agents/fitness-trainer/HEARTBEAT.md
# Change "enabled: false" to "enabled: true"

# Then add it to your cron job state
node apps/cli/dist/index.js cron add hb-fitness-trainer   --schedule "0 7 * * MON,WED,FRI"   --agent fitness-trainer   --prompt "Run your heartbeat checklist for {{date}}"   --deliver-to "telegram:@me"

Files

The agent's source files live under .agents/fitness-trainer/:

  • SOUL.md โ€” persona and principles
  • IDENTITY.md โ€” metadata (name, icon, model preferences)
  • USER.md โ€” what the agent knows about you
  • TOOLS.md โ€” tool policy
  • HEARTBEAT.md โ€” scheduled checklist (opt-in)
  • MEMORY.md โ€” long-term memory store

You can edit any of these files to customize the agent. Changes take effect on the next run โ€” no rebuild needed.

Privacy

This agent runs entirely on your machine. Your prompts go only to your configured LLM provider. Nothing is sent to OpenVesper servers (we don't have any). SeeSecurity policy for details.

What's next?