← Files NolioARCHIVED FILE

plugin.json

8.64 KB · Nov 3, 2026 · 12:13 UTC

↓ Download file

See the change to this file →

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "nolio",
  "version": "1.0.1",
  "description": "Endurance, strength and Hyrox coaching platform",
  "author": {
    "name": "Nolio",
    "email": "contact@nolio.io",
    "url": "https://www.nolio.io/en/"
  },
  "homepage": "https://www.nolio.io/en/developers/#chatgpt",
  "keywords": [
    "training",
    "coaching",
    "endurance",
    "workouts",
    "running",
    "cycling",
    "triathlon",
    "strength",
    "hyrox"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Nolio",
        "shortDescription": "Endurance, strength and Hyrox",
        "longDescription": "Nolio is a training platform for endurance, strength and Hyrox coaches, clubs and athletes. Connect your Nolio account to work on training in plain language.\n\nWhat you can do:\n- Read the planned and completed calendar, yours or your athletes': workouts, races, training cycles, notes and questionnaires.\n- Compare what was planned with what was done: duration, distance, RPE and the athlete's debrief.\n- Open a completed workout in full, with its laps and heart rate or power curves.\n- Plan workouts for one athlete or a whole group, including structured workouts that Nolio can send to compatible watches, and plan races, training cycles, notes and questionnaires.\n- Apply workout templates from your library and create new ones.\n- Follow training load, metrics (HRV, resting heart rate, sleep, weight), personal records and intensity zones.\n- Read and answer the comments on your athletes' workouts.\n- Undo a deletion.\n\nAccess and safety:\n- You sign in with your Nolio account and choose what ChatGPT may do: read, create, update, delete.\n- A coach only sees the athletes they coach. A team can restrict what its coaches can do.\n- ChatGPT shows what will change and asks before writing; a change to an existing event cannot be undone automatically.\n- Data from some connected services is not passed on to AI assistants, in line with those services' terms.\n\nA Nolio account with access to the connector is required.\n\nHelps you migrate from TrainingPeaks, Intervals.icu or FinalSurge to Nolio, with guidance on importing completed workouts from supported files and recreating planned workouts and templates from the details you provide.",
        "developerName": "Nolio",
        "category": "Healthcare",
        "capabilities": [
          "Read training calendars",
          "Plan workouts and races",
          "Analyze completed workouts",
          "Manage workout templates",
          "Track load and metrics"
        ],
        "websiteURL": "https://www.nolio.io/en/",
        "supportURL": "https://www.nolio.io/en/developers/#chatgpt",
        "privacyPolicyURL": "https://www.nolio.io/en/data/privacy/",
        "termsOfServiceURL": "https://www.nolio.io/en/terms/",
        "defaultPrompt": [
          "What did my athletes do this week compared to what was planned?",
          "Apply my long run template to my marathon group next Sunday.",
          "Analyze my athlete\u2019s pacing in their latest race."
        ],
        "brandColor": "#1E64E6",
        "brandColorDark": "#75A0F0",
        "logo": "./assets/logo.png",
        "composerIcon": "./assets/logo.png",
        "logoDark": "./assets/logo.png",
        "composerIconDark": "./assets/logo.png"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Compare an athlete's completed and planned workouts over the last week",
              "prompt": "What workouts did L\u00e9a do over the last 7 days, compared to what was planned?",
              "tools_triggered": "list_athletes, get_calendar",
              "expected_behavior": "Finds L\u00e9a Martin among the coach's athletes, reads her completed and planned calendars over the last 7 days, completes any paginated results, and compares duration, distance and the athlete's entered feedback. Reports planned workouts with no matching completed workout without treating missing feedback as a score."
            },
            {
              "description": "Apply a library template to a whole group",
              "prompt": "Apply my \"Long run Z2\" template to the whole Marathon group next Sunday.",
              "tools_triggered": "list_athletes, list_training_frames, get_calendar, apply_training_frame",
              "expected_behavior": "Finds the Marathon group and the Long run Z2 template, checks next Sunday on the group's planned calendar, states what will be planned and asks for confirmation, then plans the workout on the group and confirms it was added."
            },
            {
              "description": "Move and shorten an athlete's planned workout",
              "prompt": "Move Paul's Tuesday workout to Wednesday and shorten it to 45 minutes.",
              "tools_triggered": "list_athletes, get_calendar, get_planned_training, update_planned_training",
              "expected_behavior": "Finds Paul Durand's workout planned next Tuesday, states the change and that it cannot be undone automatically, asks for confirmation, then moves it to Wednesday with a 45-minute duration and confirms the new date and duration."
            },
            {
              "description": "Analyze an athlete's pacing in their latest completed race",
              "prompt": "Analyze Hugo's pacing in his latest race.",
              "tools_triggered": "list_athletes, get_calendar, get_training",
              "expected_behavior": "Finds Hugo Bernard among the coach's athletes, identifies his most recent completed race from the realized calendar, then reads its laps and available pace, distance and time curves. Compares the opening, middle and finish using the returned units, explains any observed pace changes without inventing their cause, and states any missing or restricted data. If the athlete is ambiguous, asks which athlete; if no race or usable pacing data is available, explains that limitation without substituting a training workout or inventing splits."
            },
            {
              "description": "Delete a planned workout, then undo the deletion",
              "prompt": "Delete Emma's workout planned next Thursday, then undo the deletion.",
              "tools_triggered": "list_athletes, get_calendar, delete_event, list_recent_deletions, undo_deletion",
              "expected_behavior": "Finds Emma Petit's workout planned next Thursday, asks for confirmation of that exact deletion, deletes it, then finds the deletion in the recent deletions, restores it after confirmation and confirms the workout is back on her calendar."
            }
          ],
          "negative": [
            {
              "description": "Unrelated request: the weather is not Nolio data, the plugin should not be called.",
              "prompt": "What's the weather forecast in Paris tomorrow?",
              "expected_behavior": "Does not call Nolio: the request concerns a weather forecast rather than training data or an action in Nolio."
            },
            {
              "description": "Medical diagnosis request: Nolio stores training data and does not diagnose injuries, the plugin should not act.",
              "prompt": "My knee hurts when I run. What injury do I have?",
              "expected_behavior": "Does not diagnose an injury or change the training calendar in response to this request; directs the person to an appropriate health professional."
            },
            {
              "description": "Bulk deletion without a confirmed list: the plugin should not delete anything before the coach confirms the exact workouts to remove.",
              "prompt": "Delete every workout on L\u00e9a's calendar.",
              "expected_behavior": "Does not delete any workout before showing the exact proposed deletions and receiving confirmation of that list. May read the calendar to prepare the recap."
            }
          ]
        },
        "demo_recording_url": "https://youtu.be/vfKFXudGUMg",
        "commerce": false,
        "commerce_description": "This plugin does not sell anything and does not process payments."
      },
      "publication": {
        "release_notes": "Updated square blue logo and composer icons, moved the listing to Healthcare, refreshed endurance, strength and Hyrox positioning, and replaced the third starter prompt with race-pacing analysis. The first two starter prompts are unchanged. Preserved the original long description with an updated opening and migration assistance covering planned workouts and templates from user-provided details, plus guidance on Nolio file imports for completed workouts. Updated the matching race review scenario."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 3a1b5a8dfbd8f849f0c3b7607416b20526c0375eddee5613b3848c0972ea5335