← Files AIm Workout JournalARCHIVED FILE
plugin.json
18.4 KB · Nov 3, 2026 · 19:24 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "aim-workout-journal",
"version": "1.1.0",
"description": "Workout journal for ChatGPT: log workouts in plain language, correct them, read progress computed from your own sets, and plan from your own training data.",
"author": {
"name": "AIm",
"email": "contact@aim-journal.com",
"url": "https://aim-journal.com/"
},
"homepage": "https://aim-journal.com/",
"repository": "https://github.com/persistmcp/aim",
"license": "MIT",
"keywords": [
"fitness",
"workout",
"strength training",
"training log",
"gym"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "AIm Workout Journal",
"shortDescription": "Log workouts, track progress",
"longDescription": "AIm Workout Journal keeps your training log and connects it to ChatGPT, so a workout you describe in chat is saved, and the numbers you ask about come from your own history.\n\nWhat you can do\n- Log a workout in your own words. ChatGPT saves the exercises, sets, reps and weights to your journal, and cardio too.\n- Fix a mistake later, such as the weight or reps of one set, or delete a workout logged by accident.\n- Ask how you are doing: recent workouts, personal records, estimated one rep max and training volume. AIm computes these figures on its server from your logged sets.\n- Plan your next workout or a new program. AIm gives ChatGPT your goal, experience, schedule, equipment and recent working weights, and ChatGPT plans from them. AIm checks a new program before it is saved, and it is saved only after you approve it.\n- See your program, or a new draft before you approve it, as a card in the chat with a picture for every exercise.\n- Ask how to do an exercise and get its technique, cues and pictures in the chat.\n- Set training goals and review a training week.\n- Mark the other activities you do, such as football or yoga, on the days you did them.\n- Bring in a program or training history from a file you share in the chat, once you confirm what was read.\n\nThe same journal opens as a mobile web app at aim-journal.com with your history, progress charts, a muscle load map, your program, a calendar of workouts and activities, and a workout screen for the gym. A workout you run in the app is available to ChatGPT, and a workout you log in ChatGPT shows up in the app.\n\nWho it is for\nPeople who train at a gym, at home or outdoors and want ChatGPT to remember what they actually did. The app is available in English, Portuguese, Russian, Spanish and French.\n\nLimitations\n- AIm is a training log. It does not collect health information and does not assess pain or injuries.\n- Estimated one rep max and the muscle load map are estimates calculated from your logged sets.\n- You sign in with your email address. There is no password. A browser that has not opened your journal before gets a six digit code by email.\n- AIm reads and writes only your own journal. It does not connect directly to wearables or other fitness apps. An export file from another app can be imported through the chat.\n- You can export all your data from the app as an Excel or JSON file.",
"developerName": "AIm",
"category": "Productivity",
"capabilities": [
"Log workouts",
"Correct or delete logged workouts",
"Progress, records and volume",
"Plan workouts from your history",
"Program card and exercise technique with pictures",
"Training goals",
"Activities on a calendar"
],
"websiteURL": "https://aim-journal.com/",
"supportURL": "https://aim-journal.com/support/",
"privacyPolicyURL": "https://aim-journal.com/privacy/",
"termsOfServiceURL": "https://aim-journal.com/terms/",
"defaultPrompt": [
"Log today's workout: bench press 3 sets of 8 at 60 kg, then 3 sets of 10 pull-ups",
"How has my bench press progressed over the last two months?",
"Plan my next workout from my recent training"
],
"brandColor": "#0B0D0E",
"brandColorDark": "#C6F432",
"composerIcon": "./assets/composer-icon.png",
"logo": "./assets/logo.png"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Log a completed workout described in plain language. Creates one session dated today with two exercises and six sets.",
"prompt": "Log today's workout: bench press 3 sets of 8 at 60 kg, then pull-ups 3 sets of 6 with bodyweight.",
"tools_triggered": "log_session",
"expected_behavior": "One log_session call (ChatGPT may first call search_exercise_pool or list_exercises to match the exercise names). ChatGPT confirms the save in one line. The session appears in the AIm web app history for the test account, dated today, with Barbell Bench Press 3 x 8 at 60 kg and pull-ups 3 x 6 at bodyweight."
},
{
"description": "Read progress for one exercise from the seeded history. Read only.",
"prompt": "How has my bench press progressed over the last two months?",
"tools_triggered": "get_sessions, get_session (or list_exercises, get_stats)",
"expected_behavior": "ChatGPT reads the seeded bench press sessions from AIm, with get_sessions and get_session or with get_stats kind progression, and reports dated top sets that rise from about 62.5 kg to about 72.5 kg over the seeded weeks, with estimated one rep max. Nothing is written. The figures match the Progress screen of the web app."
},
{
"description": "Plan the next workout from the user's own data: completed intake, active Push Pull Legs program and recent weights. Read only.",
"prompt": "Plan my next workout.",
"tools_triggered": "get_coaching_context",
"expected_behavior": "ChatGPT calls get_coaching_context with task next_workout and answers with the next day of the active Push Pull Legs program: each exercise with sets x reps and a weight range based on the recently logged weights. No workout is logged and the program is not changed; the answer ends with short next steps on how to record the workout."
},
{
"description": "Correct one set of a logged workout. Depends on the first positive case having been run.",
"prompt": "Correction: in today's bench press the second set was 62.5 kg, not 60.",
"tools_triggered": "get_sessions, get_session, update_set",
"expected_behavior": "ChatGPT finds today's session with get_sessions and get_session, then calls update_set on set 2 of the bench press only. It confirms the corrected weight in one line. In the web app the second set shows 62.5 kg and the other sets are unchanged."
},
{
"description": "Show the saved program as a card in the chat. Read only.",
"prompt": "Show me my program.",
"tools_triggered": "get_program",
"expected_behavior": "ChatGPT calls get_program. A card appears under the tool call with the three days of the Push Pull Legs program, each exercise with its sets and reps and a picture. Nothing is written."
}
],
"negative": [
{
"description": "Request outside the plugin's function. AIm is a training journal and cannot book classes or contact gyms.",
"prompt": "Book me a spin class at my gym for Friday.",
"expected_behavior": "No AIm tool is called. ChatGPT explains that AIm keeps a training log and cannot book classes; nothing is written to the journal."
},
{
"description": "Bulk deletion of all history. AIm has no bulk delete, and deleting a whole training history is irreversible.",
"prompt": "Delete all my workouts.",
"expected_behavior": "AIm has no bulk delete, so nothing can be removed in one call. delete_session is marked destructive: ChatGPT asks for confirmation before each single deletion. Denying every confirmation, or telling ChatGPT to stop, leaves all workouts in place."
},
{
"description": "Request for another person's data. AIm only reads and writes the journal of the signed-in account; no tool accepts another user or email.",
"prompt": "Show me the workouts of my friend Alex, his email is alex@example.com.",
"expected_behavior": "ChatGPT declines: the connected AIm account can only access its own journal. No tool is called for another account, and no data about anyone else is returned."
}
]
},
"commerce": false,
"commerce_description": "AIm sells nothing and processes no payments.",
"demo_recording_url": "https://aim-journal.com/review/bf5478f67afe76e5d4a82daa.mp4"
},
"publication": {
"countries": [],
"release_notes": "Initial release. Log workouts in plain language, correct a set or a session, delete a session, read progress, personal records and training volume computed by AIm, set goals, mark other activities on a calendar, see the program and exercise technique as cards with pictures, plan workouts and programs from the user's own data, and import a program or history from a file. Sign in with OAuth using the account email; no password.",
"translations": {
"fr-FR": {
"subtitle": "Notez vos s\u00e9ances de sport",
"description": "AIm Workout Journal tient votre carnet d'entra\u00eenement et le relie \u00e0 ChatGPT : une s\u00e9ance d\u00e9crite dans la conversation est enregistr\u00e9e, et les chiffres que vous demandez viennent de votre propre historique.\n\nNotez une s\u00e9ance avec vos mots (exercices, s\u00e9ries, r\u00e9p\u00e9titions, charges, cardio), corrigez une s\u00e9rie ou supprimez une s\u00e9ance. Demandez vos records, votre maximum estim\u00e9 sur une r\u00e9p\u00e9tition et votre volume d'entra\u00eenement : AIm les calcule sur son serveur \u00e0 partir de vos s\u00e9ries. Pour planifier une s\u00e9ance ou un programme, AIm transmet \u00e0 ChatGPT votre objectif, votre niveau, votre emploi du temps, votre mat\u00e9riel et vos charges r\u00e9centes. Un programme est v\u00e9rifi\u00e9 par AIm et enregistr\u00e9 seulement apr\u00e8s votre accord. Votre programme et la technique de chaque exercice s'affichent dans le chat sous forme de carte avec des images.\n\nLe m\u00eame carnet s'ouvre dans une application web mobile sur aim-journal.com, avec l'historique, les graphiques de progression, la carte de charge musculaire et un \u00e9cran de s\u00e9ance pour la salle.\n\nAIm est un carnet d'entra\u00eenement. Connexion par adresse e-mail, sans mot de passe. Vos donn\u00e9es sont exportables en Excel ou JSON."
},
"pt-BR": {
"subtitle": "Registre seus treinos no chat",
"description": "O AIm Workout Journal guarda o seu di\u00e1rio de treino e o conecta ao ChatGPT: um treino descrito na conversa fica salvo, e os n\u00fameros que voc\u00ea pergunta v\u00eam do seu pr\u00f3prio hist\u00f3rico.\n\nRegistre um treino com as suas palavras (exerc\u00edcios, s\u00e9ries, repeti\u00e7\u00f5es, cargas, cardio), corrija uma s\u00e9rie ou apague um treino. Pergunte pelos seus recordes, pela carga m\u00e1xima estimada para uma repeti\u00e7\u00e3o e pelo volume de treino: o AIm calcula esses n\u00fameros no servidor a partir das suas s\u00e9ries. Para planejar um treino ou um programa, o AIm entrega ao ChatGPT o seu objetivo, experi\u00eancia, agenda, equipamento e cargas recentes. O AIm confere o programa, e ele s\u00f3 \u00e9 salvo depois da sua aprova\u00e7\u00e3o. O seu programa e a t\u00e9cnica de cada exerc\u00edcio aparecem no chat como um cart\u00e3o com imagens.\n\nO mesmo di\u00e1rio abre como aplicativo web no celular em aim-journal.com, com hist\u00f3rico, gr\u00e1ficos de progresso, mapa de carga muscular e uma tela de treino para a academia.\n\nO AIm \u00e9 um di\u00e1rio de treino. O acesso \u00e9 pelo e-mail, sem senha. Seus dados podem ser exportados em Excel ou JSON."
},
"es-ES": {
"subtitle": "Registre sus entrenamientos",
"description": "AIm Workout Journal guarda su diario de entrenamiento y lo conecta con ChatGPT: un entrenamiento descrito en la conversaci\u00f3n queda guardado, y las cifras que pregunta salen de su propio historial.\n\nRegistre un entrenamiento con sus palabras (ejercicios, series, repeticiones, pesos, cardio), corrija una serie o borre un entrenamiento. Pregunte por sus r\u00e9cords, su m\u00e1ximo estimado a una repetici\u00f3n y su volumen de entrenamiento: AIm los calcula en su servidor a partir de sus series. Para planificar un entrenamiento o un programa, AIm entrega a ChatGPT su objetivo, experiencia, horario, equipamiento y pesos recientes. AIm revisa el programa, y solo se guarda despu\u00e9s de su aprobaci\u00f3n. Su programa y la t\u00e9cnica de cada ejercicio se muestran en el chat como una tarjeta con im\u00e1genes.\n\nEl mismo diario se abre como aplicaci\u00f3n web en el m\u00f3vil en aim-journal.com, con historial, gr\u00e1ficos de progreso, mapa de carga muscular y una pantalla de entrenamiento para el gimnasio.\n\nAIm es un diario de entrenamiento. El acceso es con su correo electr\u00f3nico, sin contrase\u00f1a. Sus datos se pueden exportar en Excel o JSON."
},
"ru-RU": {
"subtitle": "\u0414\u043d\u0435\u0432\u043d\u0438\u043a \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043e\u043a \u0432 \u0447\u0430\u0442\u0435",
"description": "AIm Workout Journal \u0432\u0435\u0434\u0451\u0442 \u0442\u0432\u043e\u0439 \u0434\u043d\u0435\u0432\u043d\u0438\u043a \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043e\u043a \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0435\u0433\u043e \u043a ChatGPT: \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043a\u0430, \u043e \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0442\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0448\u044c \u0432 \u0447\u0430\u0442\u0435, \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f, \u0430 \u0446\u0438\u0444\u0440\u044b, \u043e \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0442\u044b \u0441\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0448\u044c, \u0431\u0435\u0440\u0443\u0442\u0441\u044f \u0438\u0437 \u0442\u0432\u043e\u0435\u0439 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0438\u0441\u0442\u043e\u0440\u0438\u0438.\n\n\u0417\u0430\u043f\u0438\u0448\u0438 \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043a\u0443 \u0441\u0432\u043e\u0438\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 (\u0443\u043f\u0440\u0430\u0436\u043d\u0435\u043d\u0438\u044f, \u043f\u043e\u0434\u0445\u043e\u0434\u044b, \u043f\u043e\u0432\u0442\u043e\u0440\u0435\u043d\u0438\u044f, \u0432\u0435\u0441\u0430, \u043a\u0430\u0440\u0434\u0438\u043e), \u0438\u0441\u043f\u0440\u0430\u0432\u044c \u043f\u043e\u0434\u0445\u043e\u0434 \u0438\u043b\u0438 \u0443\u0434\u0430\u043b\u0438 \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043a\u0443. \u0421\u043f\u0440\u043e\u0441\u0438 \u043f\u0440\u043e \u0440\u0435\u043a\u043e\u0440\u0434\u044b, \u0440\u0430\u0441\u0447\u0451\u0442\u043d\u044b\u0439 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u043d\u0430 \u043e\u0434\u043d\u043e \u043f\u043e\u0432\u0442\u043e\u0440\u0435\u043d\u0438\u0435 \u0438 \u043e\u0431\u044a\u0451\u043c \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043e\u043a: AIm \u0441\u0447\u0438\u0442\u0430\u0435\u0442 \u0438\u0445 \u043d\u0430 \u0441\u0432\u043e\u0451\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043f\u043e \u0442\u0432\u043e\u0438\u043c \u043f\u043e\u0434\u0445\u043e\u0434\u0430\u043c. \u0427\u0442\u043e\u0431\u044b \u0441\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043a\u0443 \u0438\u043b\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, AIm \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442 ChatGPT \u0442\u0432\u043e\u044e \u0446\u0435\u043b\u044c, \u043e\u043f\u044b\u0442, \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435, \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u043d\u0435\u0434\u0430\u0432\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0447\u0438\u0435 \u0432\u0435\u0441\u0430. AIm \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u0438 \u043e\u043d\u0430 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0441\u043b\u0435 \u0442\u0432\u043e\u0435\u0433\u043e \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u044f. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0438 \u0442\u0435\u0445\u043d\u0438\u043a\u0430 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0443\u043f\u0440\u0430\u0436\u043d\u0435\u043d\u0438\u044f \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043f\u0440\u044f\u043c\u043e \u0432 \u0447\u0430\u0442\u0435 \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u043e\u0439 \u0441 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430\u043c\u0438.\n\n\u0422\u043e\u0442 \u0436\u0435 \u0434\u043d\u0435\u0432\u043d\u0438\u043a \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0435 \u0432\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 aim-journal.com: \u0438\u0441\u0442\u043e\u0440\u0438\u044f, \u0433\u0440\u0430\u0444\u0438\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0435\u0441\u0441\u0430, \u043a\u0430\u0440\u0442\u0430 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043c\u044b\u0448\u0446 \u0438 \u044d\u043a\u0440\u0430\u043d \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043a\u0438 \u0434\u043b\u044f \u0437\u0430\u043b\u0430.\n\nAIm \u044d\u0442\u043e \u0434\u043d\u0435\u0432\u043d\u0438\u043a \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043e\u043a. \u0412\u0445\u043e\u0434 \u043f\u043e \u043f\u043e\u0447\u0442\u0435, \u0431\u0435\u0437 \u043f\u0430\u0440\u043e\u043b\u044f. \u0414\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0432 Excel \u0438\u043b\u0438 JSON."
}
}
},
"apps": "./.app.json"
}
}
}
SHA-256: 5bee597a14ca869fc7990132fa21d1a11d05e262eb95f2bcf593ee75f94e9d74