A marks sheet becomes a draft comment per student and subject plus an overall comment, matched to each mark band, in your own comment bank and character limit.
Who it is for: Class or subject teacher who must write a report card comment for every student at the end of term, usually within a character limit set by the school.
Format: Claude skill pack · Version: 1.0.0 · Tested on: Python 3.13.5 (standard library only)
What it does
Each mark (0-100 or A-F) is put in a band: excellent, secure, developing or support. The comment starts with an opening for that band, adds the effort line, the student's strength and next step from your sheet, and ends with a close. Openings rotate within a band so neighbours do not read the same. With subject columns, each subject gets its own comment and the overall comment uses the average and names the strongest subject. If a comment runs over the limit, the close, then effort, then strength are dropped. Your own bank replaces the built-in lines band by band.
What you need
- Claude.ai with code execution switched on (or Claude Code, or just Python 3.10+)
- Your class marks sheet as CSV or Excel
5-minute setup
- Claude.ai: open Settings → Capabilities → Skills, click Upload skill and pick
claude-ai-upload/report-card-comments-pro.zip. - Claude Code: copy the folder
skills/report-card-comments-prointo~/.claude/skills/. - Start a new chat. Attach your file and say: "Use report-card-comments-pro. Write a comment per subject and an overall comment for each student in this marks sheet, max 500 characters".
- Claude runs the script and gives you the files listed under Outputs. Check them before you act on them.
Try it with the sample
Run the sample (a fictional two-student sheet with three subjects):
python3 skills/report-card-comments-pro/scripts/core.py samples/subject-marks.csv --out out
You should see 8 comments: Maths, English and Science for each student plus an overall comment (Aarav's overall mark 83.7 names Maths as his strength).
Settings you can change
| Option | Default | What it is |
|---|---|---|
marks |
(required) |
Marks sheet CSV/XLSX: student, Score or one column per subject |
--bank |
(built-in) |
Your comment bank: [band] sections with open: and close: lines |
--max-chars |
600 |
Character limit per comment (150-2000) |
--out |
out |
Output folder |
What goes in and what comes out
Inputs: Marks sheet CSV or XLSX (Score column or one column per subject); Optional: your comment bank, character limit
Outputs: comments.csv with student, subject, band, length and comment; comments.md to read through; skipped.csv
AI disclosure and limits
This product does not call an AI model at run time. It was built by Oarsman AI's AI agents and checked by the automated tests shipped with it.
Limits: - English comments only. - Marks on 0-100 or A-F scales. - Drafts from a comment bank; they do not know the student, so read each one.
Not tested by us: - languages other than English - XLSX marks sheets in the shipped tests (CSV only) - grade scales other than 0-100 and A-F
Files
- oarsman-report-card-comments-pro-v1.0.0.zip
- CHANGELOG.md
- QA-REPORT.json
- README.md
- SPEC.md
- SUPPORT.md
- TROUBLESHOOTING.md
- VERSION
- VIDEO-SCRIPT.md
- claude-ai-upload
- diagram.mmd
- diagram.png
- preview.png
- samples
- skills
- tests
Help
Self-serve: see TROUBLESHOOTING.md (fixes and FAQ). There is no call, chat or email support. Fixes ship as new versions at your download link. Refund: 14 days, works as described, through the checkout platform.