CLI and client library for the Wealthbox CRM API
Project description
Wealthbox CLI
Run your Wealthbox CRM through Claude or ChatGPT. Tell your AI agent "add a contact for Jane Doe, send her our welcome packet, and put a follow-up on my calendar for next Tuesday" — and it just happens. No coding, no Python, no terminal commands to memorize.
Unofficial, community-built. Not affiliated with or endorsed by Wealthbox.
Install (60 seconds, no Python required)
| Platform | Paste this into your terminal |
|---|---|
| Mac / Linux | curl -LsSf https://raw.githubusercontent.com/massive-value/wealthbox-cli/main/scripts/install.sh | bash |
| Windows (PowerShell) | irm https://raw.githubusercontent.com/massive-value/wealthbox-cli/main/scripts/install.ps1 | iex |
The installer:
- Sets up the tools it needs (Python, etc. — handled automatically).
- Asks for your Wealthbox API token. Where to find it: in Wealthbox, click your initials in the top right → Settings → API Access → Create Access Token. Paste the token when prompted.
- Installs the AI agent skill into Claude Code (and Codex, if you have it).
That's it. Open Claude Code and try one of the prompts below.
Try this in Claude Code
"Show me my contacts created this week."
"Add Jane Doe as a new prospect — she came in as a referral from Bob Smith."
"Pull up the Smith household, add a task for me to call them on Monday."
"Find notes from my meeting with the Joneses last month and summarize the action items."
"Schedule an annual review with Mary Chen for the second Tuesday of next month."
The first time you ask the agent to do something, it'll walk you through a short Q&A about your firm's conventions (default contact types, naming patterns, common workflows). After that, it just works.
If you're new to Claude Code itself, download it here — it's free for personal use.
What it covers
Full read/write access for contacts (people, households, organizations, trusts), tasks, events, notes, opportunities, projects, and workflows. Read access for users, activity, and your firm's category lookups.
Anything you can do in Wealthbox manually, the agent can do for you — usually in one sentence.
How it works
Your AI agent uses a small command-line tool called wbox to talk to the Wealthbox CRM API. The skill that ships with this repo teaches the agent two things:
- Your firm's conventions — the agent walks you through a one-time Q&A on first use ("what's your default contact type for new prospects? what's your household naming convention?"), then remembers your answers. Stored locally on your machine, never sent to a server.
- The right command for each request — translating "add Jane as a prospect" into the correct API call, handling required fields, validating dropdowns against your firm's actual categories.
You stay in control: the agent shows you what it's about to do before it does it.
Already a Claude Code user?
You can install the skill directly from the plugin marketplace inside Claude Code:
/plugin marketplace add massive-value/wealthbox-cli
/plugin install wealthbox-crm@massive-value
The plugin auto-updates daily. Firm data lives at ~/.config/wbox/firm/ (Mac/Linux) or %APPDATA%\wbox\firm\ (Windows) and survives plugin updates. Run wbox doctor to see your install status anytime.
For developers and power users
Direct CLI use, scripting, automation
pip install wealthbox-cli
wbox config set-token
# List contacts as a table
wbox contacts list --format table
# Create a contact
wbox contacts add person --first-name Jane --last-name Doe --contact-type Client
# Export tasks to CSV
wbox tasks list --format csv > tasks.csv
# Add a meeting note linked to a contact
wbox notes add "Discussed retirement plan" --contact 12345
Full command reference: CLI Reference. Output formats: json (default), table, csv, tsv. Date format: ISO 8601 (2026-05-01T10:00:00-07:00). See Getting Started for pipx, env-var auth, and project-scoped installs.
Manage skill installs (legacy / Codex / project scope)
wbox skills install # interactive picker — Claude Code, Codex, project scope
wbox skills bootstrap # populate firm data from your Wealthbox account
wbox skills refresh # re-fetch generated firm data (categories, users, custom fields)
wbox skills upgrade # update the bundled SKILL.md / references in every install
wbox skills firm-path # print the canonical firm data directory
wbox skills uninstall # remove the skill template (firm data is preserved)
wbox doctor # comprehensive health check
The marketplace plugin path (above) is recommended for Claude Code. The legacy wbox skills install path remains for Codex users (until OpenAI's marketplace lands), project-scoped installs, or air-gapped setups without the claude CLI.
Architecture and contributing
src/wealthbox_tools/
cli/ # Typer commands
client/ # Async HTTP client built from mixins
models/ # Pydantic v2 input validation
Built with Typer, httpx, and Pydantic v2.
git clone https://github.com/massive-value/wealthbox-cli
cd wealthbox-cli
python -m venv .venv
# Activate: source .venv/bin/activate (Mac/Linux) | .venv\Scripts\Activate.ps1 (Windows)
pip install -e ".[dev]"
pytest
See CONTRIBUTING.md and CLAUDE.md for the architecture guide and conventions.
Troubleshooting
- 401 Unauthorized — token expired or wrong. Run
wbox config showto see the masked token,wbox config set-tokento update. - Windows: "execution policy" error during install — the installer offers to fix this for you. If you skipped it, run
Set-ExecutionPolicy RemoteSigned -Scope CurrentUserand re-run the installer. - Linux: command not found after install — open a new terminal, or run
source ~/.local/bin/envin your current shell. - Date format errors — Wealthbox needs ISO 8601:
"2026-05-01T10:00:00-07:00"for datetimes,"YYYY-MM-DD"for date-only fields. - Writes succeed but nothing changes — some category-constrained fields silently no-op on bad values. Check valid values with
wbox categories <type>.
For anything else, open an issue at github.com/massive-value/wealthbox-cli/issues.
Links
Documentation · Changelog · PyPI · Wealthbox CRM · Wealthbox API
Disclaimer
This is an unofficial, community-built tool. It is not affiliated with, endorsed by, or supported by Wealthbox or its parent company. "Wealthbox" is a trademark of its respective owner. Use of this tool is subject to the Wealthbox API Terms of Service.
License
Apache 2.0 — see LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wealthbox_cli-1.5.1.tar.gz.
File metadata
- Download URL: wealthbox_cli-1.5.1.tar.gz
- Upload date:
- Size: 99.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
280cc4eb243f6a90169a8029d7f39007417cb2abf4ff2d62ab99c5c28f5e7acc
|
|
| MD5 |
e760248552014f28a497a9f8abab113e
|
|
| BLAKE2b-256 |
00aa0a7deb12bf136dc39db6b8133bbdbe902f156697c1eaacbaa00f5cd58243
|
Provenance
The following attestation bundles were made for wealthbox_cli-1.5.1.tar.gz:
Publisher:
ci.yml on massive-value/wealthbox-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wealthbox_cli-1.5.1.tar.gz -
Subject digest:
280cc4eb243f6a90169a8029d7f39007417cb2abf4ff2d62ab99c5c28f5e7acc - Sigstore transparency entry: 1437875740
- Sigstore integration time:
-
Permalink:
massive-value/wealthbox-cli@67bc50d4306288470c46cf8b5d2f56371a10d2ed -
Branch / Tag:
refs/tags/v1.5.1 - Owner: https://github.com/massive-value
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@67bc50d4306288470c46cf8b5d2f56371a10d2ed -
Trigger Event:
push
-
Statement type:
File details
Details for the file wealthbox_cli-1.5.1-py3-none-any.whl.
File metadata
- Download URL: wealthbox_cli-1.5.1-py3-none-any.whl
- Upload date:
- Size: 97.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
45d071366d9ab657e42499fb4ac1ff859dfe6f9c4faca4dab17620aeeca4fcf5
|
|
| MD5 |
116e818ed81cd3b0c79020fea20c9c90
|
|
| BLAKE2b-256 |
f6e4dd1717462940f6e42793c71426779fd5673276a49e5461addb1a3822cac2
|
Provenance
The following attestation bundles were made for wealthbox_cli-1.5.1-py3-none-any.whl:
Publisher:
ci.yml on massive-value/wealthbox-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wealthbox_cli-1.5.1-py3-none-any.whl -
Subject digest:
45d071366d9ab657e42499fb4ac1ff859dfe6f9c4faca4dab17620aeeca4fcf5 - Sigstore transparency entry: 1437875752
- Sigstore integration time:
-
Permalink:
massive-value/wealthbox-cli@67bc50d4306288470c46cf8b5d2f56371a10d2ed -
Branch / Tag:
refs/tags/v1.5.1 - Owner: https://github.com/massive-value
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@67bc50d4306288470c46cf8b5d2f56371a10d2ed -
Trigger Event:
push
-
Statement type: