Free OpenClaw skill · No signup · v1.0.0

Free OpenClaw Skill for CrossFit and Strength Gyms: Programming and Retention Agent (Download)

A working OpenClaw skill for CrossFit affiliates and strength gyms. Owns the programming track delivery (Mayhem, Misfit, Linchpin, or your in-house), the no-show pattern alerts, the on-ramp-to-membership conversion, and the monthly Open / Quarterfinals / Games season ops, all from one SKILL.md drop-in.

Built and maintained by Adhiraj Hangal, OpenClaw Consult. Code I wrote runs inside OpenClaw's source, merged by the project's creator.

Free OpenClaw skill for CrossFit and strength gyms

12 KB file. Free for any use. Drop it into your OpenClaw setup and your agent knows your business in 60 seconds.

v1.0.0

We email you a copy plus the install notes. One email, no list, no spam.

What this skill does for your CrossFit and strength gyms

  • Delivers the daily WOD with movement scaling options, RX prescriptions, and movement standard videos from SugarWOD, BTWB, or your in-house notion of the day.
  • Runs the on-ramp / fundamentals course completion cadence with a 14, 30, 60-day membership conversion follow-up keyed to class attendance.
  • Detects no-show patterns at the member level (3 consecutive missed classes, 50% drop from rolling 4-week average) and drafts the operator outreach.
  • Coordinates the CrossFit Games season operations: Open registration, Quarterfinals heats, Regional Semis volunteer rotation, judging certification refreshes.
  • Manages the programming track choice for members (Mayhem, Misfit Athletics, Linchpin Strong, in-house, comp-track) with progression flags as members move between tracks.

What's inside this OpenClaw skill

The full file you download, indexed below for search engines and for operators who want to read before they install.

---
name: crossfit-programming-and-retention
description: Daily WOD delivery, on-ramp conversion cadence, no-show pattern detection, CrossFit Games season operations, and programming track management for CrossFit affiliates and strength gyms. Integrates with PushPress, Wodify, SugarWOD, Zen Planner, BTWB.
version: 1.0.0
author: OpenClaw Consult (Adhiraj Hangal)
license: MIT
url: https://openclawconsult.com/skills/crossfit-strength-gyms
---

# OpenClaw Skill: CrossFit and Strength Gym Programming and Retention Coordinator

## Overview

This skill turns the OpenClaw agent into the programming delivery and
retention operator for a CrossFit affiliate or strength gym. It owns the
daily WOD posting with scaling and RX standards, the on-ramp to membership
conversion cadence, the member-level no-show pattern detection, the
CrossFit Games season ops (Open, Quarterfinals, Regional Semis), and the
programming-track choice for members across Mayhem, Misfit, Linchpin, or
in-house programming.

Designed for CrossFit affiliates and strength gyms running 50 to 250
active members on PushPress, Wodify, Zen Planner, or TritonMartialArts,
with WOD delivery and tracking through SugarWOD or BTWB.

## What this skill does

1. Posts the daily WOD with movement standards, RX prescriptions, scaling options
2. Runs the 14, 30, 60-day on-ramp-to-membership conversion cadence
3. Detects no-show patterns (3 consecutive misses, 50% drop from 4-week rolling average)
4. Coordinates CrossFit Games season: Open heats, Quarterfinals, judging certifications
5. Manages programming track choice and progression for members
6. Drafts member appreciation messages on milestone hits (1-year anniversary, 100th class, first muscle-up)

## Triggers

```yaml
triggers:
  - type: heartbeat
    schedule: "0 5 * * *"            # Daily 5am, WOD posting
    action: post_daily_wod

  - type: heartbeat
    schedule: "0 17 * * 0"           # Sundays 5pm, weekly attendance review
    action: weekly_attendance_review

  - type: heartbeat
    schedule: "0 9 * * 2"            # Tuesdays 9am, on-ramp conversion review
    action: on_ramp_cadence_pass

  - type: heartbeat
    schedule: "0 8 * * 1-5"          # Weekdays 8am during Open weeks
    action: open_week_heat_signup_status

  - type: on_event
    event: pms.on_ramp_completed
    action: enter_on_ramp_cadence

  - type: on_event
    event: pms.member_missed_3_consecutive_classes
    action: draft_no_show_outreach

  - type: on_event
    event: pms.membership_anniversary
    action: draft_appreciation_message
```

## Workflow: daily WOD delivery

Each morning at 5am the agent:

1. Pulls today's WOD from the programming source (Mayhem, Misfit Athletics, Linchpin Strong, in-house, comp-track)
2. Generates the movement standards block (rep counts, ranges of motion, equipment standards)
3. Generates the scaling block for each level (RX, Scaled, Foundations)
4. Posts to the gym's preferred channel (SugarWOD, BTWB, gym app, email digest)
5. For comp-track members, includes the strategy notes from the head coach

The skill respects each member's programming track:

```yaml
programming_tracks:
  - id: mayhem_compete
    source: "Rich Froning Mayhem Programming"
    target_athlete: "competitive, 100+ class members"
  - id: misfit_athletics
    source: "Misfit Programming"
    target_athlete: "intermediate-advanced competitive"
  - id: linchpin_strong
    source: "Pat Sherwood Linchpin"
    target_athlete: "general population strength focus"
  - id: in_house
    source: "Head coach programming"
    target_athlete: "default for most members"
  - id: comp_track
    source: "Comp-track coach"
    target_athlete: "Open and Quarterfinals competitors"
```

## Workflow: on-ramp conversion cadence

When a member completes the on-ramp / fundamentals course, the agent
enters them into the cadence:

- Day 1 post-on-ramp: warm welcome + first-week class recommendations
- Day 7: check-in after the first regular class with class-time and coach noted
- Day 14: personal note with the math (drop-in classes attended vs membership pricing)
- Day 30: membership decision week with class-attendance pattern personalized offer
- Day 60: post-membership-decision win-back if not signed up

On-ramp-to-membership conversion in affiliates we have scoped sits in the
55 to 70% range with this cadence.

## Workflow: no-show pattern detection

The agent tracks each member's attendance against their rolling 4-week
average:

```yaml
no_show_signals:
  - 3_consecutive_misses: triggers_outreach
  - 50_percent_drop_from_4w_average: triggers_outreach
  - class_time_pattern_change: triggers_check_in
  - paused_membership_with_no_resume_date: triggers_outreach_at_day_14
```

When a member trips a signal, the agent drafts a personal-tone outreach
keyed to the signal. The operator approves the first two weeks; after
that, standard outreach can flip to autonomous.

The most common drivers of no-show patterns: schedule conflict, injury,
travel, life event, dissatisfaction with current programming. The
outreach addresses each gently and offers an adjustment.

## Workflow: CrossFit Games season operations

During Open weeks (typically February-March), the skill:

1. Tracks Open registration status per member
2. Sets up heat sign-ups for each Open workout
3. Manages judging certification status (all judges must be J1 or higher and current)
4. Coordinates Friday Night Lights setup for affiliates that run them
5. Reminds members of submission deadlines
6. Logs scores and shares the affiliate leaderboard

During Quarterfinals (typically March-April):

1. Tracks Quarterfinals qualifier status per member
2. Schedules video judging or live judging slots
3. Manages live equipment requirements per workout
4. Coordinates with HQ on any verification questions

During Regional Semis (typically May-June):

1. Schedules volunteer rotation for affiliates with athletes competing
2. Coordinates travel and logistics support for traveling athletes

## Workflow: member milestones

The skill tracks each member's milestone progression:

```yaml
milestones:
  - first_muscle_up
  - first_handstand_pushup
  - first_pistol
  - first_double_under
  - first_kipping_pullup
  - 100th_class
  - 500th_class
  - 1000th_class
  - 1_year_anniversary
  - 5_year_anniversary
  - first_bodyweight_clean_and_jerk
  - first_bodyweight_squat
  - first_2x_bodyweight_deadlift
```

When a milestone is hit, the agent drafts an appreciation message and a
social post (member tagged with permission) for the gym's Instagram.

## Message templates

```yaml
templates:
  daily_wod_post:
    channel: sugarwod_or_btwb_or_app
    body: |
      {date_formatted}

      {workout_name_or_benchmark}

      {workout_description}

      Movement standards: {movement_standards}

      Scaling options:
      RX: {rx_prescription}
      Scaled: {scaled_options}
      Foundations: {foundations_options}

      Coach notes: {coach_notes}

  on_ramp_day_30_membership:
    channel: email
    subject: "{member_first_name}, your membership math at {gym_name}"
    body: |
      Hi {member_first_name},

      You've been in {on_ramp_classes_count} on-ramp classes and
      {regular_classes_count} regular classes since {start_date}. Quick
      math on your options:

      Drop-in pricing for your attendance pattern: ${dropin_total_monthly}
      Unlimited monthly membership: ${monthly_unlimited}
      You save: ${savings} a month

      Pattern read: you've been hitting the {dominant_class_time} class
      most often, which fits the {recommended_membership_tier} membership.

      Lock the membership: {membership_link}

      Reach back any time.

      {head_coach_first_name}

  no_show_outreach_3_misses:
    channel: sms
    body: |
      Hey {member_first_name}, it's {coach_first_name}. Noticed you've
      been off the mat for a bit. Everything good? Hit me back when you
      have a second.

  open_heat_signup_reminder:
    channel: email
    subject: "Open {open_year} workout {workout_number} sign-up"
    body: |
      Hi {member_first_name},

      Open workout {workout_number} ({workout_short_name}) drops Thursday.
      Heat sign-ups are open:

      Thursday classes: {thursday_class_options}
      Friday Night Lights: {friday_night_lights_time}
      Saturday catch-up: {saturday_class_options}

      Lock your heat: {heat_signup_link}

      The submission deadline is {submission_deadline}.

      {gym_name}

  member_milestone_celebration:
    channel: email
    subject: "{milestone_name} for {member_first_name}!"
    body: |
      Hey {member_first_name},

      Just saw you logged your {milestone_name}. That's huge. We've been
      watching this one build for a while.

      With your permission, we'd love to post about it on the gym's
      Instagram. Reply YES if you're in, NO if you'd prefer to keep it
      between us.

      Either way, congrats.

      {head_coach_first_name}

  membership_anniversary:
    channel: email
    subject: "{anniversary_years} years at {gym_name}, {member_first_name}"
    body: |
      Hi {member_first_name},

      Today marks {anniversary_years} years since you signed up at
      {gym_name}. {anniversary_stat_callout}

      Thank you for sticking with us. The community would not be what it
      is without you in it.

      {head_coach_first_name}
```

## Memory keys

```yaml
memory:
  - key: member.profile[{member_id}]
    description: Member metadata, programming track, start date
    schema: { name: string, programming_track: string, started: date, plan: string }

  - key: member.attendance[{member_id}]
    description: Rolling attendance pattern and trend
    schema: { rolling_4w: number, class_time_pattern: array, last_class: date }

  - key: member.on_ramp[{member_id}]
    description: On-ramp completion and conversion cadence stage
    values: [pre_on_ramp, in_on_ramp, completed, day_14, day_30, day_60, converted, lost]

  - key: member.no_show_flags[{member_id}]
    description: Active no-show flags awaiting outreach or post-outreach state
    schema: { flag_type: string, raised: date, outreach_sent: date, outcome: string }

  - key: member.milestones[{member_id}]
    description: Achieved and pending milestones
    schema: { achieved: array, pending: array }

  - key: gym.open_season[{open_year}]
    description: Open season state: registration, heats, judging certs
    schema: { registered_count: number, heat_signups: object, judging_status: object }

  - key: gym.programming_tracks
    description: Active programming track sources and assignment
    schema: { tracks: array, member_assignments: object }
```

## Required integrations

| Integration              | Purpose                                          | Read | Write |
|--------------------------|--------------------------------------------------|------|-------|
| PushPress / Wodify / Zen Planner | Member data, attendance, billing         | yes  | optional |
| SugarWOD / BTWB          | WOD delivery and tracking                        | yes  | yes   |
| Programming source (Mayhem, Misfit, Linchpin) | Daily programming feed     | yes  | no    |
| CrossFit Games HQ portal | Open / Quarterfinals registration and scoring    | yes  | no    |
| Twilio                   | Outbound SMS for no-show outreach                | no   | yes   |
| Email provider           | Cadence messaging and milestone celebrations     | no   | yes   |
| Slack                    | Operator alerts and coach standup                | no   | yes   |
| OpenClaw Memory          | Member state, attendance, Open season            | yes  | yes   |
| OpenClaw Heartbeat       | Daily WOD posting and cadences                   | yes  | yes   |

Write-back to PushPress or Wodify for membership changes is optional.
Most affiliates start read-only and have the owner commit changes
manually.

## Compliance notes

The skill respects opt-in status from Twilio and the email provider. It
will not send marketing SMS or email to a member not opted in.

For CrossFit affiliates, the skill follows the current CrossFit HQ
affiliate guidelines on Open / Quarterfinals / Regional Semis
participation and judging certification requirements. The owner is
responsible for the final compliance call on any HQ-side question.

## Configuration

```yaml
config:
  gym_name: "Your Gym"
  affiliate_type: crossfit              # or "strength_gym", "powerlifting", "weightlifting"
  active_member_count: 120
  management_system: pushpress          # or "wodify", "zen_planner", "triton"
  wod_delivery: sugarwod                # or "btwb", "in_app", "email_digest"
  default_programming_track: in_house
  programming_track_options:
    - mayhem_compete
    - misfit_athletics
    - linchpin_strong
    - in_house
    - comp_track
  approval_mode: owner_approves_all     # or "autonomous_after_2_weeks"
  autonomous_template_allowlist:
    - daily_wod_post
    - on_ramp_day_30_membership
    - member_milestone_celebration
  no_show_consecutive_classes_threshold: 3
  no_show_rolling_drop_threshold_percent: 50
  open_season_active: true              # toggle during Open weeks
  judging_cert_required_for_open: J1_or_higher
```

## Quick install

```bash
mkdir -p ~/.claude/skills
mv crossfit-strength-gyms.md ~/.claude/skills/crossfit-programming-and-retention.md
# Edit the config block to match your gym
```

Launch OpenClaw and the skill is live. Trigger it manually with
`post daily WOD` or `run weekly attendance review` or wait for Heartbeat
to fire on the configured cadence.

## Want it wired to your stack?

This SKILL.md is the starting point. If you want it plugged into your
specific gym management system, programming track, coaching team, and
member mix on a fixed-price two-week clock, the door is at
https://www.adhirajhangal.com/work

Install in 60 seconds

  1. 1

    Drop the file into your OpenClaw skills directory

    Save the downloaded crossfit-strength-gyms.md as ~/.claude/skills/crossfit-programming-and-retention.md (or your project-level .claude/skills/). OpenClaw picks up new skill files on next agent launch.

  2. 2

    Connect PushPress, Wodify, Zen Planner, or your gym management system

    Edit the integrations block to point at your gym management system. PushPress is the dominant CrossFit affiliate platform and has the most thorough API. Wodify, Zen Planner, and TritonMartialArts also have REST APIs. SugarWOD and BTWB connect for the WOD delivery side. Read access is enough to start.

  3. 3

    Launch in approval mode and flip the WOD posting and standard outreach to autonomous in two weeks

    Start with the owner approving every WOD posting, on-ramp outreach, and no-show pattern alert for the first two weeks. The skill's defaults route any membership pause or cancellation save-flow to a human. After two weeks, flip the WOD posting and standard on-ramp cadence to autonomous; keep save-flows operator-approved.

Example conversation

You

It's the Tuesday of Open week 1. Run the affiliate ops check and tell me what I need to handle today.

Agent

Open week 1 Tuesday affiliate ops check. Workout 26.1 was announced Thursday and our members have through Monday 5pm Pacific to submit. Current submission status: 47 of 78 registered members have a score logged. 31 outstanding. Of the 31 outstanding: 8 are scheduled to attempt during today's 5:30pm class, 12 are scheduled tomorrow 6am or 7am, 4 are scheduled Thursday Friday Night Lights, 7 have not signed up for a heat yet. Drafted nudges to the 7 unscheduled to sign up. Judging cert status: all 4 of our certified judges current, no refresh needed this Open. Heat sign-up sheet for Friday Night Lights at 89% capacity, drafted social post to fill the last 6 spots. Programming track read-through: 12 members on competitive track have specific 26.1 strategy notes from last night's call, drafted reminder of the holds and pacing recommendations. Equipment: dumbbells at the prescribed 50/35 lb load are accounted for, no shortage; rope climbs prepped at both stations.

Founder-led · 14 days

Want this programming and retention coordinator live in your CrossFit affiliate or strength gym in 14 days?

Adhiraj ships OpenClaw AI agents into real businesses. Short discovery to map it to PushPress, SugarWOD, and your programming track, build in 14 days, then optional ongoing support so your OpenClaw system keeps working.

Build it with me

Common questions

Will this work for a 50-member affiliate or a 250-member multi-coach gym?

+

Both. The skill is designed for the 50 to 250 active member CrossFit affiliate or strength gym. Below 50 members the operator typically handles outreach personally and the skill is more automation than needed. Above 250 members the gym usually has dedicated retention staff and the skill is a starting point that needs operator-specific extension.

Which gym management systems does it integrate with?

+

PushPress (the dominant CrossFit affiliate platform with the most thorough API), Wodify (still common at established affiliates), Zen Planner, and TritonMartialArts via REST APIs. SugarWOD and BTWB for the WOD delivery and tracking side. For gyms on a closed system, the skill works at the calendar and email layer.

Does it actually deliver the daily WOD?

+

It posts the daily WOD with movement standards, scaling options, and RX prescriptions to your members' preferred channel (gym app, SugarWOD, BTWB, email digest). The actual programming comes from your source (Mayhem, Misfit Athletics, Linchpin Strong, your in-house programmer, or your competitive-track coach). The skill is the delivery layer.

How does the no-show pattern detection work?

+

The agent tracks each member's attendance against their rolling 4-week average. Triggers: 3 consecutive missed classes, 50% drop from the trailing 4-week pattern, or a sudden change in class-time selection. When a pattern fires, the skill drafts a personal outreach for the operator. Most affiliates we have scoped catch 60 to 80% of preventable churn this way.

What about the on-ramp / fundamentals conversion?

+

On-ramp completion is the second-highest leverage number after the initial trial conversion. The skill runs a 14, 30, 60-day cadence after on-ramp completion with class attendance signals: which class times, which coaches, which movement comfort gaps. The membership offer at day 30 is personalized to the pattern.

Does it handle the CrossFit Games season operations?

+

Yes. The skill manages Open registration timing, weekly heat sign-ups during Open weeks, judging certification refresh tracking, Quarterfinals and Regional Semis volunteer rotation, and the Friday Night Lights ops for affiliates that run them. The Games HQ schedule changes year to year; the skill's config block has a flag for the current year's structure.

Can it work with my programming track?

+

Yes. The skill is programming-track-agnostic. It supports Mayhem (Rich Froning), Misfit Athletics, Linchpin Strong, in-house programmer, and comp-track. Members can be on different tracks and the WOD delivery is personalized per member.

Can I modify this skill?

+

Yes. MIT licensed. Edit the WOD delivery format, the on-ramp cadence, the no-show thresholds, the Games season ops. Most affiliates fork it within the first month to match their voice.

What does this cost to run on top of OpenClaw?

+

Token cost is light. A representative 120-member affiliate sees monthly token spend in the $20 to $50 range. A 250-member gym sees $40 to $100.

Can OpenClaw Consult build a customized version for my gym?

+

Yes. The free SKILL.md is the starting point. If you want it wired into your specific gym management system, programming track, coaching team, and member mix on a fixed-price two-week clock, the door is at openclawconsult.com/hire.

Want the full implementation playbook?

Read the deep-dive guide for CrossFit and strength gyms

The playbook covers workflows, software integrations, compliance, ROI math, and a four-week rollout plan. The skill file above is a working slice of that build.

Read the CrossFit and strength gyms playbook →

Related free skills

Want it wired to your stack?

The free skill is the starting point. If you want it plugged into your actual software, on a fixed-price two-week clock, with the founder writing every line, this is the door.