Coach
felixrieseberg/claude-coach
Create personalized triathlon, marathon, and ultra-endurance training plans.
Evidence-based endurance coaching protocol (v11.70). An agent skill from CrankAddict/section-11.
$ npx skills add CrankAddict/section-11 --skill section-11 -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install CrankAddict/section-11 section-11 --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
Claude Code skills documentation · loads skills from .claude/skills/
Install the "section-11" agent skill from https://github.com/CrankAddict/section-11/tree/main into .claude/skills/section-11/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "section-11", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add CrankAddict/section-11 --skill section-11 -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install CrankAddict/section-11 section-11 --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "section-11" agent skill from https://github.com/CrankAddict/section-11/tree/main into .agents/skills/section-11/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "section-11", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add CrankAddict/section-11 --skill section-11 -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install CrankAddict/section-11 section-11 --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "section-11" agent skill from https://github.com/CrankAddict/section-11/tree/main into .cursor/skills/section-11/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "section-11", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add CrankAddict/section-11 --skill section-11 -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install CrankAddict/section-11 section-11 --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "section-11" agent skill from https://github.com/CrankAddict/section-11/tree/main into .gemini/skills/section-11/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "section-11", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install CrankAddict/section-11 section-11Installs for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add CrankAddict/section-11 --skill section-11 -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "section-11" agent skill from https://github.com/CrankAddict/section-11/tree/main into .github/skills/section-11/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "section-11", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add CrankAddict/section-11 --skill section-11 -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install CrankAddict/section-11 section-11 --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "section-11" agent skill from https://github.com/CrankAddict/section-11/tree/main into .opencode/skills/section-11/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "section-11", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
section-11Evidence-based endurance coaching protocol (v11.70). An agent skill from CrankAddict/section-11.
Section 11 is an agent skill from CrankAddict/section-11. Evidence-based endurance coaching protocol (v11.70). Use when analyzing training data, reviewing sessions, generating pre/post-workout reports, planning workouts, answering training questions, or giving endurance coaching advice. Always read or fetch athlete JSON data before responding to any training question.
Its SKILL.md is about 5.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 96 other files (for example `.github/site/README.md`, `.github/site/package-lock.json` and `.github/site/package.json`).
It sits in Productivity & Automation, covering Health and fitness tracking. The repository describes itself as: Evidence-based AI coach for endurance training. Protocol-driven. Deterministic guidance for any LLM, with Intervals.icu integration. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 83e2775. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (JavaScript, from the files we listed), which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Section 11 loads about 5.2k tokens when it runs. Until then it costs about 81 tokens; SKILL.md has 2,758 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from CrankAddict/section-11 at commit 83e2775, republished under its MIT licence (© CrankAddict). 2,758 words, ~5,187 tokens.
.claude/skills/section-11/SKILL.md (or your agent's skills folder). This skill also uses 93 other files; get the full folder from GitHub.Data files (latest.json, history.json, intervals.json, ftp_history.json, routes.json, saved_workouts.json, DOSSIER.md, section11/) live in the athlete's data directory: a runtime-accessible location, typically something like ~/training-data/. HEARTBEAT.md lives in the agent workspace: the directory the agent runs from. These may or may not be the same directory.
The data directory is where training data is read. It is not the authority record for the dossier: the authoritative dossier copy is named in the Official dossier location field in the dossier's own header block.
Files under any examples/json-examples/ folder, including section11/examples/json-examples/, and any file ending in .example.json are fictional schema examples, never athlete data. Never use them for coaching, reports, readiness, planning or athlete metrics, and never fall back to them when a real data file is missing or stale.
On first use:
Check for DOSSIER.md in the data directory
Official dossier location, dossier revision, last reviewedsection11/DOSSIER_TEMPLATE.mdOfficial dossier location. Keep it in a private location: a local data directory, a private repository, or a private document store. Never place a private dossier in a public data mirrorSet up JSON data source
latest.json, history.json, intervals.json, ftp_history.json, routes.json (when events have GPX/TCX attachments) and saved_workouts.json in the data directory. The runtime reads them directly. This may be the athlete's own machine or a provider-hosted computer; "agentic" does not mean "local". See examples/json-local-sync/SETUP.md for the full pipeline.Platform routing. Three surfaces, two contracts:
| Surface | Contract |
|---|---|
| Grok (web/app), and other web-chat platforms | PROJECT_INSTRUCTIONS_WEB.md |
| Grok Bot, Hermes Agent, and other agentic runtimes | PROJECT_INSTRUCTIONS_AGENTIC.md |
Grok Bot and Hermes Agent are experimental: the capability class fits, but the Section 11 pipeline is not validated end to end on either. Treat support as unproven rather than assured.
DOSSIER.md and SECTION_11.md there provides everything in one connection, and is safe only while the source is private. This delivery path supplies data only. It confers no write authority, no ability to trigger actions or workflows, and no script execution; each of those capabilities is separate and must be verified before it is used or assumed.latest.json: current 7-day snapshot + 28-day derived metricshistory.json: longitudinal data (daily 90d, weekly 180d, monthly 3y)intervals.json: per-interval segment data for recent structured sessions, plus DFA a1 session rollups when AlphaHRV recorded (14-day retention)ftp_history.json: dated FTP changes (indoor/outdoor), used for staleness tracking and benchmark comparisonroutes.json: route/terrain data for events with GPX/TCX attachments (when present)saved_workouts.json: read-only mirror of the athlete's saved workouts from Intervals.icu (Saved Workouts Mirror)Configure heartbeat settings (optional, OpenClaw)
HEARTBEAT.md in the agent workspacesection11/examples/agentic/openclaw/HEARTBEAT_TEMPLATE.mdConfigure data discipline rule (agentic platforms with persistent identity)
A current JSON read is required before any numeric or prescriptive coaching. A missing or incomplete dossier limits personalization but does not block safe, data-based coaching, and unresolved dossier review items must not block unrelated coaching. Say what is missing rather than inferring it.
Load the coaching protocol using this precedence:
./SECTION_11.md (data directory root)section11/SECTION_11.mdIf both root and section11/ copies exist, prefer the root copy.
Current version: 11.70
All external files referenced by this skill (sync.py, SECTION_11.md, templates, setup guides) are maintained in the open-source CrankAddict/section-11 repository and can be inspected there.
Each source answers its own domain; the order is not a ranking across domains. See the Fact/source authority hierarchy in SECTION_11.md → Source Architecture Note.
Official dossier locationhas_terrain: true)intervals.json when analyzing a specific activity where has_intervals: true OR has_dfa: true. For block reports, load when any session in the block has either flag. Use for: interval compliance, pacing analysis, cardiac drift per set, recovery quality, DFA a1 session-level interpretation. Do not load for readiness, load management, or weekly summaries.routes.json when a planned event has has_terrain: true. Use for: route analysis, terrain-adjusted pacing, pre-ride briefing, race preparation. Same precedence as other JSON files.saved_workouts.json when selecting or reusing a saved workout, or when the athlete asks about their saved workouts. Do not load it for every training question or report. It is the preferred read path for saved workouts on every platform, because it avoids repeated API retrieval and is faster and cheaper to consume. On API-connected platforms, use the Intervals.icu API for edits, and as a read fallback when the mirror is missing, unavailable, stale, inconsistent, or lacks required data. The mirror is read-only and never grants write authority. Check refresh.status before use: ok means the snapshot was verified at refresh.last_success_at, stale means a retained older snapshot after a failed refresh, unavailable means no snapshot has ever succeeded. consistency: endpoints_disagree means the two upstream endpoints did not agree; treat folder membership as indicative. A saved workout may be prescribed only after verifying that its structure implements an applicable Workout Reference Library template or permitted variant. saved_workouts.json is never evidence of what was prescribed for a completed activity: historical compliance requires a verified Intervals.icu activity/event pairing or an authoritative prescription supplied in context, and the local JSON mirrors do not carry the prescription.WORKOUT_REFERENCE.md from section11/examples/workout-library/, then the connected repo, then uploaded or attached files, then https://raw.githubusercontent.com/CrankAddict/section-11/main/examples/workout-library/WORKOUT_REFERENCE.md. If it cannot be loaded, say so rather than improvising a structure.Official dossier location, and conflicting copies go to the athlete.health_context.clarification_required is true in latest.json, do not recommend the planned session without addressing it. A marker in current means acknowledge the illness or injury and establish severity. A marker in recent with none current means the calendar marking stopped, not that the athlete recovered. Ask, do not assume. When source_status is partial and no marker is visible, say that health markers could not be checked completely and confirm whether illness or injury is currently relevant. A marker does not discard or replace the plan: the planned session remains the starting candidate (not presumed clearance) until severity and compatibility are established, and minor illness or injury may still allow it as written or in modified form. It is not a readiness signal, does not by itself mean skip or deload, and never relaxes an existing Skip. See Health Context in SECTION_11.md.zone_preference in READ_THIS_FIRST and zone_basis fields on TID/zone blocks. The athlete may have configured HR-preferred zones for specific sports (e.g., running). When zone_basis is not the default "power", note this in reports.If push.py is available (section11/examples/agentic/push.py or in the data repo), the skill can manage the athlete's Intervals.icu calendar and training data:
--chat for messages panel) or planned workouts (NOTE: prepended to description)All write operations default to preview mode. Nothing is written without --confirm. Execution via local CLI or GitHub Actions dispatch. See examples/agentic/README.md for full usage, workout syntax, and template ID mappings.
Requires a runtime that can execute code or trigger repository actions, with verified access and configured credentials, not merely a platform labelled agentic. Web chat cannot use this. Grok Bot and Hermes Agent have the required capability class but are experimental: neither is validated end to end against the Section 11 pipeline, and capability class is not a support promise. A connector supplies data only: it confers no write authority, no ability to trigger actions or workflows, and no script execution. Each of those capabilities is separate and must be verified before it is used or assumed.
Verified-write rule. Apply an approved dossier change only against a location whose write access has actually been verified. Otherwise return the revised file and state plainly that the source was not updated. Never emit a full replacement dossier unless the complete current file is in context; with only an excerpt, return the changed section clearly labelled as a fragment.
Use standardized report formats. Load templates using this precedence:
reports/ directorysection11/examples/reports/Templates:
PRE_WORKOUT_REPORT_TEMPLATE.mdPOST_WORKOUT_REPORT_TEMPLATE.mdWEEKLY_REPORT_TEMPLATE.mdBLOCK_REPORT_TEMPLATE.mdOn each heartbeat, follow the checks and scheduling rules defined in your HEARTBEAT.md:
Data ownership & storage Section 11 operates no hosted backend. Data moves only through services the athlete explicitly configures. Any AI, runtime, model, connector, repository or storage providers actually involved have their own processing and retention terms. See the README's Privacy & Security section for the full statement.
The skill reads from: user-configured JSON data sources and DOSSIER.md at its recorded location, and HEARTBEAT.md in the agent workspace.
It writes to DOSSIER.md only to apply a change the athlete has explicitly approved, against a location whose write access has been verified, at first-use creation and at every subsequent maintenance change alike. See SECTION_11.md → Update & Version Guidance for the full lifecycle and approval rules.
It writes to HEARTBEAT.md in the agent workspace during first-use setup, following that file's own setup flow. HEARTBEAT is agent configuration, not athlete context, and is not governed by the dossier lifecycle.
Data Handling
sync.py redacts athlete_id from the output (always on, unconditional). Activity names are passed through as-is. They carry coaching context (route identification, terrain association). All other training data (activities, wellness, intervals, power/HR values, dates) is passed through to the AI coach as-is.
Network behavior When running locally (files in the data directory), no network requests are needed for protocol, templates, or data. When files are not available locally, the skill fetches them from configured sources.
Credentials are sent only to the service they authenticate, and only when that service is configured: sync.py sends the Intervals.icu key in an Authorization header to Intervals.icu, and the GitHub token to GitHub when publishing or issue creation is configured. Credentials are never written into exported or published JSON. Fetched content comes from sources the athlete has explicitly configured; published content goes to services the athlete has explicitly configured. Chat retention is governed by the AI platform's terms, not by Section 11.
Recommended setup: local files
The safest and simplest setup is fully local: sync.py on a timer, all files on your device. See examples/json-local-sync/SETUP.md for the complete local pipeline. If you use GitHub, use a private repository. See examples/json-auto-sync/SETUP.md for automated sync setup.
Protocol and template URLs The GitHub URLs are fallbacks for when local files aren't available. The risk model is standard open-source supply-chain.
Heartbeat / automation The heartbeat mechanism is fully opt-in. It is not enabled by default and nothing runs automatically unless the user explicitly configures it. When enabled, it performs a narrow set of actions: read training data, run analysis, write updated summaries/plans to the user's chosen location.
Private repositories & agent access Section 11 does not implement GitHub authentication. It reads files from whatever locations the runtime environment can already access:
Access is entirely governed by credentials the user has already configured in their environment.
© CrankAddict, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 93 other files in the repository root of CrankAddict/section-11.
Open the folder on GitHubat commit 83e2775
Section 11 next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Section 11 this skillCrankAddict/section-11 | 156 | — | ~5.2k | Automated safety check: Pass | MIT | |
| Coachfelixrieseberg/claude-coach | 199 | 1 repos | ~4.9k | Automated safety check: Pass | MIT | |
| Fitness Analyzerhuifer/WellAlly-health | 960 | 5 repos | ~1.3k | Automated safety check: Pass | MIT | |
| Master Ajahn Chahxr843/Master-skill | 447 | 1 repos | ~2k | Automated safety check: Pass | CC-BY-NC-SA-4.0 | |
| Mental Health Analyzerhuifer/WellAlly-health | 960 | 5 repos | ~3.2k | Automated safety check: Pass | MIT | |
| Nutrition Analyzerhuifer/WellAlly-health | 960 | 5 repos | ~3.3k | Automated safety check: Pass | MIT |
felixrieseberg/claude-coach
Create personalized triathlon, marathon, and ultra-endurance training plans.
huifer/WellAlly-health
分析运动数据、识别运动模式、评估健身进展,并提供个性化训练建议。支持与慢性病数据的关联分析. An agent skill from huifer/WellAlly-health.
xr843/Master-skill
A skill your agent uses when user asks about 南传佛教, 上座部, Theravada, 巴利经典, 正念 sati, 放下, 三法印, 四念处, 出入息念 anapanasati, 戒定慧, 毗婆舍那, 森林禅林派, 巴蓬寺, 阿姜查, 杜多行, 中道, or wants teaching in 阿姜查 Ajahn Chah's voice.
huifer/WellAlly-health
分析心理健康数据、识别心理模式、评估心理健康状况、提供个性化心理健康建议。支持与睡眠、运动、营养等其他健康数据的关联分析。
huifer/WellAlly-health
分析营养数据、识别营养模式、评估营养状况,并提供个性化营养建议。支持与运动、睡眠、慢性病数据的关联分析. An agent skill from huifer/WellAlly-health.
Google-Health-API/google-health-cli
Query Google Health API v4 — steps, heart rate, exercise, sleep, weight, SpO2, HRV, ECG, blood glucose, nutrition, and 40 total data types
Categories
Evidence-based endurance coaching protocol (v11.70). An agent skill from CrankAddict/section-11. Section 11 is an agent skill from CrankAddict/section-11.70).
Section 11 fits situations like: analyzing training data; reviewing sessions; generating pre/post-workout reports; planning workouts.
Run `npx skills add CrankAddict/section-11 --skill section-11 -a claude-code`. Or copy the skill folder (the CrankAddict/section-11 repository) into .claude/skills/section-11 in your project. Claude Code loads it when a task matches its description.
Run `npx skills add CrankAddict/section-11 --skill section-11 -a codex`. Or copy the skill folder (the CrankAddict/section-11 repository) into .agents/skills/section-11 in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add CrankAddict/section-11 --skill section-11 -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/section-11, .gemini/skills/section-11, .github/skills/section-11 and .opencode/skills/section-11 in your project.
Going by SKILL.md and its folder, Section 11 needs JavaScript for the scripts in its folder.
SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Section 11 is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.
About 5.2k tokens (SKILL.md is roughly 21k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Section 11: Coach (felixrieseberg/claude-coach, 199 stars), Fitness Analyzer (huifer/WellAlly-health, 960 stars), Master Ajahn Chah (xr843/Master-skill, 447 stars) and Mental Health Analyzer (huifer/WellAlly-health, 960 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
CrankAddict (a GitHub user) maintains it in CrankAddict/section-11, which has 156 GitHub stars. The repository was last updated on October 4, 2026.
Source: CrankAddict/section-11 on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.