Draft rubric-aligned feedback on new Canvas submissions

Every weekday evening, a first draft of criterion by criterion feedback is waiting in SpeedGrader for you to edit and approve.

Agentic Task
CanvasSlack BotOperationsContent GenerationNotifications & Alerts
PromptCreate

Every weekday at 6pm, on a cron trigger, draft rubric-aligned feedback on new Canvas submissions so I only have to review and approve rather than write from scratch.

Start with Canvas List Courses to get my active courses, then use List Assignments on each course. Only work on assignments that have a rubric attached, and skip the rest.

For each of those assignments, call List Assignment Submissions with include of user, submission_comments, and rubric_assessment. Keep only the submissions that are submitted but not yet graded. Skip any submission that already has a comment from an instructor, since that means a human has already started on it. Cap the whole run at 40 submissions so each evening's batch stays reviewable.

Before drafting anything, pull the context for the assignment: Get a Single Assignment for the instructions and description, and Get a Single Rubric for the criteria, their descriptions, and their rating levels.

Then read the student's actual submission and write feedback organized by rubric criterion. For every criterion, name one concrete strength and one concrete improvement, and quote the student's own work where it helps them see exactly what I mean. Keep it specific to what they wrote. No generic praise and no advice that would apply to any essay.

Post the draft using Canvas Grade or Comment on a Submission with the comment text field only. Never set a grade and never fill in a rubric assessment. I remain the decision maker: the draft simply waits in SpeedGrader for me to edit, adjust, and decide the score myself.

Finish with a Slack Bot Send a Message to me telling me how many feedback drafts are waiting for my review, broken down by course and assignment.

What does this prompt do?

  • Finds submissions that are in but not graded yet across your courses, and skips anything an instructor has already commented on
  • Reads each submission against the assignment instructions and the rubric you already attached to it
  • Writes feedback for every rubric criterion, naming one concrete strength and one concrete improvement and quoting the student's own work
  • Posts it as a comment only, never a grade, then messages you in Slack with how many drafts are waiting for review

What do I need to use this?

  • A Canvas account with teacher or TA access to the courses you want covered
  • Assignments that already have a rubric attached in Canvas
  • A Slack workspace where you want the end of day heads up

How can I customize it?

  • Change the timing. Every weekday at 6pm is the default, but nightly or twice a week works just as well.
  • Narrow the scope to specific courses or assignment types instead of everything you teach.
  • Adjust the batch size or the feedback style, such as asking for more than one strength per criterion or a warmer tone for first year students.

FAQs

Does this grade my students?
No. It only leaves a comment. It never sets a score and never fills in the rubric grid. You open SpeedGrader, read the draft, edit anything you want to change, and enter the grade yourself.
Will students see the draft before I have reviewed it?
Comments land on the submission the same way a comment you type yourself would. If you want them held back until you have looked them over, set the assignment to manually post grades, which keeps comments hidden from students until you choose to post.
What if I already left a comment on a submission?
It gets skipped. Anything an instructor has already touched is left alone, so this never talks over you or duplicates feedback you have already written.
Does it work with the rubrics I already use?
Yes. It reads the rubric attached to each assignment, including the criteria and their descriptions, so the feedback lines up with what you are actually assessing rather than generic writing advice.
How many submissions does it handle at once?
Up to 40 per run by default, which keeps each evening's batch something you can realistically review. You can raise or lower that number.

Related templates

A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasonLiveChat coverage board for planning next week's shifts

Stop writing feedback from a blank box.

Let a first draft be waiting on every ungraded submission, so your evening is review and approve instead of write from scratch.