← Files px.ARCHIVED FILE

plugin.json

5.29 KB · Nov 11, 2026 · 13:32 UTC

↓ Download file

See the change to this file →

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "px",
  "version": "1.0.3",
  "description": "px is a personal coach. Connected, ChatGPT can read today's px session and move it to a later time or another day this week.",
  "author": {
    "name": "Pursue Excellence Pty Ltd",
    "url": "https://pxmembership.com"
  },
  "homepage": "https://pxmembership.com",
  "keywords": [
    "fitness",
    "training",
    "coaching",
    "schedule"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "px.",
        "shortDescription": "See and move today's session",
        "longDescription": "px is a personal coach for training, mental practice and nutrition. It plans around what you are working toward and re-decides every day from how you are doing.\n\nWith px connected, you can ask ChatGPT:\n- \"What's my px session today?\" to see today's session, its start time, its length and whether it is still to do, done, moved or a rest day.\n- \"Move it to 6pm\" or \"Can I do it on Saturday instead?\" to move today's session to a later time today, or to another day this week. If the new day would put two hard sessions side by side, px tells you and asks you to confirm first.\n\npx decides the session. ChatGPT reads it and moves it when you ask; it never writes or changes a workout, and never moves a session into the past.\n\nPrivacy: px shares only today's session, its status and your email address. Never health readings, scores or your conversations with px. px gives no medical or injury advice.\n\nYou need a px account with a training plan (px is on iOS and Android, in 15 languages). Disconnect any time in ChatGPT's settings, or in the px app under Manage connections.",
        "developerName": "Pursue Excellence Pty Ltd",
        "category": "Healthcare",
        "capabilities": [
          "Read today's px session",
          "Move today's px session within this week"
        ],
        "websiteURL": "https://pxmembership.com",
        "supportURL": "https://pxmembership.com/help",
        "privacyPolicyURL": "https://pxmembership.com/privacy",
        "termsOfServiceURL": "https://pxmembership.com/terms",
        "defaultPrompt": [
          "What's my px session today?",
          "Move my px session to 6pm",
          "Can I do my px session tomorrow instead?"
        ],
        "brandColor": "#998663",
        "brandColorDark": "#CFB686",
        "composerIcon": "./assets/logo.png",
        "logo": "./assets/logo.png"
      },
      "review": {
        "commerce": false,
        "test_cases": {
          "positive": [
            {
              "description": "Read today's session from the member's px plan.",
              "prompt": "What's my px session today?",
              "tools_triggered": "get_today_session",
              "expected_behavior": "Replies with today's session from the px plan: its name, local start time, length when set, and its state (to do, done, moved or rest)."
            },
            {
              "description": "Move today's session to a later time today.",
              "prompt": "Move my px session to 6pm",
              "tools_triggered": "move_today_session",
              "expected_behavior": "Moves today's session to 18:00 today and confirms the new time. The px app's Home shows the session at 18:00."
            },
            {
              "description": "Move today's session to tomorrow, keeping its time.",
              "prompt": "Can I do my px session tomorrow instead?",
              "tools_triggered": "move_today_session",
              "expected_behavior": "Moves today's session to tomorrow at the same start time and confirms the new day."
            },
            {
              "description": "Move today's session to a named day and time later this week.",
              "prompt": "Move today's px session to Saturday morning at 8",
              "tools_triggered": "move_today_session",
              "expected_behavior": "Moves the session to Saturday 08:00 this week and confirms. If Saturday already has a hard session, px says so and asks for confirmation before moving."
            },
            {
              "description": "Ask whether today's session has been done.",
              "prompt": "Did I do my px session yet?",
              "tools_triggered": "get_today_session",
              "expected_behavior": "Replies with today's session state: to do or done (or moved or rest)."
            }
          ],
          "negative": [
            {
              "description": "Moving a session into the past is refused: a session moves only forward, within this week.",
              "prompt": "Move my px session to last Monday"
            },
            {
              "description": "Health or injury advice is out of scope: no advice is given and the member is pointed to the px app.",
              "prompt": "My knee hurts, should I still do my px session?"
            },
            {
              "description": "px decides the session: the assistant never invents a workout or changes what is in one.",
              "prompt": "Give me a different px workout instead"
            }
          ]
        }
      },
      "publication": {
        "countries": [],
        "release_notes": "First version: read today's px session and move it within this week."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 7a1dc9c9191ad44f6268a6354963b407811d400684b73a5285bde34099ec7683