Skip to main content

CLI and client library for the Wealthbox CRM API

Reason this release was yanked:

Errors

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.

PyPI Downloads CI License: Apache 2.0

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:

  1. Downloads the prebuilt wbox binary from the latest GitHub Release and verifies its SHA-256 checksum (no Python required).
  2. Installs the AI agent skill into Claude Code (and Codex, if you have it).
  3. Asks for your Wealthbox API token. Where to find it: in Wealthbox, click your initials in the top right → SettingsAPI AccessCreate Access Token. Paste the token when prompted.

Re-running is idempotent: it keeps your stored token, refreshes the skill template, and leaves PATH alone if already correct. To install just the binary without the AI agent skill, on Windows download install.ps1 and run with -SkipSkills:

iwr https://raw.githubusercontent.com/massive-value/wealthbox-cli/main/scripts/install.ps1 -OutFile install.ps1
.\install.ps1 -SkipSkills

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:

  1. 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.
  2. 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.


What gets installed, where

The installer drops a single prebuilt wbox binary onto your PATH (~/.local/bin/wbox on Mac/Linux, %LOCALAPPDATA%\Programs\wbox\wbox.exe on Windows), then registers the AI agent skill with Claude Code (and Codex, if it's installed). Firm data lives at ~/.config/wbox/firm/ (Mac/Linux) or %APPDATA%\wbox\firm\ (Windows) and survives reinstalls and upgrades. Run wbox doctor to see your install status anytime, and wbox skills upgrade to pull the latest skill template.

Upgrading

The upgrade command depends on how you installed:

If you installed via... Upgrade with
install.sh / install.ps1 (the one-line installer above) wbox self upgrade
pip install wealthbox-cli pip install --upgrade wealthbox-cli
pipx install wealthbox-cli pipx upgrade wealthbox-cli
uv tool install wealthbox-cli uv tool upgrade wealthbox-cli

wbox self upgrade only swaps the standalone bundle the one-line installer puts in place; on pip/pipx/uv installs it refuses with the correct follow-up command rather than half-replacing a venv-managed shim.


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.

Exit codeswbox returns differentiated exit codes so scripts can branch on the failure class:

Code Meaning
0 Success
1 Validation / user error (bad input, a non-auth 4xx from the API such as 404/422)
2 Authentication error (API 401/403)
3 Server error (API 5xx)

Note: Click also exits 2 for usage errors (an unknown flag or a missing required argument); that overlap with the auth code is pre-existing and acceptable, since usage errors are caught by the parser before the command runs. Set WBOX_DEBUG=1 to print the full Python traceback to stderr alongside the friendly message (the exit code is unchanged) — handy when reporting bugs.

Brief mode — Wealthbox duplicates every text field as HTML markup (content_html, description_html, body_html, etc.), making responses 3–5x larger. Pass --brief or set WBOX_BRIEF=1 to recursively strip all *_html keys from the JSON output before it is printed. Plain-text counterparts are kept; all other fields are unaffected. Any non-empty value is truthy (same convention as WBOX_DEBUG).

# One-off: flag form
wbox --brief notes list

# Persistent in a script or agent session
export WBOX_BRIEF=1
wbox notes list
wbox tasks list
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 one-line installer (top of this README) wires up Claude Code automatically. These commands are for the cases the installer doesn't cover: re-running on a different host, swapping platforms, project-scoped installs, or air-gapped setups where you've placed the wbox binary by hand.

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 show to see the masked token, wbox config set-token to update.
  • wbox self upgrade says "run uv tool upgrade …" (or pipx / pip) — expected. wbox self upgrade only swaps the standalone bundle the one-line installer drops in place. If you installed via pip / pipx / uv, follow the command the gate prints. See Upgrading.
  • Windows: "execution policy" error during install — the installer offers to fix this for you. If you skipped it, run Set-ExecutionPolicy RemoteSigned -Scope CurrentUser and re-run the installer.
  • Linux: command not found after install — open a new terminal, or run source ~/.local/bin/env in 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wealthbox_cli-2.4.0.tar.gz (179.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wealthbox_cli-2.4.0-py3-none-any.whl (149.5 kB view details)

Uploaded Python 3

File details

Details for the file wealthbox_cli-2.4.0.tar.gz.

File metadata

  • Download URL: wealthbox_cli-2.4.0.tar.gz
  • Upload date:
  • Size: 179.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for wealthbox_cli-2.4.0.tar.gz
Algorithm Hash digest
SHA256 80fffe4cf1b5bcbe3ce6e9329253be4c2484ef5cea77718e8a663a4c413aec65
MD5 e06707e2390d1f65005ccf59ba2b250d
BLAKE2b-256 76233e025ec930a922fc9074d338ace381738f25f4337a0fb33b0f7d395b616c

See more details on using hashes here.

Provenance

The following attestation bundles were made for wealthbox_cli-2.4.0.tar.gz:

Publisher: ci.yml on massive-value/wealthbox-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wealthbox_cli-2.4.0-py3-none-any.whl.

File metadata

  • Download URL: wealthbox_cli-2.4.0-py3-none-any.whl
  • Upload date:
  • Size: 149.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for wealthbox_cli-2.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d494dd4ed5211f26c15e80fc4b6c114066ae609b69617a905e6cef0e65df4528
MD5 cd9a6a564c12b65f7d4dc1ef9e4553e4
BLAKE2b-256 5d49b1d38429102a5513e65bd45d0c85817b16ab479a4186d568ea20a1efb23b

See more details on using hashes here.

Provenance

The following attestation bundles were made for wealthbox_cli-2.4.0-py3-none-any.whl:

Publisher: ci.yml on massive-value/wealthbox-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page