← Files MotionSpecARCHIVED FILE

plugin.json

6.47 KB · Nov 2, 2026 · 18:12 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "motionspec",
  "version": "0.1.1",
  "description": "Browse MotionSpec primitives and validate motion specifications. Static validation only; no login required.",
  "author": {
    "name": "Froeba Sales Solutions UG",
    "email": "hello@motionspec.dev",
    "url": "https://motionspec.dev"
  },
  "homepage": "https://motionspec.dev",
  "repository": "https://github.com/MasterPlayspots/motionspec",
  "license": "MIT",
  "keywords": [
    "animation",
    "web-animation",
    "scroll-animation",
    "gsap",
    "css",
    "accessibility",
    "wcag",
    "reduced-motion",
    "validation",
    "web-development"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "MotionSpec",
        "shortDescription": "Validate web animation specs",
        "longDescription": "Helps web developers and designers choose scroll, hover and loop animations from a verified catalog of GSAP and CSS motion primitives, each with its reduced-motion fallback, and validate MotionSpec JSON specifications before building. Validation checks the frozen schema, the actual primitive catalog, parameter bounds and injection rules, and reports errors and advisory accessibility warnings, such as missing pause controls for looping motion (WCAG 2.2.2). It does not compile or execute code, render pages, check live websites, test flashing, or certify accessibility or legal compliance. Both tools require no login.",
        "developerName": "Froeba Sales Solutions UG",
        "category": "Developer Tools",
        "capabilities": [
          "Browse motion primitives",
          "Validate motion specifications"
        ],
        "websiteURL": "https://motionspec.dev",
        "supportURL": "https://motionspec.dev/support",
        "privacyPolicyURL": "https://motionspec.dev/privacy",
        "termsOfServiceURL": "https://motionspec.dev/agb",
        "defaultPrompt": [
          "Which MotionSpec primitive fits a scroll reveal for my hero headline?",
          "Show the hover and loop animations MotionSpec supports, with reduced-motion fallbacks.",
          "Validate my MotionSpec JSON and explain any accessibility warnings."
        ],
        "composerIcon": "./assets/logo.png",
        "logo": "./assets/logo.png"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "P1: Browse the motion catalog",
              "prompt": "Use MotionSpec to show me the available motion primitives.",
              "tools_triggered": "motion_catalog",
              "expected_behavior": "Return primitives from the actual catalog with their purposes and reduced-motion fallbacks. Do not invent primitives, compile code or claim website certification."
            },
            {
              "description": "P2: Browse the scrollReveal catalog primitive",
              "prompt": "Use MotionSpec to show the scrollReveal primitive and explain its parameters and reduced-motion fallback.",
              "tools_triggered": "motion_catalog",
              "expected_behavior": "Return scrollReveal from the actual catalog, including its required from parameter, supported bounds and reduced-motion fallback. Do not invent a primitive, compile code or claim website certification."
            },
            {
              "description": "P3: Validate a correct specification",
              "prompt": "Validate this exact MotionSpec JSON without changing it first: {\"specVersion\":\"1.0\",\"meta\":{\"target\":\"vanilla-gsap\"},\"globals\":{\"respectReducedMotion\":true,\"pauseControls\":\"auto\"},\"motions\":[{\"id\":\"hero\",\"primitive\":\"scrollReveal\",\"target\":\".hero\",\"params\":{\"from\":{\"y\":24,\"opacity\":0}}}]}",
              "tools_triggered": "motion_validate",
              "expected_behavior": "Return ok true with no errors. State that validation is not compilation, a browser test or an accessibility certification."
            },
            {
              "description": "P4: Explain a WCAG 2.2.2 warning",
              "prompt": "Validate this exact MotionSpec JSON without changing it first and explain any warnings: {\"specVersion\":\"1.0\",\"meta\":{\"target\":\"vanilla-gsap\"},\"globals\":{\"respectReducedMotion\":true,\"pauseControls\":\"off\"},\"motions\":[{\"id\":\"logos\",\"primitive\":\"marquee\",\"target\":\".logo-strip\"}]}",
              "tools_triggered": "motion_validate",
              "expected_behavior": "Return ok true with the warning that pause controls are off for a persistent looping motion. Explain that the marquee needs a pause/stop control (WCAG 2.2.2) and recommend pauseControls auto. Do not call the spec accessible."
            },
            {
              "description": "P5: Explain a rejected MotionSpec primitive",
              "prompt": "Validate this exact MotionSpec JSON without changing it first: {\"specVersion\":\"1.0\",\"meta\":{\"target\":\"vanilla-gsap\"},\"motions\":[{\"id\":\"hero\",\"primitive\":\"notInCatalog\",\"target\":\".hero\"}]}",
              "tools_triggered": "motion_validate",
              "expected_behavior": "Return ok false with the actual validation error for notInCatalog. Explain the invalid primitive, do not silently replace it or say the spec passed."
            }
          ],
          "negative": [
            {
              "description": "N1: Unsupported video generation",
              "prompt": "Use MotionSpec to generate a 30-second promotional video."
            },
            {
              "description": "N2: Unrelated calendar action",
              "prompt": "Use MotionSpec to create a calendar appointment for tomorrow."
            },
            {
              "description": "N3: No certification without testing",
              "prompt": "Issue a full WCAG accessibility certificate for my website without testing it."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "The two included tools do not sell products or process payments.",
        "demo_recording_url": "https://www.loom.com/share/da5561a101404061b9b61f0c552bcccf"
      },
      "publication": {
        "countries": [
          "DE",
          "US",
          "GB"
        ],
        "release_notes": "Initial release. Two tools without login: browse MotionSpec motion primitives and validate MotionSpec JSON specifications, including accessibility warnings such as missing pause controls. No compilation, website checks or certification."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 456ec1227cd19c5733524c6cbfdde1b13a0e17028a437b220430ec8fdc938382