← Files OffhandARCHIVED FILE

plugin.json

4.68 KB · Nov 6, 2026 · 07:18 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "offhand",
  "version": "0.1.4",
  "description": "Connect to your Offhand to-do list to read tasks, add requested tasks, and hand work between your agents.",
  "author": {
    "name": "Offhand",
    "url": "https://offhandapp.com"
  },
  "license": "MIT",
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Offhand",
        "shortDescription": "A to-do list your agents share",
        "longDescription": "Offhand is a to-do list your agents share. Each one does what it is best at, and they hand each other tasks on the list. Connect your agents to offhandapp.com/mcp. When you connect an agent, you choose what it may do: read your tasks, add requested tasks, and report where work stands. Agents cannot rename, reschedule or delete tasks, or complete a task you created: your own tasks wait for your review. You need an Offhand Cloud account at offhandapp.com. Sign in with Apple or Google. No app to install.",
        "developerName": "OFFHAND AI, LLC",
        "category": "Productivity",
        "capabilities": [
          "Read",
          "Write"
        ],
        "websiteURL": "https://offhandapp.com",
        "privacyPolicyURL": "https://offhandapp.com/privacy",
        "termsOfServiceURL": "https://offhandapp.com/terms",
        "defaultPrompt": [
          "What's on my Offhand list today?",
          "Add 'Renew my passport' to Offhand for Friday.",
          "Hand 'Check the chair listing for replies' to Muse in Offhand."
        ],
        "composerIcon": "./assets/logo.png",
        "logo": "./assets/logo.png",
        "supportURL": "https://offhandapp.com/support"
      },
      "review": {
        "demo_recording_url": "https://drive.google.com/file/d/107B6ihBzYyfmnbDWnpeTjyr2C3YKiwcU/view?usp=sharing",
        "test_cases": {
          "positive": [
            {
              "description": "Read today\u2019s sample tasks",
              "prompt": "What's on my Offhand list today?",
              "tools_triggered": "list_todos",
              "expected_behavior": "Return today\u2019s sample tasks, including the overdue plumber task."
            },
            {
              "description": "Add a task with a due date",
              "prompt": "Add 'Renew my passport' to Offhand for Friday.",
              "tools_triggered": "add_task, list_todos",
              "expected_behavior": "Create the requested task with Friday as its due date and show it in the list."
            },
            {
              "description": "Hand a task to Muse",
              "prompt": "Hand 'Check the chair listing for replies' to Muse in Offhand.",
              "tools_triggered": "add_task, list_todos",
              "expected_behavior": "Create the requested task with assignTo set to muse and show it assigned to Muse."
            },
            {
              "description": "Complete a task handed to ChatGPT",
              "prompt": "Take the lease comparison Claude handed you, and finish it.",
              "tools_triggered": "set_task_status",
              "expected_behavior": "Set the task assigned to chatgpt to in_progress, then done with a one-line answer, or need_review to hand the answer back to Claude."
            },
            {
              "description": "Find tasks waiting for review",
              "prompt": "What needs my review in Offhand?",
              "tools_triggered": "list_todos",
              "expected_behavior": "List tasks with status need_review, including the plumber task."
            }
          ],
          "negative": [
            {
              "description": "Do not complete a person-owned task",
              "prompt": "Mark my dentist task done.",
              "tools_triggered": "set_task_status",
              "expected_behavior": "Refuse to mark the person\u2019s own task done; it must stop at Needs review for the person to confirm."
            },
            {
              "description": "Do not delete tasks",
              "prompt": "Delete all my Offhand tasks.",
              "tools_triggered": "None",
              "expected_behavior": "Explain that no deletion tool is available and do not delete any tasks."
            },
            {
              "description": "Do not take another agent\u2019s task",
              "prompt": "Take the 'Check X for replies' task in Offhand.",
              "tools_triggered": "set_task_status",
              "expected_behavior": "Refuse to take the task because it is assigned to grok-bot, another agent."
            }
          ]
        }
      },
      "publication": {
        "release_notes": "First release. Includes the support link and review scenarios."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 1e5ae3e12a5c0381548cf7775a8511968c2376c805a0a63ada3fae1b4acccd96