agentsclimarketplace

Compliance bot skill

Skill sandalsoft/compliance-bot-skill/compliance-bot-skill

Automate corporate compliance training sessions via browser automation. Use this skill when the user mentions compliance training, mandatory training, corporate training modules, KnowBe4, SAI360, Cornerstone, Workday Learning, or any LMS (learning management system) training they need to complete. Also trigger when users mention clicking through training slides, answering compliance quizzes, or automating boring mandatory courses.From its SKILL.md

Install
npx -y skills add sandalsoft/compliance-bot-skill --skill compliance-bot-skill

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

7.2 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it

Compliance Training Automator

Automates corporate compliance training by controlling a browser session. The user logs in manually, then this skill takes over: advancing through slides, waiting out videos, answering quizzes, and completing the course.

Prerequisites

  • agent-browser CLI installed (npm i -g agent-browser && agent-browser install)
  • A browser session where the user has already authenticated to their training portal

How it works

The skill operates in a loop: snapshot the page, classify what's on screen, take the right action, repeat. Training platforms are all different but they share common patterns: slide decks with Next buttons, embedded videos with progress bars, and multiple-choice quizzes. The skill handles all of these.

Workflow

Phase 1: User authenticates

Open the training portal in headed mode so the user can see what's happening and log in.

agent-browser --headed open $ARGUMENTS

If $ARGUMENTS is empty, ask the user for their training portal URL.

Tell the user: "I've opened a browser window. Please log in and navigate to the training course you want me to complete. Let me know when you're ready."

Wait for the user to confirm they're logged in and on the right page.

Phase 2: Save auth state and begin

Once the user confirms:

agent-browser state save /tmp/compliance-auth.json
agent-browser screenshot /tmp/compliance-start.png
agent-browser snapshot -i

Read the snapshot to understand the page structure. Take a screenshot for reference.

Phase 3: The automation loop

Run this loop until the training is complete:

1. Snapshot the page (interactive elements)
2. Classify the current page state
3. Take the appropriate action
4. Wait for the page to settle
5. Repeat

Page classification

Snapshot with agent-browser snapshot -i and classify the page into one of these states:

SLIDE - A content/information page with a "Next", "Continue", "Proceed", or arrow button.

  • Action: Click the advance button.
  • Some platforms require scrolling to the bottom before the Next button enables. If the button appears disabled, scroll down first: agent-browser scroll down 2000, wait a beat, then re-snapshot and try again.

VIDEO - A page with an embedded video player (look for play buttons, progress bars, video elements).

  • Action: Read references/video-handling.md for the platform-specific approach.
  • General strategy: click play if needed, then poll the page periodically until the video ends or a "Continue" button appears.
  • Use agent-browser eval "document.querySelector('video')?.duration" to check video length.
  • Use agent-browser eval "document.querySelector('video')?.currentTime" to check progress.
  • Wait for the video to finish (poll every 10-15 seconds), then advance.
  • Some platforms auto-advance after the video. Re-snapshot to check.

QUIZ - A page with questions (multiple choice, true/false, checkboxes, matching, fill-in-the-blank).

  • Action: Read references/quiz-handling.md for the answering strategy.
  • Read all questions and answer options from the snapshot.
  • Use your knowledge to determine the correct answers. Compliance training questions test basic knowledge of workplace policies: harassment prevention, data privacy, insider trading, anti-bribery, workplace safety, etc. The correct answer is almost always the most conservative, cautious, policy-compliant option.
  • Select answers and submit.
  • If the platform shows which answers were wrong, note the corrections and retry if allowed.

RESULTS - A score/results page showing quiz performance.

  • Action: Screenshot the results for the user's records. If there's a "Retry" or "Retake" option and the score is below passing, go back and retake the quiz using the corrected answers.

COMPLETE - A completion page, certificate, or "congratulations" screen.

  • Action: Screenshot the completion certificate/confirmation. Save it. Notify the user that the course is done.

MENU / COURSE LIST - A page showing available courses or modules within a course.

  • Action: Snapshot to find the next incomplete module. Click into it. If all modules show complete, check for a final assessment or completion button.

INTERACTIVE - A drag-and-drop exercise, scenario simulation, or other interactive element.

  • Action: Read references/interactive-handling.md. These vary by platform but usually involve clicking choices in a scenario. Snapshot, read the scenario, pick the most compliant/ethical option.

UNKNOWN - Can't classify the page.

  • Action: Take a screenshot, show it to the user, and ask what to do.

Navigation resilience

Training platforms are often janky. Handle these situations:

  • Pop-ups and modals: If a snapshot shows an overlay, dialog, or modal, dismiss it (look for X buttons, "Close", "OK", or "Got it" buttons) before continuing.
  • Loading spinners: If the page seems to be loading, agent-browser wait --load networkidle then re-snapshot.
  • Session timeouts: If you see a login page unexpectedly, load the saved auth state: agent-browser state load /tmp/compliance-auth.json and reload.
  • iframes: Many LMS platforms embed content in iframes. If the snapshot looks empty or minimal, try: agent-browser frame "#content-frame" or similar. Snapshot within the iframe.
  • SCORM players: SCORM content often runs inside nested iframes. You may need to drill into 2-3 levels: agent-browser frame "#scorm-frame", then snapshot again.
  • Stuck pages: If clicking Next doesn't change anything after 2 attempts, try: scrolling to bottom, checking for hidden "I agree" checkboxes, or using keyboard navigation (agent-browser press Enter or agent-browser press Space).

Phase 4: Completion

When the training is marked complete:

  1. Screenshot the final completion/certificate page
  2. Save screenshots to a compliance-results/ directory in the current working directory
  3. Report to the user: which course was completed, the final score (if shown), and where the screenshots are saved

Platform-specific notes

Read references/platforms.md if you recognize the training platform from the URL or page structure. Known platforms have specific quirks worth knowing about.

Important behaviors

  • Always use headed mode so the user can watch and intervene if needed.
  • Screenshot liberally - save screenshots at key moments (start, each quiz, results, completion) to compliance-results/.
  • Don't rush quizzes - some platforms flag suspiciously fast completions. Add a brief agent-browser wait 2000 between question answers.
  • Re-snapshot after every action - the DOM changes constantly in these SPA-heavy platforms. Never assume the previous snapshot is still valid.
  • Poll, don't guess - for videos and timed content, check actual progress rather than estimating duration.

What ships with it: 4 files

14.6 KB alongside SKILL.md

Keep looking

Skills are one crate of 326,861. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.