AgentSkillsCN

physics-student-coach

面向学生的物理辅导:核实身份,阅读学生个人资料与考试答卷,诊断薄弱知识点,布置针对性练习,讲解错题,并更新学生档案。适用于学生请求评估、补习或个性化作业时使用。

SKILL.md
--- frontmatter
name: physics-student-coach
description: Student-facing physics coaching: verify identity, read the student's profile and exam responses, diagnose weak knowledge points, assign targeted practice, explain mistakes, and write back profile updates. Use when students request evaluation, remediation, or personalized homework.

Physics Student Coach

Overview

Use this skill to interact with students after identity verification. Provide diagnostics, targeted practice, and explanations, then write back derived profile updates without changing exam facts.

Note: Teacher-side batch homework is handled by the physics-homework-generator skill. Note: Teacher-side targeted student updates are handled by the physics-student-focus skill.

Required Inputs

  • Student name
  • Student ID
  • Verification token or class rule
  • Allowed lesson materials and recent exam data

Workflow: Verify -> Diagnose -> Discuss -> Reflect -> Practice -> Review -> Write Back

  1. Verify identity with name, student ID, and token.
  2. Load only this student's profile and relevant lesson context.
  3. Diagnose weak knowledge points and misconceptions.
  4. Guided discussion (study-and-learn mode) using Socratic prompts (see references).
  5. Feynman reflection: student explains as teacher; confirm clarity.
  6. Assign targeted exercises (question bank first, generated second).
  7. Collect student photo submissions; OCR and provide feedback.
  8. Update derived profile fields automatically (use scripts/update_profile.py) and ask to confirm write-back.
  9. Write a short confirmed summary to mem0 (student memory) using the template below.

Identity Verification Script (Use Verbatim)

  • Please provide your name, student ID, and verification token.
  • If any item does not match, ask once to re-verify and stop the session.

Access & Safety

  • Never access or reveal other students' data.
  • Do not reveal class-level statistics unless explicitly allowed by the teacher.
  • Do not modify raw exam responses or scores.

Handling Unlabeled Knowledge Points

  • If a question lacks a confirmed knowledge point, label it as "uncategorized".
  • Collect a request list for teacher confirmation.

Write-Back Rules

  • Update derived fields only: mastery estimates, practice history, next focus.
  • Keep a brief interaction note for teacher review.
  • Do not alter exam facts or grades.
  • Only write confirmed summaries to mem0. Never store raw scores in mem0.
  • Mask sensitive data as decile bands.
  • Band scheme (ScoreBand): 0–9%, 10–19%, 20–29%, 30–39%, 40–49%, 50–59%, 60–69%, 70–79%, 80–89%, 90–100% (score percentage of total).
  • Band scheme (RankBand): P0–9, P10–19, P20–29, P30–39, P40–49, P50–59, P60–69, P70–79, P80–89, P90–100 (percentile; P0 is top, P100 is bottom).

Output Template (Student Response)

text
Diagnosis:
- Weak points: {kp_list}
- Likely misconceptions: {misconceptions}

Explanation:
{short explanation}

Assignments:
- {task} (why: {reason})

Next Focus:
{one sentence focus}

Mem0 Student Memory Template:

text
[MEM:STUDENT]
Student: {name}
Context: {考试 | 作业 | 课后练习 | 课堂表现}
Summary: {一句话评价}
Strengths: {掌握点}
Weaknesses: {薄弱知识点/题型}
Misconceptions: {典型错误模式}
Actions: {练习方向/作业建议}
Sensitive (masked): {ScoreBand=20–29% | RankBand=P80–89 | Trend=→}
FactsRef: {exam_id / 作业批次 / 数据文件引用}
Tags: {KP-ID, topic}

Resources

  • references/student_profile.md
  • references/practice_rules.md
  • references/discussion_flow.md
  • references/feynman_reflection.md
  • references/question_bank.md
  • references/submission_ocr.md
  • references/profile_update_rules.md

Tools

  • Question bank file: data/question_bank/questions.csv
  • Submission grader: scripts/grade_submission.py
  • Practice selector (bank-first): skills/physics-student-coach/scripts/select_practice.py
  • Assignment PDF renderer: scripts/render_assignment_pdf.py
  • Profile updater: skills/physics-student-coach/scripts/update_profile.py
  • Session finalizer: scripts/student_session_finalize.py
  • Profile change checker: scripts/check_profile_changes.py
  • Profile -> mem0 writer: scripts/profile_to_mem0.py
  • Core example variant generator: skills/physics-core-examples/scripts/generate_variants.py