Metadata-Version: 2.1
Name: scythe-cli
Version: 1.4.1
Summary: A Harvest is always better with a good tool
Home-page: https://github.com/seanrcollings/scythe
License: MIT
Author: Sean Collings
Author-email: me@seancollings.dev
Requires-Python: >=3.10,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: arc-cli (>=8.6.2,<9.0.0)
Requires-Dist: hishel (>=0.0.20,<0.0.21)
Requires-Dist: httpx (>=0.24.0,<0.25.0)
Requires-Dist: keyring (>=23.13.1,<24.0.0)
Requires-Dist: msgspec (>=0.15.1,<0.16.0)
Requires-Dist: requests (>=2.25.1,<3.0.0)
Requires-Dist: textual (>=0.45.1,<0.46.0)
Requires-Dist: xdg (>=5.1.1,<6.0.0)
Description-Content-Type: text/markdown

# Scythe

![Scythe TUI](./images/cover.svg)

Scythe is a TUI and set of CLI utilties for interacting with the Harvest Time tracking Application

## Installation

Installable via pip/pipx (pipx is recommended)

```
pipx install scythe-cli
```

## Setup

First, you need to authenticate Scythe to your harvest account.

To do this, run the following command:

```
scythe init
```

This will open a new browser tab to perform an OAuth flow with Harvest. Once you have authenticated, you will be redirected to a page with a code. Copy this code and paste it into the terminal.

## Usage

### TUI
Start the TUI with

```
scythe
```

The interface has the following features:

- View all timers for a given day
- Start a new timer
- Stop a running timer
- Edit a Timer
- Delete a Timer


### CLI
The CLI also has a few other utilties:

`scythe timer` - The Scythe Timer namespace has some utilties for interacting with timers. `scythe timer --help` for more info

`scythe projects` - List all the projects and tasks that you have access to


#### Quickstarting
Quickstarting is a feature of Scythe that allows you to start a timer with a single command. This is useful for setting up a timer for a task that you do frequently.

To create a new quickstart entry run:

```
scythe quickstart add <name>
```

This will create a new quickstart entry with the name `<name>`. It will prompt you with a list of projects and tasks to choose from (And optionally, a note & a command to execute after the timer start). Once you have completed the prompt, you can start the timer with:

```
scythe quickstart <name>
```

This will start a timer with the details you entered when creating the quickstart entry and will execute the command you entered (if any).

`

