An Elegant Coach Claude
I Taught Claude How to Coach Me (And You Can Too)
Will Larson’s An Elegant Puzzle has a chapter on presenting to leadership that changed how I think about structured communication. A 7-step framework for making recommendations that actually land. Clear, repeatable, effective.
Problem is, frameworks you don’t use are just bookmarks. So I did what any self-respecting terminal dweller would do: I turned it into an AI skill.
Two files. Ten minutes of setup. Now every time I need to present a recommendation, my AI coach walks me through the framework — adapted to the people I’m presenting to, the context of my organization, and the communication patterns I’m working to improve. Works with Claude, Gemini, or ChatGPT.
Here’s the recipe. Now make it yours.
Choose your path: Same skill files, different installation.
▶ Claude Code (terminal) — skip to quick-start
▶ Claude.ai Projects (browser) — skip to quick-start
▶ Gemini or ChatGPT (Gems/GPTs) — skip to quick-start
Or scroll down for the full story first.
📖 Want Templates & Checklists?
This article teaches you how to build the skill. For ready-to-use templates, authority language patterns, and detailed framework breakdowns, see the companion guide:
$ ./install.sh –target=claude-code — I use Claude Code. Give me the files.
Claude Code Quick Start (5 minutes)
Prerequisites: Claude Code installed and working.
- Download both files from the Downloads section below
- Drop
SKILL.mdinto your project root (or~/.claude/for global access) - Create
private-context.mdin the same location — fill in your audience notes (template provided) - Add a reference in your
CLAUDE.md:## Skills When I ask for help with presentations or recommendations: - SKILL.md (Larson 7-step framework) - private-context.md (my audience context) - Open Claude Code and try: “Help me structure a recommendation to switch vendors. Use the Larson communication framework.”
That’s it. Claude reads both files, synthesizes the framework with your context, and coaches you through it.
$ ./install.sh –target=claude-ai — I use Claude.ai Projects. Give me the files.
Claude.ai Projects Quick Start (5 minutes)
Prerequisites: A Claude.ai account (Pro or Team).
- Download both files from the Downloads section below
- Go to Claude.ai → Projects → Create New Project
- Name it “Communication Coach” (or whatever you like)
- Upload
SKILL.mdas a project knowledge file - Upload your customized
private-context.mdas a second knowledge file - Set the project instructions:
You are a communication coach. When I share a draft or ask for help structuring a presentation or recommendation: - Reference the SKILL.md framework and my private context - Check my language for weak or indirect patterns - Ensure the structure follows the 7-step Larson framework - Adapt to the specific audience I'm presenting to - Call out anti-patterns when you see them - Start a conversation: “I need to present a budget request to our finance lead. Help me structure it.”
Claude uses both files as context in every conversation within that project. Your private context stays in your project — it’s not shared.
$ ./install.sh –target=gemini-or-chatgpt — I use Gemini or ChatGPT. Give me the files.
Gemini Gem or ChatGPT GPT Quick Start (5 minutes)
Prerequisites: A Gemini account or ChatGPT Plus subscription.
- Download both files from the Downloads section below
- Customize
private-context-template.md— fill in your audience notes
For Gemini Gem:
- Go to Gemini → Gem manager → Create new Gem
- Name it “Communication Coach”
- In the instructions field, paste the entire contents of both files:
- First, paste all of
SKILL.md - Add a separator line:
--- - Then paste all of your
private-context.md
- First, paste all of
- Save the Gem and start a conversation: “Help me structure a recommendation to switch vendors.”
For ChatGPT GPT:
- Go to ChatGPT → Explore GPTs → Create
- Name it “Communication Coach”
- Upload both
SKILL.mdandprivate-context.mdas knowledge files - Set the instructions:
You are a communication coach. Reference the uploaded SKILL.md framework and private-context.md files when helping users structure presentations or recommendations. Always check for weak language patterns and ensure structure follows the 7-step Larson framework. - Save and test: “I need to present a budget request. Help me structure it using the framework.”
Platform Note: Gemini Gems store instructions in a single text field, so you paste both files together. ChatGPT GPTs use separate knowledge files, so you upload them individually. Both work identically once configured.
$ cat README.md
Why Build a Skill for This?
You’ve read a great book. Highlighted the key passages. Maybe even took notes. Then two weeks later, you’re drafting a presentation and none of it makes it into your actual work.
That’s the gap between knowing a framework and using it. AI can close that gap — but only if you give it something structured to work with.
An AI skill is just a markdown file that teaches your AI assistant a specific methodology. Upload it to Claude Projects, paste it into a Gemini Gem, attach it to a ChatGPT GPT — the platform doesn’t matter. The AI references it automatically whenever you ask for help in that domain. No plugins, no API calls — just files the AI reads.
“Make this sound more polished” is a vague prompt. It produces vague results. But “Coach me through Larson’s 7-step framework, adapted for a finance-focused audience who needs ROI in the first paragraph” — that produces something you can actually use.
The trick is encoding that specificity once, so you never have to spell it out again. That’s what a skill does.
$ cat larson_framework.md
The Framework: 7 Steps in 5 Minutes
This comes from An Elegant Puzzle by Will Larson, Section 3.13 — “Presenting to Senior Leadership.” It’s a structured approach to making recommendations that respect your audience’s time while demonstrating that you’ve done the work.
Answer “why should anyone care?” — not technically, but in terms of revenue, risk, or strategic positioning. This is your opening sentence. If you lose them here, the other six steps don’t matter.
2–4 sentences on how we got here. Not a history lesson — just enough context so the recommendation makes sense.
// “Our current vendor has missed SLA requirements for 6+ months, creating compliance risk.”
State exactly what you need. Budget amount. Headcount. A decision by Friday. Specific asks get specific answers.
// “I need $200K budget approval and your input on team integration.”
The evidence behind your recommendation. Key metrics, not all metrics. Address the obvious counterargument before someone raises it.
Share your mental model. “I prioritized risk mitigation over cost savings because…” This shows your thinking, not just your conclusion.
Concrete milestones. “Phase 1 starts March 1, Phase 2 by Q2 end.” Vague timelines signal vague thinking.
Close the loop. Restate what you need. Check for agreement. Don’t let the room drift into “interesting discussion” territory.
Total runtime: ~5 minutes. Everything beyond that goes in a supporting appendix your audience can read on their own time.
$ tree ~/.claude/skills/
The Architecture: Two Files, Infinite Leverage
Here’s where it gets interesting for Claude users. The skill is two files:
communication-skill/
├── SKILL.md # The public framework (shareable, portable)
└── private-context.md # Your private layer (audience, org, patterns)
SKILL.md contains the Larson framework, common anti-patterns, audience adaptation guidelines, language patterns, and a document structure template. It’s generic enough that anyone can use it. I’m giving you this file at the end of this article.
private-context.md is where the magic happens. It contains:
- Audience preferences — how the people you present to prefer to receive information
- Organizational context — industry, size, priorities, and constraints worth noting
- Feedback you’ve received — what’s worked, what hasn’t, guidance from mentors
- Your own examples — how your communication has evolved over time
- Pre-tuned openers — opening sentences you’ve found effective for different audiences
The private context never gets shared. It’s yours. But it’s what turns a generic framework into a personalized communication coach that knows your workplace as well as you do.
$ ./setup.sh –verbose
Taking It Further: Full Setup Walkthroughs
The quick-start boxes above cover the basics. If you want the full step-by-step with explanations, expand the walkthrough for your platform.
Claude Code (Terminal) — Full 5-step walkthrough with code examples
Claude Code reads CLAUDE.md files and any files referenced in your project context. Here’s the full setup.
Grab SKILL.md and private-context-template.md from the Downloads section.
Decide where the skill lives:
- Project-level — drop both files in your project root. Claude sees them when you work in that project.
- Global — put them in
~/.claude/so Claude has them in every project.
// I keep mine global. Clear communication doesn’t belong to one project.
Rename private-context-template.md to private-context.md and fill it in. Start with 2–3 people you present to most often. You can always add more later.
// The template has prompts for each section. Spend 10 minutes here — it pays off immediately.
Add this to your project’s CLAUDE.md (create one if you don’t have one):
## Skills
### Structured Communication
When I ask for help with presentations, briefs, or
recommendations, reference these files:
- SKILL.md (Larson 7-step framework and anti-patterns)
- private-context.md (my audience preferences and context)
Open Claude Code and try:
I need to recommend a vendor switch to our finance lead.
Help me structure the recommendation using the Larson
communication framework.
Claude should reference the 7-step framework, pull in your audience preferences from the private context, and coach you through drafting it.
Claude.ai Projects (Browser) — Full 5-step walkthrough with screenshots
Claude.ai Projects let you attach knowledge files and custom instructions that persist across conversations. Same idea, different interface.
Claude.ai → Projects → Create New Project. Name it “Communication Coach” or similar.
In the project settings, add SKILL.md under Knowledge. Claude references it automatically in every conversation within this project.
Add your customized private-context.md as a second knowledge file. This stays in your project — not shared with anyone.
In the project’s custom instructions field, add:
You are a communication coach. When I share a draft or
ask for help, reference SKILL.md and my private context
to provide specific, actionable coaching.
Always:
- Check for weak or indirect language patterns
- Ensure structure follows the 7-step Larson framework
- Adapt to the audience I'm presenting to
- Call out anti-patterns with specific fixes
- Suggest clearer, more direct alternatives
Start a conversation in the project:
I need to present a budget request for a new hire.
Help me structure it using the framework.
Claude should pull from both files and walk you through the 7 steps, adapted to your audience’s priorities.
Gemini Gem or ChatGPT GPT — Full setup walkthrough for both platforms
Both Gemini Gems and ChatGPT GPTs let you create custom AI assistants with persistent instructions and knowledge. The setup is similar, with minor platform differences.
Gemini Gem Setup (5 steps)
Grab SKILL.md and private-context-template.md from the Downloads section. Customize the private context template with your audience preferences.
Go to Gemini → Gem manager (sidebar) → Create new Gem. Name it “Communication Coach”.
Gemini Gems use a single instructions field. Open both markdown files and paste them together:
- Paste the entire contents of
SKILL.md - Add a separator:
--- - Paste the entire contents of your customized
private-context.md
// Gemini reads all of this as instructions, same way Claude Projects reads knowledge files
At the top of the instructions field, you can add an intro line:
You are a communication coach. When helping with presentations
or recommendations, reference the Larson framework and private
context below to provide specific, actionable coaching.
// Not strictly required, but helps set the tone
Save the Gem and start a conversation:
I need to recommend a vendor switch to our CFO.
Help me structure it using the framework.
Gemini should reference the 7-step framework and your audience notes automatically.
ChatGPT GPT Setup (5 steps)
Same as Gemini — grab both files from the Downloads section and customize your private context.
Go to ChatGPT → Explore GPTs (sidebar) → Create. Name it “Communication Coach” and add a short description like “Structured communication coaching using the Larson 7-step framework.”
In the Knowledge section, upload both files:
- Upload
SKILL.md(the framework) - Upload your customized
private-context.md(your audience notes)
// Unlike Gemini, ChatGPT keeps files separate — it references both when needed
In the Instructions field, add:
You are a communication coach. Reference the uploaded
SKILL.md framework and private-context.md files when
helping users structure presentations or recommendations.
Always:
- Check for weak or indirect language patterns
- Ensure structure follows the 7-step Larson framework
- Adapt to the specific audience noted in private context
- Call out anti-patterns with specific fixes
Click Create to save your GPT. Test it with:
I need to present a budget request for a new hire.
Help me structure it using the framework.
ChatGPT should pull from both knowledge files and coach you through the 7 steps.
$ vi private-context.md
Making It Personal
The private context file is what separates “generic AI writing assistant” from “a coach that knows my world.” Here’s how to build one that actually works.
Everyone processes information differently. Your finance lead wants ROI in the first sentence. Your technical lead wants architecture implications. Your ops lead wants to know how it affects the team. These aren’t personality profiles — they’re your notes to yourself about how to be a better communicator for each audience.
Start With Three Questions Per Person
For each person you regularly present to, answer these:
- What do they need to hear in the first 30 seconds to stay engaged? This becomes your “Lead with…” guidance.
- What framing doesn’t land? Cost-heavy when they want strategy? Jargon-heavy when they want impact? This becomes your “Avoid…” guidance.
- How do they prefer to make decisions? Data-driven? Consensus-building? Quick and decisive? This shapes how you structure your evidence.
Example: Audience Preferences
- [Finance Lead] — Numbers-first, ROI-focused. Lead with financial impact. Quantify risks in dollar terms. Show clear ROI calculations with realistic timelines.
- [Technical Lead] — Architectural thinking, systems perspective. Lead with technical implications. Connect to platform strategy and scalability. Show trade-off analysis.
- [Operations Lead] — Operational focus, team impact. Lead with how this affects day-to-day work. Address change management. Show delivery timeline implications.
Note Your Own Weak Spots
We all have communication patterns that dilute our message. Note yours so Claude can flag them:
| Habit | What It Sounds Like | Stronger Alternative |
|---|---|---|
| Burying the lead | “Let me give you some background first…” | Lead with the recommendation |
| Indirect asks | “Would you be open to…” | “I recommend X. I need Y to move forward.” |
| Hedging | “I think maybe we should consider…” | “Based on my analysis, the best approach is…” |
| Problem-first framing | “We have these issues…” | “Here’s the opportunity to improve outcomes” |
| Over-documenting | 15 pages of options | 2 pages + appendix. Clarity, not volume. |
Include a Before/After Example
Write out a real example of how you used to frame something vs. how you’d frame it now. This is the most useful training data for Claude — it shows the specific patterns you are working to change.
$ cat /var/log/mistakes.log
Lessons Learned
The private context file took three iterations. First version was too detailed — I was overthinking it. Second version was too sparse to be useful. Third version hit the sweet spot: communication preferences, framing guidance, and 1–2 example openers per person. That’s the template I gave you.
Start with 2–3 people, not everyone. You don’t need every person profiled on day one. Start with the people you present to most often. Add more as you need them. An incomplete private context file is infinitely more useful than no private context file.
AI catches patterns you’ll miss in your own writing. I ran an old presentation through the skill. It flagged weak language I’d completely glossed over — hedging phrases, buried recommendations, vague asks. Having a framework-aware reviewer that never gets tired of checking the same patterns is genuinely useful.
The framework applies way beyond formal presentations. Emails. Slack messages. Budget proposals. Project kickoff documents. Any time you’re making a case for something, the Larson structure helps you get to the point faster and more clearly.
Update your private context after every big interaction. Did a particular framing land well? Add it. Did something fall flat? Note it. The skill gets better as your context file gets richer. Think of it as a recipe you’re constantly refining.
$ man ai-skills
The Bigger Pattern: Skills Beyond Communication
The two-file pattern — public framework + private context — works for any domain expertise you want to encode into your AI assistant:
| Skill Domain | SKILL.md Contains | Private Context Contains |
|---|---|---|
| Technical Writing | Documentation standards, structure patterns | Your team’s style guide, codebase conventions |
| Code Review | Review principles, common issues checklist | Your team’s patterns, tech stack gotchas |
| Incident Response | Incident management framework, severity levels | Your runbooks, escalation paths, on-call roster |
| Interview Prep | STAR method, behavioral frameworks | Your career stories, target company research |
| 1:1 Meetings | Effective 1:1 structure, coaching questions | Direct reports’ goals, development areas |
The pattern is always the same: encode the universal methodology in SKILL.md, encode your specific situation in private-context.md. Your AI handles the synthesis. You get domain-specific coaching that actually knows your world.
$ wget –recursive ./resources/
Downloads
Both files are sanitized and ready to use. No credentials, no company-specific details — just the framework and the template.
What’s in SKILL.md?
- Complete 7-step Larson framework with examples
- 6 common anti-patterns with corrections
- Audience-specific adaptation guidelines
- Strong vs. weak language patterns
- Document structure template (summary format)
- Pre-meeting preparation checklist (including nemawashi)
- Success metrics and red flags
- Full before/after example transformation
What’s in private-context-template.md?
- Audience preference template (communication style, priorities, framing)
- Organizational context section (industry, size, constraints)
- Role context section (your title, expertise, constraints)
- Feedback history section (mentor guidance, what you’ve learned)
- Self-assessment section (patterns Claude should flag)
- Audience-specific opening sentence templates
- Before/after example section (your own evolution)
$ exit
Make It Yours
The best frameworks are the ones you actually use. Not the ones you highlighted in a book six months ago. Building a skill file takes ten minutes and turns your AI into a coach that holds you to a standard every time you write.
Grab the files. Spend ten minutes on your private context. Try it on your next recommendation and see what it catches.
And if structured communication isn’t your starting point — pick a different framework. The two-file pattern works for anything worth doing consistently. The skill is just the delivery mechanism. The expertise is yours.

One Comment