Make a skill in Claude Code
Build one skill. Run it Friday. Watch your weekly review write itself.
The skill you're about to build is the one most CEOs say earns its keep the fastest. You type /weekly-review in your folder on Friday afternoon. Claude reads the last seven days of meeting transcripts, the git log if you have one, and the calendar where it can. Ninety seconds later, a one-page summary lands in your home folder. Wins. Open asks. Things slipping. Heads-up for next week. You read it with a coffee and walk into the weekend already knowing what shipped, what didn't, and what you owe people next week.
Forty-five minutes of work today gives you that, every Friday, forever.
This is the how-to companion to what are skills in Claude Code. If you haven't read the explainer, skim it first; the rest of this assumes you know what a skill is and why one matters.
What you'll have when you're done
A working /weekly-review skill living at ~/.claude/skills/weekly-review/. When you type /weekly-review in any folder on your laptop, Claude reads your meeting transcripts, your commit log, and any calendar context you point it at for the last seven days, and writes a one-page markdown summary to ~/weekly-review-{date}.md. The skill is yours forever; running it next Friday costs you one keystroke.
Friday afternoon used to be a black hole
For most of my Fridays at Headphones.com, the four o'clock hour was the worst part of the week. I'd open my calendar and scroll backward. I'd open my notes and skim. I'd half-write a recap to send my leadership team, abandon it around five fifteen, and tell myself I'd finish it Sunday night. I never finished it Sunday night.
The unlock was building a skill that does the remembering for me. The first time /weekly-review ran and the summary landed on my disk before I'd even reached for my coffee, I realized I'd been doing the wrong work for a year. The single highest-leverage forty-five minutes you'll spend on Claude this week is writing the SKILL.md.
What you need first
- Claude Code installed and pointed at a folder you work in. If you haven't set that up, start with how to set up your CLAUDE.md file. Comes back in thirty minutes.
- A folder of meeting transcripts. If your meetings already land as markdown files (via the Granola → markdown pipeline or any other capture), you're set. If they don't, do the Granola pipeline first; comes back in thirty minutes.
- A git repository, optional but recommended. If the folder you work in is a git repo, the skill can pick up your commit log and use it as extra signal.
- Forty-five minutes of clear time. Most of it goes to writing the SKILL.md. The rest goes to the first run and one round of iteration.
Step-by-step
Step 1Create the skill folder
Open the terminal and type:
mkdir -p ~/.claude/skills/weekly-review && cd ~/.claude/skills/weekly-review
That creates the folder and moves you into it. ~/.claude/skills/ is where Claude Code reads its skill catalog at startup, so anything you put there gets registered as a skill automatically. If you'd rather use Finder, create the same folder structure by hand; the path matters more than the tool.
Step 2Create the SKILL.md
From the same terminal:
touch SKILL.md
That creates an empty SKILL.md file. (Or in your editor: new file, name it SKILL.md. Capitals matter on case-sensitive systems.) Open the file in your text editor.
Step 3Paste the scaffold
Paste this into the empty file. Don't customize anything yet. Save.
---
name: weekly-review
description: Read the last 7 days of meetings, commits, and calendar events. Write a one-page summary of wins, asks, open commitments, and things slipping. Output to ~/weekly-review-{date}.md.
---
# Weekly review
## When to invoke
When the user types `/weekly-review` in any folder. Also when the user asks
for a weekly recap, a Friday summary, or asks "what happened this week."
## Inputs to read
1. `~/notes/meetings/` (or wherever the user keeps meeting transcripts).
Read every file modified in the last 7 days.
2. The git log of the current folder, if it's a git repo:
`git log --since="7 days ago" --pretty=format:"%h %s" --no-merges`
3. The user's CLAUDE.md, for business context (who customers are, what
wins look like, what the user is trying to ship).
## The work
Produce a one-page markdown summary with four sections:
### Wins
Things that shipped, deals that closed, hires that landed, customer
milestones. Cite the source meeting filename or commit hash. 3-6 bullets.
### Open asks
Things the user owes other people, with the person and the rough deadline.
Pulled from meetings where the user said "I'll send you X by Y."
### Things slipping
Anything past due. Anything the user committed to and didn't deliver.
Be honest.
### Heads-up for next week
Up to three things the user should know about going into next week.
## Output
Write the summary to `~/weekly-review-{YYYY-MM-DD}.md`. Keep total length
under 400 words. After writing, print the absolute path of the file.
The point of this step is to see the shape of a working SKILL.md before you touch the content. Frontmatter at the top (name and description). A trigger description (when to invoke). Inputs (what to read). The work (what to do). Output (where to write).
Step 4Replace the placeholders
This is the part that actually takes time. The trick is the same as setting up a CLAUDE.md: open Claude Code in the skill folder and ask Claude to do the first pass with you.
claude
Then type:
Read SKILL.md. Help me customize the Inputs and The Work sections for my
business. My meeting transcripts live at {paste your actual path}. I want
the Wins section to surface {what a "win" looks like for you}. Ask me one
question at a time and revise SKILL.md as we go.
Claude will ask you a handful of questions. Where do your transcripts live? What counts as a win for you (revenue moves? customer milestones? hires landed?). What names should it watch for in commitments? Do you want a history of past weekly reviews on disk, or just the latest one? Each answer becomes a more specific SKILL.md.
A few notes on the harder choices:
- Inputs paths. Use absolute paths (
~/notes/meetings/), not relative ones. Skills get invoked from any folder, so a relative path will resolve differently every time and the skill will silently miss your transcripts. - What counts as a "win." Generic prompts produce generic summaries. If you tell Claude "wins are deals over $50K, new hires above director level, and customer NPS jumps," you'll get a useful summary. If you leave it as "things that shipped," you'll get the kind of recap that reads like LinkedIn.
- Length cap. The output cap of 400 words is load-bearing. Without it, Claude writes pages. With it, Claude has to pick what actually matters, which is most of the value.
Step 5Verify Claude sees the skill
Save the SKILL.md. Quit your existing Claude Code session (Ctrl+D or /exit) so the skill catalog reloads. Open a fresh session in any folder:
claude
Inside the session, type / and look for weekly-review in the skill list. If it's there, the skill is registered and Claude knows about it. If it's not, check three things in order:
- The file is at exactly
~/.claude/skills/weekly-review/SKILL.md(runls ~/.claude/skills/weekly-review/SKILL.mdto confirm). - The frontmatter at the top is valid (opens with
---, closes with---, includes bothnameanddescription). - The skill folder name (
weekly-review) matches thenamefield in the frontmatter.
Step 6Run it
Type /weekly-review. Claude will read your transcripts folder, walk the last seven days, pull your git log if you're in a repo, draft the four-section summary, write the file, and print the path. The whole thing takes about ninety seconds.
Open the file Claude wrote. Read it with a coffee. Two questions to ask yourself: did it surface the right wins? Did it miss anything you'd want flagged? If yes to either, open the SKILL.md and tighten the instruction that produced the gap. Run it again. The second version of any skill is usually the one you'll keep.
How you'll know it's working
The first signal is the file landing. The output exists, it has the four sections, and most of what's in it matches what actually happened last week.
The longer signal lands on the third Friday. By then, you'll notice you stopped opening your calendar to figure out what happened during the week. By the fifth Friday, the recap starts feeding directly into your team and investor updates instead of you re-writing the same content. The unlock isn't the first Friday it runs; it's the third Friday, when you realize you stopped opening your calendar to figure out what happened.
When it breaks
/weekly-reviewdoesn't autocomplete when you type/. The skill isn't registered. Runls ~/.claude/skills/weekly-review/SKILL.mdto confirm the file exists at the right path. Restart Claude Code if you just created the file.- The summary is generic and doesn't reference your actual meetings. The transcripts path in your SKILL.md is wrong or empty. Run
ls {your-transcripts-path}to confirm there are files there from the last seven days. - The summary misses obvious wins. The SKILL.md doesn't tell Claude what counts as a win for you. Edit the Wins description to add specific criteria (revenue moves, named hires, customer milestones).
- The summary runs three pages long. The length cap is missing or being ignored. Make the cap stricter ("Keep total length under 400 words. Cut anything that isn't load-bearing.") and re-run.
- Claude refuses to read your transcripts folder. Either the folder is outside Claude's allowed paths, or it's not a directory it can see from the session. Move the transcripts somewhere under
~/notes/and update the SKILL.md path. - The skill works the first Friday but starts missing things by the fourth. Your transcripts folder grew. Either archive meetings older than a few months, or split the skill into a phase-1 (read each meeting and tag it) and phase-2 (combine the week's tags into a summary).
Where this fits in your harness
This is your first skill. It probably won't be your last. Most CEOs who build one build a second within the week, usually a pre-meeting brief drafter or a customer-call follow-up writer. The marginal cost of the second skill is a third of the first, because you already know the shape.
The pair this skill compounds with: a working CLAUDE.md gives Claude your business context, so /weekly-review knows what a "win" means for your company without you having to explain it every time. Together they're the two foundational primitives of Claude Code.
Run the skill on Friday. When the file lands, paste the Wins section into a DM and tell me what showed up that you didn't know you'd done. That's the moment the compounding starts.
Get three workflows like this every Thursday
The Thursday 3 is a free weekly email. Three workflows that put you in the top 1% of CEOs. 90-second read. Every card links back to a step-by-step guide like this one.
Get the newsletter →The architecture behind this workflow.
Two operator's manuals for the same job, run two different ways. OpenCLAW for the always-on agent harness; Claude Code for the focused-work CLI. Pick one, or get the bundle for $149.
Browse the books · $99 each