← Files Calendar Habit StreakARCHIVED FILE

plugin.json

11.9 KB · Nov 3, 2026 · 12:11 UTC

↓ Download file

See the change to this file →

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "duopore-public-calendar-habit-streak",
  "version": "1.0.4",
  "description": "Work out your habit streak from the days you planned and the progress you recorded.",
  "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/calendar-habit-streak",
  "keywords": [
    "check your habit streak",
    "calendar habit streak",
    "routines and focus",
    "worksheet",
    "reviewed inputs"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Calendar Habit Streak",
        "shortDescription": "Check your habit streak",
        "longDescription": "Work out your habit streak from the days you planned and the progress you recorded. Choose a date range and scheduled weekdays, then mark completed, missed or unknown days. Unknown days end a confirmed streak but are not marked as failures. For adults checking their own routine. The app does not monitor activity or keep a saved habit tracker.",
        "developerName": "DUOPORE VENTURES PTE. LTD.",
        "category": "Productivity",
        "capabilities": [
          "Check your habit streak"
        ],
        "websiteURL": "https://duopore-public-tools.ch-kae88.workers.dev/tools/calendar-habit-streak",
        "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": [
          "Calculate my habit streak from these recorded days.",
          "Keep unknown days separate from missed days in my streak check."
        ],
        "brandColor": "#1B378D",
        "composerIcon": "./assets/brand4-composer.svg",
        "logo": "./assets/brand4-logo.svg",
        "brandColorDark": "#8DA5EC",
        "composerIconDark": "./assets/brand4-composer-dark.svg",
        "logoDark": "./assets/brand4-logo.svg"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Original fictional example",
              "prompt": "Use Calendar Habit Streak with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"routine\":\"Read\",\"start\":\"2026-09-28\",\"end\":\"2026-10-04\",\"scheduledWeekdays\":[\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\"],\"completedDates\":[\"2026-09-28\",\"2026-09-29\",\"2026-10-01\",\"2026-10-02\"],\"missedDates\":[\"2026-09-30\"]}",
              "tools_triggered": "calendar_habit_streak",
              "expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"Longest confirmed scheduled-date streak: 2; streak at the latest scheduled date: 2.\",\"rows\":[{\"routine\":\"Read\",\"date\":\"2026-09-28\",\"weekday\":\"Mon\",\"status\":\"completed\",\"confirmedStreakAtDate\":1},{\"routine\":\"Read\",\"date\":\"2026-09-29\",\"weekday\":\"Tue\",\"status\":\"completed\",\"confirmedStreakAtDate\":2},{\"routine\":\"Read\",\"date\":\"2026-09-30\",\"weekday\":\"Wed\",\"status\":\"missed\",\"confirmedStreakAtDate\":0},{\"routine\":\"Read\",\"date\":\"2026-10-01\",\"weekday\":\"Thu\",\"status\":\"completed\",\"confirmedStreakAtDate\":1},{\"routine\":\"Read\",\"date\":\"2026-10-02\",\"weekday\":\"Fri\",\"status\":\"completed\",\"confirmedStreakAtDate\":2}],\"warnings\":[\"Streaks count consecutive scheduled occurrences, excluding other weekdays. Unknown scheduled dates break a confirmed streak but are not labelled missed. Records outside the window are rejected.\"]}"
            },
            {
              "description": "Distinct supplied example 2",
              "prompt": "Use Calendar Habit Streak with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"routine\":\"Read example\",\"start\":\"2026-09-28\",\"end\":\"2026-10-04\",\"scheduledWeekdays\":[\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\"],\"completedDates\":[\"2026-09-28\",\"2026-09-29\",\"2026-10-01\",\"2026-10-02\"],\"missedDates\":[\"2026-09-30\"]}",
              "tools_triggered": "calendar_habit_streak",
              "expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"Longest confirmed scheduled-date streak: 2; streak at the latest scheduled date: 2.\",\"rows\":[{\"routine\":\"Read example\",\"date\":\"2026-09-28\",\"weekday\":\"Mon\",\"status\":\"completed\",\"confirmedStreakAtDate\":1},{\"routine\":\"Read example\",\"date\":\"2026-09-29\",\"weekday\":\"Tue\",\"status\":\"completed\",\"confirmedStreakAtDate\":2},{\"routine\":\"Read example\",\"date\":\"2026-09-30\",\"weekday\":\"Wed\",\"status\":\"missed\",\"confirmedStreakAtDate\":0},{\"routine\":\"Read example\",\"date\":\"2026-10-01\",\"weekday\":\"Thu\",\"status\":\"completed\",\"confirmedStreakAtDate\":1},{\"routine\":\"Read example\",\"date\":\"2026-10-02\",\"weekday\":\"Fri\",\"status\":\"completed\",\"confirmedStreakAtDate\":2}],\"warnings\":[\"Streaks count consecutive scheduled occurrences, excluding other weekdays. Unknown scheduled dates break a confirmed streak but are not labelled missed. Records outside the window are rejected.\"]}"
            },
            {
              "description": "Distinct supplied example 3",
              "prompt": "Use Calendar Habit Streak with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"routine\":\"Read alternate\",\"start\":\"2026-09-28\",\"end\":\"2026-10-04\",\"scheduledWeekdays\":[\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\"],\"completedDates\":[\"2026-09-28\",\"2026-09-29\",\"2026-10-01\",\"2026-10-02\"],\"missedDates\":[\"2026-09-30\"]}",
              "tools_triggered": "calendar_habit_streak",
              "expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"Longest confirmed scheduled-date streak: 2; streak at the latest scheduled date: 2.\",\"rows\":[{\"routine\":\"Read alternate\",\"date\":\"2026-09-28\",\"weekday\":\"Mon\",\"status\":\"completed\",\"confirmedStreakAtDate\":1},{\"routine\":\"Read alternate\",\"date\":\"2026-09-29\",\"weekday\":\"Tue\",\"status\":\"completed\",\"confirmedStreakAtDate\":2},{\"routine\":\"Read alternate\",\"date\":\"2026-09-30\",\"weekday\":\"Wed\",\"status\":\"missed\",\"confirmedStreakAtDate\":0},{\"routine\":\"Read alternate\",\"date\":\"2026-10-01\",\"weekday\":\"Thu\",\"status\":\"completed\",\"confirmedStreakAtDate\":1},{\"routine\":\"Read alternate\",\"date\":\"2026-10-02\",\"weekday\":\"Fri\",\"status\":\"completed\",\"confirmedStreakAtDate\":2}],\"warnings\":[\"Streaks count consecutive scheduled occurrences, excluding other weekdays. Unknown scheduled dates break a confirmed streak but are not labelled missed. Records outside the window are rejected.\"]}"
            },
            {
              "description": "Distinct supplied example 4",
              "prompt": "Use Calendar Habit Streak with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"routine\":\"Example record\",\"start\":\"2026-09-28\",\"end\":\"2026-10-04\",\"scheduledWeekdays\":[\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\"],\"completedDates\":[\"2026-09-28\",\"2026-09-29\",\"2026-10-01\",\"2026-10-02\"],\"missedDates\":[\"2026-09-30\"]}",
              "tools_triggered": "calendar_habit_streak",
              "expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"Longest confirmed scheduled-date streak: 2; streak at the latest scheduled date: 2.\",\"rows\":[{\"routine\":\"Example record\",\"date\":\"2026-09-28\",\"weekday\":\"Mon\",\"status\":\"completed\",\"confirmedStreakAtDate\":1},{\"routine\":\"Example record\",\"date\":\"2026-09-29\",\"weekday\":\"Tue\",\"status\":\"completed\",\"confirmedStreakAtDate\":2},{\"routine\":\"Example record\",\"date\":\"2026-09-30\",\"weekday\":\"Wed\",\"status\":\"missed\",\"confirmedStreakAtDate\":0},{\"routine\":\"Example record\",\"date\":\"2026-10-01\",\"weekday\":\"Thu\",\"status\":\"completed\",\"confirmedStreakAtDate\":1},{\"routine\":\"Example record\",\"date\":\"2026-10-02\",\"weekday\":\"Fri\",\"status\":\"completed\",\"confirmedStreakAtDate\":2}],\"warnings\":[\"Streaks count consecutive scheduled occurrences, excluding other weekdays. Unknown scheduled dates break a confirmed streak but are not labelled missed. Records outside the window are rejected.\"]}"
            },
            {
              "description": "Distinct supplied example 5",
              "prompt": "Use Calendar Habit Streak with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"routine\":\"002\",\"start\":\"2026-09-28\",\"end\":\"2026-10-04\",\"scheduledWeekdays\":[\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\"],\"completedDates\":[\"2026-09-28\",\"2026-09-29\",\"2026-10-01\",\"2026-10-02\"],\"missedDates\":[\"2026-09-30\"]}",
              "tools_triggered": "calendar_habit_streak",
              "expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"Longest confirmed scheduled-date streak: 2; streak at the latest scheduled date: 2.\",\"rows\":[{\"routine\":\"002\",\"date\":\"2026-09-28\",\"weekday\":\"Mon\",\"status\":\"completed\",\"confirmedStreakAtDate\":1},{\"routine\":\"002\",\"date\":\"2026-09-29\",\"weekday\":\"Tue\",\"status\":\"completed\",\"confirmedStreakAtDate\":2},{\"routine\":\"002\",\"date\":\"2026-09-30\",\"weekday\":\"Wed\",\"status\":\"missed\",\"confirmedStreakAtDate\":0},{\"routine\":\"002\",\"date\":\"2026-10-01\",\"weekday\":\"Thu\",\"status\":\"completed\",\"confirmedStreakAtDate\":1},{\"routine\":\"002\",\"date\":\"2026-10-02\",\"weekday\":\"Fri\",\"status\":\"completed\",\"confirmedStreakAtDate\":2}],\"warnings\":[\"Streaks count consecutive scheduled occurrences, excluding other weekdays. Unknown scheduled dates break a confirmed streak but are not labelled missed. Records outside the window are rejected.\"]}"
            }
          ],
          "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 Calendar Habit Streak 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 Calendar Habit Streak 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-calendar-habit-streak/"
      },
      "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: 9208a14abb7114b75b4a39ce064b705400a7711562e868a85a5fe9b8dafa4e0f