A fast CLI for Splitwise. Manage groups, expenses, balances, and settlements from your terminal.
Requires Go 1.22+.
git clone <this-repo-url>
cd splitwise-cli
go build -o splitwise .
./splitwise --versionMove the binary somewhere on your PATH, e.g. mv splitwise /usr/local/bin/.
The Homebrew tap and go install paths below reference the placeholder org
example (see go.mod, .goreleaser.yml, Formula/splitwise.rb). To use them
you need to fork this repo, replace example with your GitHub user/org in those
files, and publish releases via GoReleaser.
# After you've published your own fork + tap:
brew tap <your-user>/tap
brew install splitwise
# Or:
go install github.com/<your-user>/splitwise-cli@latest- Register a Splitwise app at secure.splitwise.com/apps
- Set the callback URL to
http://localhost/callback(the CLI listens on a random local port and does not rely on a fixed port).
- Set the callback URL to
- Authenticate:
splitwise authYou'll be prompted for your Client ID and Client Secret. The CLI opens your browser for OAuth, then stores the token at ~/.config/splitwise-cli/auth.json.
Note: Splitwise ignores
redirect_uriin OAuth requests and always uses the registered callback URL. If the registered URL ishttp://localhost/callbackthe browser will land on a page that can't connect; copy thecodefrom the URL and complete the exchange manually withcurl.
# Who am I?
splitwise me
# Groups & balances
splitwise groups
splitwise group "Household"
# Expenses
splitwise expenses list --group "Household" --limit 20
splitwise expenses list --after 2026-01-01
splitwise expenses list --all # include deleted
splitwise expenses show 123456
splitwise expenses create "Dinner" 85.50 --group "Household"
splitwise expenses create "Groceries" 42.00 --paid-by "MemberB"
splitwise expenses create "Utilities" 254.80 --split "exact:MemberA:152.88,MemberB:101.92"
splitwise expenses create "Dinner last week" 50 --date 2026-04-08 --details "Thai place"
splitwise expenses delete 123456
splitwise expenses restore 123456
# Balances
splitwise balances
splitwise balances --group "Household"
# Friends
splitwise friends
# Settle up
splitwise settle "MemberB" --group "Household"
# Set defaults
splitwise config set default_group "Household"
splitwise config set default_currency USD
splitwise config show| Flag | Description |
|---|---|
--json |
Raw JSON |
--quiet |
IDs/amounts only (for scripting) |
--no-color |
No ANSI colors (also respects NO_COLOR) |
splitwise expenses list --quiet | head -5
splitwise balances --json | jq '.[] | select(.amount != "0.00")'This CLI ships with an OpenClaw / Gemini CLI skill file. Drop skills/splitwise/SKILL.md into your agent's skills directory to let your AI assistant manage Splitwise expenses conversationally.
| File | Purpose |
|---|---|
~/.config/splitwise-cli/auth.json |
OAuth token |
~/.config/splitwise-cli/config.json |
User preferences |
MIT