WEBVTT - Selling Claude Code skills for $0.10 USDC

1
00:00:00.000 --> 00:00:01.151
I shipped a skills marketplace into this blog today.

2
00:00:01.151 --> 00:00:04.092
It sells Claude Code skills — small Markdown files that teach an AI coding assistant how to do something specific — for $0.

3
00:00:04.092 --> 00:00:04.475
10 USDC each.

4
00:00:04.475 --> 00:00:04.731
Agents pay.

5
00:00:04.731 --> 00:00:05.115
Humans browse free.

6
00:00:05.115 --> 00:00:09.462
The whole thing is four files. No custom payment code, no Stripe integration, no account system, no database beyond what the blog already has. Here's how it works and why the economics make sense.

7
00:00:09.462 --> 00:00:09.973
What a skill is

8
00:00:09.973 --> 00:00:11.891
A Claude Code skill is a Markdown file with YAML frontmatter that lives at ~/.

9
00:00:11.891 --> 00:00:12.019
claude/skills/&lt;name&gt;/skill.

10
00:00:12.019 --> 00:00:12.147
md.

11
00:00:12.147 --> 00:00:14.577
When Claude Code starts a session, it reads every skill in that directory and incorporates them as available capabilities.

12
00:00:14.577 --> 00:00:18.157
A skill can teach Claude how to deploy to a specific platform, diagnose a specific class of bug, follow a specific testing methodology, or use a specific API.

13
00:00:18.157 --> 00:00:18.924
The format is open and standardized.

14
00:00:18.924 --> 00:00:19.563
Anyone can write a skill.

15
00:00:19.563 --> 00:00:23.399
The value is in the specificity — a good skill encodes hard-won operational knowledge that would otherwise take an engineer hours to figure out from docs, error messages, and trial-and-error.

16
00:00:23.399 --> 00:00:25.701
I have four skills live right now, all derived from real problems I hit while building this blog:

17
00:00:25.701 --> 00:00:28.642
Cloudflare DNS Stuck Cache Diagnosis — the exact diagnostic sequence for "site works on my phone but not my Mac" after a deploy

18
00:00:28.642 --> 00:00:30.815
Wrangler Secret Key Hygiene — how to handle API keys that appear in chat without leaking them

19
00:00:30.815 --> 00:00:32.478
EmDash Post Publishing Pipeline — the full Markdown-to-Portable-Text-to-REST-API pipeline with every gotcha documented

20
00:00:32.478 --> 00:00:34.779
EmDash Blog Deploy Ritual — the build-deploy-verify sequence with the pnpm deploy builtin collision and DNS cache workaround

21
00:00:34.779 --> 00:00:36.953
Each encodes 30-60 minutes of debugging compressed into a file an agent can read in 2 seconds.

22
00:00:36.953 --> 00:00:37.592
How x402 makes this work

23
00:00:37.592 --> 00:00:39.894
x402 is HTTP's payment response code made real. When an agent fetches a gated resource, the server returns:

24
00:00:39.894 --> 00:00:43.730
The agent's x402 client reads the payment instructions, settles $0.10 USDC on Base, attaches the payment proof header, and re-fetches. The server verifies via the facilitator and returns the content.

25
00:00:43.730 --> 00:00:45.903
No account. No session. No cookies. No subscription. One HTTP round-trip with a payment in the middle.

26
00:00:45.903 --> 00:00:47.310
EmDash ships this as a first-party integration. In my Astro config:

27
00:00:47.310 --> 00:00:48.077
And in each skill's page template:

28
00:00:48.077 --> 00:00:48.589
That's the entire paywall.

29
00:00:48.589 --> 00:00:49.739
Five lines in the config, four in the template.

30
00:00:49.739 --> 00:00:52.808
The botOnly: true flag means humans see the full content for free — only automated clients (agents, scrapers, API consumers) get the 402 challenge.

31
00:00:52.808 --> 00:00:55.366
This is a deliberate choice: I want humans to read the skills, share them, and tell other people about them.

32
00:00:55.366 --> 00:00:56.516
The revenue comes from the agents that install them.

33
00:00:56.516 --> 00:00:56.900
The download endpoint

34
00:00:56.900 --> 00:00:59.329
Skills need to be installable, not just readable. The /skills/[slug]/raw endpoint returns the raw Markdown as text/plain, also x402-gated:

35
00:00:59.329 --> 00:01:03.549
The agent downloads the skill, writes it to disk, and it's active for all future sessions. One purchase, permanent access. The seller gets $0.10, the buyer gets operational knowledge that saves them hours.

36
00:01:03.549 --> 00:01:04.060
Why the math works

37
00:01:04.060 --> 00:01:06.745
A skill costs $0.10 to buy and $0.00001 to serve (one Cloudflare Worker invocation returning cached text). That's a 99.99% margin.

38
00:01:06.745 --> 00:01:08.152
If 100 agents download one skill per day, that's $10/day, $300/month.

39
00:01:08.152 --> 00:01:09.942
For four Markdown files that I wrote in an evening while solving real problems.

40
00:01:09.942 --> 00:01:12.499
The marginal cost of adding a fifth skill is writing the Markdown — zero infrastructure, zero ops, zero customer support.

41
00:01:12.499 --> 00:01:14.673
The real question is whether enough agents will ship with x402 clients to make the market liquid.

42
00:01:14.673 --> 00:01:15.057
Today, it's early.

43
00:01:15.057 --> 00:01:18.893
But the protocol is simple, the facilitator is live, and every agent that supports it can buy from every seller that supports it without any marketplace intermediary taking a cut.

44
00:01:18.893 --> 00:01:19.404
What I didn't build

45
00:01:19.404 --> 00:01:23.879
I didn't build a custom payment flow. I didn't build a user account system. I didn't build a download manager. I didn't build an analytics dashboard for sales. I didn't build a license key system.

46
00:01:23.879 --> 00:01:27.332
All of that is either handled by x402 (payment), EmDash (content management, admin UI, analytics hooks), or unnecessary (license keys for a $0.10 product are pure overhead).

47
00:01:27.332 --> 00:01:27.971
The entire marketplace is: 1.

48
00:01:27.971 --> 00:01:29.761
An EmDash content collection called "skills" with title, content, price, and raw_markdown fields 2.

49
00:01:29.761 --> 00:01:31.296
Three Astro page templates: listing, detail (x402-gated), and raw download (x402-gated) 3.

50
00:01:31.296 --> 00:01:31.935
The x402 integration in astro.

51
00:01:31.935 --> 00:01:32.063
config.

52
00:01:32.063 --> 00:01:32.830
mjs pointing at my hardware wallet

53
00:01:32.830 --> 00:01:35.899
If you have an EmDash blog, you can add a skills marketplace in about fifteen minutes. The hardest part is writing skills worth buying.

54
00:01:35.899 --> 00:01:36.154
What's next

55
00:01:36.154 --> 00:01:37.305
I'm writing more skills as I build more things.

56
00:01:37.305 --> 00:01:40.246
Every time I solve a non-obvious problem — a deployment footgun, an API integration pattern, a debugging sequence — it becomes a skill.

57
00:01:40.246 --> 00:01:42.164
The blog post explains the problem for humans; the skill teaches the solution to agents.

58
00:01:42.164 --> 00:01:44.593
The skills are at mondello.dev/skills. The source for everything, including the plugins and the marketplace pages, is at github.com/integrate-your-mind/mondello-dev.

59
00:01:44.593 --> 00:01:46.000
If you write skills worth buying, x402 will find the buyers.
