← Files Course Criteria ComparisonARCHIVED FILE
plugin.json
12.4 KB · Nov 3, 2026 · 12:13 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "duopore-public-course-criteria-comparison",
"version": "1.0.4",
"description": "Compare courses side by side using the things that matter most to you.",
"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/course-criteria-comparison",
"keywords": [
"compare courses your way",
"course criteria comparison",
"learning and education",
"worksheet",
"reviewed inputs"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Course Criteria Comparison",
"shortDescription": "Compare courses your way",
"longDescription": "Compare courses side by side using the things that matter most to you. Enter your ratings, the weight of each factor and where your facts came from. A total score is withheld when a needed fact is missing. For adults comparing their own options. The app does not look up course facts or predict admission; you supply the information and ratings.",
"developerName": "DUOPORE VENTURES PTE. LTD.",
"category": "Productivity",
"capabilities": [
"Compare courses your way"
],
"websiteURL": "https://duopore-public-tools.ch-kae88.workers.dev/tools/course-criteria-comparison",
"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": [
"Compare these courses using my chosen factors.",
"Which missing course facts stop me making a fair comparison?"
],
"brandColor": "#1B8D33",
"composerIcon": "./assets/brand4-composer.svg",
"logo": "./assets/brand4-logo.svg",
"brandColorDark": "#7BEA92",
"composerIconDark": "./assets/brand4-composer-dark.svg",
"logoDark": "./assets/brand4-logo.svg"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Original fictional example",
"prompt": "Use Course Criteria Comparison with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"criteria\":[{\"criterion\":\"Schedule\",\"weight\":2},{\"criterion\":\"Project work\",\"weight\":1}],\"programmes\":[{\"programme\":\"Programme A\",\"facts\":[{\"criterion\":\"Schedule\",\"rating\":4,\"source\":\"Provided timetable: evening sessions.\"},{\"criterion\":\"Project work\",\"rating\":3,\"source\":\"Provided syllabus: one project.\"}]},{\"programme\":\"Programme B\",\"facts\":[{\"criterion\":\"Schedule\",\"rating\":5,\"source\":\"Provided timetable: flexible sessions.\"}]}]}",
"tools_triggered": "course_criteria_comparison",
"expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"1 of 2 programmes have all positive-weight criteria supplied.\",\"rows\":[{\"programme\":\"Programme A\",\"weightedScorePercent\":73.33,\"suppliedWeightCoveragePercent\":100,\"missingCriteria\":\"\",\"calculationAndSources\":\"Schedule: 4/5 \u00d7 2; Provided timetable: evening sessions. | Project work: 3/5 \u00d7 1; Provided syllabus: one project.\"},{\"programme\":\"Programme B\",\"weightedScorePercent\":null,\"suppliedWeightCoveragePercent\":66.67,\"missingCriteria\":\"Project work\",\"calculationAndSources\":\"Schedule: 5/5 \u00d7 2; Provided timetable: flexible sessions. | Project work: missing (weight 1)\"}],\"warnings\":[\"Missing programme facts are not treated as zero ratings. Source text is supplied by you; no live programme, quality or admission facts are verified.\"]}"
},
{
"description": "Distinct supplied example 2",
"prompt": "Use Course Criteria Comparison with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"criteria\":[{\"criterion\":\"Project work\",\"weight\":1},{\"criterion\":\"Schedule\",\"weight\":2}],\"programmes\":[{\"programme\":\"Programme A\",\"facts\":[{\"criterion\":\"Schedule\",\"rating\":4,\"source\":\"Provided timetable: evening sessions.\"},{\"criterion\":\"Project work\",\"rating\":3,\"source\":\"Provided syllabus: one project.\"}]},{\"programme\":\"Programme B\",\"facts\":[{\"criterion\":\"Schedule\",\"rating\":5,\"source\":\"Provided timetable: flexible sessions.\"}]}]}",
"tools_triggered": "course_criteria_comparison",
"expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"1 of 2 programmes have all positive-weight criteria supplied.\",\"rows\":[{\"programme\":\"Programme A\",\"weightedScorePercent\":73.33,\"suppliedWeightCoveragePercent\":100,\"missingCriteria\":\"\",\"calculationAndSources\":\"Project work: 3/5 \u00d7 1; Provided syllabus: one project. | Schedule: 4/5 \u00d7 2; Provided timetable: evening sessions.\"},{\"programme\":\"Programme B\",\"weightedScorePercent\":null,\"suppliedWeightCoveragePercent\":66.67,\"missingCriteria\":\"Project work\",\"calculationAndSources\":\"Project work: missing (weight 1) | Schedule: 5/5 \u00d7 2; Provided timetable: flexible sessions.\"}],\"warnings\":[\"Missing programme facts are not treated as zero ratings. Source text is supplied by you; no live programme, quality or admission facts are verified.\"]}"
},
{
"description": "Distinct supplied example 3",
"prompt": "Use Course Criteria Comparison with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"criteria\":[{\"criterion\":\"Schedule\",\"weight\":3},{\"criterion\":\"Project work\",\"weight\":1}],\"programmes\":[{\"programme\":\"Programme A\",\"facts\":[{\"criterion\":\"Schedule\",\"rating\":4,\"source\":\"Provided timetable: evening sessions.\"},{\"criterion\":\"Project work\",\"rating\":3,\"source\":\"Provided syllabus: one project.\"}]},{\"programme\":\"Programme B\",\"facts\":[{\"criterion\":\"Schedule\",\"rating\":5,\"source\":\"Provided timetable: flexible sessions.\"}]}]}",
"tools_triggered": "course_criteria_comparison",
"expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"1 of 2 programmes have all positive-weight criteria supplied.\",\"rows\":[{\"programme\":\"Programme A\",\"weightedScorePercent\":75,\"suppliedWeightCoveragePercent\":100,\"missingCriteria\":\"\",\"calculationAndSources\":\"Schedule: 4/5 \u00d7 3; Provided timetable: evening sessions. | Project work: 3/5 \u00d7 1; Provided syllabus: one project.\"},{\"programme\":\"Programme B\",\"weightedScorePercent\":null,\"suppliedWeightCoveragePercent\":75,\"missingCriteria\":\"Project work\",\"calculationAndSources\":\"Schedule: 5/5 \u00d7 3; Provided timetable: flexible sessions. | Project work: missing (weight 1)\"}],\"warnings\":[\"Missing programme facts are not treated as zero ratings. Source text is supplied by you; no live programme, quality or admission facts are verified.\"]}"
},
{
"description": "Distinct supplied example 4",
"prompt": "Use Course Criteria Comparison with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"criteria\":[{\"criterion\":\"Schedule\",\"weight\":4},{\"criterion\":\"Project work\",\"weight\":1}],\"programmes\":[{\"programme\":\"Programme A\",\"facts\":[{\"criterion\":\"Schedule\",\"rating\":4,\"source\":\"Provided timetable: evening sessions.\"},{\"criterion\":\"Project work\",\"rating\":3,\"source\":\"Provided syllabus: one project.\"}]},{\"programme\":\"Programme B\",\"facts\":[{\"criterion\":\"Schedule\",\"rating\":5,\"source\":\"Provided timetable: flexible sessions.\"}]}]}",
"tools_triggered": "course_criteria_comparison",
"expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"1 of 2 programmes have all positive-weight criteria supplied.\",\"rows\":[{\"programme\":\"Programme A\",\"weightedScorePercent\":76,\"suppliedWeightCoveragePercent\":100,\"missingCriteria\":\"\",\"calculationAndSources\":\"Schedule: 4/5 \u00d7 4; Provided timetable: evening sessions. | Project work: 3/5 \u00d7 1; Provided syllabus: one project.\"},{\"programme\":\"Programme B\",\"weightedScorePercent\":null,\"suppliedWeightCoveragePercent\":80,\"missingCriteria\":\"Project work\",\"calculationAndSources\":\"Schedule: 5/5 \u00d7 4; Provided timetable: flexible sessions. | Project work: missing (weight 1)\"}],\"warnings\":[\"Missing programme facts are not treated as zero ratings. Source text is supplied by you; no live programme, quality or admission facts are verified.\"]}"
},
{
"description": "Distinct supplied example 5",
"prompt": "Use Course Criteria Comparison with these explicitly supplied fictional inputs. Return the worksheet and limitations for my review: {\"criteria\":[{\"criterion\":\"Schedule\",\"weight\":1},{\"criterion\":\"Project work\",\"weight\":1}],\"programmes\":[{\"programme\":\"Programme A\",\"facts\":[{\"criterion\":\"Schedule\",\"rating\":4,\"source\":\"Provided timetable: evening sessions.\"},{\"criterion\":\"Project work\",\"rating\":3,\"source\":\"Provided syllabus: one project.\"}]},{\"programme\":\"Programme B\",\"facts\":[{\"criterion\":\"Schedule\",\"rating\":5,\"source\":\"Provided timetable: flexible sessions.\"}]}]}",
"tools_triggered": "course_criteria_comparison",
"expected_behavior": "Use only these supplied inputs; no external verification, saving, sending or invented facts. Expected structured result: {\"summary\":\"1 of 2 programmes have all positive-weight criteria supplied.\",\"rows\":[{\"programme\":\"Programme A\",\"weightedScorePercent\":70,\"suppliedWeightCoveragePercent\":100,\"missingCriteria\":\"\",\"calculationAndSources\":\"Schedule: 4/5 \u00d7 1; Provided timetable: evening sessions. | Project work: 3/5 \u00d7 1; Provided syllabus: one project.\"},{\"programme\":\"Programme B\",\"weightedScorePercent\":null,\"suppliedWeightCoveragePercent\":50,\"missingCriteria\":\"Project work\",\"calculationAndSources\":\"Schedule: 5/5 \u00d7 1; Provided timetable: flexible sessions. | Project work: missing (weight 1)\"}],\"warnings\":[\"Missing programme facts are not treated as zero ratings. Source text is supplied by you; no live programme, quality or admission facts are verified.\"]}"
}
],
"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 Course Criteria Comparison 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 Course Criteria Comparison 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-course-criteria-comparison/"
},
"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: ebdd06748009a5255239eb4cc6879efd03e8d7b7ff215fa65d14a7bb3b00feb2