spatie/there-there-cli
A command-line tool for There There that lets you interact with the There There API from your terminal. Install it globally with Composer, log in per workspace profile, and manage tickets—list, show, reply, forward, and update—right from the CLI. Full docs at there-there.app.
A command-line tool for There There, interact with the There There API from your terminal.
Full documentation is available at there-there.app.
composer global require spatie/there-there-cli
Make sure Composer's global bin directory is in your PATH. You can find the path with:
composer global config bin-dir --absolute
composer global require spatie/there-there-cli
# Log in (automatically creates a profile named after your workspace)
there-there login
# Log in with a specific profile name
there-there login --profile=spatie
# Log out the active profile
there-there logout
# Log out a specific profile
there-there logout --profile=spatie
Get your API token at there-there.app.
If you have multiple workspaces, you can store credentials for each one in a separate profile.
# Log in to your first workspace
there-there login --profile=spatie
# Log in to your second workspace
there-there login --profile=ohdear
# List all profiles
there-there profiles
# Switch the default profile
there-there use spatie
# Run a single command against a different profile
there-there list-tickets --profile=ohdear
Every There There API endpoint has a corresponding command. Run there-there <command> --help for details on a specific command.
there-there list-tickets
there-there list-tickets --q="refund request"
there-there list-tickets --filter-search="billing"
there-there list-tickets --filter-created-after=2026-01-01
there-there show-ticket --ticket=TICKET_ULID
there-there reply-to-ticket --ticket=TICKET_ULID --field body="Your reply here"
there-there forward-ticket --ticket=TICKET_ULID --field to_recipients='["[email protected]"]'
there-there add-note-to-ticket --ticket=TICKET_ULID --field body="Internal note"
there-there update-ticket-status --ticket=TICKET_ULID --field status=closed
there-there update-ticket-assignee --ticket=TICKET_ULID --field assignee_ulid=USER_ULID
there-there update-ticket-team --ticket=TICKET_ULID --field team_ulid=TEAM_ULID
there-there add-tag-to-ticket --ticket=TICKET_ULID --tag=TAG_ULID
there-there remove-tag-from-ticket --ticket=TICKET_ULID --tag=TAG_ULID
there-there list-ticket-activities --ticket=TICKET_ULID
there-there list-contacts
there-there show-contact --contact=CONTACT_ULID
there-there list-channels
there-there list-members
there-there list-tags
there-there get-me
This repository includes an agent skill that teaches coding agents how to use the There There CLI.
there-there install-skill
composer test
Build the PHAR:
bin/build-phar 1.x.x
Use bin/build-phar rather than app:build. Laravel Zero resolves the version by shelling out to git describe, which cannot run from inside a compiled PHAR, so the script bakes the version into config/app.php for the build and restores it afterwards. Called without an argument it uses the latest git tag. Requires box (composer global require humbug/box).
Commit and push:
git add builds/there-there
git commit -m "Rebuild PHAR v1.x.x"
git push origin main
Create a release in the GitHub UI.
The binary in builds/ is what Composer installs, and nothing rebuilds it for you. Tagging without rebuilding ships the previous version's spec and commands, so always do step 1 before tagging, and check ./builds/there-there --version matches what you are about to release.
Users update with composer global require spatie/there-there-cli.
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.
How can I help you explore Laravel packages today?