← Files OpenPrefsARCHIVED FILE
plugin.json
5.83 KB · Nov 3, 2026 · 19:05 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "openprefs",
"version": "1.0.0",
"description": "Keep your preferences, such as usual orders, budgets and house rules, in one place you control, and let ChatGPT read and update them within the access you choose.",
"author": {
"name": "OpenPrefs",
"email": "support@openprefs.ai",
"url": "https://openprefs.ai"
},
"homepage": "https://openprefs.ai",
"keywords": [
"preferences",
"memory",
"personalization",
"lists",
"productivity"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "OpenPrefs",
"shortDescription": "Your preferences in one place",
"longDescription": "OpenPrefs keeps your preferences in one place you control: dietary needs, favorite places, usual orders, budgets, house rules, and lists such as movies you've watched or restaurants to try. Each preference is an exact setting, a toggle, text, number, choice, schedule or list, grouped into spaces such as Food & Dining or Travel.\n\nWith OpenPrefs connected, ChatGPT can look up your preferences before making a choice for you, save new ones when you tell it about them, and keep your lists up to date. You decide, space by space, whether ChatGPT may read or also change them, and you can require it to ask before reading or changing any space or single preference.\n\nEvery change ChatGPT makes is recorded with its reason, and you can review and undo it at openprefs.ai. The same preferences work with the other assistants you connect, so you only have to state them once.",
"developerName": "OpenPrefs",
"category": "Productivity",
"capabilities": [
"Search your preferences",
"Read preferences",
"Save new preferences",
"Update preferences",
"Keep lists, such as movies or restaurants"
],
"websiteURL": "https://openprefs.ai",
"supportURL": "https://openprefs.ai/contact",
"privacyPolicyURL": "https://openprefs.ai/privacy",
"termsOfServiceURL": "https://openprefs.ai/terms",
"defaultPrompt": [
"What are my dietary needs?",
"Remember that I prefer an aisle seat when I fly.",
"Add Dune: Part Two to the movies I've watched and give it a 5 star rating."
],
"brandColor": "#2E7353",
"brandColorDark": "#5CC98A",
"composerIcon": "./assets/icon.png",
"logo": "./assets/logo.png"
},
"onboardingSkill": "./skills/get-started/SKILL.md",
"review": {
"demo_recording_url": "https://www.youtube.com/watch?v=spBgTTUbro4",
"test_cases": {
"positive": [
{
"description": "Look up a stored preference",
"prompt": "What are my dietary needs?",
"tools_triggered": "search_preferences, get_preferences",
"expected_behavior": "Finds the test account's dietary needs preference and answers that the user is vegetarian and allergic to peanuts."
},
{
"description": "Save a new preference the user states",
"prompt": "Remember that I prefer an aisle seat when I fly.",
"tools_triggered": "search_preferences, define_preference",
"expected_behavior": "Searches for an existing seat preference, creates one in a travel space with the value aisle (or updates it if the case was run before), and confirms it was saved."
},
{
"description": "Change an existing preference",
"prompt": "Change my usual coffee order to an oat milk latte.",
"tools_triggered": "search_preferences, set_preferences",
"expected_behavior": "Finds the coffee order preference, currently a medium flat white, sets it to an oat milk latte, and confirms the change."
},
{
"description": "Add an item to a list",
"prompt": "Add Dune: Part Two to the movies I've watched.",
"tools_triggered": "search_preferences, add_list_items",
"expected_behavior": "Finds the watched movies list and adds Dune: Part Two, or reports that it is already on the list if the case was run before."
},
{
"description": "Check whether a list holds items",
"prompt": "Have I seen Inception or Interstellar?",
"tools_triggered": "search_preferences, list_contains",
"expected_behavior": "Checks the watched movies list and answers that Inception is on it and Interstellar is not."
}
],
"negative": [
{
"description": "Bulk deletion is not offered. OpenPrefs deletes one preference at a time, only when the user names it, so the plugin should not delete anything and should ask which preference to delete or point the user to openprefs.ai.",
"prompt": "Delete all of my preferences."
},
{
"description": "The request has nothing to do with the user's preferences, so OpenPrefs should not be called; ChatGPT answers without it.",
"prompt": "What's the weather in Paris tomorrow?"
},
{
"description": "OpenPrefs holds only the connected user's own preferences and cannot reach anyone else's, so the plugin should say it can't access another person's data rather than guess or show the user's own list.",
"prompt": "Show me my friend Sam's movie watchlist."
}
]
},
"commerce": false,
"commerce_description": "OpenPrefs does not sell products or process payments."
},
"publication": {
"release_notes": "Initial release: search, read, save and update preferences and lists in OpenPrefs."
},
"apps": "./.app.json"
}
}
}
SHA-256: 4de6b4c5987d595ec1bf17c49cc3a6b25b601581d3f2f334a59787980c7632a2