tutor-sim-console

A guide for using a simulated one-to-one tutoring console to find what a student misunderstands, teach it, and check mastery.

In plain words
What is it for?
Use it to inspect a student's history, run diagnostic questions, give remedial problems, and confirm whether the student can apply the idea.
Why use it?
It structures the process of diagnosing a learning gap instead of guessing from a wrong answer alone.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/comisai/comis/tutoring
Any agent
npx skills add comisai/comis --skill tutoring
Clone the repo
git clone --depth 1 https://github.com/comisai/comis

Made for: Claude Code, Codex.

Per session 59 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 761 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00059 $0.00761
Opus 5 $0.00030 $0.00380
Sonnet 5 $0.00012 $0.00152
Haiku 4.5 $0.00006 $0.00076

Measured 3d ago against content hash 7682f5d3cf6c, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

tutor-sim-console scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (handlers.mjs), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

test/live/self-driving/sim/tutoring/SKILL.md · 38 lines

How it starts

The opening of the file, as written. The whole thing — 38 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You are an adaptive 1:1 tutor working with a single simulated student. You diagnose what the student misunderstands, fix it, and confirm they have mastered it. This skill explains how to use the toolsfiguring out what the student actually misunderstands is your job.

Your tools (mcp:tutor-sim/*)

Observe (read-only — gather evidence):

  • get_student — the student's profile (name, grade, current topic, recent score). Context, not a diagnosis.
  • attempt_history { topic } — recent answered problems. An error pattern is visible; the recorded answer on the hard problems may be incomplete.
  • diagnostic { probe } — run a short diagnostic probe. The probe you choose selects which sub-skill is tested; different probes return different evidence.
  • curriculum { topic } — the topic map: the current topic, its prerequisites, and related topics (you'll need a related topic to check transfer).
  • affect_signal — the student's confidence / frustration / engagement. Colors behavior; it is not the diagnosis.

Act (consequential):

  • set_hypothesis { misconception } — record your initial hypothesis about the student's misconception.
  • pose_problem { prompt } — pose a problem and observe the student's answer. The answer reflects how the student actually thinks.
  • revise_hypothesis { misconception, because } — replace your current hypothesis with a new one. Whatever you set last is your current hypothesis.
  • give_hint { hint, targets } — give a remediating hint. A hint only helps if it targets the misconception the student actually has.
  • assess_mastery { transferTopic } — the terminal check. Closes the session and returns the graded result, judged on your current hypothesis, the remediation you gave, and whether the student transfers the skill to the related transferTopic you name.

How to run a tutoring session

  1. Read the student in: get_student, attempt_history, and curriculum to see the topic and its related topics.
  2. set_hypothesis with your best initial read of the misconception.
  3. Test your hypothesis before you remediate. Use pose_problem and diagnostic { probe } to gather evidence about how the student actually answers.
  4. If the evidence does not fit your hypothesis, revise_hypothesis to one that does. Your current hypothesis is whatever you set most recently.
  5. give_hint that targets your current hypothesis, until the remediation lands.
  6. assess_mastery { transferTopic } — name a related topic (from curriculum) and close the session for grading.

Read the full file on GitHub · 38 lines

Files

What ships with it

3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 38 lines · 59 tokens per session scan A 7682f5d3cf6c

Subscribe to this mod's changes

tutor-sim-console is a skill published in the GitHub repository comisai/comis (5 stars, last pushed 3d ago), licensed Apache-2.0. It adds 59 tokens to every session and 761 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

llmtornado-tutorial-generator

Generates comprehensive code tutorials on LlmTornado API formatted for Medium publication with examples, explanations, and best practices.

lofcz/LLMTornado · 31 tokens

org-sync

Use when the CEO wants an organization-wide sync across PuPu's agent teams — running each org's internal sync, then a cross-org sync where departments challenge each other, converging into one decision list. Triggers: "跑一次 org sync", "全局同步", "组织盘点", "/org-sync", "各部门现在什么情况", "有什么要我拍板的".

haoxiang-xu/PuPu · 82 tokens

release-feature-audit

Use when a new PuPu feature finishes implementation and needs its consistency audit before its ticket is marked done — "audit #123", "审计这个功能", "这个 feature 过一遍检查" — or when release-close-sprint roll-call finds a new feature that was never audited. Also covers standalone i18n checks ("漏翻了吗", "检查 i18n"), which used to be…

haoxiang-xu/PuPu · 94 tokens

growth-analyst

Use when analyzing PuPu's open-source growth or health for the founder — GitHub traffic, downloads/installs, releases, community, or contributor activity — or when producing a growth report or weekly COO report. Repo is haoxiang-xu/PuPu. Triggers: "how is PuPu growing?", "are people installing PuPu?", "which release…

haoxiang-xu/PuPu · 102 tokens

test-api

Use when running QA / regression tests against PuPu, when verifying a code change actually works in the running app, or when reading PuPu UI/state without screenshotting manually. Triggers on tasks like "test that PuPu still creates chats correctly", "verify the new model selector works end-to-end", "send a message…

haoxiang-xu/PuPu · 110 tokens

gitnexus-debugging

Use when the user is debugging a bug, tracing an error, or asking why something fails. Examples: "Why is X failing?", "Where does this error come from?", "Trace this bug".

haoxiang-xu/PuPu · 46 tokens