§02 · Claude Skill
A skill that knows when to reach for Converlane.
A drop-in plugin Skill following Anthropic's bundle format. Once installed, Claude reads SKILL.md on demand — when the user's intent matches, the skill activates and walks Claude through the right gateway call without you typing a single curl.
What ships in the bundle
skills/vaanivoice/
├── SKILL.md ← frontmatter + body
└── references/
├── api.md ← every endpoint, request/response shapes
├── examples.md ← 8 concrete curl recipes
└── error-codes.md ← every status the gateway returnsFrontmatter
The activation logic lives in YAML frontmatter at the top of SKILL.md. Claude reads the description field and matches user phrasings against it.
---
name: vaanivoice
description: Use Converlane from any Claude session — open WebSocket voice sessions, create LiveKit meeting rooms with or without Vikash, manage API keys, query usage. Activate when the user asks to place a call, build a voice agent, schedule a meeting, or analyse call data.
---Install — globally for your user
mkdir -p ~/.claude/skills
cp -R skills/vaanivoice ~/.claude/skills/Available in every Claude Code session, regardless of project.
Install — scoped to one project
mkdir -p .claude/skills
cp -R skills/vaanivoice .claude/skills/Only loads when Claude is started inside this repo. Use this when the project is a Converlane integration and you want teammates to get the skill automatically.
Phrasings that activate the skill
The description trains Claude on intent. These are the canonical triggers — anything semantically close will also fire.
- "Open a voice session with my Converlane agent."
- "Mint a textvoice/voicebot WebSocket so I can plug it into my own UI."
- "Create a meeting room and bring Vikash in to take notes / ask follow-ups."
- "Spin up a quick LiveKit room I can share — no AI needed."
- "Help me wire Converlane into my Node/Python/Next.js app."
- "Show me my last 30 days of API usage."
What Claude does next
- Reads
VAANI_API_KEYfrom env (or asks you where to find it). Never echoes the plaintext back. - Picks the right surface: voice + low-latency UX →
textvoice/voicebot; multi-party →meeting(no AI) ormeeting-agent(with Vikash). - Calls the gateway with a small JSON body and surfaces the response shape (
ws_url+ws_tokenorroom_url+host_token). - Handles the well-known errors —
401/402/403/429/502— without leaking your key.
Don’t use it for
- Mid-call control — DTMF / interrupt / voice swap happen over the WS protocol once connected.
- Billing setup — top-ups, autopay enrol, refunds.
- Onboarding / approval — new accounts need approval before they can mint keys.
- Outbound PSTN dialling — that surface lives at
/api/callsand is gated by Twilio number ownership. - Flow editing— flows are managed in the dashboard’s flow-builder.
Source
The bundle lives at skills/vaanivoice/ in the Converlane monorepo. The reference files are plain Markdown — open a PR to extend them.