Agent skill

Phone

by BlockRunAI in BlockRunAI/ClawRouter

Verify phone numbers (carrier + SIM-swap fraud signals) and place AI-powered outbound voice calls via BlockRun's gateway (Twilio + Bland.ai).

MITAuto-check passed

Install Phone

skills CLI
$ npx skills add BlockRunAI/ClawRouter --skill phone -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install BlockRunAI/ClawRouter phone --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/BlockRunAI/ClawRouter.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/phone .claude/skills/phone && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
phone
GitHub stars
6.6k
Token cost
~2.4k tokens
SKILL.md length
859 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
MIT

At a glance

Verify phone numbers (carrier + SIM-swap fraud signals) and place AI-powered outbound voice calls via BlockRun's gateway (Twilio + Bland.ai).

  • The user asks to look up a number
  • SKILL.md covers Phone Number Intelligence…, Wallet-Owned Phone Numbers, AI Voice Call (Bland.ai) and Example Agentic Flows, plus 1 more section
  • Calls curl
  • Check fraud risk

What it does

Phone is an agent skill from BlockRunAI/ClawRouter. Verify phone numbers (carrier + SIM-swap fraud signals) and place AI-powered outbound voice calls via BlockRun's gateway (Twilio + Bland.ai). Trigger when the user asks to look up a number, check fraud risk, buy/rent a phone number, or place an AI voice call. Payment is automatic via x402 from the wallet.

Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It works with Twilio and x402. The repository describes itself as: The agent-native LLM router for autonomous agents. Every frontier model behind one wallet, <1ms local routing, USDC payments on Base & Solana via x402. The licence is MIT.

When your agent uses it

  • The user asks to look up a number
  • Check fraud risk
  • Buy/rent a phone number
  • Place an AI voice call

Example prompts

  • “/phone”

What it can do on your machine

Read from SKILL.md and the folder at commit b758e03. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • blockrun.ai
    • user.blockrun.ai

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Phone loads about 2.4k tokens when it runs. Until then it costs about 78 tokens; SKILL.md has 859 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~78
When it runs · the whole SKILL.md, loaded when a task matches
~2.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from BlockRunAI/ClawRouter at commit b758e03, republished under its MIT licence (© BlockRunAI). 859 words, ~2,406 tokens.

Download SKILL.mdSave it as .claude/skills/phone/SKILL.md (or your agent's skills folder).
name
phone
description
Verify phone numbers (carrier + SIM-swap fraud signals) and place AI-powered outbound voice calls via BlockRun's gateway (Twilio + Bland.ai). Trigger when the user asks to look up a number, check fraud risk, buy/rent a phone number, or place an AI voice call. Payment is automatic via x402 from the wallet.
triggers
blockrun phone, blockrun voice, voice call, outbound call, ai phone call, ai voice call, phone number lookup, phone number verification, carrier lookup, sim…

Phone & Voice

Phone-number intelligence (Twilio Lookup) and AI-powered outbound voice calls (Bland.ai) through ClawRouter's local proxy. Payment is automatic via x402 from the user's BlockRun wallet.

Shortcuts:

  • Slash: /cr-call +1<E.164> "<task>" [--voice nat] [--max-duration 5] [--from +1<owned-number>] [--language en-US]
  • CLI: clawrouter phone numbers list/buy/renew/release, clawrouter phone lookup <+E.164>, clawrouter phone fraud <+E.164>
  • Partner tools (LLM-callable): blockrun_phone_lookup, blockrun_phone_lookup_fraud, blockrun_phone_numbers_buy/renew/list/release, blockrun_voice_call, blockrun_voice_status

⚠️ Real-world side effects. blockrun_voice_call places a real outbound phone call to a real number. Only invoke when the user has explicitly asked for a call to be placed. Server enforces an emergency-number blocklist.


Phone Number Intelligence (Twilio)

Carrier + Line Type Lookup — $0.01

POST to http://localhost:8402/v1/phone/lookup:

json
{ "phoneNumber": "+14155552671" }

Returns carrier name, line type (mobile / landline / voip), country, mobile country/network codes. Use to verify whether a number is reachable, detect VoIP/spam patterns, or route SMS appropriately.

Fraud Risk Check — $0.05

POST to http://localhost:8402/v1/phone/lookup/fraud:

json
{ "phoneNumber": "+14155552671" }

Adds SIM-swap recency and call-forwarding signals on top of carrier+line type. Run this before sending sensitive SMS codes or initiating account-recovery flows — a number flagged for recent SIM swap is high-risk for account takeover.


Wallet-Owned Phone Numbers

Numbers are leased for 30 days, bound to the wallet's payer address. Use one as the from parameter of voice_call to present a stable caller ID.

Buy — $5.00 / 30 days

POST to http://localhost:8402/v1/phone/numbers/buy:

json
{ "country": "US", "areaCode": "415" }

country is "US" or "CA". areaCode is optional (3-digit, best-effort match). Returns { phone_number, expires_at, chain }.

Renew — $5.00 / +30 days

POST to http://localhost:8402/v1/phone/numbers/renew:

json
{ "phoneNumber": "+14155551234" }

Run before the existing lease expires. Numbers not renewed are released back to the pool.

List — $0.001

POST to http://localhost:8402/v1/phone/numbers/list with an empty body. Returns an array of { phone_number, expires_at, country, chain }. The CLI surfaces this as a human table with renew-soon warnings:

$ clawrouter phone numbers list

Active numbers (2):
  +14155551234   US   expires 2026-06-12 (in 27d)
  +12135555678   US   expires 2026-05-18 (in 2d) ⚠ renew soon
Release — free

POST to http://localhost:8402/v1/phone/numbers/release:

json
{ "phoneNumber": "+14155551234" }

No refund. Use only when the user has explicitly asked to give up the number.


AI Voice Call (Bland.ai)

Place a Call — $0.54 flat (up to 30 min)

POST to http://localhost:8402/v1/voice/call:

json
{
  "to": "+14155552671",
  "task": "Call and confirm the 3pm Thursday meeting; reschedule if they can't make it.",
  "voice": "nat",
  "max_duration": 5,
  "from": "+14155551234",
  "language": "en-US"
}

Required: to (E.164), task (free-form natural language — what the AI should say or accomplish).

Optional:

FieldDefaultNotes
voicenatPresets: nat, josh, maya, june, paige, derek, florian. Or a custom Bland voice ID.
max_duration5Maximum minutes (1–30). Price is flat $0.54 regardless of actual duration.
fromauto-pickedMust be a wallet-owned number from phone_numbers_list. If omitted, server auto-picks from wallet's active numbers — see auto-pick rules below.
languageen-USAny spoken-language ISO code, e.g. es-ES, zh-CN, de-DE.

from auto-pick rules (server-side, after payment verification):

Wallet active numbersBehavior
0403 no_active_number — response includes buy_endpoint + marketplace URL so caller can provision first
Exactly 1Auto-used as caller ID
2+400 ambiguous_from — response lists all active numbers; retry with from set explicitly

If an explicit from is supplied but the wallet doesn't own it, the response is 403 with a clear ownership-mismatch message (no charge taken when validation fails).

Response is fire-and-forget:

json
{
  "call_id": "call_abc123",
  "poll_url": "/v1/voice/call/call_abc123",
  "status": "queued"
}

The call runs in the cloud for up to max_duration minutes. The HTTP response returns immediately — do not wait for the call to finish. Poll voice_status every 10–30s to retrieve transcript and recording when the call completes.

Poll Status — free

GET http://localhost:8402/v1/voice/call/{call_id}. Returns:

json
{
  "call_id": "call_abc123",
  "status": "completed",
  "duration_seconds": 47,
  "transcript": [
    { "role": "assistant", "text": "Hi, this is calling to confirm tomorrow's 3pm meeting..." },
    { "role": "user", "text": "Yes, that still works." }
  ],
  "recording_url": "https://..."
}

status progresses through queued → in_progress → completed or failed. The transcript array and recording URL only appear on completed. On failed, an error field describes why.


Show full SKILL.md (330 more words)Show less

Example Agentic Flows

Verify before texting:

User: "Send a verification code to +1 415 555 0123" Agent: First call blockrun_phone_lookup_fraud({ phoneNumber: "+14155550123" }). If sim_swap.last_sim_swap is within the past 7 days, refuse and ask the user to confirm out-of-band. Otherwise proceed.

Appointment confirmation:

User: "Call my client at +1 415 555 0123 and confirm tomorrow's 3pm meeting" Agent: blockrun_voice_call({ to: "+14155550123", task: "Call to confirm the 3pm Thursday meeting; if they can't make it, offer to reschedule for Friday morning.", max_duration: 5 }). Returns call_id. Tell the user: "Calling now — I'll have the transcript in a few minutes." Then blockrun_voice_status({ callId }) every 30s until completed, then summarize the transcript.

Acquire dedicated caller ID:

User: "Buy me a San Francisco number for the next 30 days" Agent: blockrun_phone_numbers_buy({ country: "US", areaCode: "415" }). Confirm the assigned number to the user and warn them: "Lease expires in 30 days, costs $5 to renew."


Notes

  • Payment is automatic on every call — an x402 USDC micropayment from the user's wallet, or a draw on account credit if a BlockRun API key is configured.
  • If a call fails with a 402, check GET http://localhost:8402/health and read authMode first: wallet → fund the wallet at blockrun.ai; api-key → top up at user.blockrun.ai/dashboard/credits.
  • Number leases are bound to the wallet's payer address, so phone numbers list/buy/renew/release and the from parameter are wallet-mode features. In API-key mode the gateway answers those routes with a raw 402 x402 challenge (verified 2026-09-05) because there is no payer address to bind a lease to. Lookups, fraud checks and outbound calls all work on an API key; just let the server auto-pick from.
  • Phone numbers are real, regulated resources — numbers bought are reachable from any phone within ~60 seconds of purchase
  • Bland.ai's emergency-number blocklist is enforced server-side; ClawRouter does not duplicate it but trusts upstream
  • Recordings and transcripts are retained by Bland.ai; ClawRouter does not download them locally (returns the upstream URL)
  • For programmatic polling, see the voice_status tool — for one-off CLI checks, hit curl http://localhost:8402/v1/voice/call/{call_id} directly

© BlockRunAI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/phone of BlockRunAI/ClawRouter.

Open the folder on GitHubat commit b758e03

Compare with similar skills

Phone next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Phone compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Phone this skillBlockRunAI/ClawRouter6.6k—~2.4kAutomated safety check: PassMIT
BlockRun Phone and VoiceBlockRunAI/blockrun-mcp392—~1.9kAutomated safety check: PassMIT
Agentic Walletcoinbase/agentic-wallet-skills1273 repos~1kAutomated safety check: PassMIT
Minara Crypto Trading and WalletMinara-AI/minara-skills3581 repos~5.7kAutomated safety check: PassNone
Kleros IPFS Uploadinternet-court/internet-court-skill6.4k—~4.9kAutomated safety check: NotesMIT
Bitget Walletbitget-wallet-ai-lab/bitget-wallet-skill245—~7.6kAutomated safety check: PassMIT

Similar skills

  • BlockRun Phone and Voice

    BlockRunAI/blockrun-mcp

    Looks up phone numbers for carrier and SIM-swap fraud signals, leases numbers and places AI outbound voice calls through BlockRun's local gateway.

    392 GitHub stars~1.9k tokensUpdated today
    Backend & APIsAuto-check passed
  • Agentic Wallet

    coinbase/agentic-wallet-skills

    Crypto wallet operations via the awal CLI — sign in, check balances, send USDC/ETH/POL/SOL, trade tokens, fund the wallet, and use the x402 payment protocol to discover paid services, pay for API…

    127 GitHub starsUsed in 3 repos~1k tokens
    Backend & APIsAuto-check passed
  • Minara Crypto Trading and Wallet

    Minara-AI/minara-skills

    Drives the Minara CLI for crypto swaps, perps, limit orders, wallet transfers, deposits and withdrawals, plus AI market analysis.

    358 GitHub starsUsed in 1 repo~5.7k tokens
    Business, Finance & HRAuto-check passed
  • Kleros IPFS Upload

    internet-court/internet-court-skill

    Uploads one Kleros-related file per paid request to IPFS through the Kleros x402 gateway for 0.01 USDC on Base, returning a CID that Kleros contracts can reference.

    6.4k GitHub stars~4.9k tokensUpdated 1 mo ago
    Backend & APIsAuto-check: notes
  • Bitget Wallet

    bitget-wallet-ai-lab/bitget-wallet-skill

    Interact with Bitget Wallet API for crypto market data, token info, swap quotes, RWA (real-world asset) stock trading, and security audits.

    245 GitHub stars~7.6k tokensUpdated 4 mo ago
    Business, Finance & HRAuto-check passed
  • Portal Connect

    gosuda/portal-tunnel

    Reach, inspect, or consume a service that someone published through a Portal relay.

    272 GitHub stars~2.9k tokensUpdated today
    Game DevelopmentAuto-check passed

More from BlockRunAI/ClawRouter

  • BlockRun Image Generation

    BlockRunAI/ClawRouter

    Generates or edits images through ClawRouter's local image API, with a choice of models and sizes and payment handled automatically through x402.

    6.6k GitHub stars~2.1k tokensUpdated 3 days ago
    Auto-check passed
  • Polymarket Trading

    BlockRunAI/ClawRouter

    A skill your agent uses when the user wants to actually PLACE, manage, or redeem bets on Polymarket (not just read odds — that's the blockrunpredexon data tools).

    6.6k GitHub stars~1.4k tokensUpdated 3 days ago
    Auto-check passed
  • Predexon Prediction Market Data

    BlockRunAI/ClawRouter

    Reads structured prediction market data for Polymarket, Kalshi and other venues through a local BlockRun gateway: markets, search, leaderboards, wallet analytics and odds.

    6.6k GitHub stars~4.7k tokensUpdated 3 days ago
    Auto-check passed
  • ClawRouter Release Checklist

    BlockRunAI/ClawRouter

    Walks the agent through every ClawRouter release step in order, from the version bump and changelog entry to build, tests, npm publish, git tag and GitHub release.

    6.6k GitHub stars~1.4k tokensUpdated 3 days ago
    Auto-check passed
  • Surf

    BlockRunAI/ClawRouter

    Use this skill — NOT browser or webfetch — for ALL Surf crypto-data calls.

    6.6k GitHub stars~4k tokensUpdated 3 days ago
    Auto-check passed
  • ClawRouter LLM Gateway

    BlockRunAI/ClawRouter

    Describes ClawRouter, a local proxy that forwards each LLM request to the blockrun.ai gateway, which routes to a cheaper capable model, paid by USDC wallet or API key credit.

    6.6k GitHub stars~6.8k tokensUpdated 3 days ago
    Auto-check passed

Works with

Questions about Phone

What does Phone do?

Verify phone numbers (carrier + SIM-swap fraud signals) and place AI-powered outbound voice calls via BlockRun's gateway (Twilio + Bland.ai). Phone is an agent skill from BlockRunAI/ClawRouter.ai).

When should I use Phone?

Phone fits situations like: the user asks to look up a number; check fraud risk; buy/rent a phone number; place an AI voice call.

How do I install Phone in Claude Code?

Run `npx skills add BlockRunAI/ClawRouter --skill phone -a claude-code`. Or copy the skill folder (skills/phone in BlockRunAI/ClawRouter) into .claude/skills/phone in your project. Claude Code loads it when a task matches its description.

How do I install Phone in Codex?

Run `npx skills add BlockRunAI/ClawRouter --skill phone -a codex`. Or copy the skill folder (skills/phone in BlockRunAI/ClawRouter) into .agents/skills/phone in your project. Codex loads it when a task matches its description.

Can I use Phone in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add BlockRunAI/ClawRouter --skill phone -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/phone, .gemini/skills/phone, .github/skills/phone and .opencode/skills/phone in your project.

What does Phone need to run?

Going by SKILL.md and its folder, Phone needs the command-line tools its instructions call (curl).

Does Phone access the network?

SKILL.md names 2 domains. As links in the text: blockrun.ai and user.blockrun.ai. This is read from the text; nothing was executed.

Is Phone safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Phone use?

Phone is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Phone use?

About 2.4k tokens (SKILL.md is roughly 9.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Phone?

Skills that share tags, products or a category with Phone: BlockRun Phone and Voice (BlockRunAI/blockrun-mcp, 392 stars), Agentic Wallet (coinbase/agentic-wallet-skills, 127 stars), Minara Crypto Trading and Wallet (Minara-AI/minara-skills, 358 stars) and Kleros IPFS Upload (internet-court/internet-court-skill, 6.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Phone?

BlockRunAI (a GitHub organization) maintains it in BlockRunAI/ClawRouter, which has 6,617 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 5, 2026.

Source: BlockRunAI/ClawRouter on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.