Skip to main content

nytid

A CLI and library for managing TA bookings, course schedules, sign-up sheets, employment contracts, time tracking, and task management. Every interactive workflow has a scriptable equivalent, so repetitive tasks can be handed off to Cron or AI agents.

Command overview

courses — manage course registries and configurations

Maintain a set of course registries (directories of course data), add or remove courses, and configure per-course settings such as Canvas URLs and TimeEdit ICS links.

nytid courses ls
nytid courses new DD1310
nytid courses config DD1310

schedule — view and export combined schedules

Display a unified schedule that merges course events, external ICS calendars, and pending tasks. Export the result as an ICS file for import into any calendar application.

nytid schedule show
nytid schedule ics > schedule.ics
nytid schedule external add https://cloud.timeedit.net/…

signupsheets — generate TA sign-up sheets

Generate CSV sign-up sheets from the course schedule so that TAs can indicate which lab sessions they want to work. The sheets are designed for Google Sheets.

nytid signupsheets generate DD1310
nytid signupsheets set_url DD1310 https://docs.google.com/…

hr — employment contracts and time sheets

Compute employment data from completed sign-up sheets: generate amanuensis contracts, produce time sheets for hourly-employed TAs, and summarize hours per course.

nytid hr amanuensis create DD1310
nytid hr timesheets generate DD1310
nytid hr time DD1310

track — track time on activities

Track time spent on course activities with free-form labels. Start a label directly, or launch a command or tmux shell from the same entry point. View statistics, export to JSON/CSV/ICS, and edit past entries.

nytid track start DD1310 grading
nytid track start email --run mutt
nytid track stop
nytid track stats

todo — task management with agent support

Priority-based task list with working-directory capture, notes, and GitHub issue sync. Tasks can be started interactively or handed off to AI agents in headless mode. The schedule view automatically slots pending tasks into free time.

nytid todo add "Grade assignment 3" --prio 2
nytid todo ls
nytid todo start 5
nytid todo done
nytid todo sync

prompt-nytid — fast status for shell prompts

A separate, minimal entry point that prints the active todo ids and the currently tracked labels as two machine-readable lines. It skips the CLI's import overhead so it is cheap enough to run on every shell prompt render:

readarray -t _nytid < <(prompt-nytid --who "$USER")
# ${_nytid[0]} = active todo ids, ${_nytid[1]} = tracked labels

utils — room availability and other utilities

nytid utils rooms set-url https://… "Sal A" "Sal B"

Quick start

pip install nytid
nytid courses registry add kth ~/courses
nytid courses new DD1310
nytid schedule show

Documentation

For a full introduction and design overview, read the PDF found in the latest release.

Metadata

Release files for nytid 11.31

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nytid 11.31
File Size Uploaded
nytid-11.31.tar.gz 1.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for nytid 11.31
File Interpreter ABI Platform
nytid-11.31-py3-none-any.whl Python 3 none any Details

Total release size: 2.2 MB

Release files / nytid-11.31.tar.gz

Download URL nytid-11.31.tar.gz
Size 1.0 MB
Tags Source
SHA-256 checksum
How to use checksums
c5ca247160a57dd8ec4bb3d654037703c36fa361fb5763e23249b99bc426a360
BLAKE2b-256 checksum
How to use checksums
6032add3ae402b12d23bdcce7af6c4db3fd3ea5df79fd268c33cdddea8225ab6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.4 CPython/3.13.7 Linux/6.17.0-41-generic

Release files / nytid-11.31-py3-none-any.whl

Download URL nytid-11.31-py3-none-any.whl
Size 1.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
dfe7abb35c78bd13b67df29d12372b1d2f360b10fb2dcebd2bbb7ca62de1d33f
BLAKE2b-256 checksum
How to use checksums
bd1ed6c6636bc7f96af783b805f63c8a9155b2b834e665cfc2c5bff9d8f12f45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.4 CPython/3.13.7 Linux/6.17.0-41-generic

Release history Release notifications | RSS feed

11.32

2 release files

This release

11.31 This release

2 release files

11.30

2 release files

11.29

2 release files

11.28

2 release files

11.27

2 release files

11.26

2 release files

11.25

2 release files

11.24

2 release files

11.23

2 release files

11.22

2 release files

11.21

2 release files

11.19

2 release files

11.18

2 release files

11.17

2 release files

11.16

2 release files

11.14

2 release files

11.13

2 release files

11.12

2 release files

11.11

2 release files

11.9

2 release files

11.8

2 release files

11.7

2 release files

11.6

2 release files

11.5

2 release files

11.3

2 release files

11.2

2 release files

11.1

2 release files

11.0

2 release files

10.9

2 release files

10.8

2 release files

10.5

2 release files

10.4

2 release files

10.3

2 release files

10.2

2 release files

10.1

2 release files

10.0

2 release files

9.12

2 release files

9.11

2 release files

9.10

2 release files

9.9

2 release files

9.8

2 release files

9.7

2 release files

9.6

2 release files

9.4

2 release files

9.3

2 release files

9.2

2 release files

9.1

2 release files

9.0

2 release files

8.2

2 release files

8.1

2 release files

8.0

2 release files

7.15

2 release files

7.14

2 release files

7.13

2 release files

7.12

2 release files

7.11

2 release files

7.10

2 release files

7.8

2 release files

7.7

2 release files

7.6

2 release files

7.5

2 release files

7.4

2 release files

7.3

2 release files

7.2

2 release files

7.1

2 release files

7.0

2 release files

6.14

2 release files

6.13

2 release files

6.12

2 release files

6.11

2 release files

6.10

2 release files

6.9

2 release files

6.8

2 release files

6.6

2 release files

6.5

2 release files

6.4

2 release files

6.3

2 release files

6.2

2 release files

6.1

2 release files

6.0

2 release files

5.0

2 release files

4.2

2 release files

4.1

2 release files

4.0

2 release files

3.2

2 release files

3.1

2 release files

3.0

2 release files

2.6

2 release files

2.5

2 release files

2.4

2 release files

2.3

2 release files

2.2

2 release files

2.1

2 release files

2.0

2 release files

0.25

2 release files

0.24

2 release files

0.23

2 release files

0.22

2 release files

0.21

2 release files

0.20

2 release files

0.19

2 release files

0.18

2 release files

0.17

2 release files

0.16

2 release files

0.15

2 release files

0.14

2 release files

0.13

2 release files

0.12

2 release files

0.11

2 release files

0.10

2 release files

0.9

2 release files

0.8

2 release files

0.7

2 release files

0.6

2 release files

0.5

2 release files

0.4

2 release files

0.3

2 release files

0.2

2 release files

0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page