);
};
type UseCase = {
tag: string;
title: string;
before: string;
now: string;
limits: string;
};
const USE_CASES: UseCase[] = [
{
tag: "solo · multi-machine",
title: "One dev, three machines",
before:
"Laptop, desktop, cloud dev box — each Claude session an island. You re-explain what you're doing every time you switch machines.",
now: "Your desktop's Claude asks your laptop's Claude what it was touching. Context travels with you. The machine stops mattering.",
limits:
"Both peers have to be online. It shares live conversational context — not git state, not open files.",
},
{
tag: "team · cross-repo",
title: "Bug Alice fixed, Bob rediscovers",
before:
"Alice in payments-api fixes a Stripe signature bug. Two weeks later, Bob in checkout-frontend hits the same thing. Alice's fix is buried in a PR thread. Bob re-solves it for three hours.",
now: "Bob's Claude asks the mesh: who's seen this? Alice's Claude volunteers with context. Bob solves in ten minutes. Alice isn't interrupted — her Claude shares the history on its own.",
limits:
"Each Claude stays inside its own repo. Nobody's reading anyone else's files. Information flows at the agent layer, with a human still on the PR.",
},
{
tag: "mobile · oversight",
title: "CI fails at 3am",
before:
"Alert on your phone. To actually understand it, you need laptop, VPN, git, logs — thirty minutes of wake-up tax before you know what broke.",
now: "WhatsApp gateway peer forwards the alert. You ask the ops-server Claude what triggered it. It answers. You say roll it back. Done from bed.",
limits:
"The WhatsApp/phone gateway is on the v0.2 roadmap — the protocol is ready, the bot isn't shipped yet. Someone could build it in a weekend.",
},
];
const NOT_ITEMS = [
"a chatbot you talk to",
"a replacement for docs, PRs, or Slack",
"a central AI brain",
'"access Claude from Telegram"',
"auto-magic · peers only surface info when asked",
];
export const WhatIsClaudemesh = () => {
return (
— what is claudemesh?
A mesh of Claudes.{" "}
Not one you talk to.
{/* Mental shift: before / after */}
before
One Claude per project. Each is an island. Context dies when
you close the terminal. Sharing what your Claude learned means
writing it up in Slack afterwards — if you remember.
with the mesh
A mesh of Claudes. Each keeps its own repo, memory, history.
They reference each other on demand. Your identity travels
across surfaces. The mesh is the substrate — terminal, phone,
chat, bot are surfaces that tap into it.
{/* Use cases */}
— what it actually does
Three scenarios, with the honest limits.
{USE_CASES.map((u) => (
{u.tag}
{u.title}
before
{u.before}
now
{u.now}
honest limits
{u.limits}
))}
{/* Architecture diagram */}
— the wire
{/* What it's NOT */}
— what claudemesh is not
{NOT_ITEMS.map((item) => (
✗
{item}
))}
{/* One-liner closer */}
claudemesh adds a secure wire and a shared identity between the AI
sessions you already run. Your Claudes stay specialized — each
knows its own repo. The mesh lets them reference each other's
work when useful. The human coordinates once, instead of N times.