A browser extension that automatically handles assignments and navigates content on the Amigo LMS platform.
- Suggested workflow: First complete your Module Assessments manually. After that, enable the bot so its skip logic helps prevent accidentally attempting assessments.
- Assignment Automation: Dedicated interface to fill multiple-choice assignments using JSON answers you provide
- Automated Content Navigation: Clicks through non-assessment course content, skipping completed items
- Quiz Automation: Attempts quizzes by selecting answers and submitting with a streamlined
QuizHandler - Survey Form Filler: Automatically fills survey forms with positive responses (Strongly Agree/Yes) and submits them
- Smart Skipping: Avoids end-of-module assessments and already completed activities
- Configurable Settings: Popup toggles control behavior; state persists across pages
- Multiple Question Types: Radios, checkboxes, text inputs, and dropdowns (best with radios via
QuizHandler)
- Download or clone this repository
- Open Chrome/Edge and go to
chrome://extensions/ - Enable "Developer mode" in the top right
- Click "Load unpacked" and select the extension folder
- The extension will appear in your browser toolbar
Note: The extension works on both amigolms.amityonline.com (for course content) and s.amizone.net (for survey forms).
- Navigate to your Amigo LMS course page
- Click the extension icon in your browser toolbar
- Configure your settings:
- Auto Submit: Auto-advance and submit on supported activities
- Random Answers: Select random options/fill random text where applicable
- Skip End Module: Avoid end-of-module assessments
- Navigate Content: Open non-assessment content automatically
- Run Quizzes: Navigate and attempt quizzes after content
- Click "Start Automation" to begin. The active state is saved and honored on subsequent pages.
- Navigate to your assignment page on Amigo LMS
- Click the extension icon and select "📋 Assignment Automation"
- Paste your answers in JSON format
- Click "Validate JSON" to verify your format
- Click "Fill Assignment" to automatically select the correct answers
- Review your selections and submit manually
- For survey forms, click the "📝 Fill Survey Form" button to automatically fill and submit with positive responses.
- Detects quiz, assignment, and lesson pages
- Uses a dedicated
QuizHandlerto run a strict flow: enter → fill radios → finish attempt → submit all and finish - Falls back to legacy handlers for checkboxes, text inputs, and selects if the streamlined path is unavailable
- Skips end-of-module assignments based on breadcrumb keywords and URL patterns
- Identifies non-assessment content links inside
.activity-item - Skips items already marked as completed (see Completion Detection below)
- Opens each content item in sequence using an in-page queue
- After finishing content, automatically proceeds to quizzes if enabled
- Skips file upload assignments
- Avoids end-of-module assessments
- Provides configurable settings for different use cases
- For general activities, looks for completion cues like green
btn-success, visible "Done" text, or a check icon in the completion region - For quizzes, requires both sub-requirements to be marked done: "View" and "Receive a grade"
- Content and quiz URLs are stored in
sessionStorageto navigate sequentially and avoid duplicates - Keys used:
__amigoNavQueue,__amigoQuizQueue,__amigoQuizLinks,__amigoQuizScanned,__amigoNavigated - The popup’s active state and toggles are saved in
chrome.storage.syncunderamigoSettings
- Multiple choice (radio buttons)
- Multiple select (checkboxes)
- Text inputs and textareas
- Dropdown selections
- Basic form submissions
├── manifest.json # Extension configuration
├── content.js # Main automation logic (navigation, legacy handlers)
├── quizHandler.js # Streamlined quiz automation flow
├── surveyHandler.js # Survey form automation with positive responses
├── assignmentHandler.js # Assignment filling logic (NEW)
├── popup.html # Extension popup interface
├── popup.js # Popup functionality
├── assignment.html # Assignment automation interface (NEW)
├── assignmentUI.js # Assignment UI logic (NEW)
├── background.js # Background service worker
├── assignmentStandalone.js # Original standalone console script (reference)
└── README.md # This file
To modify the extension:
- Edit the relevant files
- Go to
chrome://extensions/ - Click the refresh icon on the extension
- Test your changes
- Extension not working: Make sure you're on an Amigo LMS page and the extension is enabled
- Assignments not being skipped: Breadcrumb/URL heuristics may need adjustment on your course
- Content not opening: Ensure items are inside
.activity-itemand not already completed - Quizzes not progressing: If only "Re-attempt" is available, the quiz is considered done and will be skipped
- Host permission: Confirm the site matches
https://amigolms.amityonline.com/*as set inmanifest.json
This extension is provided as-is for educational purposes. The authors are not responsible for any academic consequences resulting from its use. Always ensure compliance with your institution's policies and terms of service.