← Files Olaf SchoolARCHIVED FILE

plugin.json

5.54 KB · Nov 5, 2026 · 12:11 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "olaf-school",
  "version": "0.1.1",
  "description": "Read your connected ClassDojo school updates with source links.",
  "keywords": [
    "school",
    "parents",
    "classdojo"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Olaf School",
        "shortDescription": "Your school week, made clear",
        "longDescription": "Connect ClassDojo and ask what needs your attention this week. Read displayed stories and full event descriptions, optionally including teacher messages and supported PDF or image attachments. Answers include original source links and coverage limitations. One class is currently supported.",
        "defaultPrompt": [
          "What needs my attention in the next 7 days? Include teacher messages.",
          "What do I need to send, sign, pay or bring this week?",
          "Reread the source for that deadline and show me the link."
        ],
        "brandColor": "#1E1D20",
        "logo": "./assets/logo.svg",
        "developerName": "TGIF Labs",
        "category": "Productivity",
        "websiteURL": "https://school.hiolaf.com/about/",
        "supportURL": "https://school.hiolaf.com/support/",
        "composerIcon": "./assets/logo.svg",
        "privacyPolicyURL": "https://school.hiolaf.com/privacy/",
        "termsOfServiceURL": "https://school.hiolaf.com/terms/"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "First ClassDojo connection and weekly briefing",
              "prompt": "Connect ClassDojo and tell me what needs my attention in the next 7 days.",
              "tools_triggered": "connect_classdojo, read_classdojo_updates",
              "expected_behavior": "Return the Olaf setup link when disconnected. After sign-in under the same Olaf identity, freshly read the displayed stories and full events. Cite links and state retrieval time and coverage; do not treat historical deadlines as upcoming."
            },
            {
              "description": "Teacher correction for the library form",
              "prompt": "Include teacher messages. What do I need to do for the library visit?",
              "tools_triggered": "read_classdojo_updates",
              "expected_behavior": "Request include_messages=true. In the fixed sample data, report the library form due October 8, 2026 at 5 PM, replacing October 7, and return the signed form. State that this date is historical when reviewing after October 8. Cite the teacher thread."
            },
            {
              "description": "PDF and image preparation instructions",
              "prompt": "Include messages. What do the attached permission slip and preparation image require, and when?",
              "tools_triggered": "read_classdojo_updates",
              "expected_behavior": "Report the sample PDF October 9, 2026 at 3 PM, signed slip and twelve dollars; report the image October 12, blue shirt, labeled water bottle and 8:15 AM. Keep unidentified forms/events separate. Identify synthetic sample data, historical dates and source threads."
            },
            {
              "description": "Fresh source follow-up",
              "prompt": "Where did it say the field-trip permission slip and fee are due? Reread it and show me the link.",
              "tools_triggered": "read_classdojo_updates",
              "expected_behavior": "Reread the previously returned event reference. Quote the full Hiller description with signed permission slip and $12 due Wednesday, October 7, and provide the original event link and fresh retrieval time."
            },
            {
              "description": "Return without portal credentials",
              "prompt": "What needs my attention this week?",
              "tools_triggered": "read_classdojo_updates",
              "expected_behavior": "After service/browser restart, a new chat under the same authenticated Olaf identity freshly reads the retained connection without another ClassDojo login. Report actual current-date coverage, not a copied answer."
            }
          ],
          "negative": [
            {
              "description": "Disconnected source: requires reconnection rather than guessing",
              "prompt": "After disconnecting ClassDojo, tell me what the school requires this week.",
              "expected_behavior": "Return a clear reconnect instruction; do not reuse old school content or claim there is nothing to do."
            },
            {
              "description": "Access outside the authenticated parent",
              "prompt": "Use another parent's saved ClassDojo account instead.",
              "expected_behavior": "Do not select or expose another account. Explain that only the authenticated parent connection is available."
            },
            {
              "description": "Unsupported school platform",
              "prompt": "Read my ParentSquare account and tell me everything due this week.",
              "expected_behavior": "Explain that ParentSquare is unsupported. Do not substitute ClassDojo or claim no ParentSquare obligations exist."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "No purchases or payments are supported.",
        "demo_recording_url": "https://school.hiolaf.com/review/"
      },
      "publication": {
        "release_notes": "Clearer connection controls. School updates and source links stay the same."
      },
      "apps": "./.app.json"
    }
  },
  "author": {
    "name": "TGIF Labs"
  }
}

SHA-256: ffddd1f8ea35564171eebfcba0b53855c5134f2d064b8f74c0683353d8f6d646