add-dial-tool

Featured

Give chosen NanoClaw agents a real phone number as a container tool — the `dial` CLI baked into the agent image plus OneCLI credential injection for api.getdial.ai, scoped per agent, so the agents you pick can send SMS, place AI voice calls, and receive verification codes from inside the sandbox. Independent of the Dial channel; idempotent; re-run to change which agents may use it. Use when the user wants agents to text, call, or run `dial …` from a chat, without wiring Dial as a messaging channel.

AI & Automation 30,616 stars 12844 forks Updated today MIT

Install

View on GitHub

Quality Score: 93/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Add Dial Tool Installs Dial as a **container tool**: the `dial` CLI on the agent's `PATH`, the `dial-cli` skill so the agent knows how to drive it, and an OneCLI credential so in-container calls are injected keyless. Independent of the Dial **channel** (`/add-dial`) — install this alone. Idempotent: re-run it to change which agents may use Dial. **This tool spends money and reaches real people.** An agent with Dial access can text and call any number and buy more numbers, billed to the Dial account. The CLI and the skill file land in every agent's container, but the **key** is injected per agent by OneCLI, so the operator chooses which agents get it. Every other agent gets an OneCLI block rule and sees `403 blocked_by_policy` if it tries. Run this from the NanoClaw repo on the host (not from a chat with an agent — the container can't install itself). The mechanical steps carry `nc:` directive fences: an agent reads the prose and applies them, and a parser can apply them deterministically from the same document. Every directive is idempotent, so the whole skill is safe to re-run; anything a parser can't apply falls back to the prose beside it. ## Pre-flight OneCLI is required for credential injection — without it there is no way to hand the key to a container without putting it in an env var. This must succeed before anything else runs: ```nc:run effect:check command -v onecli >/dev/null ``` If it fails, tell the user to run `/init-onecli` first, then retry. Stop here...

Details

Author
nanocoai
Repository
nanocoai/nanoclaw
Created
6 months ago
Last Updated
today
Language
TypeScript
License
MIT

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category