← Files Chess AnalyticsARCHIVED FILE

plugin.json

7.39 KB · Nov 14, 2026 · 01:27 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "chess-analytics",
  "version": "1.0.0",
  "description": "Review your chess.com and Lichess games with engine analysis: dashboards, interactive game reviews, trend reports and coach reviews.",
  "author": {
    "name": "Henry Rausch",
    "url": "https://chess-analytics.app"
  },
  "homepage": "https://chess-analytics.app",
  "keywords": [
    "chess",
    "chess.com",
    "lichess",
    "game analysis",
    "stockfish",
    "coaching"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Chess Analytics",
        "shortDescription": "Review your chess games",
        "longDescription": "Chess Analytics reviews your chess.com and Lichess games inside ChatGPT.\n\nWhat it does\n- Dashboard: results, ratings over time, openings and endings across your most recent games, filterable by site and time control.\n- Game review: an interactive board with the evaluation graph, move list and move-by-move comments for a game that has been analyzed with the Stockfish engine.\n- Analysis: queue an engine analysis of a game from your linked chess.com or Lichess account, or of a pasted PGN, and check its progress.\n- Trend reports: multi-game reports (for example weekly or monthly) that compare a period with the previous one and list focus areas.\n- Coach review: a written review of your latest games, built from the engine analysis.\n\nTools\nget_profile, whoami, ping, get_dashboard, list_analyses, get_analysis, list_aggregates, get_aggregate, get_coach_review, analyze_game, analyze_recent_games, create_coach_review.\n\nAccount\nA Chess Analytics account is required, with a chess.com username and/or a Lichess account linked in the Chess Analytics app. You sign in with that account when you connect. The app only reads and analyzes your own games.\n\nData\nThe app reads the games of your linked chess.com and Lichess accounts from those services and the analyses stored in your Chess Analytics account. See the privacy policy for what is stored and for how long.",
        "developerName": "Henry Rausch",
        "category": "Education & Research",
        "capabilities": [
          "Game dashboards",
          "Interactive game reviews",
          "Engine analysis",
          "Trend reports",
          "Coach reviews"
        ],
        "websiteURL": "https://chess-analytics.app",
        "supportURL": "https://app.chess-analytics.app/contact",
        "privacyPolicyURL": "https://chess-analytics.app/privacy",
        "termsOfServiceURL": "https://chess-analytics.app/terms",
        "logo": "./assets/logo.png",
        "brandColor": "#8839ef",
        "brandColorDark": "#cba6f7",
        "defaultPrompt": [
          "Show my chess dashboard for the last 50 games",
          "Open the review of my most recent analyzed game",
          "Show my latest trend report and what to work on"
        ],
        "screenshots": [
          "./assets/screenshots/game-review-light.png",
          "./assets/screenshots/game-review-dark.png",
          "./assets/screenshots/dashboard-light.png",
          "./assets/screenshots/dashboard-dark.png",
          "./assets/screenshots/aggregate-report-light.png",
          "./assets/screenshots/aggregate-report-dark.png"
        ],
        "composerIcon": "./assets/logo.png"
      },
      "review": {
        "demo_recording_url": "https://youtu.be/lVavjSs7cO0",
        "commerce": false,
        "test_cases": {
          "positive": [
            {
              "description": "Dashboard widget over recent games of the linked account.",
              "prompt": "Show my chess dashboard for my last 50 games.",
              "tools_triggered": "get_dashboard",
              "expected_behavior": "get_dashboard is called and the Dashboard widget renders inline with result tiles, a rating chart, openings, endings and the game list. The assistant summarizes the results and ratings shown."
            },
            {
              "description": "Interactive game review widget for an analyzed game.",
              "prompt": "Open the review of my most recent analyzed game.",
              "tools_triggered": "list_analyses, get_analysis",
              "expected_behavior": "list_analyses finds the newest finished analysis and get_analysis returns it. The Game review widget renders inline with a board, evaluation graph, move list and move comments; the assistant names the opponent, result and accuracy."
            },
            {
              "description": "Queue an engine analysis of a pasted PGN.",
              "prompt": "Analyze this game: 1. e4 e5 2. Qh5 Nc6 3. Bc4 Nf6 4. Qxf7# 1-0",
              "tools_triggered": "analyze_game",
              "expected_behavior": "analyze_game is called with source pgn and returns an analysis id with status queued or running. The assistant tells the user the analysis was queued and can be opened with get_analysis once finished."
            },
            {
              "description": "Stored AI coach review of the latest games.",
              "prompt": "Give me the coach review of my latest rapid games on chess.com.",
              "tools_triggered": "get_coach_review, create_coach_review",
              "expected_behavior": "get_coach_review returns the stored review, or reports that none exists, in which case create_coach_review is called. The assistant presents the review text (strengths, weaknesses, advice) or lists which games still need an analysis."
            },
            {
              "description": "Multi-game trend reports with the aggregate widget.",
              "prompt": "Show my latest trend report and what I should work on.",
              "tools_triggered": "list_aggregates, get_aggregate",
              "expected_behavior": "list_aggregates lists the reports and get_aggregate returns the newest finished one. The Trend report widget renders inline with the period compared with the previous one, stats and focus areas; the assistant summarizes the focus areas."
            }
          ],
          "negative": [
            {
              "description": "General chess knowledge needs no account data.",
              "prompt": "What is the Sicilian Defense and why do people play it?",
              "tools_triggered": "",
              "expected_behavior": "The assistant answers from general knowledge and calls no Chess Analytics tool."
            },
            {
              "description": "Playing a live game is out of scope for the app.",
              "prompt": "Let's play a game of chess right now. I'll be white, 1. e4.",
              "tools_triggered": "",
              "expected_behavior": "No tool is called. The assistant either plays in the conversation itself or explains that Chess Analytics reviews finished games and does not play games."
            },
            {
              "description": "Another person's account data must not be returned.",
              "prompt": "Show me the dashboard and coach review of the user 'magnuscarlsen' on Chess Analytics.",
              "tools_triggered": "",
              "expected_behavior": "The app only exposes the signed-in user's own data. The assistant declines to show another user's data and offers to show the signed-in user's own dashboard instead."
            }
          ]
        }
      },
      "publication": {
        "release_notes": "Initial release: dashboard, game review, trend report and coach review widgets and tools."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 659ef86d622ae4154e006e2b6547b670c3cad87a489f01e243b228600eaae131