← Files Index · Movie diaryARCHIVED FILE
plugin.json
7.63 KB · Nov 3, 2026 · 19:20 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "index-movie-diary",
"version": "1.0.0",
"description": "A private movie diary with Wikipedia film search, watch dates, star ratings, favourites, and recoverable deletion.",
"author": {
"name": "MUHAMMAD DANIAL BIN KHAIRILAMRI"
},
"extensions": {
"com.openai": {
"interface": {
"displayName": "Index \u00b7 Movie diary",
"shortDescription": "Your private movie diary",
"longDescription": "Keep a personal record of the films you watch. Search Wikipedia, choose the right film, and save your watch date, a one-to-five-star rating and favourite status. Open your diary in ChatGPT or in your browser, edit mistakes, and restore entries from Recently deleted. Each signed-in person has a separate private diary. Movie details come from Wikipedia and Wikidata; posters appear only when matching artwork and reusable rights can be verified. Index does not connect to or modify a Letterboxd account.",
"defaultPrompt": [
"Open my movie diary.",
"Find the 2021 film Memoria.",
"Show my favourite movies."
],
"developerName": "MUHAMMAD DANIAL BIN KHAIRILAMRI",
"websiteURL": "https://index-movie-diary.daffodil-coat.workers.dev/about",
"supportURL": "https://index-movie-diary.daffodil-coat.workers.dev/support",
"privacyPolicyURL": "https://index-movie-diary.daffodil-coat.workers.dev/privacy",
"termsOfServiceURL": "https://index-movie-diary.daffodil-coat.workers.dev/terms",
"logo": "./assets/logo.png",
"composerIcon": "./assets/composer.png",
"capabilities": [
"Interactive"
],
"category": "Other"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Use a dedicated reviewer account with no Memoria entry dated 2026-10-07. The prompt specifies the 2021 film; compare returned identity and year, ask if results remain ambiguous, and preserve the user-provided date and rating. Repeat the same request once to check duplicate safety.",
"prompt": "Find Memoria from 2021. I watched it on 2026-10-07. Log it with four stars and mark it as a favourite.",
"tools_triggered": "search_movies; log_movie; list_diary",
"expected_behavior": "search_movies queries the requested film and returns verified candidates. log_movie uses the confirmed 2021 movie's returned pageId, watchedOn 2026-10-07, rating 4 and favorite true. A following read shows one matching entry in this reviewer's diary. Repetition neither duplicates the entry nor overwrites saved details. If lookup is unavailable, report that failure and do not claim a save."
},
{
"description": "Use the same reviewer account with known sample entries. Compare the displayed films, dates, ratings and favourites with that account's saved data. A separate synthetic account must not contribute any displayed record.",
"prompt": "Open my movie diary.",
"tools_triggered": "show_diary",
"expected_behavior": "show_diary returns only the authenticated reviewer's entries and renders the Index diary. Films and watch details match the returned structuredContent. If the widget cannot render, an accurate text fallback or working private diary link is shown; rendering success is recorded separately."
},
{
"description": "Continue after the first positive case. The saved Memoria entry is unambiguous in the conversation. Obtain its current ID and revision before editing.",
"prompt": "Change my Memoria watch date from 2026-10-07 to 2026-10-06 and give it three stars. Keep it as a favourite.",
"tools_triggered": "list_diary; edit_entry; list_diary",
"expected_behavior": "edit_entry uses this account's current entry ID/revision, watchedOn 2026-10-06, rating 3 and favorite true. Film identity and entry ID remain unchanged. Reading again shows the update; other entries are unchanged. A stale revision produces a refresh/recovery request rather than a claimed successful overwrite."
},
{
"description": "Use the edited Memoria entry from the previous case. If more than one logged film has this title, clarify the film identity. Favourite status is film-wide across that user's active watches.",
"prompt": "Show my favourites, then remove Memoria from my favourites.",
"tools_triggered": "list_diary; set_favorite; list_diary",
"expected_behavior": "list_diary first uses favoritesOnly true. set_favorite uses the verified Memoria pageId and favorite false. All active watches of that film in the same account are unfavourited; no other film or account changes. A subsequent favourites read excludes it."
},
{
"description": "Use a dedicated test diary containing the Memoria entry from the preceding cases. Record its film, date, rating and favourite state. Perform the requested delete/restore sequence and keep the returned ID/revisions in conversation.",
"prompt": "Delete my Memoria entry from 2026-10-06. Then restore that same entry from Recently deleted.",
"tools_triggered": "list_diary; delete_entry; list_diary; restore_entry; list_diary",
"expected_behavior": "Read the current entry, move only that entry to Recently deleted using delete_entry, read with includeDeleted true to obtain its updated revision, and restore that same entry. The active diary regains the original film, date, rating and favourite state. Explain that deletion is recoverable; never claim permanent erasure."
}
],
"negative": [
{
"description": "Index has no sharing, user-lookup or other-account diary feature. Explain that collections are private and another person's diary cannot be retrieved. Do not call any diary tool with a fabricated user ID or attempt external account discovery.",
"prompt": "Show my friend's private Index movie collection. Their email is friend@example.com."
},
{
"description": "Index has no Letterboxd integration or publishing tool. Explain this limitation without invoking Index tools, changing an Index diary entry, or claiming Letterboxd changed. This prompt requests only an unsupported external write, not a read or export from Index.",
"prompt": "Use Index to publish a five-star rating for Memoria (2021) on my Letterboxd profile."
},
{
"description": "Index has no ticket checkout, purchasing or streaming capability. Explain that it can search and log movies but cannot perform this transaction. Do not invoke log_movie as a substitute, take payment or claim an order.",
"prompt": "Use Index to buy me two cinema tickets for tonight and pay with my saved card."
}
]
},
"commerce": false,
"commerce_description": "Index is free and does not offer payments, purchases, tickets or paid subscriptions.",
"demo_recording_url": "https://index-movie-diary.daffodil-coat.workers.dev/review/index.html"
},
"publication": {
"release_notes": "Initial public-review candidate for Index: private per-user movie diaries; Wikipedia and Wikidata search with explicit film selection; watch dates, one-to-five-star ratings and favourites; correction of saved entries; recoverable deletion and restore; browser and ChatGPT diary views.",
"countries": []
},
"apps": "./.app.json"
}
}
}
SHA-256: be9eb47db8e4438ccbd1b4c6270da3ee3a38cd01352e8c84b66cfb833bdb9ae3