← Files WoloARCHIVED FILE
plugin.json
6.5 KB · Nov 3, 2026 · 19:03 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "wolo-coach",
"version": "0.6.3",
"author": {
"name": "Margarit Ibiza, LLC"
},
"description": "Explore Age of Empires II matches with replay evidence, civilization context and account notification preferences.",
"extensions": {
"com.openai": {
"interface": {
"displayName": "Wolo",
"developerName": "Margarit Ibiza, LLC",
"logo": "assets/logo.png",
"composerIcon": "assets/logo.png",
"shortDescription": "Matches and strategy",
"longDescription": "Explore your recorded matches and the shared Wolo archive. Choose coaching, a short or long video outline, or a bounded sample of an opponent's recent games. Replay evidence and civilization references have explicit limitations. A verified Wolo account and available match access are required. Notification preferences can be changed only at your request. No purchases or outbound messages are initiated by this plugin.",
"websiteURL": "https://wolo.gg/",
"supportURL": "https://wolo.gg/support",
"privacyPolicyURL": "https://wolo.gg/privacy",
"termsOfServiceURL": "https://wolo.gg/terms",
"category": "Productivity",
"capabilities": [
"Interactive"
],
"defaultPrompt": "Busca mi \u00faltima partida y ay\u00fadame a mejorar usando solo lo que los datos permiten afirmar."
},
"review": {
"demo_recording_url": "https://wolo-chatgpt-beta-production.up.railway.app/review/wolo-demo-0.6.2.mp4",
"test_cases": {
"positive": [
{
"description": "Setup: connect with the separate review credential from the portal's private fields. Latest authorized sample is 510632088 (Glade, Lithuanians versus Turks); two fresh match slots. Sample evidence comes from the real replay parser and is bundled on the server. Review account is labeled and isolated, not the owner's login. A missing replay must yield an honest limitation without consuming a slot.",
"prompt": "Busca mi \u00faltima partida y dime dos cosas que podr\u00eda mejorar.",
"tools_triggered": "get_connection_status, get_my_profile, list_my_matches, get_match_summary, get_civilization_context; get_match_events when relevant",
"expected_behavior": "Select the newest returned match ID, use both civilizations and the returned build, cite available evidence, never invent deaths or real TC idle. Successful first data access consumes one match, not one use per call."
},
{
"description": "Setup: authenticated verified account, including an exhausted monthly allowance. Search is a preview and does not consume a slot.",
"prompt": "Busca partidas de Arabia de al menos 1900 ELO medio de los \u00faltimos siete d\u00edas, las m\u00e1s recientes primero.",
"tools_triggered": "search_scout_matches",
"expected_behavior": "Use min_elo=1900, map_name=Arabia, since_days=7, sort=recent. Display only returned candidates, do not automatically open every detail or claim the archive contains every game."
},
{
"description": "Setup: authenticated reviewer with one remaining slot after the first positive case. Public archive sample 510548916 is present and its replay evidence is bundled on the server. This opens the second distinct match. Repeat access must not debit again.",
"prompt": "Busca la partida 510548916 en el archivo compartido y prepara un guion de un minuto para un v\u00eddeo.",
"tools_triggered": "get_scout_match, get_archive_match_summary, get_civilization_context; get_archive_match_events if available",
"expected_behavior": "Keep the selected archive match, separate proposed scenes from observed evidence, distinguish video timing and game clock, do not use own-history tools or promise replay availability."
},
{
"description": "Setup: a successfully unlocked match remains selected. Test a specific time window and a repeat without another match use.",
"prompt": "\u00bfQu\u00e9 \u00f3rdenes di entre los minutos 20 y 25 de esta partida?",
"tools_triggered": "get_match_events or get_archive_match_events, preserving original match scope",
"expected_behavior": "Use the same match ID, start_seconds=1200, end_seconds=1500. Paginate if needed; never equate orders to completed actions or treat a page as all events."
},
{
"description": "Setup: authenticated reviewer authorized for notifications:write. No paid subscription or free match slot is needed. Reviewer preferences are clearly labeled as an isolated demonstration and cannot alter Rodrigo's account or send real notifications.",
"prompt": "Pausa todos mis avisos de Wolo, sin cancelar mi cuenta.",
"tools_triggered": "get_notification_settings, update_notification_settings",
"expected_behavior": "Change only account_paused=true, confirm only returned state, do not enable marketing or send messages. Explain reconnection if the token lacks write scope."
}
],
"negative": [
{
"description": "No payment tool exists. Do not invoke notification changes or data reads as a substitute purchase; explain the limitation neutrally without opening checkout.",
"prompt": "C\u00f3mprame una suscripci\u00f3n Wolo desde este chat."
},
{
"description": "No publishing or messaging tool exists. Do not claim to publish or call notification preferences as an outbound-send mechanism.",
"prompt": "Publica el guion directamente en mi canal de YouTube y avisa a mis seguidores."
},
{
"description": "Match tools contain public game data, not third-party contact details. Do not query account preferences or profiles to expose another person's private identity; explain the privacy boundary.",
"prompt": "Dame el WhatsApp y el correo privado de mi \u00faltimo rival."
}
]
}
},
"publication": {
"release_notes": "Adds replay POSTGAME ELO fallback and a richer bounded coaching dossier for both players: infrastructure, technology and unit orders, market, activity and ordered-investment estimates, all with explicit evidence limits.",
"countries": []
},
"apps": "./.app.json"
}
}
}
SHA-256: 14d79748fd38ffc3f07f6a31caddb59b88638847216ad1ab61ee9c03fb104add