Skip to content

CLI

Everything the viewer does also works from the terminal, which makes cass scriptable and usable from coding agents. Every command accepts --help. The full generated reference is on the CLI reference page.

Core

cass init         # interactive setup
cass pull         # fetch students, assignments, submissions
cass status       # local state and sync status
cass view         # open the browser viewer
cass push         # preview and confirm pending Canvas changes
cass push --yes   # skip confirmation
cass revert       # discard pending local changes

Canvas management

cass canvas                      # course overview
cass canvas people               # roster with roles and emails
cass canvas files                # course files as a tree
cass canvas announcements        # list announcements
cass canvas tabs                 # navigation tabs; show-tab / hide-tab change visibility
cass canvas modules              # list / create / publish / delete modules
cass canvas assignments          # list / create / publish / delete assignments and groups
cass canvas quizzes              # list quizzes; see the Quizzes guide for authoring
cass canvas quizzes responses "Survey 1" --csv out.csv   # every student's answers
cass canvas calendar             # list / create / update / delete events
cass canvas upload file.pdf      # upload a file (delete-file removes one)
cass canvas announce "Title" "Body"   # update-announcement / delete-announcement
cass canvas sync [--apply]       # reconcile [[canvas.*]] declarations in cass.toml
cass canvas login --from-chrome  # browser-session auth, see Canvas authentication

Data

cass query students                     # roster
cass query assignments                  # assignment metadata
cass query submissions                  # submissions joined with names
cass query gradebook                    # student x assignment matrix
cass query gradebook --where "score < 50" --order name --limit 20
cass query --sql "select count(*) from canvas_students"
cass backup [--tag NAME]
cass restore PATH
cass delete                             # remove local database

Another course

Every command accepts --config PATH (or the CASS_CONFIG environment variable) to run against a different cass.toml. Credentials and cass.db resolve beside that file.

cass --config ../f25/cass.toml canvas quizzes