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

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.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nytid-11.27.tar.gz (919.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nytid-11.27-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file nytid-11.27.tar.gz.

File metadata

  • Download URL: nytid-11.27.tar.gz
  • Upload date:
  • Size: 919.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.4 CPython/3.13.7 Linux/6.17.0-41-generic

File hashes

Hashes for nytid-11.27.tar.gz
Algorithm Hash digest
SHA256 c4afff65c9af7ab725f64e0c8ddb40a9bd5b39518b4470986439c3206529b203
MD5 0085a237303c572bb8594cbeb1b87e44
BLAKE2b-256 086f6ad4462e4435ededc1e4ae2f0fc799bbcdc4ea05fd7d961005cb3cb1cfa0

See more details on using hashes here.

File details

Details for the file nytid-11.27-py3-none-any.whl.

File metadata

  • Download URL: nytid-11.27-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.4 CPython/3.13.7 Linux/6.17.0-41-generic

File hashes

Hashes for nytid-11.27-py3-none-any.whl
Algorithm Hash digest
SHA256 b64502ee61ee3faa6edd421127242ffec329aff0dcbf37bc4cb972117bc1647c
MD5 16df9acd1b6b287f6bdf7a370c7dc8ff
BLAKE2b-256 785b27e1e3ff916b28eeca1caa084447aefda033bb60bda67b4937c4ffe35013

See more details on using hashes here.

Release history Release notifications | RSS feed

11.29

2 files

11.28

2 files

This release

11.27 This release

2 files

11.26

2 files

11.25

2 files

11.24

2 files

11.23

2 files

11.22

2 files

11.21

2 files

11.19

2 files

11.18

2 files

11.17

2 files

11.16

2 files

11.14

2 files

11.13

2 files

11.12

2 files

11.11

2 files

11.9

2 files

11.8

2 files

11.7

2 files

11.6

2 files

11.5

2 files

11.3

2 files

11.2

2 files

11.1

2 files

11.0

2 files

10.9

2 files

10.8

2 files

10.5

2 files

10.4

2 files

10.3

2 files

10.2

2 files

10.1

2 files

10.0

2 files

9.12

2 files

9.11

2 files

9.10

2 files

9.9

2 files

9.8

2 files

9.7

2 files

9.6

2 files

9.4

2 files

9.3

2 files

9.2

2 files

9.1

2 files

9.0

2 files

8.2

2 files

8.1

2 files

8.0

2 files

7.15

2 files

7.14

2 files

7.13

2 files

7.12

2 files

7.11

2 files

7.10

2 files

7.8

2 files

7.7

2 files

7.6

2 files

7.5

2 files

7.4

2 files

7.3

2 files

7.2

2 files

7.1

2 files

7.0

2 files

6.14

2 files

6.13

2 files

6.12

2 files

6.11

2 files

6.10

2 files

6.9

2 files

6.8

2 files

6.6

2 files

6.5

2 files

6.4

2 files

6.3

2 files

6.2

2 files

6.1

2 files

6.0

2 files

5.0

2 files

4.2

2 files

4.1

2 files

4.0

2 files

3.2

2 files

3.1

2 files

3.0

2 files

2.6

2 files

2.5

2 files

2.4

2 files

2.3

2 files

2.2

2 files

2.1

2 files

2.0

2 files

0.25

2 files

0.24

2 files

0.23

2 files

0.22

2 files

0.21

2 files

0.20

2 files

0.19

2 files

0.18

2 files

0.17

2 files

0.16

2 files

0.15

2 files

0.14

2 files

0.13

2 files

0.12

2 files

0.11

2 files

0.10

2 files

0.9

2 files

0.8

2 files

0.7

2 files

0.6

2 files

0.5

2 files

0.4

2 files

0.3

2 files

0.2

2 files

0.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page