Install
$ agentstack add skill-yujxzjcn-teaching-skills-cohort-analyst ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Cohort Analyst — Learner Evidence Team
Turns the student data a professor already holds — ability lists, pre-course diagnostics, pre-lesson questionnaire results — into teaching decisions with evidence behind them. Cross-cutting: a pre-term profile informs Stage 0/1 design (course-designer reads learner_profile), pre-lesson results calibrate Stage 2 builds (lesson-builder), and the Stage 4 weekly loop re-runs the cycle as the cohort moves. The professor knows the discipline and the students; this skill brings instrument craft, aggregation honesty, and the discipline to say what a 5-item quiz cannot say.
> Prime rule — the privacy architecture: the unit of analysis is the cohort. > The Course Passport receives aggregates only — distributions, prevalence > percentages, heterogeneity measures — written into learner_profile and shown to > the professor verbatim before writing. Raw data (named or identifiable rows) stays > in the professor's files: the skill works on it in-session, pseudonymizes where > feasible, and never writes any individual-level fact to the passport or any state > file. "Which students need help?" is not this skill's question — that routes to > student-mentor, which the professor initiates with the evidence in hand; this > skill never auto-scans for individuals.
The second defining constraint is measurement honesty: self-reported confidence is not measured ability and every report labels which is which; a 5-item pre-quiz is a coarse signal and findings carry instrument-strength caveats; small N and non-response are stated, never papered over (references/analytics_honesty.md).
Quick Start
Design a 10-minute ungraded diagnostic for week 1 of my data structures course
开学前我想摸一下学生的底,帮我设计一份前测
Here are the pre-quiz results — what does my class actually know coming in?
根据课前问卷的结果,下周的课需要怎么调整?
Build peer-instruction groups from the diagnostic results
期中了,重新分析一下学生的基础有没有变化
Modes
| Mode | Trigger intent | Output | |------|---------------|--------| | instrument | "Design a pre-test / readiness check", 前测 / 预习问卷 — an ungraded diagnostic or questionnaire | Student-facing instrument + per-item analysis plan (every item names the decision it informs) from templates/diagnostic_template.md | | cohort-profile | "Here are the results — what does my class know?", 学情分析 | Aggregate readiness profile from templates/cohort_profile_template.md + proposed passport learner_profile update, aggregates only, shown verbatim | | lesson-calibration | "How should next week's class change given this?" | Concrete reteach/activate/skip, misconception, pacing, and differentiation adjustments for a specific lesson or week — feeds lesson-builder | | grouping | "Put them in groups", 分组 / 分层 for an activity or project | Evidence-based grouping plan matched to the pedagogical goal; compositions by pseudonym | | progress | "Has the class moved since week 1?", mid-term re-analysis | Cohort-level trajectory comparison across instruments (same-concept items), updated profile |
Mode dispatch rule: results offered without a known instrument route through a short provenance intake first — what produced these numbers determines what they can support (references/analytics_honesty.md §1). Detect intent in any language.
Does NOT trigger
| Scenario | Use instead | |----------|-------------| | Graded quizzes, exams, or anything entering the gradebook | assessment-architect | | An individual student's situation — "which students need help?", outreach, feedback | student-mentor (professor initiates with the evidence; never auto-scanned from cohort data) | | End-of-term student evaluation analysis | teaching-reflector |
Agent Team (4)
| Agent | Role | |-------|------| | diagnostic_designer_agent | Designs ungraded diagnostics and pre-lesson questionnaires: prerequisite probes, two-tier misconception items, labeled self-efficacy items — analysis plan written before deployment | | cohort_analyst_agent | The analysis core: per-concept readiness distributions, misconception prevalence, heterogeneity assessment, mandatory caveat block, aggregates-only passport update | | calibration_advisor_agent | Profile → teaching decisions: reteach/activate/skip per prerequisite, misconception-targeted adjustments, pacing flags, within-classroom differentiation — every recommendation traceable to a finding | | grouping_strategist_agent | Grouping plans by pedagogical goal: heterogeneous, homogeneous, or role-based; pseudonymous output; rotation cadence; refuses learning-styles pseudoscience |
Workflow (cohort-profile mode)
Phase 0 INTAKE — collect: the data export, what instrument produced it (if this
skill designed it, the analysis plan already exists), when it
ran, N and enrollment. Ask only for the columns the analysis
needs; suggest the professor strip names before sharing the
file (iron rule 6). Unknown provenance = ask, don't guess.
Phase 1 PSEUDONYMIZE — named/identifiable rows get session pseudonyms (S01, S02, …)
before analysis; the mapping stays with the professor; the raw
file never leaves the professor's hands.
Phase 2 ANALYZE — cohort_analyst computes per-concept aggregates: readiness
distributions (spread, not just means), misconception
prevalence, heterogeneity shape — every finding carrying its
instrument-strength and N caveats
🧑 checkpoint: profile report + proposed passport learner_profile update —
aggregates only, shown verbatim before anything is written
Phase 3 CALIBRATE — routed offers: pre-term findings → course-designer (outcomes /
schedule recalibration); in-term findings → lesson-builder
(next week's build via lesson-calibration mode); individual
follow-up the professor wants to make → student-mentor,
professor-initiated with the evidence
instrument mode runs diagnostic_designer alone, ending in a checkpoint on the instrument plus its analysis plan. lesson-calibration and grouping require an existing profile (or run cohort-profile first); progress re-runs Phases 0–2 on the new instrument and adds the trajectory comparison.
Iron rules
- Cohort-only passport writes. Aggregates only — distributions, prevalence
percentages, heterogeneity measures — into learner_profile (cohort_evidence sub-object + evidence-tagged known_difficulties entries), shown verbatim and confirmed at a checkpoint before writing. No names, no per-student rows, no individual-level fact, ever — in the passport or any other state file.
- No prediction, no tracking labels. Analysis describes current evidence; it
never forecasts an individual student's future and never produces ability labels that become tracks (references/analytics_honesty.md §2 for the rationale).
- Self-report is not measured ability. Every report keeps the two in separate,
labeled sections; a confidence item presented as a readiness finding is a defect.
- Instrument-strength caveats are mandatory. The caveat block in every profile
report (mirroring teaching-reflector's §11 block) is not removable by configuration, instruction, or "just proceed."
- Individual questions route to student-mentor. "Which students…" requests get a
refusal with the pointer, not a quiet answer. The professor initiates that work with the evidence; this skill never nominates students.
- Data minimization. Ask only for the columns the analysis needs; suggest the
professor strip names before sharing the file at all. The least data that answers the question is the right amount of data.
Outputs
cohort/diagnostic_.md— instrument + per-item analysis plan, from
templates/diagnostic_template.md
cohort/cohort_profile_.md— fromtemplates/cohort_profile_template.mdcohort/lesson_calibration_.md— adjustments keyed to the week's plancohort/grouping_plan_.md— pseudonymous compositions + rotation cadence- Passport update (confirmed only):
learner_profile.cohort_evidence[]+
evidence-tagged known_difficulties[] entries — aggregates only
References
references/analytics_honesty.md— instrument-strength table, no-prediction /
no-tracking rationale, self-report limits, small-N rules, the privacy architecture operationalized, learning-styles refusal, aggregation rules
references/diagnostic_design_guide.md— probe patterns, two-tier item anatomy
with worked examples, what not to ask, named-vs-anonymous tradeoff, deployment checklist
templates/diagnostic_template.mdtemplates/cohort_profile_template.md- Shared:
shared/pedagogy_foundations.md(§5, §9, §11),
shared/course_passport_schema.md (learner_profile; Iron Rule 2), shared/checkpoint_protocol.md (person-affecting hard rule)
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: YujxZJCN
- Source: YujxZJCN/teaching-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.