Teamjerk is a command line client for Teamwork.com. It is written in Go and uses the Teamwork API.
go install github.com/harnyk/teamjerk/cmd/teamjerk
Download the latest release from here.
Using eget (recommended)
Read the eget manual for more information.
In order to take all advantages of using eget
package manager,
you should have some bin directory in your PATH
and specify it in .eget.toml file. For example:
# File: ~/.eget.toml
[global]
target = "~/bin"
Now you can install Teamjerk using eget
:
eget harnyk/teamjerk
To get help, run:
teamjerk
teamjerk login
teamjerk tasks
Current month:
teamjerk report
Specify month:
teamjerk report -m 2 # February
Specify year:
teamjerk report -y 2018 -m 2 # February 2018
You can additionally specify the --output=<path/to/file.json>
argument to store the report in a JSON file of the corresponding format:
[
{
"date": "2023-03-01",
"billable": 8,
"non_billable": 0
},
{
"date": "2023-03-02",
"billable": 8,
"non_billable": 0
},
...
]
teamjerk log
Teamjerk will ask you to specify the task and the time spent.
You can also specify everything in the arguments. For example, the following command will log 8 hours spent on task 26658918, project 548295, on 2020-02-01, starting at 09:00:
teamjerk log \
-u 8 \
-s 09:00 \
-p 548295 \
-t 26658918 \
-d 2020-02-01
To get help, run:
teamjerk log --help
Write the following script (runs under ZSH, for Bash you need to change the syntax):
#!/usr/bin/zsh
# All working days:
declare -a dates
dates=(
2023-03-02
2023-03-03
2023-03-06
2023-03-07
2023-03-08
2023-03-09
2023-03-10
)
project=548295
task=26658918
for date in "${dates[@]}"; do
teamjerk log -u 8 -s 09:00 -p $project -t $task -d $date
done