Update to AI Endurance
Snapshot Oct 5, 2026 · 18:06 UTC · version 2.0.0
Package or technical metadata updated
Package contents changed in 17 files: .codex-plugin/plugin.json, skills/adjust-for-weather/SKILL.md, skills/adjust-for-weather/agents/openai.yaml, …. Open the file diff to inspect the edits.
Observed in package metadata. These changes alone do not establish a new customer-facing feature.
Package file
d4c407c7cb92b868d75f6e9857f1a6df59684fb4e5d7c9e43181b36a0aaad4a3
ea0cd15b8d666982c546a15a8465f290742d59cfa637a5f9c01d92f127370823
Package file
1500
1572
Package file
Not present
{"sha256":"25ef952e1f46b98ef4b43506d000f5870497a28b68b023dab780f61639bc095f","size":2056}
Package file
Not present
{"sha256":"dc53a6e2bb6797c7d78bdc1b099c01fcf2a208e2e156831b726bab74604838a4","size":641}
Compare saved observations
Download comparison JSONChanged files
skills/adjust-for-weather/SKILL.md →
skills/adjust-for-weather/agents/openai.yaml →
skills/adjust-for-weather/assets/icon-large.png →
skills/adjust-for-weather/assets/icon-small.png →
skills/analyze-activity/SKILL.md →
skills/analyze-activity/agents/openai.yaml →
skills/analyze-activity/assets/icon-large.png →
skills/analyze-activity/assets/icon-small.png →
skills/checkin/agents/openai.yaml →
skills/checkin/assets/icon-large.png →
skills/checkin/assets/icon-small.png →
skills/replan/agents/openai.yaml →
skills/checkin/SKILL.md
--- before +++ after @@ -0,0 +1,17 @@ +--- +name: checkin +description: Daily check-in and readiness review. Use when the user wants their daily check-in, morning check-in, asks how they should train today, whether they are recovered or ready for their workout, or whether to train given how they feel. Do not use for analyzing a completed workout (use analyze-activity), for restructuring the upcoming week (use replan), or for weather-based adjustments (use adjust-for-weather). +--- + +Run a daily readiness check-in and advise the user on today's training. + +1. If the user has not already described how they feel, ask briefly: overall fatigue, muscle soreness, sleep quality, and anything notable (illness, stress, travel). Keep it to one short question, not a form. +2. Call the `getRecoveryModel` tool to get objective recovery data: HRV, resting heart rate, and recovery scores from their synced wearable. +3. Call the `getPlannedWorkouts` tool for today's date to see what training is planned. +4. Weigh the subjective answers against the objective recovery data and today's plan, then give a clear recommendation: do the workout as planned, adjust it (lower intensity, shorter duration), swap it to another day, or rest. Explain the reasoning in two or three sentences, referencing the specific signals that drove the call. +5. If the recommendation is an adjustment and the user agrees, apply it: use `changeWorkoutAdvice` to attach the adjusted guidance to today's workout, `changeWorkoutDate` to move it, or `skipWorkout` to skip it. Always confirm with the user before modifying their plan. + +Notes: + +- This check-in is advisory only. The user's answers here are not saved to their AI Endurance recovery model; the daily check-in form in the AI Endurance app is where check-in data is recorded. If the user wants their subjective data tracked over time, point them to the app's check-in. +- If `getRecoveryModel` returns no recent data (no wearable synced), base the advice on the subjective answers and today's plan alone, and say that objective recovery data was unavailable.
Full technical diff · 18 changed fields
changed /files/.codex-plugin~1plugin.json/sha256
"d4c407c7cb92b868d75f6e9857f1a6df59684fb4e5d7c9e43181b36a0aaad4a3"
"ea0cd15b8d666982c546a15a8465f290742d59cfa637a5f9c01d92f127370823"
changed /files/.codex-plugin~1plugin.json/size
1500
1572
added /files/skills~1adjust-for-weather~1SKILL.md
Field was absent
{
"sha256": "25ef952e1f46b98ef4b43506d000f5870497a28b68b023dab780f61639bc095f",
"size": 2056
}added /files/skills~1adjust-for-weather~1agents~1openai.yaml
Field was absent
{
"sha256": "dc53a6e2bb6797c7d78bdc1b099c01fcf2a208e2e156831b726bab74604838a4",
"size": 641
}added /files/skills~1adjust-for-weather~1assets~1icon-large.png
Field was absent
{
"sha256": "0d5114eeadbd9b0f27a3a57289021c7473c1b87458d0fe7c55632c18994db1ff",
"size": 17034
}added /files/skills~1adjust-for-weather~1assets~1icon-small.png
Field was absent
{
"sha256": "dd06bd84dd3c72c23c177d13b46c3bd68eb6e0a4713e55fcacb2d7f77afd1296",
"size": 2013
}added /files/skills~1analyze-activity~1SKILL.md
Field was absent
{
"sha256": "8d4f4e845d87ee52fa0ec35d6b6415dad79325794239a80e2cf2a9d5c24f40a8",
"size": 2845
}added /files/skills~1analyze-activity~1agents~1openai.yaml
Field was absent
{
"sha256": "ac3b00235d50e0814b2d52863c63dfc4762d1fef951508293c9de9dca32879d3",
"size": 625
}added /files/skills~1analyze-activity~1assets~1icon-large.png
Field was absent
{
"sha256": "0d5114eeadbd9b0f27a3a57289021c7473c1b87458d0fe7c55632c18994db1ff",
"size": 17034
}added /files/skills~1analyze-activity~1assets~1icon-small.png
Field was absent
{
"sha256": "dd06bd84dd3c72c23c177d13b46c3bd68eb6e0a4713e55fcacb2d7f77afd1296",
"size": 2013
}added /files/skills~1checkin~1SKILL.md
Field was absent
{
"sha256": "3c8c064db65c6e3e2be527254a4344ac29e288dbb6867ef401241f33f0e019fd",
"size": 2041
}added /files/skills~1checkin~1agents~1openai.yaml
Field was absent
{
"sha256": "6682ee2e17877bf2596046f07052200c9e6ef34eb29a52871ae65e9cfc985328",
"size": 689
}added /files/skills~1checkin~1assets~1icon-large.png
Field was absent
{
"sha256": "0d5114eeadbd9b0f27a3a57289021c7473c1b87458d0fe7c55632c18994db1ff",
"size": 17034
}added /files/skills~1checkin~1assets~1icon-small.png
Field was absent
{
"sha256": "dd06bd84dd3c72c23c177d13b46c3bd68eb6e0a4713e55fcacb2d7f77afd1296",
"size": 2013
}added /files/skills~1replan~1SKILL.md
Field was absent
{
"sha256": "d70e6723e09147193210124901a071bee73e2b049d94de257e7843d83477b474",
"size": 1810
}added /files/skills~1replan~1agents~1openai.yaml
Field was absent
{
"sha256": "d3733f8688d5f225603383dc4f6a486cc0b72bec205f61a69225eac6b763587d",
"size": 686
}added /files/skills~1replan~1assets~1icon-large.png
Field was absent
{
"sha256": "0d5114eeadbd9b0f27a3a57289021c7473c1b87458d0fe7c55632c18994db1ff",
"size": 17034
}added /files/skills~1replan~1assets~1icon-small.png
Field was absent
{
"sha256": "dd06bd84dd3c72c23c177d13b46c3bd68eb6e0a4713e55fcacb2d7f77afd1296",
"size": 2013
}Full snapshot data
{
"files": {
".app.json": {
"sha256": "efc08a750353795d8813bbf26b175aab45142ed65e81acdb97e61e0f78059351",
"size": 127
},
".codex-plugin/plugin.json": {
"sha256": "ea0cd15b8d666982c546a15a8465f290742d59cfa637a5f9c01d92f127370823",
"size": 1572
},
"skills/adjust-for-weather/SKILL.md": {
"sha256": "25ef952e1f46b98ef4b43506d000f5870497a28b68b023dab780f61639bc095f",
"size": 2056
},
"skills/adjust-for-weather/agents/openai.yaml": {
"sha256": "dc53a6e2bb6797c7d78bdc1b099c01fcf2a208e2e156831b726bab74604838a4",
"size": 641
},
"skills/adjust-for-weather/assets/icon-large.png": {
"sha256": "0d5114eeadbd9b0f27a3a57289021c7473c1b87458d0fe7c55632c18994db1ff",
"size": 17034
},
"skills/adjust-for-weather/assets/icon-small.png": {
"sha256": "dd06bd84dd3c72c23c177d13b46c3bd68eb6e0a4713e55fcacb2d7f77afd1296",
"size": 2013
},
"skills/analyze-activity/SKILL.md": {
"sha256": "8d4f4e845d87ee52fa0ec35d6b6415dad79325794239a80e2cf2a9d5c24f40a8",
"size": 2845
},
"skills/analyze-activity/agents/openai.yaml": {
"sha256": "ac3b00235d50e0814b2d52863c63dfc4762d1fef951508293c9de9dca32879d3",
"size": 625
},
"skills/analyze-activity/assets/icon-large.png": {
"sha256": "0d5114eeadbd9b0f27a3a57289021c7473c1b87458d0fe7c55632c18994db1ff",
"size": 17034
},
"skills/analyze-activity/assets/icon-small.png": {
"sha256": "dd06bd84dd3c72c23c177d13b46c3bd68eb6e0a4713e55fcacb2d7f77afd1296",
"size": 2013
},
"skills/checkin/SKILL.md": {
"sha256": "3c8c064db65c6e3e2be527254a4344ac29e288dbb6867ef401241f33f0e019fd",
"size": 2041
},
"skills/checkin/agents/openai.yaml": {
"sha256": "6682ee2e17877bf2596046f07052200c9e6ef34eb29a52871ae65e9cfc985328",
"size": 689
},
"skills/checkin/assets/icon-large.png": {
"sha256": "0d5114eeadbd9b0f27a3a57289021c7473c1b87458d0fe7c55632c18994db1ff",
"size": 17034
},
"skills/checkin/assets/icon-small.png": {
"sha256": "dd06bd84dd3c72c23c177d13b46c3bd68eb6e0a4713e55fcacb2d7f77afd1296",
"size": 2013
},
"skills/replan/SKILL.md": {
"sha256": "d70e6723e09147193210124901a071bee73e2b049d94de257e7843d83477b474",
"size": 1810
},
"skills/replan/agents/openai.yaml": {
"sha256": "d3733f8688d5f225603383dc4f6a486cc0b72bec205f61a69225eac6b763587d",
"size": 686
},
"skills/replan/assets/icon-large.png": {
"sha256": "0d5114eeadbd9b0f27a3a57289021c7473c1b87458d0fe7c55632c18994db1ff",
"size": 17034
},
"skills/replan/assets/icon-small.png": {
"sha256": "dd06bd84dd3c72c23c177d13b46c3bd68eb6e0a4713e55fcacb2d7f77afd1296",
"size": 2013
}
}
}SHA-256 of public snapshot: 88fcb3745563569c7ea2bd09b127f2e9bf18039b472b3b33fd8cf2f3a6f73cf7