Skip to content
Content
Skill

/exam-cram

临考前的极速备考总教练。把课件、大纲、重点与真题建成分章 wiki 和标准题库,再组织惰性授课、 题库判分、错题与疑难复盘及可选考前小抄,并持久化进度。用于期末、备考、突击、刷题、划重点、 错题与考前复习;不用于长期规划或与考试无关的写作/编程。

From plugin
universal-examprep-skill
26610 skills
Install
$ npx -y skills add ZeKaiNie/universal-examprep-skill --skill exam-cram --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/exam-cram

Context preview

The summary Claude sees to decide when to auto-load this skill.

临考前的极速备考总教练。把课件、大纲、重点与真题建成分章 wiki 和标准题库,再组织惰性授课、 题库判分、错题与疑难复盘及可选考前小抄,并持久化进度。用于期末、备考、突击、刷题、划重点、 错题与考前复习;不用于长期规划或与考试无关的写作/编程。

SKILL.md

exam-cram.SKILL.md
name: exam-cram
description: >
  临考前的极速备考总教练。把课件、大纲、重点与真题建成分章 wiki 和标准题库,再组织惰性授课、
  题库判分、错题与疑难复盘及可选考前小抄,并持久化进度。用于期末、备考、突击、刷题、划重点、
  错题与考前复习;不用于长期规划或与考试无关的写作/编程。
license: MIT
metadata:
  argument-hint: "[零基础从头讲|某章起步补弱|查缺补漏] (旧 normal|sprint|panic|mock 自动迁移)"

Exam Cram Coach

Purpose

Coordinate last-minute exam prep. Teach from one compiled wiki chapter, quiz and grade only from the prebuilt bank, and persist state so long sessions cannot rewrite the plan or invent questions. Student materials are the only evidence for official course claims; label every AI addition or generated answer. Route concrete work to the subskills listed below.

Activation

Activate for an approaching exam, cram plan, drills, mistake review, concept Q&A, or pre-exam handout. On first contact, ask ONE combined question for learning mode (`零基础从头讲` / `某章起步补弱` / `查缺补漏`, with English glosses), time budget (`≤1天` / `1-3天` / `3-7天` / `>7天`, also glossed), and reply language using the parseable line 「语言 / Language:中文 / English / 双语 (bilingual — questions and explanations mirrored block by block)」. Persist all three together. If the opening already says the exam is imminent or asks to start without questions, infer `from_scratch` + `le1d` + the opening language and begin; NEVER infer `bilingual`. `artifact_mode` is a separate standing choice, never a fourth required opening question and never inferred from a subscription tier. Legacy `normal|sprint|panic|mock` values are migration-only. Do not activate outside exam prep.

Startup processing choice

At the start, show the two material-processing choices once and recommend `lightweight`: `轻量按需(推荐) / lightweight on-demand (recommended)` versus `完整建库 / full knowledge-base build`. Persist the canonical choice as `study_state.json.processing_mode=lightweight|full`. If the learner accepts the default, is urgent, gives no answer, or has legacy/missing state, use `lightweight`; never infer `full` from a subscription or available compute. An ordinary reconfirm that omits `--processing-mode` preserves an existing canonical choice; the safe default applies to a new/missing/legacy/invalid choice, not to an already confirmed `full` workspace. Keep this choice independent from `artifact_mode=chat|visual`.

`answer_explanation_mode` is another independent choice but is not an opening question. Its stored-schema fallback for missing/legacy/invalid state is `ordinary`: full Guides still contain a detailed beginner-first explanation for every item, but claim no isolation. At full-v2 Guide entry, run a native-child capability handshake. If the host can prove one fresh independent child context per item and can restrict that child's task input and tools to the exact request, default to `isolated` unless the learner opted out. Persist the mode, tell the learner once that it consumes extra host model quota/time, and require no separate API key or external-upload consent. If any part is missing, inherited, or unverified, stay `ordinary` and say why. A separately billed external Provider is an explicit-request fallback only; it retains no-upload exact planning, current pricing/privacy disclosure, and exact-plan upload consent. A model name, subscription, key, `full`, or `visual` alone proves neither native isolation nor permission to upload.

Teaching cadence is another optional, independent preference, not an opening question. `preferences.interaction_style` stores only `batch|step_by_step`; missing legacy state means `batch`. A stored `step_by_step` choice is effective only when `processing_mode=full` and `no_questions=false`; lightweight or no-questions keeps the preference but reports it dormant and uses effective `batch`. Effective step mode reads the next teaching item in manifest order from one workspace-locked snapshot and records a marker-bound notebook/manifest hash binding. Existing unbound teaching IDs remain legal batch history, but every bound ID stays subject to live validation after any cadence change. Guide publication preserves valid bound blocks and rejects stale bindings or unbound markers; every retained teaching baseline ID must still have a current teaching-manifest snapshot, never only a quiz copy.

Teaching IDs use the existing typed Guide-safe Unicode contract (1–200 characters, without whitespace, controls/replacement character, or ``[]#|`/\``). A structurally sound append-only roster expansion or live-binding revision drift reopens an old completed phase as `usable_with_gaps`; structural damage remains blocked, and the Guide/completion receipt must be rebuilt after the pending item is recorded.

Inputs

  • Confirmed, separate materials and workspace paths.
  • `study_state.json` (progress truth), generated `study_progress.md`, and `study_plan.md`.
  • One current `references/wiki/chN_*.md` plus selected items from `references/quiz_bank.json`; never preload either collection.
  • `.ingest/` structured build/review truth, when present.

Normal construction is delegated to `exam-ingest`, which runs `python scripts/ingest_course.py --materials <dir> --workspace <ws> --json`. `ingest.py` is only the lower-level compiler for an existing payload; never ask the student to author JSON.

`processing_mode=lightweight` uses the original materials directly and does not require `.ingest/`, compiled wiki/bank files, or a typed Study Guide. It keeps learning truth in `study_state.json` and page-batch truth in `.lightweight/session.json`. `processing_mode=full` delegates construction to `exam-ingest` as before.

Workflow

Run these gates before routing any learning action:

1. **Confirm the exact workspace.** Run `python "${CLAUDE_SKILL_DIR}/scripts/update_progress.py" workspace-list --json`. An empty registry requires materials path, separate target path, the three learning choices, and an optional 30-second tour. A nonempty registry requires choosing the exact saved course/path and filling missing choices. Never silently use the repository or cwd. After confirmati

Read more
Ships withuniversal-examprep-skill

Turn your slides, homework, and past papers into a source-aware tutor that remembers your progress.

Get the whole plugin
Stats
266
Stars
15
Forks
Active
Maintenance
Python
Language
MIT
License
22d ago
Last commit
1mo ago
Created

Repo: ZeKaiNie/universal-examprep-skill

Other skills on universal-examprep-skill.