← Files Zatsu DietARCHIVED FILE

plugin.json

5.58 KB · Nov 3, 2026 · 19:20 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "zatsu-diet",
  "version": "0.1.0",
  "description": "A forgiving structured food journal using existing Zatsu Diet accounts.",
  "author": {
    "name": "Crequa",
    "url": "https://crequa.dev"
  },
  "homepage": "https://zatsu-diet.crequa.dev",
  "repository": "https://github.com/crequa/prods",
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Zatsu Diet",
        "shortDescription": "A casual food journal",
        "longDescription": "Record consumed meals, save explicit dietary approaches, review saved records and charts, and edit or delete only after reviewing a proposal. Calories, protein, fat, carbohydrate and salt equivalent are estimates; this is not a medical service. Uses your existing Zatsu Diet account and externally established access. Results contain recorded-only estimates for ChatGPT to present.",
        "developerName": "Crequa",
        "category": "Productivity",
        "capabilities": [
          "Read saved meals",
          "Record meals",
          "Review meal changes"
        ],
        "websiteURL": "https://zatsu-diet.crequa.dev",
        "privacyPolicyURL": "https://zatsu-diet.crequa.dev/privacy",
        "termsOfServiceURL": "https://zatsu-diet.crequa.dev/terms",
        "logo": "./assets/icon.png",
        "composerIcon": "./assets/icon.png",
        "supportURL": "https://zatsu-diet.crequa.dev/support"
      },
      "review": {
        "commerce": true,
        "commerce_description": "External Zatsu Diet registration/card setup grants existing 14-day trial access; later explicit consent/payment establishes a subscription. Plugin only checks that entitlement, with neutral 402 and no subscription/upgrade/checkout links or paid consent/card collection. Owner-directed architecture; trial eligibility under current policy requires review and is not approved.",
        "demo_recording_url": "https://drive.google.com/file/d/1_9ptO_lUhXCYp8ZPFmH-1pLhXqk_lJtK/view?usp=sharing",
        "test_cases": {
          "positive": [
            {
              "description": "Explicit meal report",
              "prompt": "@Zatsu Diet \u4eca\u65e5\u306e\u663c\u3001\u305d\u3070\u3092\u98df\u3079\u305f\u3002Asia/Tokyo\u3067\u3059\u3002",
              "tools_triggered": "recordMeal",
              "expected_behavior": "One structured meal only; representative lunch time disclosed, with one host-presented result and no duplicate Zatsu Diet meal widget or payment link."
            },
            {
              "description": "Ordinary meal report",
              "prompt": "\u4eca\u65e5\u306e\u671d8\u6642\u306b\u304a\u306b\u304e\u308a\u30922\u500b\u98df\u3079\u305f\u3002Asia/Tokyo\u3067\u3059\u3002",
              "tools_triggered": "recordMeal",
              "expected_behavior": "One record if plugin is selected; no promise of automatic invocation in all conversations."
            },
            {
              "description": "Paged read",
              "prompt": "\u4eca\u9031\u306e\u98df\u4e8b\u8a18\u9332\u3092\u6bd4\u3079\u3066\u3002Asia/Tokyo\u3067\u3059\u3002",
              "tools_triggered": "getMeals",
              "expected_behavior": "Fetch every page and show recorded-only estimates, units and unknowns; the ChatGPT-visible weekly comparison includes the meals created earlier in this walkthrough."
            },
            {
              "description": "Edit with later approval",
              "prompt": "\u3055\u3063\u304d\u306e\u305d\u3070\u306e\u8a18\u9332\u3092\u591c\u306b\u76f4\u3057\u3066\u3002",
              "tools_triggered": "getTimeline, createMealEditDraft, confirmMealMutationDraft",
              "expected_behavior": "Proposal leaves record unchanged; only the later explicit approval applies the exact displayed draft."
            },
            {
              "description": "Delete with later approval",
              "prompt": "\u3055\u3063\u304d\u306e\u304a\u306b\u304e\u308a\u306e\u8a18\u9332\u3092\u524a\u9664\u3057\u3066\u3002",
              "tools_triggered": "getTimeline, createMealDeleteDraft, confirmMealMutationDraft",
              "expected_behavior": "Show exact meal/date first; delete only after the separate approval, identical retry is safe."
            }
          ],
          "negative": [
            {
              "description": "Advice, plans and quotations",
              "prompt": "\u660e\u65e5\u305d\u3070\u3092\u98df\u3079\u308b\u4e88\u5b9a\u3067\u3059\u3002\u300c\u305d\u3070\u3092\u98df\u3079\u305f\u300d\u3068\u3044\u3046\u4f8b\u6587\u3082\u4f5c\u3063\u3066\u3002\u732e\u7acb\u3092\u76f8\u8ac7\u3057\u305f\u3044\u3002",
              "expected_behavior": "No meal writes: plans, quoted examples and advice are not consumption reports."
            },
            {
              "description": "Explicit refusal and health privacy",
              "prompt": "\u304a\u306b\u304e\u308a\u3092\u98df\u3079\u305f\u3051\u3069\u8a18\u9332\u3057\u306a\u3044\u3067\u3002\u85ac\u306e\u76f8\u8ac7\u3082\u3057\u305f\u3044\u3002",
              "expected_behavior": "No tools or writes; honor refusal and never transmit health discussion."
            },
            {
              "description": "Ambiguous or superseded confirmation",
              "prompt": "\u524a\u9664\u6848\u3092\u30ad\u30e3\u30f3\u30bb\u30eb\u3002\u5225\u306e\u98df\u4e8b\u306b\u3064\u3044\u3066\u76f8\u8ac7\u3057\u305f\u3042\u3068: \u306f\u3044\u3002",
              "expected_behavior": "Never confirm an old/cancelled draft. Clarify intended target and obtain fresh later approval if needed."
            }
          ]
        }
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: fccf7a8de459fe81831a7e0f34dabdfb918179e22adbd6b72c1fc91d9011e129