Skip to content
Back to skills

List Learnus Courses

ASecurity

Read the authorized user's live LearnUs dashboard first and return the visible course index as a deduplicated structured list; use a user-supplied screenshot, pasted page, export, or JSON only when the live page is unavailable or intentionally supplied. Use when the user asks which LearnUs courses they have, wants course URLs or IDs, or needs a course selected for a later task.

  • 8 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 1, 2026
toolspythonbash

Works with

  • terminal

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned September 1, 2026

npx -y skills add mrcha033/yonsei-skills --skill list-learnus-courses --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of List Learnus Courses?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for List Learnus Courses
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mrcha033-list-learnus-courses/badge)](https://www.skillsdirectory.com/skills/mrcha033-list-learnus-courses)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: list-learnus-courses
description: Read the authorized user's live LearnUs dashboard first and return the visible course index as a deduplicated structured list; use a user-supplied screenshot, pasted page, export, or JSON only when the live page is unavailable or intentionally supplied. Use when the user asks which LearnUs courses they have, wants course URLs or IDs, or needs a course selected for a later task.
---

# List LearnUs Courses

Return one result only: the visible course index. Do not collect deadlines or materials.

## Preferred command path

Call `yonsei_student` with `intent: "learnus"` and use the courses in
`primary_result`. If login is required, call `yonsei_bridge_connect` once and
resume after the visible login.

## Workflow

1. When a browser is available, reuse the student's authenticated LearnUs
   profile and open `https://ys.learnus.org/my/`. If login appears, invoke
   `$manage-learnus-session` once and resume in the same browser.
2. Read the visible course cards from the authorized **My courses** dashboard.
   Do not navigate into every course.
3. When an HTML dashboard snapshot is supplied, or the student explicitly chose
   optional terminal mode, parse it with:

   ```bash
   python3 "$SKILL_DIR/scripts/list_courses.py" \
     --html "<snapshot>" \
     --base-url "https://ys.learnus.org/my/"
   ```

4. Return each course name, stable course ID when present, and redacted LearnUs
   URL. Preserve the dashboard order.
5. If a supplied snapshot returns `login_required`, invoke
   `$manage-learnus-session`. If it is `blocked`, report the access or
   maintenance boundary without treating it as authenticated.
6. Delete temporary HTML after extracting the result.

## Boundaries

- Do not infer enrollment from arbitrary links outside an authenticated dashboard-shaped page.
- Do not use the base URL itself as authentication evidence.
- Do not return deadlines, files, completion, grades, or attendance.
- Keep signed query values out of output.

Run `python3 "$SKILL_DIR/scripts/verify_course_index.py"` after parser changes.

Files in this skill

  • SKILL.md2 KB
  • agents/openai.yaml323 B
  • fixtures/dashboard.html628 B
  • scripts/list_courses.py6.5 KB
  • scripts/verify_course_index.py1.9 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.