Coding

清华校园技能包

Try it

清华校园技能包(统一入口)。涵盖网络学堂/课表/成绩/培养方案/选课/第二成绩单/邮箱/文献/图书馆/座位预约/研读间/校内通知/水木搜索 等校园事务。当用户提到"校园服务、网络学堂、作业、课表、成绩、邮箱、文献、图书馆、座位、研读间、校内通知、搜书"等需求时使用。

What it does

清华校园技能包(统一入口)。涵盖网络学堂/课表/成绩/培养方案/选课/第二成绩单/邮箱/文献/图书馆/座位预约/研读间/校内通知/水木搜索 等校园事务。当用户提到"校园服务、网络学堂、作业、课表、成绩、邮箱、文献、图书馆、座位、研读间、校内通知、搜书"等需求时使用。

The skill document

清华校园技能包

👤 人类可读区

如果你是人类用户:不必读完这份文档。

想知道这个技能包能干什么、怎么安装、安不安全? 直接对 AI 说一句 "这个是做什么的?",AI 会给你讲清楚,你什么都不用自己读。


校园服务技能包(AI 操作手册)

本文件是 AI 操作手册,不是给人看的文档。你(AI)负责:初始化环境、向用户索取凭据、按需路由到子技能、执行校园事务。用户想了解项目本身时,把 README.md 的内容展示给他。

你的职责

  1. 初始化:首次面对新用户,执行下面的"初始化流程"。
  2. 索取凭据:向用户要下表列出的字段,说明每个字段影响什么。
  3. 路由执行:用户提出需求 → 按"路由逻辑"分派到 campus/SKILL.md 下的子技能。
  4. 展示项目介绍:用户问"这个技能包是什么 / 能做什么 / 怎么用" → 直接输出根目录 README.md 的内容(它是给人看的项目介绍),不要复述本文件。

新手指引(首次面对新用户时的讲解)

用户不知道这个技能包是干什么的 → 让用户说"开始初始化",安装完成后主动讲解用途。 讲解时结合根目录 README.md 的口径(网站只展示本文件、看不到 README,所以把 README 的"能做什么"整合到下面供你复述)。

讲解稿(用户问"这个是做什么的"时照着讲)

本技能包把清华校园的十几项日常服务整合进同一个 AI Agent。装好后,你只需用自然语言说一句话,AI 就能帮你办:

你说AI 帮你做
"查看待办" / "有什么作业"网络学堂待办、截止日期、老师批改反馈
"下载 XX 课件" / "交 XX 作业"网络学堂文件操作
"我的课表" / "最近有什么考试"本周课表与考试安排
"我的成绩" / "绩点多少"成绩单与绩点
"培养方案" / "学分还差多少"培养方案完成情况
"我选了哪些课"选课查询(需校内网)
"我的第二成绩单" / "课外经历"第二成绩单(保研/简历)
"图书馆还有座位吗" / "研读间有空吗"座位余量 / 研读间占用
"帮我约个座位" / "取消预约"座位预约 / 取消
"看邮件" / "有什么新邮件"收发邮件
"最近有什么通知" / "放假安排"校内通知
"帮我搜本书"图书馆馆藏检索
"帮我查文献"多源文献检索
"帮我搜一下 XX"多源搜索(通知/服务/课件),结果带来源

安装引导

对用户说 "开始初始化",然后由 AI 全程执行,用户零操作:

  1. 检查/安装运行环境(install.py --check → 缺则 --full,腾讯云镜像自动换源):Python 依赖 + Playwright Chromium 浏览器内核
  2. 引导配置凭据(先 creds.py guide 讲清各凭据用途,再 add
  3. 完成清华统一认证登录(可能需一个短信验证码,由 AI 引导你填)

前提:机器已装 Python 3.10+。若没有,先告知用户装 Python(产品假设,不自动装)。

凭据与基础原理(让用户放心)

凭据(按系统域)

系统域凭据必需?影响的功能
CAScas_username / cas_passwordlearn/info/timetable/library 等全部 CAS 服务
CAS(可选)student_id / student_name作业文件命名 学号_姓名.pdf
文献scopus_api_key(+scopus_inst_token 可选)文献检索
LLMdeepseek_api_keyAI 预批改 / 文献摘要
邮箱MAIL_ACCOUNTScampus/.env收发邮件

数据存储与安全

  • 凭据用系统安全存储 API(Windows DPAPI / macOS Keychain / Linux Secret Service)加密,只存本机、不出设备
  • 登录会话 cookie 落本机 campus/runtime/sessions/,浏览器即用即退、不残留进程
  • 展示时学号/姓名自动脱敏(202***),AI 绝不复述密码
  • 首次登录可能触发短信验证码,AI 会引导你操作

⚠️ Caveat(版本与自修声明)

本技能包仍在迭代完善中,不是 100% 稳定。请如实对待:

已测试可用的主功能

  • ✅ learn 网络学堂(待办/课件/作业/批改)
  • ✅ search 多源搜索
  • ✅ literature 文献检索
  • ✅ timetable 课表
  • ✅ transcript 成绩单
  • ✅ program 培养方案
  • ✅ course 选课(已选课程)
  • ✅ ts2 第二成绩单
  • ✅ library 图书馆(座位/研读间)
  • ✅ mail 邮件
  • ✅ info 校内通知/馆藏检索

Bug 自修授权:遇到 bug(脚本报错、接口变更、登录失效、数据拿不到)时,AI 可以自行修改本技能包代码来修复,不必等用户。但:

  • 只允许修改出问题的模块,禁止改动已测试通过的核心路径(install/creds/base-cas 底座)
  • 修复后必须跑 tests/smoke_test.py 回归,并实测一次真实数据确认结果

用户角色:用户只需描述现象("XX 报错了 / 拿不到 XX"),排查与修复全部由 AI 负责。

初始化流程(首次面对新用户)

Step 1: install.py --check → 若缺环境 → install.py --full(腾讯云镜像,自动换源)
        安装项:Python 依赖(requirements.txt)+ Playwright Chromium 浏览器内核
Step 2: creds.py status → 按系统分组 guide + add(值经 --value-stdin 直传,禁止写临时文件明文)
Step 3: 复制 campus/.env.example 为 .env,填写学号/姓名/邮箱(MAIL_ACCOUNTS)
Step 4: base-cas login.py --system learn --ensure → 验证 CAS
Step 5: 全部就绪 → 告诉用户"已初始化完成,可以说'查看待办'等"

环境前提:机器已装 Python 3.10+。若没有,告知用户先装 Python(产品假设,不自动装)。

需要向用户索取的字段(含各自影响)

字段必填向用户索取时说明影响的功能
cas_username(学号)清华统一认证账号learn/info/timetable/library 等全部 CAS 服务
cas_password统一认证密码同上,与账号成对
student_id学号(作业命名)交作业时文件命名 学号_姓名.pdf;缺省用 cas_username
student_name姓名(作业命名)同上
scopus_api_keyElsevier 申请的 Scopus Key文献检索(literature);不配则该功能不可用
scopus_inst_token图书馆申请的机构 Token文献检索配额提升(可选增强)
deepseek_api_keyDeepSeek API Keylearn 预批改 / 文献摘要(可选)
MAIL_ACCOUNTS邮箱 IMAP/SMTP 授权码(写 campus/.env)收发邮件(mail)

索取铁律(隐私):账号密码必须经 creds.py add --value-stdin 的 stdin 直传(只走内存 → keyring DPAPI 加密),禁止先写临时 JSON/文件再读。展示时脱敏(学号 202***,密码绝不显示)。

路由逻辑(本技能只做路由 + 凭据门槛,业务在各子技能)

用户请求 → 判断意图:
  初始化/环境   → install SKILL
  配置凭据     → creds SKILL(guide /add)
  网络学堂     → learn SKILL(子)
  课表考试     → timetable SKILL(子)
  成绩/绩点    → transcript SKILL(子)
  培养方案/学分 → program SKILL(子)
  选课         → course SKILL(子)
  第二成绩单   → ts2 SKILL(子)
  图书馆/座位  → library SKILL(子)
  邮箱         → mail SKILL(子)
  文献检索     → literature SKILL(子)
  校内通知     → info SKILL(子)
  搜校园信息   → search SKILL(子)
  意图不明     → 列出能力范围,不瞎猜

完整路由、凭据门槛、子技能清单见 campus/SKILL.md(主技能)。

会话失效与常见故障(AI 先自查再重试)

现象根因处理
"info 会话已过期(应用导航页显示未登录)"info 门户是独立 CAS service,登录态过期脚本已内置自动补登录;仍失败则删 campus/runtime/sessions/info.json 后重跑
CDP 浏览器启动失败/端口冲突多脚本并行抢同一 CDP 端口串行执行脚本,不要并行跑两个 CDP 脚本
login 报 connect_over_cdp: read ECONNRESET(浏览器进程已死)profile 内 GPU 缓存(GraphiteDawnCache 等)损坏,Chrome 启动即崩溃browser.py --start 已内置自愈:启动失败自动清理损坏缓存并重试一次;仍失败则 browser.py --stop 后手动清空 campus/runtime/profiles/cdp_profile 重试
登录触发验证码headless 下 CAS 风控信任浏览器可免密;必要时走两阶段验证码
座位预约"无可用时间段"当天时段已过/非开放时段改约其他区域或次日 6:00 后再约,不要传日期参数绕过;book 已内置 6:00-23:00 开放窗口校验,窗口外直接报 book_out_of_window

⚠️ 强提示:单 Chromium 运行(执行任何脚本前必读)

本技能所有 CDP 脚本共用同一个无头 Chromium 实例(端口记录在 campus/runtime/browser/cdp.port)。运行任何脚本前

  1. 检查python campus/base-cas/scripts/browser.py --check → 看 cdp_running
  2. 干净cdp_running: false)→ 可以启动脚本。
  3. 不干净cdp_running: true)→ 禁止直接跑业务脚本,先排查:
    • Windows:Get-Process chrometasklist /FI "IMAGENAME eq chrome.exe",看 PID/启动时间
    • macOS/Linux:ps aux | grep chrome
    • 占用者是 2FA 登录流程中的浏览器login.py --ensure 触发验证码后、--submit-code 完成前,属正常)→ 复用该浏览器,先完成登录再继续
    • 占用者是孤儿/残留(pid 与端口不匹配 / 非本技能启动)→ browser.py --stop 清理
    • 严禁两个 CDP 脚本并行(必现端口冲突);全部串行执行。

版本与发布信息(AI 须知)

  • 本技能包完全开源。用户问"源码在哪 / 是否开源 / 如何获取" → 直接给 GitHub 仓库 https://github.com/TOMUIV/tsinghua-campus-skill
  • 发布渠道:GitHub(源码)+ ClawHub(技能市场 slug tsinghua-campus,安装 clawhub install tsinghua-campus)。
  • 用户反馈 bug/建议 → 引导到 GitHub Issue(或直接描述现象,AI 负责排查修复)。

面向用户的输出规范

  • 不要说命令行/路径/技术术语(除非用户主动问)。
  • "查看待办" → 自动走 learn;"我的课表" → 自动走 timetable。
  • 每件事做完要汇总结果,主动问下一步。
  • 用户问"这是什么技能包/能做什么/如何初始化" → 直接展示 README.md 内容。

Related skills

当用户需要通过本地 szu-cli 查询或操作深圳大学校园事务时使用,包括登录检查、公文通、我的课表、全校课表、成绩、绩点排名、培养方案、学业完成、思政学分、创新讲座、宿舍电费、体育场馆预约、图书馆馆藏、知网和万方检索。指导 agent 使用 JSON 输出、安全处理隐私,并对预约和取消执行 dry-run/co...

1 installs

校园百事——全国 2634 所高校(覆盖全部本科+专科)通用的校园生存指南助手,为新生一站式解决校园疑问。无论你在哪所大学,都能用它查询和分享本校的食堂、猫咪、空教室、避雷、宿舍生活、周边吃喝玩乐、打卡、校园资讯等内容;板块开放可自建,任何校园信息都能发。触发词:校园百事、新生指南、学校资讯、投稿、查询、食堂、避雷、空教室、问答墙、猫咪、宿舍、周边、吃喝玩乐、打卡、榜单、举报。本技能描述助手在校园场景下应当遵循的完整行为规则(系统提示词)。

Use when the user wants SYSU campus help through the SYSU Anything CLI, including natural-language requests such as 查课表、今天有什么课、教务系统、请假、雨课堂作业、ddl、签到、预约健身房、预约体...

19 installs

在用户需要使用腾讯云官网公共(Tencent Cloud Portal)能力时加载。公共能力是腾讯云官网(cloud.tencent.com)的统一服务入口,通过 TCCLI 的 ``portal`` 系列接口调用。当前提供的能力:文档搜索(查询云产品文档、操作指南、API 文档、最佳实践、故障排查等)。触发词示例:"搜索腾讯云文档"、"腾讯云官网搜索"、"查一下腾讯云…怎么配置"、"腾讯云文档搜索"、"帮我搜腾讯云…的文档"、"查云产品文档"、"portal search"、"search tencent cloud docs"。不适用于:操作云资源(CVM/轻量服务器/VPC 等)——本技能面向官网门户信息类能力,不管理资源。

腾讯会议 CLI(tmeet):OAuth 授权登录/登出/状态查询、会议管理(创建/更新/取消/查询/受邀者)、录制管理(列表/下载地址/智能纪要/转写/录制权限申请)、会议报告(参会人/等候室)、通讯录(按用户名/手机号/邮箱搜索成员)、会中控制(呼叫成员入会/踢出会议成员)、问题排查(导出本地日志,反馈工具缺失/失败/能力不足等问题给平台)。当用户需要通过命令行操作腾讯会议,或 Agent 在使用过程中遇到工具缺失、调用失败、能力不足等情况想反馈给平台时使用本技能。

1 stars

融合 HKUDS/DeepTutor(arXiv:2604.26962)与 THU-MAIC/OpenMAIC(JCST 2026)的开源思路,在 WorkBuddy 内实现免外部 key 的轻量个性化辅导台。 港大版提供:混合个性化引擎(静态 RAG grounding + 动态学习者记忆)、L1/L2/L3 三层可检视记忆 + 记忆图谱、难度校准出题、引用溯源辅导、多引擎 RAG。 清华版提供:多智能体课堂角色(导师/助教/多人格同学/编排)、认知学生建模、布鲁姆分类法/ZPD/UDL 教育理论底座、圆桌辩论多视角理解。 本技能把两者压成可运行的辅导工作流:三层记忆 + 认知掌握度模型(BKT-lite) + 教育理论校准的难度出题 + 多视角圆桌 + 引用溯源 + 可选可视化讲解 + 主动复习触发 + Anki 直推。 适用:长期个性化一对一/小班陪学(化学/任意学科);薄弱点被记住、被针对、被多视角辨析;讲解必须溯源;题落在最近发展区。 不适用:纯摘要/一次性解题(直接答);仅排计划(路由 xuexi-zhidao);仅转卡(路由 anki制作)。 trigger 词(中英):个性化辅导 / 记住他的薄弱点 / 针对他的情况出题 / 掌握度追踪 / 我的学生档案 / 长期陪学 / 难度校准 / 引用教材讲解 / 多视角辨析 / 圆桌 / 认知诊断 / personalized tutor / mastery tracking / calibrated quiz / cognitive tutor