
Unofficial command-line client for Solidtime — open-source time tracking.
Works with both self-hosted Solidtime instances and Solidtime Cloud. Designed for humans in a terminal and AI agents that can run shell commands.
npm install -g https://github.com/VidGuiCode/solidtime-cli/releases/download/v0.1.1/solidtime-cli-0.1.1.tgz
Requires Node.js 20+. Works on Windows, macOS, and Linux.
# Connect to your Solidtime instance
solidtime login
# Check your context
solidtime where
# Start a timer
solidtime te start --description "Working on feature X"
# Check the running timer
solidtime te active
# Stop it
solidtime te stop <id>
# List your time entries
solidtime te list --start 2026-04-01T00:00:00Z --limit 10
| Command |
Description |
login |
Connect to a Solidtime instance |
logout |
Remove saved credentials |
where |
Show current account, organization, and user |
account list|use|show|remove |
Manage saved accounts |
organization list|use|show|update |
Switch and manage organizations |
| Command |
Description |
time-entry list |
List time entries with filters |
time-entry start |
Start a timer |
time-entry stop <id> |
Stop a running timer |
time-entry active |
Show the currently running timer |
time-entry create |
Create a completed time entry |
time-entry update <id> |
Update a time entry |
time-entry delete <id> |
Delete a time entry |
time-entry bulk-update |
Update multiple entries at once |
time-entry bulk-delete |
Delete multiple entries at once |
time-entry aggregate |
Aggregate entries with grouping |
solidtime te list --projects <id1> <id2> # filter by projects
solidtime te list --start 2026-04-01T00:00:00Z --end 2026-04-02T23:59:59Z
solidtime te list --active # only running timers
solidtime te list --billable # only billable entries
solidtime te list --member <id> # filter by member
solidtime te list --tags <id1> <id2> # filter by tags
solidtime te list --limit 100 --offset 50 # pagination
| Command |
Description |
project list|show|create|update|delete |
Manage projects |
task list|create|update|delete |
Manage tasks |
tag list|create|update|delete |
Manage tags |
client list|create|update|delete |
Manage clients |
member list|update |
List and update members |
project-member list|add|update|remove |
Manage project member assignments |
invitation list|create|resend|delete |
Manage organization invitations |
| Command |
Description |
discover all |
Full context dump with all resources (one call) |
discover context |
Account, org, user context |
discover projects|tasks|tags|members|clients |
List resources as ID selectors |
profile |
Show current user |
| Command |
Description |
upgrade |
Check for updates and self-upgrade |
completion bash|zsh|fish |
Generate shell completions |
| Alias |
Command |
te |
time-entry |
org |
organization |
pm |
project-member |
invite |
invitation |
| Flag |
Description |
--json |
Machine-readable JSON output |
--compact |
Compact JSON without indentation (for AI/agents) |
--dry-run |
Validate and preview without sending |
--no-interactive |
Fail instead of prompting for input |
For CI/automation, you can skip the config file entirely:
| Variable |
Description |
SOLIDTIME_BASE_URL |
Solidtime instance URL |
SOLIDTIME_API_TOKEN |
API token (Bearer JWT) |
SOLIDTIME_ORGANIZATION |
Active organization ID |
SOLIDTIME_MEMBER_ID |
Your membership ID in the org |
SOLIDTIME_CONFIG |
Path to custom config file |
When both SOLIDTIME_BASE_URL and SOLIDTIME_API_TOKEN are set, no config file is needed.
Config is stored at ~/.solidtime-cli/config.json. Supports multiple accounts — switch between them with solidtime account use <name>.
solidtime login --url https://timesheet.example.com --token <jwt>
MIT