Documentation Index
Fetch the complete documentation index at: https://docs.pawtograder.com/llms.txt
Use this file to discover all available pages before exploring further.
Office Hours Overview
Pawtograder’s office hours feature allows students to request live help from course staff. Student requests go into a queue, and multiple staff members can be working concurrently through that queue, assigning themselves to help students as they become available. Students are encouraged to make public requests for help, so that other students can also benefit from the discussion.Student Experience
Students can access office hours through a persistent Get Help button that appears in the bottom-right corner of every page. This button opens a help drawer showing:- Current office hours status
- Active queues accepting requests
- Weekly queue schedule with live “Happening now” highlights
- Quick access to submit new requests
Get Help CTA and Help Drawer
Students have access to a persistent Get Help call-to-action button throughout the site. This button opens a right-side help drawer that provides:- Office Hours status card: Overview of all available queues and their current status
- Per-queue cards: Individual queue information including wait times and staff availability
- Weekly queue schedule: Calendar view showing when each queue is staffed, with live “Happening now” highlights for currently active sessions
- Demo queues: Optional practice queues for testing (configured via ordinal-based queue ordering)
Queue Management Features
- Ordinal-based ordering: Queues are displayed in a configurable order
- Course-level description: Add a description to explain your office hours system
- Queue name resolution: Calendar events automatically link to the corresponding queue
- Conflict detection: The system validates help requests to prevent scheduling conflicts for solo office hours
Student Notifications
The platform provides comprehensive notification support to ensure students never miss updates:Notification Types
- Browser notifications: Desktop alerts for help request updates
- Title notifications: Page title updates showing notification counts
- Sound notifications: Audio alerts for important events
- Favicon updates: Visual indicator in the browser tab
- Permission warnings: Clear prompts if browser notifications are blocked
Notification Settings
Students can:- Test notifications to verify their setup
- Enable or disable specific notification types
- Configure sound preferences
- Manage browser notification permissions
Office Hours Queues
Instructors can create multiple office hours queues to provide different types of help. For example, if a class is coordinated across multiple campuses, there may be in-person help queues per-campus, and a cross-network virtual help queue.Active and Inactive Queues
Queues can be marked as active or inactive. This allows instructors to control which queues are currently available for students to join:- Active queues appear on both the student dashboard and the TA dashboard, allowing students to submit help requests
- Inactive queues are hidden from the student and TA dashboards but remain visible in the Queue Management interface for instructors
Active vs Inactive Queues
Queues can be marked as active or inactive. Students only see active queues when requesting help, while TAs see active queues on their dashboard. Inactive queues remain visible in the Queue Management interface for instructors to reactivate as needed. Each queue has an active status that controls its visibility:- Active queues: Visible to both students and TAs on their respective dashboards
- Inactive queues: Hidden from student and TA views, but remain accessible in Queue Management for instructors
Active vs Inactive Queues
Queues can be marked as active or inactive. TAs see only active queues on their dashboard, matching what students see. Inactive queues remain visible in Queue Management for instructors to configure and reactivate as needed. When all queues are inactive, TAs see an empty state with a helpful hint. Each queue can be marked as active or inactive. TAs and students only see active queues on their dashboards. Inactive queues remain accessible in the Queue Management section for instructors to configure and reactivate as needed.Active and Inactive Queues
Queues can be marked as active or inactive:- Active queues: Visible to both students and TAs, accepting new help requests
- Inactive queues: Hidden from the TA dashboard but still visible in Queue Management for instructors
Queue Configuration
When configuring queues, you can:- Set demo queues for testing and training purposes
- Configure ordinal-based queue ordering to control display order
- Add a course-level Office Hours description to provide context to students
- Define weekly queue schedules that display with live “Happening now” highlights
- Queue name: Displayed to students when selecting where to request help
- Description: Course-level office hours description explaining the purpose and policies
- Schedule: Weekly recurring times when the queue is active
- Ordinal ordering: Control the display order of queues in the interface
- Demo mode: Mark queues as demo/test queues for training purposes
Queue Management
The queue management interface allows you to:- View all active and scheduled queues
- See current wait times and student counts
- Enable or disable queues as needed
- Monitor staff availability across all queues
Calendar Integration
Queue schedules integrate with a calendar view that shows:- Weekly recurring office hours times
- “Happening now” indicators for currently active sessions
- Queue name resolution from calendar events
- Visual schedule for students to plan when to seek help
- Queue name: Display name shown to students
- Description: Course-level office hours description explaining when and how to get help
- Schedule: Weekly schedule showing when the queue is active
- Demo mode: Mark queues as demo/test queues that don’t affect real office hours
- Queue ordering: Set ordinal values to control the display order of queues
Office Hours Status Card
Students see an office hours status card that shows:- Current status of all queues (open/closed)
- Individual queue cards with availability
- Weekly schedule with highlighted active times
- Quick access to request help
Queue Schedule
You can configure a weekly schedule for each office hours queue. The schedule:- Displays to students showing when help is available
- Highlights “Happening now” for currently active sessions
- Shows upcoming sessions for the week
- Helps students plan when to request help
Demo Queues
You can mark queues as “demo” queues for testing purposes. Demo queues:- Don’t appear in the main queue list for students
- Allow staff to test the help request workflow
- Can be used for training new staff members
Queue Configuration
When configuring office hours queues, you can:- Set a course-level office hours description
- Configure queue ordering using ordinal values
- Create demo queues for testing purposes
- Set up weekly schedules that display to students with live “Happening now” indicators
Student Access
Students can access office hours through:- Get Help Button: A persistent CTA that appears throughout the site
- Help Drawer: A right-side drawer showing:
- Office hours status card
- Per-queue cards with current staff availability
- Weekly queue schedule with live status highlights
- Set queue schedules: Define when each queue is active throughout the week
- Mark queues as demo: Demo queues appear in a separate section and use ordinal-based ordering
- Add course-level descriptions: Provide context about your office hours system
- Configure queue ordering: Queues are ordered by their ordinal value for consistent display
Office Hours Status Card
Students see an Office Hours Status card that displays:- Whether office hours are currently happening
- Which queues are currently open
- How many students are waiting in each queue
- The weekly schedule with “Happening now” highlights for active sessions
Help Request Templates
Instructors can create help request templates, which are pre-filled help requests that students can use to request help. This is useful to help prompt students to ensure that they have completed any expected troubleshooting steps before seeking help. Templates include:- A template name (e.g., “General help request”)
- A description explaining what information students should provide
- Pre-filled placeholder text guiding students to include relevant details
Pinned Discussion Topics
When students create a new help request and your course has pinned discussion posts, the system automatically displays a “Before you request help…” section with pinned discussion topics from the course discussion board. This feature:- Encourages students to check existing answers before joining the queue
- Surfaces instructor-highlighted posts that address common questions
- Shows related posts with an expandable “Show All Related Posts” option
- Reduces wait times by helping students find answers independently

Managing Queue Visibility
Instructors can mark queues as active or inactive. TAs will only see active queues on their dashboard, matching what students see. Inactive queues remain accessible in Queue Management for administrative purposes. When all queues are inactive, TAs will see an empty state with a hint to check Queue Management.Queue Visibility
The TA dashboard displays only active queues, matching what students see. Inactive queues remain accessible in the Queue Management section for instructors to configure. When all queues are inactive, TAs see an empty state with a helpful hint. The TA Dashboard displays only active queues—those marked as active in Queue Management. Inactive queues are hidden from both students and the TA Dashboard to reduce clutter. To activate or deactivate queues, use the Queue Management interface.Providing Help
When a staff member is working on the queue, they should click Start Working to indicate that they are available to help. This is a helpful indicator for students, and also allows instructors to see that staff are logged on and ready to help. The TA dashboard shows only active queues by default, matching what students see. Inactive queues remain accessible in the Queue Management section for instructors to configure. If all queues are inactive, TAs will see an empty state with a helpful message. The TA dashboard displays only active help queues, matching what students see. Inactive queues remain accessible in the Queue Management section for instructors to activate or configure as needed. The TA dashboard displays only active queues by default. Inactive queues can be managed through the Queue Management interface. If all queues are inactive, you’ll see an empty state with instructions to activate a queue. The TA dashboard displays only active help queues. Inactive queues remain visible in Queue Management for instructors but are hidden from the TA view to reduce clutter. The TA dashboard shows only active queues (matching what students see). Inactive queues remain visible in Queue Management for configuration purposes. The TA dashboard displays only active queues, matching what students see. Inactive queues remain accessible in Queue Management for configuration purposes. The TA dashboard displays only active help queues (matching what students see). Inactive queues can still be managed through the Queue Management interface. Select a help request from the queue, and click Take Assignment to indicate that you are actively working on it.Text and Video Chat
Staff can communicate with students through:- Text Chat: Built-in messaging for quick questions and code sharing. Messages are preserved if students lose connection while typing.
- Video Chat: Click Start Video Chat to open a video call with screen-sharing capabilities
- AI Help: Click AI Help to generate context for AI assistants that support MCP (Model Context Protocol), providing relevant information about the student’s submission, test results, and discussion threads
Chat Reliability
The chat system includes improved error handling to ensure messages aren’t lost:- Connection status: The system monitors the connection and alerts users if disconnected
- Message preservation: If a message fails to send (e.g., due to connection issues), it remains in the input box so users don’t lose their typed content
- Automatic reconnection: The chat automatically attempts to reconnect when the connection is restored
- Robust startup: Improved chat initialization and refetch flow for more reliable connections
AI Assistance
Instructors and graders can access AI-powered assistance when helping students:- AI Help Button: Available in help request chats and discussion threads
- Context-aware support: AI assistants have access to student submissions, test results, and error messages
- Assignment context: Provide assignment handout URLs to give AI assistants full context about the task
- The student’s help request or discussion thread
- Their submission files and test results
- Build output and error messages
- Assignment handout information
AI assistance is only available to instructors and graders. The system never exposes private student information to the AI.
Active Help Request Widget
Active Help Request Widget and Notifications
When a student has an active help request, it follows them around the site through a persistent “Get Help” button and Help Drawer. Students receive:- Real-time Status Updates: Current queue position or help status
- Browser Notifications: Desktop notifications when staff responds (with permission)
- Title Bar Updates: Unread message counts in browser tab
- Sound Alerts: Audio notifications for important updates
- Favicon Badge: Visual indicator in browser tab
- Video Call Invitations: Prominent “Join Video Call” button when staff starts a call
Get Help Button
Students can access office hours from anywhere in the course through a persistent Get Help button that appears site-wide. This button:- Opens a help drawer showing office hours status and available queues
- Displays which queues are currently active (“Happening now”)
- Shows the weekly queue schedule with live status highlights
- Provides quick access to create new help requests
- Shows demo queues for testing (if configured)
- Office Hours Status Card: Overview of current office hours availability
- Per-Queue Cards: Individual cards for each help queue showing status and schedule
- Weekly Schedule: Visual calendar showing when each queue is staffed
Notifications
Students receive comprehensive notifications about their help requests:- Browser Notifications: Desktop notifications when staff responds or starts a video call
- Title Bar Updates: Browser tab title shows unread message counts
- Sound Alerts: Optional audio notifications for new messages
- Favicon Badge: Visual indicator in browser tab for unread messages
Resolving Requests
A help request can be marked as “Resolved” by either a staff member or a student. When students resolve their own requests, they can select a resolution status:- Resolved - Got help: The student received assistance and their question was answered
- Resolved - Figured it out: The student solved the issue independently
- Resolved - No longer needed: The issue is no longer relevant
- Resolved - Got help: Student received assistance
- Resolved - Figured it out: Student solved the problem independently
- Resolved - No longer needed: Request is no longer relevant
Office Hours Scheduling and Status
Instructors can configure office hours schedules to help students know when help is available. The system displays:- Office Hours status card: Shows whether office hours are currently active
- Per-queue cards: Display status and wait times for each queue
- Weekly queue schedule: Calendar view with live “Happening now” highlights
- Demo queues: Create demonstration queues for testing and training
Queue Management
Queue Ordering
Queues are displayed in ordinal-based order, allowing you to control the sequence in which queues appear to students. This is useful for prioritizing certain types of help or organizing queues by location or topic.Course-Level Office Hours Description
Add a course-level description for office hours that appears at the top of the office hours page. Use this to:- Explain your office hours policies
- Provide guidelines for requesting help
- Link to additional resources
Enhanced Notifications
The office hours system includes comprehensive notification support to ensure students never miss updates:Browser Notifications
Students receive browser notifications when:- A staff member assigns to help them
- Their queue position changes significantly
- A video chat is started
Visual Indicators
- Title notifications: The page title updates with status changes
- Sound notifications: Optional audio alerts for important updates
- Favicon changes: The browser tab icon updates to show active status
Message Notifications
The chat system includes notification hooks that trigger when:- Staff sends a message
- The help request status changes
- Video chat invitations are sent
Resolving Requests
A help request can be marked as “Resolved” by either a staff member or a student. When students resolve their own requests, they can select a resolution status:- Resolved: Question was answered or problem was solved
- Resolved - No longer needed: Student figured it out or no longer needs help
- Resolved - Unanswered: Closing the request without getting needed help
Student Help Experience Enhancements
Get Help CTA
A persistent Get Help button appears throughout the site, giving students quick access to:- Submit new help requests
- View active request status
- Open the help drawer with queue information
Help Drawer
The help drawer displays:- Office Hours Status Card: Shows if office hours are currently active
- Per-Queue Cards: Individual status and wait times for each queue
- Weekly Queue Schedule: Full schedule with live “Happening now” highlights for active sessions
Site-Wide Notifications
Students receive multi-channel notifications for their active help requests:- Browser notifications: Desktop alerts for status changes (with permission prompts)
- Title updates: Browser tab title shows queue position
- Sound alerts: Audio notifications for important updates (with test functionality)
- Favicon changes: Visual indicator in browser tab
Conflict Detection
The system validates help requests to prevent conflicts:- Detects if a student already has an active solo request
- Shows clear validation messages when conflicts occur
- Prevents duplicate requests in the same queue
Get Help Button and Help Drawer
Students have access to a persistent Get Help button in the bottom-right corner of every page. This button:- Provides quick access to office hours from anywhere in the course
- Opens a help drawer with comprehensive office hours information
- Shows notification badges when students have active requests
- Remains accessible throughout the entire site
Help Drawer Features
The help drawer provides students with:- Office Hours Status Card: Shows whether office hours are currently active and which queues are open
- Per-Queue Cards: Individual cards for each help queue showing wait times, staff availability, and queue status
- Weekly Schedule: Calendar view with recurring office hours times and “Happening now” highlights for active sessions
Notifications and Alerts
Pawtograder provides rich notification support for office hours:Student Notifications
Students receive notifications through multiple channels:- Browser notifications: Desktop alerts for important events (requires permission)
- Title updates: Page title shows notification counts when on another tab
- Sound alerts: Optional audio notifications for messages and status changes
- Favicon badges: Visual indicator on the browser tab
Notification Events
Students are notified when:- Staff assigns themselves to help
- New messages arrive in the help request chat
- Video calls are initiated
- Help request status changes
Testing and Configuration
Students can:- Test their notification settings to verify they’re working
- See permission warnings if browser notifications are blocked
- Configure which types of notifications they want to receive
Resolving Requests
A help request can be marked as “Resolved” by either a staff member or a student. Students can resolve their own requests from the floating banner or main chat view, and will be prompted to select a resolution status:- Resolved - Got help: Student received assistance and their issue was addressed
- Resolved - Figured it out: Student solved the problem independently
- Resolved - No longer needed: The help is no longer necessary
- Cancelled: Request was cancelled without resolution
Office Hours Status and Schedule
The office hours interface includes:- Office Hours Status Card: Shows whether office hours are currently active and provides a course-level description of office hours
- Per-Queue Cards: Displays information for each help queue, including current wait times and staff availability
- Weekly Queue Schedule: A calendar view showing when each queue is scheduled to be active, with live “Happening now” highlights for currently active queues
Demo Queues
Instructors can create demo queues for testing and training purposes. Demo queues allow staff to practice using the office hours system without affecting real student help requests.Rich Notifications for Students
Students receive comprehensive notifications for their help requests:- Browser notifications: Desktop alerts when request status changes
- Title bar updates: Browser tab title shows queue position
- Sound notifications: Audio alerts for important updates
- Favicon changes: Visual indicator in browser tab
Request Validation
The system includes validation to prevent conflicts:- Students cannot submit multiple simultaneous requests to the same queue
- Clear error messages guide students when they attempt duplicate requests
- Solo office hours requests are validated to ensure only one student per request
Student Notifications
Students receive comprehensive notifications for help request updates:- Browser Notifications: Desktop notifications for status changes (requires permission)
- Title Bar Updates: Page title shows queue position and status
- Sound Alerts: Audio notifications for important events
- Favicon Badge: Visual indicator in browser tab for active requests
AI Assistance for Instructors
Pawtograder includes a Model Context Protocol (MCP) server that enables AI assistants to help instructors and TAs support students who are struggling with errors in their programming assignments. The MCP server provides:- Secure Supabase OAuth authentication (instructors and graders only)
- Tools for fetching help requests, discussion threads, submissions, test results, and build output
- Privacy protection that never exposes sensitive user data
- AI Help button in help request chat and discussion thread views
- Support for any MCP-compatible AI client
Resolving Requests
Resolving requests
A help request can be marked as “Resolved” by either a staff member or a student. When students resolve their own requests, they can select a resolution status to indicate how their issue was resolved (e.g., “Resolved with help”, “Resolved on my own”, “No longer needed”). A help request can be marked as “Resolved” by either a staff member or a student. Students can resolve their own requests from the chat interface or floating banner, and can select a resolution status:- Resolved - Got help: Student received assistance and issue is resolved
- Resolved - Figured it out: Student solved the problem independently
- Resolved - No longer needed: Student no longer needs help
AI Assistance for Staff
Pawtograder includes AI assistance tools to help instructors and TAs support students more effectively. When viewing a help request or discussion thread, staff can click the AI Help button to generate context that can be used with AI assistants. The AI assistance system uses the Model Context Protocol (MCP) to provide:- Access to help request details and chat history
- Student submission files and test results
- Build output and error messages
- Assignment context from handout URLs
AI assistance is only available to instructors and graders. Student data is protected and never exposed through the AI tools.
- Configure the MCP server with Supabase OAuth authentication
- Click the AI Help button when viewing a help request or discussion thread
- Use the generated context with any MCP-compatible AI client
Staff resolution
Staff members can mark a help request as resolved when they have finished helping the student. This closes the request and removes it from the queue.Student resolution
Students can resolve their own help requests from the floating banner or main chat view. When resolving a request, students can select a resolution status:- Resolved: The issue was fixed
- No longer needed: The student no longer needs help
- Other: Other reason for closing the request
AI Assistance for Instructors
Pawtograder includes a Model Context Protocol (MCP) server that enables AI assistants to help instructors and TAs support students who are struggling with errors in their programming assignments.Features
- MCP server with Supabase OAuth authentication (instructors/graders only)
- Tools for fetching help requests, discussion threads, submissions, test results, and build output
- Privacy protection: never exposes users table or private profile information
- AI Help button in help request chat and discussion thread views
- Assignment context: Add a
handout_urlfield to assignments to provide assignment context to AI assistants
Using AI Assistance
When viewing a help request or discussion thread, instructors can click the AI Help button to generate MCP context that can be used with any MCP-compatible client (such as Claude Desktop). The AI assistant can then access relevant information about the student’s submission, test results, and error messages to provide more informed assistance. When students resolve their own requests, they are prompted to select a resolution status:- Resolved - Question Answered: Their question was fully answered
- Resolved - Problem Solved: Their technical issue was fixed
- Resolved - Referred Elsewhere: They were directed to other resources
- Resolved - No Longer Needed: They no longer need help with this issue
- Resolved - Other: The request was resolved for another reason
AI Assistance for Instructors
Pawtograder provides AI assistance tools to help instructors and TAs support students more effectively. An AI Help button appears in help request chats and discussion threads, allowing staff to generate context that can be used with AI assistants.Model Context Protocol (MCP) Server
The MCP server enables AI assistants to access course data securely:- Authentication: Uses Supabase OAuth (instructors and graders only)
- Available Tools: Fetch help requests, discussion threads, submissions, test results, and build output
- Privacy Protection: Never exposes sensitive user data
- Assignment Context: Add a
handout_urlto assignments to provide assignment context to AI assistants
Student Notifications
Students receive multiple types of notifications to stay informed about their help requests:- Browser Notifications: Desktop notifications when staff responds or starts helping
- Title Bar Updates: Browser tab title shows status updates
- Sound Alerts: Optional audio notifications for important events
- Favicon Badge: Visual indicator in browser tabs
AI Assistance for Staff
Course staff can use AI assistance tools to help support students who are struggling with errors in their programming assignments. The AI Help button appears in help request chats and discussion threads, providing staff with AI-powered insights based on:- Student submissions and test results
- Build output and error messages
- Assignment context and requirements
AI assistance requires configuration of the Model Context Protocol (MCP) server with Supabase OAuth authentication. Only instructors and graders have access to AI assistance tools.
Student Resolution Flow
Students can resolve their own help requests from:- The floating banner at the top of the page
- The main chat view in the office hours interface
- Resolved: Question was answered or problem was solved
- Resolved - No longer needed: Figured it out independently or no longer needs help
- Resolved - Unanswered: Closing the request without getting needed help
Conflict Detection
The system includes validation to prevent conflicts with solo office hours requests. When a student tries to join a queue while already in another solo request, they’ll receive a clear error message explaining the conflict.Request Validation
Pawtograder includes conflict detection and validation for help requests:- Solo request validation: Prevents students from joining multiple solo office hours queues simultaneously
- Clearer error messages: Students receive specific feedback when validation fails
- Improved UX: The system provides clear guidance on resolving conflicts
Notifications
Students receive comprehensive notifications for office hours updates:- Browser notifications: Desktop alerts for status changes and messages
- Title notifications: Page title updates showing queue status
- Sound notifications: Audio alerts for important events
- Favicon updates: Visual indicators in the browser tab
AI Assistance Tools
Pawtograder includes AI assistance tools to help course staff provide better support to students. When viewing a help request or discussion thread, instructors and graders can access AI-powered context about:- Student submissions and code
- Test results and build output
- Assignment handouts and requirements
- Discussion thread history
- Quickly understand student issues
- Generate helpful debugging suggestions
- Provide more targeted assistance
AI assistance tools are only available to instructors and graders. Student data is protected and never exposed inappropriately.
- Click the AI Help button when viewing a help request or discussion thread
- The system generates an MCP context file with relevant information
- Use this context with any MCP-compatible AI client to get assistance
- Self-solved
- Staff helped
- Peer helped
- No time to wait
- Other (with optional notes)
Feedback and Analytics
After a help request is completed, the student can provide feedback on the help provided. This feedback is visible to instructors only and can be used to:- Monitor quality of assistance provided
- Identify areas for improvement
- Recognize excellent staff members