xhh678876/sjtu-canvas/sjtu-canvas
Claude Code and agent skill by xhh678876/sjtu-canvas
- community
Checking that the SKILL.md file is still in the repository.
SJTU Canvas LMS 课程助手。管理上海交通大学 Canvas (oc.sjtu.edu.cn) 课程数据。 也适用于其他基于 Canvas LMS 的高校,修改 base_url 即可。 触发场景: (1) 查看/下载课程文件(PPT/PDF)、批量下载课件 (2) 查看作业列表、DDL、提交状态、提交作业 (3) 同步作业DDL到Apple日历(Mac+iPhone) (4) PPT/PDF内容提取和AI总结、课件学习 (5) 作业辅导(提取作业要求+课件内容→给思路) (6) 查看成绩、计算均分 (7) 课程讨论区摘要 (8) DDL预警提醒 (9) 期末复习包生成(所有课件→Markdown) (10) 一键提交作业 触发词: Canvas, 课程, 作业, DDL, 截止, 成绩, 课件, PPT, 总结, 复习, 提交作业, 讨论区, course, assignment, grade
Install
npx vskill@latest install xhh678876/sjtu-canvas/sjtu-canvasSKILL.md
SJTU Canvas 课程助手
Canvas LMS 课程管理技能,默认配置为上海交通大学 (oc.sjtu.edu.cn),也兼容其他 Canvas LMS 实例。
首次配置
- 复制配置模板并填入你的 Canvas API Token:
- 编辑
config.json,填入:
canvas_token: 从 Canvas → 设置 → 新建访问令牌 获取base_url: 你的 Canvas 地址(默认https://oc.sjtu.edu.cn)save_dir: 课件下载目录(默认~/Downloads/Canvas课件)calendar_name: Apple 日历分类名(默认Canvas作业)
- 安装依赖:
核心脚本
所有脚本位于 skills/sjtu-canvas/scripts/,用 python3 执行。
canvas_api.py — Canvas API 交互
Python 中调用:
file_extractor.py — 课件内容提取
支持格式: .pptx .pdf .docx .txt .md
calendar_sync.py — DDL → Apple 日历 (macOS)
自动创建日历分类,已存在的事件不会重复创建。通过 iCloud 同步到 iPhone。
工作流
1. 课件下载 + 总结
canvas_api.download_course_files()下载课程 PPT/PDFfile_extractor.extract_file()提取文本- 用 LLM 总结要点
2. 作业辅导
canvas_api.get_assignment()获取作业要求- 下载相关课件并提取内容
- 结合作业要求和课件,给出解题思路
3. DDL 管理
canvas_api.get_all_upcoming_ddls()获取所有未来 DDLcalendar_sync.sync_ddls()同步到 Apple 日历- 可设置 cron 定时巡检
4. 成绩追踪
canvas_api.get_course_grades()获取各科成绩- 计算加权均分
5. 期末复习包
canvas_api.download_course_files()批量下载课件file_extractor.batch_extract()批量提取为 Markdown- 导入 NotebookLM 或其他工具复习
6. 提交作业
- 确认课程 ID、作业 ID、本地文件
canvas_api.submit_assignment()提交- 提交前必须向用户确认
注意事项
- 提交作业前必须向用户确认
- Canvas Token 有效期可能有限,失效时需重新生成
- Apple 日历同步仅支持 macOS
- 非 SJTU 用户需修改
config.json中的base_url
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingSKILL.md
Popularity
- Repository stars
- 8
- Repository forks
- 2
- 7-day trend score
- 11
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 20 May 2026, 5 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/xhh678876/sjtu-canvas/sjtu-canvas)