60 lines
2.8 KiB
Markdown
60 lines
2.8 KiB
Markdown
# hamster-tools
|
|
|
|
Manipulate [hamster-time-tracker](https://github.com/projecthamster/) data
|
|
from the command-line, including:
|
|
|
|
- find duplicate activities
|
|
- list, move and delete categories, activities and facts
|
|
|
|
Merging, renaming and otherwise tidying-up the database used to be possible in
|
|
the Hamster GUI, but currently (as of version 2.0.0.16) doesn't work for me, so
|
|
I wrote this script to fill in the gap until the [shiny new version of
|
|
hamster](https://github.com/projecthamster/hamster-lib) is ready.
|
|
|
|
$ pip install .
|
|
|
|
$ hamster-tools categories --help
|
|
Usage: hamster-tools categories [OPTIONS] COMMAND [ARGS]...
|
|
|
|
Options:
|
|
--help Show this message and exit.
|
|
|
|
Commands:
|
|
activities Show activities for categories specified by IDS
|
|
delete Delete categories specified by IDS
|
|
list List / search categories
|
|
tidy Delete empty categories
|
|
|
|
$ hamster-tools activities --help
|
|
Usage: hamster-tools activities [OPTIONS] COMMAND [ARGS]...
|
|
|
|
Options:
|
|
--help Show this message and exit.
|
|
|
|
Commands:
|
|
delete Delete activities specified by IDS
|
|
find-duplicates Show activities which are not unique in their categories
|
|
list List / search activities
|
|
list-facts Show facts for activities
|
|
move Move activities to another category
|
|
move-facts Move facts from one activity to another
|
|
|
|
$ hamster-tools export
|
|
Usage: hamster-tools export [OPTIONS] COMMAND [ARGS]...
|
|
|
|
Options:
|
|
--help Show this message and exit.
|
|
|
|
Commands:
|
|
kimai Export time tracking data in Kimai format
|
|
|
|
## Importing into Kimai
|
|
|
|
1. Run `python -m hamstertools activities list --csv` to get a dump of all activities
|
|
2. Review the export to check for any duplicates, typoes, etc.
|
|
3. Use e.g. `python -m hamstertools activities move-facts ...` to clean them up
|
|
4. Run `python -m hamstertools kimai import --mapping-path data/mapping.2023.kimai.csv --show-missing --after 2023-09-07 --category-search auto 3wordchant` to find entries in your time tracking which don't yet have a mapping to Kimai. You might notice some extra tidying needed here.
|
|
5. Run `python -m hamstertools kimai sync --mapping-path data/mapping.2023.kimai.csv --just-errors --ignore-activities 3wordchant $(pass users/calix/logins/kimai.autonomic.zone/api)` to find items in your mapping file which don't exist on Kimai
|
|
5. Run `python -m hamstertools kimai import --mapping-path data/mapping.2023.kimai.csv --after 2023-09-07 --category-search auto 3wordchant --output data/kimai_$(date +%F).csv` to generate a CSV of your time entries
|
|
6. Review your timesheet -- NB it might not be sorted in date order by default - to make sure it has the expected entries, and remove any entries already in Kimai.
|