# Why Volty works with Claude Code

> Claude Code can build a support prototype in an afternoon. Volty adds the channels, system connections, security and hosting to run it for years.

Leonard Loo

CEO & Co-Founder, Volty

Updated Nov 4, 2026

9 min read

Claude Code can write a working customer service prototype in an afternoon: a bot that answers questions, books appointments or chases unpaid invoices. Getting that prototype in front of real customers is where the work starts. It has to receive and send messages on WhatsApp, Instagram, Messenger, email and the website chat. It has to read and write the systems the business already runs on, which means API keys that must be stored somewhere safe. And it has to run on a server that someone hosts, monitors, secures and patches for as long as the business uses it.

Volty is an AI helpdesk builder that does those parts already, and it is built for Claude Code and other coding agents to drive. Claude Code writes the automations and mini apps, and Volty connects them to your channels and systems, runs them, and keeps an admin in charge of what goes live.

This post covers why Claude Code works well with Volty, and what Volty takes off the business's hands once the prototype has to keep running.

## Every Volty feature reaches Claude Code

Claude Code reaches the same features a person uses in the app, because the app and the CLI call the same code. Every Volty feature is written once, as an operation in one registry. That one declaration becomes the HTTP route the app calls, the volty command in the CLI, a route on Volty's API at POST /api/v/<operation>, and a tool for the AI agent inside Volty. Automations call the same operations through their SDK, so messaging send in the CLI is ctx.volty.messaging.send in an automation.

For the business, this means a feature added to the app reaches Claude Code, the API and the AI agent in the same release. The few actions Volty keeps for a person in the app are named in the security section below.

## Claude Code builds on what Volty can do today

Claude Code works from the current state of Volty, so the commands it writes run. The volty CLI has no list of commands compiled into it. It reads the server's live operation catalog, which lists the operations your key can run with their inputs, and builds its commands from that.

Two commands let Claude Code check what it can do before it writes anything. volty help and volty <op> --help list the operations and the flags each one takes. volty docs prints the live reference for the CLI, the same page Volty serves at /llms.txt, so the instructions Claude Code reads describe the server it is talking to.

When a newer version of the CLI exists, it prints an upgrade line, and Claude Code can upgrade it with bun add -g @voltade/volty@latest && volty skill install.

## Ready in one command

Setting Claude Code up to work with Volty takes a few minutes, and you do it by asking. Tell Claude Code to set up Volty, and it installs the Volty CLI with bun add -g @voltade/volty, then runs volty skill install. That command puts the volty-cli-ops skill in ~/.claude/skills/, which teaches Claude Code how to use the CLI and the safety rules that go with it. Claude Code loads the skill on its own when a request needs it.

Claude Code then signs in with volty auth login --env prod. A browser tab opens, you approve the sign-in with your normal Volty account, and the CLI stores a key. Every command that acts in a workspace names it with --org, and on production the CLI prints the workspace it is about to act in before each command, so a command never lands in a different workspace from the one you named.

When you ask Claude Code to work on a workspace's code in a folder, it runs volty init my-workspace, which pulls the workspace's automations, pages, quick paths and inbox settings into files, and adds a package.json, the TypeScript configuration and a CLAUDE.md. Claude Code can then check the code the same way a push does with bunx tsc -b. volty pull brings in later changes and volty push sends the folder back, printing one line per change in plain words. A push refuses to overwrite something a colleague changed in the workspace since your last pull.

## Secure by default

A key you give Claude Code can do less than you can, and it stops working on its own. When you ask Claude Code for a key, it runs volty keys create <name>, which mints a named key for a coding agent or a script and prints it once. --families limits it to the groups of operations it needs, such as automations and tables, and --read-only limits it to operations that change nothing. A key lives 14 days by default, which is also the most a key can live, and --expires 7d makes it shorter. A call outside the key's families is refused with a sentence that names what the key lacks, and asking Claude Code to run volty keys revoke stops a key at once.

A key's calls that message a contact, or change the workspace in a way an admin approves, are held instead of run. The CLI prints Held: change <id> waits for an admin, and the change applies when someone approves it in Volty. A key never approves a change its own owner filed, including from a second key of the same person.

Some actions need a deliberate step. An operation that deletes something for good runs only with --confirm; without it, the CLI shows the plan the server would carry out and changes nothing. Sending or scheduling a broadcast and transferring ownership of the workspace are done only by a person in the app, because they reach many people at once or cannot be taken back. Every key is refused them.

## Tested before it goes live

You see what an automation does with your real data before it ever runs for real. When Claude Code files an automation, Volty runs it once as a dry run against a recent real trigger, such as a message that arrived this morning, or an input shaped like one when there is none yet, with every action that would send, change or call out suppressed. The review page reports what the test run did in plain words, with each step behind a link.

The dry run sits inside Volty's deploy gate, which reads each automation's code and classes it by what it can do. An automation that sends messages to contacts, calls an outside service or runs Volty's AI always needs an approval. One that calls an outside service can reach only the hosts the approving admin ticked, chosen from the services the workspace has connected.

Claude Code can also test the AI agent itself. volty debug wake-sync --text "…" sends a message to the agent on the workspace's Sandbox from a synthetic test contact and waits for the reply. The test uses the workspace's own agent, and every reply to that contact is recorded in the thread and never leaves Volty, so a test cannot reach a real customer.

## You stay in control

An admin decides what a coding agent's work does in the business. Volty's own reviewer reads every automation Claude Code files, and one it blocks goes back to Claude Code to fix. One it passes waits for an org admin to approve it on a review page, unless it only reads and makes internal changes such as tags and was filed with an admin's key. While a new version of an automation or mini app waits, the running version stays live.

The review page leads with four plain answers. What it does says when it runs and what it does, in one sentence. What changed describes the difference from the running version, with the code changes behind a link. What it can touch lists the things in the workspace it can affect, riskiest first. What it costs estimates each run, and a week and a month of runs, as a share of the workspace's weekly allowance. Under those answers is what the test run did.

Approving a version also sets the automation's weekly share of the allowance. Once an automation has 20 settled runs in a week, the cost line uses what its runs actually charged.

## Your channels and systems are already connected

A Claude Code prototype gets real customer conversations without a line of integration code. Volty connects WhatsApp, Instagram, Messenger, email and web chat, and brings their conversations into Volty's inboxes. WhatsApp supports coexistence, so a business can keep using the WhatsApp Business app on its phone while the same number runs in Volty. Claude Code can create and configure a web chat channel from the CLI with volty widgets create, and a workspace admin's change applies to the live chat on the website at once.

The systems the business uses connect on the Sources page. Volty connects to products through managed sign-in, such as Google Calendar, Notion, Slack and HubSpot. It connects to any MCP server by its address. For a product with an API and none of those, Volty writes a custom connection: an automation that Volty calls during a conversation, which an admin approves once and which lists on the Sources page with every other source.

API keys go into Volty's secret store, where each value is encrypted, never shown again after it is saved, and never reaches the AI model. An automation refers to a secret by name, and Volty fills in the value only for the hosts of the connection that owns it. When the AI agent needs a key, it asks for it in a secure card that an admin types the value into, and a key pasted into chat is never used.

Every tool on a source has one switch, on or off. Tools that change data start switched off, and an admin turns on the ones the agent should use. When a connected server changes a tool's definition, Volty switches that tool off again until someone reviews it.

## No server to host and patch

What Claude Code builds keeps running without the business running a server. Automations run in Volty's sandbox. Each run gets its own isolated runtime that is destroyed when the run ends, with no access to files or the network except the hosts an admin approved. Each step of a run is recorded as it happens, so if the machine running it restarts, the run picks up where it stopped and the calls it already made are not repeated. A run stops after 500 steps, and an automation that fails 15 times in 10 minutes pauses itself and sends one alert.

Mini apps, the small internal tools and pages Claude Code builds for a team, are hosted by Volty. Each one is served from its own address on voltyusercontent.com, a domain that serves customer code and nothing else, so the browser keeps each app apart from the others and from Volty's own app.

Each deploy is kept as a version, so an admin can pause an automation or roll it back to an earlier version from the app. The credentials, the channels, the sandbox and the hosting stay Volty's job, and the business keeps what Claude Code built for as long as it needs it.

To try it, start with Volty, open Claude Code in the Claude desktop app, and ask it to set up Volty and build the first automation your team needs.

## Frequently asked questions

What do I need to start using Claude Code with Volty?

Claude Code, which you can use in the Claude desktop app, and a Volty account. Ask Claude Code to set up Volty. It installs the volty command-line tool with bun add -g @voltade/volty, and runs volty skill install to put the volty-cli-ops skill in ~/.claude/skills/, where Claude Code picks it up. It then signs in with volty auth login --env prod, which opens a browser tab for you to approve with your normal Volty account. After that you ask Claude Code in plain language and it runs the commands.

Can Claude Code send messages to my customers through Volty?

Only with an admin's approval. When a person's key makes a call that sends to a contact, Volty holds it and the CLI prints that the change waits for an admin. The message goes out when someone approves it in Volty, and a key can never approve a change its own owner filed. When Claude Code tests the AI agent, it runs on your workspace's Sandbox from a synthetic test contact, and every reply to that contact is recorded in the thread and never leaves Volty.

Do I have to host or patch a server for what Claude Code builds?

No. Automations run inside Volty's sandbox, each run in its own isolated runtime, and mini apps are served by Volty from their own address on a domain that serves only customer code. Credentials sit in Volty's encrypted secret store, and channels and connected systems are managed in the Volty app.

Does Volty work with coding agents other than Claude Code?

Yes. The volty CLI is a command-line tool that any coding agent able to run commands can use, and every operation is also an HTTP route. volty init writes a project folder with an AGENTS.md, which Cursor and Codex read, and a CLAUDE.md that imports it for Claude Code. The volty-cli-ops skill is written for Claude Code.

Claude Code · Coding agents · Automation · Security

## Related

Agentic AI for travel agents: how to become the builder · Travel agencies that teach AI their own expertise will keep what travelers come to them for. How agentic AI differs from chatbots, and why consultants should build their agency's AI agent. · Hire your AI agents. Don't install them. · A framework for AI agent governance: choose the work, prove it with evals and draft mode, then grant autonomy only once the agent has earned it. · Be a refounder, not an heir to the family business · Business owners who build things themselves develop a sharper instinct for where AI can create value for them.

## Start your Sandbox Trial

Ask us questions · Start your Sandbox Trial

Sign up for our 7-day trial. No credit card needed.

Future-proof your business with AI. Hear from our CEO

The Leonard and Volty Show · October 8, 2026

Meta now charges for WhatsApp replies

The Leonard and Volty Show · October 1, 2026

Too busy to hire?

The Leonard and Volty Show · September 21, 2026

From $500 chatbot jobs to agentic AI

The Leonard and Volty Show · September 10, 2026

Your AI is a new employee

The Leonard and Volty Show · September 4, 2026

Trust in the AI world

The Leonard and Volty Show · August 29, 2026

Does the AI model matter?

The Leonard and Volty Show · August 19, 2026

What are AI agents?

Meta now charges for WhatsApp replies. Here's what it means for your business, October 8, 2026

## Links

- [start with Volty](https://voltade.com/)
- [Agentic AI for travel agents: how to become the builderTravel agencies that teach AI their own expertise will keep what travelers come to them for. How agentic AI differs from chatbots, and why consultants should build their agency's AI agent.](https://voltade.com/blog/agentic-ai-for-travel-agents)
- [Hire your AI agents. Don't install them.A framework for AI agent governance: choose the work, prove it with evals and draft mode, then grant autonomy only once the agent has earned it.](https://voltade.com/blog/hire-your-ai-agents)
- [Be a refounder, not an heir to the family businessBusiness owners who build things themselves develop a sharper instinct for where AI can create value for them.](https://voltade.com/blog/be-a-refounder-not-an-heir-to-the-family-business)
