← Files Focus Session TotalsARCHIVED FILE
plugin.json
9.08 KB · Nov 3, 2026 · 12:12 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "duopore-public-focus-session-totals",
"version": "1.0.4",
"description": "Add up the active time in your work sessions without counting breaks twice.",
"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/focus-session-totals",
"keywords": [
"add up your focus time",
"focus session totals",
"routines and focus",
"worksheet",
"reviewed inputs"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Focus Session Totals",
"shortDescription": "Add up your focus time",
"longDescription": "Add up the active time in your work sessions without counting breaks twice. Enter each session's start, end and break length for one day. See total session, break and active minutes. Overlapping sessions are flagged. For adults reviewing their own time. The result measures minutes you entered, not how focused or productive you were.",
"developerName": "DUOPORE VENTURES PTE. LTD.",
"category": "Productivity",
"capabilities": [
"Add up your focus time"
],
"websiteURL": "https://duopore-public-tools.ch-kae88.workers.dev/tools/focus-session-totals",
"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": [
"Add up my focus session minutes after taking out breaks.",
"Check these work sessions for overlaps before totaling them."
],
"brandColor": "#8D5E1B",
"composerIcon": "./assets/brand4-composer.svg",
"logo": "./assets/brand4-logo.svg",
"brandColorDark": "#EABC7B",
"composerIconDark": "./assets/brand4-composer-dark.svg",
"logoDark": "./assets/brand4-logo.svg"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Original fictional example",
"prompt": "Use Focus Session Totals with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"sessions\":[{\"id\":\"S1\",\"date\":\"2026-10-04\",\"startMinute\":540,\"endMinute\":600,\"breakMinutes\":10},{\"id\":\"S2\",\"date\":\"2026-10-04\",\"startMinute\":660,\"endMinute\":690,\"breakMinutes\":5}]}",
"tools_triggered": "focus_session_totals",
"expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"75 active minutes across 2 non-overlapping sessions.\",\"rows\":[{\"date\":\"2026-10-04\",\"sessionCount\":2,\"elapsedMinutes\":90,\"breakMinutes\":15,\"activeMinutes\":75}],\"warnings\":[\"Sessions crossing midnight must be split into explicit day records. Active minutes exclude entered breaks only; no attention, effort quality or productivity score is inferred.\"]}"
},
{
"description": "Distinct supplied example 2",
"prompt": "Use Focus Session Totals with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"sessions\":[{\"id\":\"S1\",\"date\":\"2026-10-04\",\"startMinute\":540,\"endMinute\":600,\"breakMinutes\":10}]}",
"tools_triggered": "focus_session_totals",
"expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"50 active minutes across 1 non-overlapping sessions.\",\"rows\":[{\"date\":\"2026-10-04\",\"sessionCount\":1,\"elapsedMinutes\":60,\"breakMinutes\":10,\"activeMinutes\":50}],\"warnings\":[\"Sessions crossing midnight must be split into explicit day records. Active minutes exclude entered breaks only; no attention, effort quality or productivity score is inferred.\"]}"
},
{
"description": "Distinct supplied example 3",
"prompt": "Use Focus Session Totals with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"sessions\":[{\"id\":\"S1\",\"date\":\"2026-10-05\",\"startMinute\":540,\"endMinute\":600,\"breakMinutes\":10},{\"id\":\"S2\",\"date\":\"2026-10-04\",\"startMinute\":660,\"endMinute\":690,\"breakMinutes\":5}]}",
"tools_triggered": "focus_session_totals",
"expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"75 active minutes across 2 non-overlapping sessions.\",\"rows\":[{\"date\":\"2026-10-04\",\"sessionCount\":1,\"elapsedMinutes\":30,\"breakMinutes\":5,\"activeMinutes\":25},{\"date\":\"2026-10-05\",\"sessionCount\":1,\"elapsedMinutes\":60,\"breakMinutes\":10,\"activeMinutes\":50}],\"warnings\":[\"Sessions crossing midnight must be split into explicit day records. Active minutes exclude entered breaks only; no attention, effort quality or productivity score is inferred.\"]}"
},
{
"description": "Distinct supplied example 4",
"prompt": "Use Focus Session Totals with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"sessions\":[{\"id\":\"S1\",\"date\":\"2026-10-06\",\"startMinute\":540,\"endMinute\":600,\"breakMinutes\":10},{\"id\":\"S2\",\"date\":\"2026-10-04\",\"startMinute\":660,\"endMinute\":690,\"breakMinutes\":5}]}",
"tools_triggered": "focus_session_totals",
"expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"75 active minutes across 2 non-overlapping sessions.\",\"rows\":[{\"date\":\"2026-10-04\",\"sessionCount\":1,\"elapsedMinutes\":30,\"breakMinutes\":5,\"activeMinutes\":25},{\"date\":\"2026-10-06\",\"sessionCount\":1,\"elapsedMinutes\":60,\"breakMinutes\":10,\"activeMinutes\":50}],\"warnings\":[\"Sessions crossing midnight must be split into explicit day records. Active minutes exclude entered breaks only; no attention, effort quality or productivity score is inferred.\"]}"
},
{
"description": "Distinct supplied example 5",
"prompt": "Use Focus Session Totals with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"sessions\":[{\"id\":\"S1\",\"date\":\"2026-10-03\",\"startMinute\":540,\"endMinute\":600,\"breakMinutes\":10},{\"id\":\"S2\",\"date\":\"2026-10-04\",\"startMinute\":660,\"endMinute\":690,\"breakMinutes\":5}]}",
"tools_triggered": "focus_session_totals",
"expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"75 active minutes across 2 non-overlapping sessions.\",\"rows\":[{\"date\":\"2026-10-03\",\"sessionCount\":1,\"elapsedMinutes\":60,\"breakMinutes\":10,\"activeMinutes\":50},{\"date\":\"2026-10-04\",\"sessionCount\":1,\"elapsedMinutes\":30,\"breakMinutes\":5,\"activeMinutes\":25}],\"warnings\":[\"Sessions crossing midnight must be split into explicit day records. Active minutes exclude entered breaks only; no attention, effort quality or productivity score is inferred.\"]}"
}
],
"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 Focus Session Totals 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 Focus Session Totals 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-focus-session-totals/"
},
"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: 1bb5606b2caf155108672e0878da9830c793fa87fbf1dca228098365f3937a74