GT Scheduler Agent CLI
An independent, agent-oriented CLI for Georgia Tech course planning. This project is not affiliated with Georgia Tech or the GT Scheduler project.
The CLI does not log in to GT, register classes, or make degree-path decisions.
Quick install (macOS/Linux)
If you already have uv installed:
curl -fsSL https://raw.githubusercontent.com/BrandonLee28/gt-scheduler-agent-cli/main/install.sh | sh
The installer checks for uv and installs the gt-agent command from PyPI. It
does not silently install tools or upload local/student data.
Install with pipx or pip
pipx install gt-scheduler-agent-cli
python -m pip install gt-scheduler-agent-cli
Windows users can use either of these Python-based installation methods.
Install
python3 -m venv .venv
. .venv/bin/activate
pip install -e .
Examples
gt-agent terms --json
gt-agent classes search "machine learning" --term 202608 --json
gt-agent classes show 91421 --term 202608 --json
gt-agent schedule plan --request plan.json --json
gt-agent grades course CS 4641 --json
gt-agent grades instructor "Jane Doe" --course "CS 4641" --json
The installed executable is gt-agent; all commands below are shown with that
name.
The agent can extract a student's current classes from a screenshot and pass
them as fixed_meetings in a planning request. The CLI does not ingest or
persist registration exports.
Planning requests
gt-agent schedule plan accepts a versioned JSON request from a file or stdin:
{
"version": "1",
"term": "202608",
"requested_courses": [
{"course": "CS 1331", "pinned_section": "A"},
{"course": "MATH 1554"}
],
"constraints": {
"fixed_meetings": [
{"label": "Current class", "days": ["Monday"], "start": "10:00 AM", "end": "11:00 AM"}
],
"minimum_transition_minutes": 10
},
"preferences": {
"preferred_instructors": ["Jane Doe"],
"modalities": ["In Person"]
},
"max_results": 10,
"include_grade_history": false
}
Options are ranked by fewer active days, then less idle time, then requested soft preferences. Lecture/lab pairings inferred from public metadata are marked as requiring manual verification. Prerequisites, corequisites, and restrictions are evidence warnings, not registration decisions.
Data sources
- Public term datasets published by GT Scheduler.
- Public course and instructor history from Course Critique.
If a network source is unavailable, the CLI uses its last successful cache and marks the JSON response as stale.
Documentation
License
MIT. See LICENSE.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gt_scheduler_agent_cli-0.1.0.tar.gz.
File metadata
- Download URL: gt_scheduler_agent_cli-0.1.0.tar.gz
- Upload date:
- Size: 62.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1b47a219632467e423bee22cb3c011a2aa94da77a8f414bde63ce9ebfbec1d31
|
|
| MD5 |
79bde9c133b4e4dac38647da913bc045
|
|
| BLAKE2b-256 |
893f868768dd8719c93abdd73ca3864622fcfcae59f4baeffba06b5b6ee05e04
|
Provenance
The following attestation bundles were made for gt_scheduler_agent_cli-0.1.0.tar.gz:
Publisher:
release.yml on BrandonLee28/gt-scheduler-agent-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gt_scheduler_agent_cli-0.1.0.tar.gz -
Subject digest:
1b47a219632467e423bee22cb3c011a2aa94da77a8f414bde63ce9ebfbec1d31 - Sigstore transparency entry: 2350827574
- Sigstore integration time:
-
Permalink:
BrandonLee28/gt-scheduler-agent-cli@80a226f547f3a765f93d08e1cc4c47280f578d72 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/BrandonLee28
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@80a226f547f3a765f93d08e1cc4c47280f578d72 -
Trigger Event:
release
-
Statement type:
File details
Details for the file gt_scheduler_agent_cli-0.1.0-py3-none-any.whl.
File metadata
- Download URL: gt_scheduler_agent_cli-0.1.0-py3-none-any.whl
- Upload date:
- Size: 15.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7160ffd3d6455eec4111aee7204efabf21c0bd3a7085434e6ff70d317c5b40e
|
|
| MD5 |
e9234c66a439c86f7acbf17311cad659
|
|
| BLAKE2b-256 |
c8fbd0a61e12f98a46dc81315bace6d8692900e7b5ab96001697d89fc904d283
|
Provenance
The following attestation bundles were made for gt_scheduler_agent_cli-0.1.0-py3-none-any.whl:
Publisher:
release.yml on BrandonLee28/gt-scheduler-agent-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gt_scheduler_agent_cli-0.1.0-py3-none-any.whl -
Subject digest:
b7160ffd3d6455eec4111aee7204efabf21c0bd3a7085434e6ff70d317c5b40e - Sigstore transparency entry: 2350828120
- Sigstore integration time:
-
Permalink:
BrandonLee28/gt-scheduler-agent-cli@80a226f547f3a765f93d08e1cc4c47280f578d72 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/BrandonLee28
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@80a226f547f3a765f93d08e1cc4c47280f578d72 -
Trigger Event:
release
-
Statement type: