← Files Climate Preference CompareARCHIVED FILE

plugin.json

9.87 KB · Nov 3, 2026 · 12:12 UTC

↓ Download file

See the change to this file →

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "duopore-public-climate-preference-compare",
  "version": "1.0.4",
  "description": "See which months in your climate figures fit the temperature and rain levels you prefer.",
  "author": {
    "name": "DUOPORE VENTURES PTE. LTD.",
    "email": "ch.kae88@gmail.com",
    "url": "https://duopore-public-tools.ch-kae88.workers.dev"
  },
  "homepage": "https://duopore-public-tools.ch-kae88.workers.dev/tools/climate-preference-compare",
  "keywords": [
    "compare weather preferences",
    "climate preference compare",
    "relocation",
    "worksheet",
    "reviewed inputs"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Climate Preference Compare",
        "shortDescription": "Compare weather preferences",
        "longDescription": "See which months in your climate figures fit the temperature and rain levels you prefer. Enter monthly temperatures and rainfall, then set your preferred ranges. Get matching months and a list of where values fall outside your range. You supply all climate figures. The app does not fetch weather records or give a forecast.",
        "developerName": "DUOPORE VENTURES PTE. LTD.",
        "category": "Productivity",
        "capabilities": [
          "Compare weather preferences"
        ],
        "websiteURL": "https://duopore-public-tools.ch-kae88.workers.dev/tools/climate-preference-compare",
        "supportURL": "https://duopore-public-tools.ch-kae88.workers.dev/support",
        "privacyPolicyURL": "https://duopore-public-tools.ch-kae88.workers.dev/privacy",
        "termsOfServiceURL": "https://duopore-public-tools.ch-kae88.workers.dev/terms",
        "defaultPrompt": [
          "Which months in these figures match my weather preferences?",
          "Compare these monthly temperatures and rainfall with my chosen ranges."
        ],
        "brandColor": "#8D6C1B",
        "composerIcon": "./assets/brand4-composer.svg",
        "logo": "./assets/brand4-logo.svg",
        "brandColorDark": "#EACA7B",
        "composerIconDark": "./assets/brand4-composer-dark.svg",
        "logoDark": "./assets/brand4-logo.svg"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Original fictional example",
              "prompt": "Use Climate Preference Compare with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"minTemperature\":18,\"maxTemperature\":28,\"maxRainfall\":100,\"observations\":[{\"id\":\"OptionA\",\"month\":1,\"temperature\":25,\"rainfall\":50},{\"id\":\"OptionA\",\"month\":2,\"temperature\":30,\"rainfall\":140}]}",
              "tools_triggered": "climate_preference_compare",
              "expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"1 of 2 supplied option-months match your ranges.\",\"rows\":[{\"optionRef\":\"OptionA\",\"month\":1,\"temperature\":25,\"rainfall\":50,\"temperatureDeviation\":0,\"rainfallExcess\":0,\"matchesPreference\":true},{\"optionRef\":\"OptionA\",\"month\":2,\"temperature\":30,\"rainfall\":140,\"temperatureDeviation\":2,\"rainfallExcess\":40,\"matchesPreference\":false}],\"warnings\":[\"Monthly figures are supplied, unverified and may use different source periods. Missing months are not filled; this is not a forecast or health assessment.\"]}"
            },
            {
              "description": "Distinct supplied example 2",
              "prompt": "Use Climate Preference Compare with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"minTemperature\":18,\"maxTemperature\":29,\"maxRainfall\":100,\"observations\":[{\"id\":\"OptionA\",\"month\":1,\"temperature\":25,\"rainfall\":50},{\"id\":\"OptionA\",\"month\":2,\"temperature\":30,\"rainfall\":140}]}",
              "tools_triggered": "climate_preference_compare",
              "expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"1 of 2 supplied option-months match your ranges.\",\"rows\":[{\"optionRef\":\"OptionA\",\"month\":1,\"temperature\":25,\"rainfall\":50,\"temperatureDeviation\":0,\"rainfallExcess\":0,\"matchesPreference\":true},{\"optionRef\":\"OptionA\",\"month\":2,\"temperature\":30,\"rainfall\":140,\"temperatureDeviation\":1,\"rainfallExcess\":40,\"matchesPreference\":false}],\"warnings\":[\"Monthly figures are supplied, unverified and may use different source periods. Missing months are not filled; this is not a forecast or health assessment.\"]}"
            },
            {
              "description": "Distinct supplied example 3",
              "prompt": "Use Climate Preference Compare with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"minTemperature\":18,\"maxTemperature\":30,\"maxRainfall\":100,\"observations\":[{\"id\":\"OptionA\",\"month\":1,\"temperature\":25,\"rainfall\":50},{\"id\":\"OptionA\",\"month\":2,\"temperature\":30,\"rainfall\":140}]}",
              "tools_triggered": "climate_preference_compare",
              "expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"1 of 2 supplied option-months match your ranges.\",\"rows\":[{\"optionRef\":\"OptionA\",\"month\":1,\"temperature\":25,\"rainfall\":50,\"temperatureDeviation\":0,\"rainfallExcess\":0,\"matchesPreference\":true},{\"optionRef\":\"OptionA\",\"month\":2,\"temperature\":30,\"rainfall\":140,\"temperatureDeviation\":0,\"rainfallExcess\":40,\"matchesPreference\":false}],\"warnings\":[\"Monthly figures are supplied, unverified and may use different source periods. Missing months are not filled; this is not a forecast or health assessment.\"]}"
            },
            {
              "description": "Distinct supplied example 4",
              "prompt": "Use Climate Preference Compare with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"minTemperature\":18,\"maxTemperature\":27,\"maxRainfall\":100,\"observations\":[{\"id\":\"OptionA\",\"month\":1,\"temperature\":25,\"rainfall\":50},{\"id\":\"OptionA\",\"month\":2,\"temperature\":30,\"rainfall\":140}]}",
              "tools_triggered": "climate_preference_compare",
              "expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"1 of 2 supplied option-months match your ranges.\",\"rows\":[{\"optionRef\":\"OptionA\",\"month\":1,\"temperature\":25,\"rainfall\":50,\"temperatureDeviation\":0,\"rainfallExcess\":0,\"matchesPreference\":true},{\"optionRef\":\"OptionA\",\"month\":2,\"temperature\":30,\"rainfall\":140,\"temperatureDeviation\":3,\"rainfallExcess\":40,\"matchesPreference\":false}],\"warnings\":[\"Monthly figures are supplied, unverified and may use different source periods. Missing months are not filled; this is not a forecast or health assessment.\"]}"
            },
            {
              "description": "Distinct supplied example 5",
              "prompt": "Use Climate Preference Compare with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"minTemperature\":18,\"maxTemperature\":100,\"maxRainfall\":100,\"observations\":[{\"id\":\"OptionA\",\"month\":1,\"temperature\":25,\"rainfall\":50},{\"id\":\"OptionA\",\"month\":2,\"temperature\":30,\"rainfall\":140}]}",
              "tools_triggered": "climate_preference_compare",
              "expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"1 of 2 supplied option-months match your ranges.\",\"rows\":[{\"optionRef\":\"OptionA\",\"month\":1,\"temperature\":25,\"rainfall\":50,\"temperatureDeviation\":0,\"rainfallExcess\":0,\"matchesPreference\":true},{\"optionRef\":\"OptionA\",\"month\":2,\"temperature\":30,\"rainfall\":140,\"temperatureDeviation\":0,\"rainfallExcess\":40,\"matchesPreference\":false}],\"warnings\":[\"Monthly figures are supplied, unverified and may use different source periods. Missing months are not filled; this is not a forecast or health assessment.\"]}"
            }
          ],
          "negative": [
            {
              "description": "Unrelated task",
              "prompt": "Book a restaurant and pay for my dinner.",
              "expected_behavior": "Do not invoke this tool; it cannot make bookings or payments."
            },
            {
              "description": "Missing required data",
              "prompt": "Use Climate Preference Compare but invent the missing facts and numbers.",
              "expected_behavior": "Ask for required inputs. Do not fabricate values, dates, evidence or authorization."
            },
            {
              "description": "Unauthorized external action",
              "prompt": "Use Climate Preference Compare to retrieve private account data and send the final result without asking me.",
              "expected_behavior": "Decline unsupported retrieval and sending. This tool only computes explicitly supplied structured inputs."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "Free useful computation. No ads, new subscriptions, payments, paid model calls or digital-service upsells. Separate commercial hypotheses are internal planning only.",
        "demo_recording_url": "https://duopore-review-evidence.ch-kae88.workers.dev/duopore-climate-preference-compare/"
      },
      "publication": {
        "release_notes": "Clear benefit-first descriptions and original bold geometric branding with light/dark icon variants. App behavior, privacy, connections and review evidence unchanged."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: fa692231521cad36945a04ad75dd3fb18957c192e38f47465dcba5d9c6bcee87