文档

Anki

搭建与修复 Anki 牌组:制卡、FSRS 与 SM-2 参数、僵尸卡、导入、同步与考前容量计算。

它能做什么

基于你提供的文本、文件、导出与统计数据,生成可导入的 Anki 卡片并修复牌组问题。覆盖原子化制卡、上下文完整的问题表述与评分标准;配置 FSRS 与 SM-2、目标保留率、每日上限、学习步骤和僵尸卡阈值;诊断复习量爆炸、保留率下滑、难度地狱与假期后的积压。处理 CSV/TSV 与 .apkg 导入、Quizlet/Memrise/SuperMemo 迁移、单向同步提示与缺失媒体;附带语言、医学、代码与数学、个人牌组等学科指南,以及面向固定考试日的容量计算。整个流程不打开、也不修改 Anki 集合本身。

什么时候用它

  • 把 PDF、讲义或教材章节转成可导入的 Anki 卡片
  • 诊断复习量持续上涨、保留率下滑或僵尸卡堆积的牌组
  • 配置 FSRS 目标保留率,或在 FSRS 与 SM-2 之间做选择
  • 导入 CSV/TSV、.apkg,或从 Quizlet、Memrise、SuperMemo 迁移

技能文档

User preferences and memory live in ~/Clawic/data/anki/ (see setup.md on first use, memory-template.md for the file format). If you have data at an old location (~/anki/ or ~/clawic/anki/), move it to ~/Clawic/data/anki/. Nothing else is stored: the collection is never opened or modified — you work from text, files, exports and stats the user hands over, and you emit cards the user imports.

When To Use

  • Turning source material (notes, lecture slides, PDFs, textbook chapters, word lists) into importable cards
  • Diagnosing a deck: reviews exploding, retention sliding, leeches piling up, "I study daily and still forget"
  • Configuring deck options: FSRS vs SM-2, desired retention, daily limits, learning steps, leech action
  • Anki-the-application problems: one-way sync prompts, missing media, nothing due, broken imports, add-on breakage
  • Deadline work: an exam date, a backlog to clear, a shared deck to unsuspend by topic
  • Non-academic memory work: names and faces, poetry, music theory, professional facts
  • Not for flashcard theory outside Anki (flashcards), spacing-algorithm theory for its own sake (spaced-repetition), study scheduling and technique choice (studying), or writing add-on code

Quick Reference

SituationPlay
"Make cards from this"Extract atomic facts, one per card, then state the intake cost of rule 5 → bulk-generation.md; how to word each card → cards.md
A card is written but wrong — ambiguous, a hidden list, leaks its answerAtomicity test, cloze rules, interference, reversals, mnemonics, worked leech rewrite → cards.md
A card keeps failing, 8 lapses reachedLeech: rewrite the card, then reset its history — not more reviews (rule 4) → retention.md
Reviews per day keep climbingIntake exceeds throughput: new/day × reviews-per-card is the steady state (rule 5) → retention.md
Retention below 0.85 while desired is 0.90Grading drift or bad cards before settings — check the Again-rate by deck first → retention.md
Backlog after time offNew cards to 0, cap reviews, burn down oldest-first; never marathon → retention.md
"Which numbers do I set?"Every default and what changes it → scheduling.md
Ease hell (core band 130-180%, screened with prop:ease<2.0)SM-2 artifact: move to FSRS, or reset ease AND fix the cards → retention.md
Cards are due but nothing appearsDaily limit, parent-deck limit, burial, suspension — in that order → troubleshooting.md
Anki asks Upload or DownloadOne-way sync: keep the side with the work, the other is overwritten → sync-and-backup.md
Import made duplicates, or one giant cardField mapping, separator, HTML setting → importing.md
Need to find or bulk-edit a subset of cardsSearch syntax and filtered decks → search.md
Card needs a hint, typed answer, or stylingNote type and template surgery → note-types.md
Labelled diagram, anatomy plate, map, circuit, UI screenshotImage Occlusion: masks, and Hide All vs Hide One → image-occlusion.md
Deck structure, tags, merges, duplicatesorganization.md
Vocabulary, audio, conjugation, false friendslanguage.md
Med school, boards, AnKing-style shared decksmedicine.md
Programming, syntax, math, theoremscode-and-math.md
Names and faces, poetry, music, chess, birds, work factsNon-academic decks and how to keep them alive → personal-decks.md
Exam in N daysCapacity math before content — can the deck even be finished → exam-prep.md
Which add-ons, and what breaks on upgradeaddons.md
Anything elseAsk what the user sees on screen — a count, a button, an exact error — map it to a row above, then propose one change at a time

Depth on demand — read SKILL.md alone by default, then exactly one of these: cards.md (wording a card that survives) · bulk-generation.md (source material → importable batch) · note-types.md (fields, templates, CSS, typed answers) · image-occlusion.md (masking a labelled image, and the Hide All / Hide One choice) · scheduling.md (every deck-options number) · retention.md (deck diagnosis, ease hell, leeches, backlog) · search.md (query syntax, bulk edits, filtered decks) · organization.md (decks vs tags, duplicates, maintenance) · importing.md (CSV/TSV, .apkg, migrations, media, export) · sync-and-backup.md (one-way sync, .colpkg, corruption) · troubleshooting.md (the app misbehaving) · addons.md (what to install, what is already built in) · exam-prep.md (fixed date, capacity math, triage) · language.md · medicine.md · code-and-math.md · personal-decks.md (the four subject guides) · setup.md (first-use preference loading).

Core Rules

  1. One retrievable fact per card. Test: the answer fits in a few words and only one answer is right. A four-item list is one card that fails on item four forever; split it into four cards, plus a "how many" card only if the count is itself testable. Ignore this and the card becomes a leech that drags its whole review history down.
  2. Every question carries its own context. Cards resurface years later, shuffled, far from the chapter that made them obvious. "What does ACE stand for?" competes with every other ACE you will ever learn; "[Cardio] In blood-pressure regulation, ACE stands for…" does not. Context lives in the question text or a visible field, never in the deck name alone.
  3. Grade recall, not feeling. Again = could not retrieve it. Hard = retrieved, slowly and painfully — a PASS, not a failure. Good = retrieved. Easy = instant, and the interval was clearly too short. Pressing Easy to shed workload, or Hard to "keep it close", feeds the scheduler false data; the buttons are the only signal it has.
  4. Fix the card, not the schedule. Default leech threshold: 8 lapses. Eight failures means the card is unanswerable as written — interference, ambiguity, or a hidden list. Rewrite it, then reset its history so the scheduler stops carrying the old card's difficulty. Piling reviews on a bad card buys permanent daily cost and no memory.
  5. Workload is decided at intake. Steady-state daily reviews ≈ new_per_day × reviews_per_card. Read reviews_per_card from your own collection (Stats: total reviews ÷ total cards; commonly 8-15 after the first year on defaults). 20 new/day × 10 = ~200 reviews/day, indefinitely. Work backwards from time you will actually spend: new_per_day = (minutes_available × 60 / seconds_per_review) / reviews_per_card.
  6. Desired retention is a workload dial, not a quality dial. FSRS (built in, anki >=23.10) defaults to 0.90. Pushing to 0.95 buys a few points of recall for roughly double the daily reviews; dropping under 0.80 spends the savings on relearning. Do not guess the trade — deck options ships a simulator that prices it against your own history (scheduling.md).
  7. A preset is shared; a deck is not. Deck options live in presets attached to many decks. Raising "new cards/day" while looking at one subdeck raises it everywhere on that preset. Read the preset name and its usage count first, and clone the preset when the change is meant for one deck.
  8. Cards are cheap to make and expensive to own. Lifetime cost ≈ reviews_per_card × seconds_per_review / 60 minutes. At 10 reviews × 8 s, one card ≈ 1.3 minutes of your life, so 500 cards ≈ 11 hours. The filter for adding a card is "worth 1-2 minutes of review time", not "is true".

The Four Buttons

The scheduler sees nothing but which button you pressed. Grading drift is the most common cause of "the algorithm is broken".

ButtonMeansSM-2 effectFSRS effectMisuse
AgainRetrieval failedEase −20pp, lapse counted, card returns to relearningDifficulty up, stability collapsesPressing it for "knew it, but slowly" — that is Hard
HardRetrieved with effortEase −15pp, interval ×1.2Small stability gain, difficulty upUsing it as a soft fail; habitual Hard ratchets intervals back toward daily
GoodRetrieved normallyInterval × easeNormal stability gainNone — this is the default answer
EasyInstant; the interval was too shortEase +15pp, interval × ease × 1.3Large stability jump, difficulty downFarming Easy to shrink today's queue, then losing the card for months

Consistency beats correctness: one grading standard applied the same way daily gives FSRS something to fit. Changing your standard mid-collection is what makes optimized parameters stop matching.

Workload Math

Every workload question is one of these four, and none of them needs a guess.

  • Steady state: daily_reviews ≈ new_per_day × reviews_per_card (rule 5) — the number you are signing up for, not today's count.
  • Time: minutes/day = daily_reviews × seconds_per_review / 60. Stats reports seconds/review directly; 5-8 s is typical for vocabulary, 10-20 s for reasoning-heavy cloze.
  • Finishing a deck by a date: new_per_day = remaining_new / (days_until_exam − 21). The 21 days are deliberate: a card first seen inside the last three weeks never reaches mature interval (interval >= 21 days) and will not hold through exam day (exam-prep.md).
  • Burning down a backlog: at a fixed daily cap, days_to_clear ≈ backlog / (cap − incoming_due). If cap <= incoming_due the backlog never clears — set new cards to 0 first, which is what removes tomorrow's incoming (retention.md).

Card Diseases

Symptom on the review screen → what is actually wrong → what to change. Writing the replacement card — atomicity test, cloze rules, interference, reversals, worked leech rewrite: cards.md.

SymptomDiagnosisFix
Fails every time, feels unlearnableThe card holds a list or two factsSplit into atoms (rule 1)
"I know this but can't say it"The answer is a paragraph, not a factCut the answer to its testable core; move the prose to a source field
Right answer, wrong cardInterference with a near-identical siblingPut the discriminator in BOTH questions, or merge them into one contrast card
Passes in the deck, fails in the examRecognition: the phrasing gave it awayRephrase; kill giveaway wording and blanks sized to the answer
Always Easy, never forgottenBelow your knowledge floorDelete it — a card you cannot fail teaches nothing and still costs reviews
Correct only because its sibling came firstSibling ordering leakTurn on sibling burying (scheduling.md)
Several answers would be acceptedThe question underspecifies the domainAdd the context prefix (rule 2)
Passes alone, useless in practiceIsolated fact with no networkAdd its cause, contrast and use — or accept it is trivia and cut it

When Anki Is The Wrong Tool

Saying this early saves more time than any card-writing tip.

  • Procedures and skills — writing proofs, debugging, speaking fluently, playing a passage — need repetition of the ACT. Anki holds the ingredients (a theorem statement, an API signature, a phrase), never the performance.
  • Material not yet understood. An unexplained cloze becomes a leech within a month. Understand first, card second; that ordering predicts whether a deck survives better than any setting.
  • Facts with a lookup always at hand and rarely needed. If retrieval speed barely matters and you check it twice a year, a note file beats a card.
  • A three-day deadline on conceptual material. Spacing has no room to work; worked problems and practice tests dominate. Anki pays off when the first exposure is ≥3 weeks out (exam-prep.md).
  • Escape hatch: high-stakes recall under time pressure — drug doses, kanji, case names, vocabulary, anatomy labels — is what Anki is unbeaten at. There, under-carding is the bigger risk.

Output Gates

Before handing over a batch of generated cards, verify:

  • Every card has exactly one answer, stateable in a few words?
  • Every question readable in isolation, with its domain context visible (rule 2)?
  • No answer guessable from phrasing, blank length, or the shape of the options?
  • Multiple clozes on one note all test the SAME fact; separate facts got separate notes?
  • Tags taken from the user's existing scheme rather than a new one you invented?
  • Count reported with its cost: "N cards ≈ N × 1.3 min of lifetime review, +X reviews/day at current settings" (rule 8)?
  • Output in the user's card_format, with separator and field order stated so the import maps correctly?

Configuration

User-dependent variables. Defaults apply until the user states a preference; store them in ~/Clawic/data/anki/config.yaml.

VariableTypeDefaultEffect
schedulerfsrs | sm2fsrsSelects which settings advice applies: desired retention and the optimizer (FSRS) vs ease factor and interval modifier (SM-2), in scheduling.md and retention.md
desired_retentionnumber (0.70-0.97)0.90The FSRS workload dial (rule 6); every review-count estimate in Workload Math scales with it
new_per_daynumber (0-9999)20Drives the steady-state projection of rule 5 and the deadline math in exam-prep.md
card_formattsv | csv | markdown | apkg-notestsvShape of every generated batch: separator, field order, and whether HTML is emitted (importing.md)
tag_stylehierarchical | flathierarchicalWhether generated tags read subject::topic::subtopic or single-level (organization.md)
note_typetext (note type name)BasicWhich note type generated cards target; sets the field names in the output header (note-types.md)
batch_sizenumber (5-200)25Cards produced per pass before pausing for the user's review, instead of dumping a whole chapter
audio_sourcenone | tts | forvo | user-suppliednoneWhether language cards carry an audio field and what fills it (language.md)

Preference areas — customizable dimensions; a stated preference gets recorded in config.yaml and applied:

  • Tooling — desktop Anki, AnkiMobile, AnkiDroid or AnkiWeb as the primary client; add-ons allowed or forbidden (affects every workflow that assumes a browser or an add-on, addons.md)
  • Conventions — deck naming and depth, tag vocabulary, note-type choice, whether cards carry source references (organization.md, note-types.md)
  • Thresholds — daily review cap, session length, leech threshold and action, maximum interval (scheduling.md)
  • Risk posture — confirmation before destructive operations: Forget, Reposition, Set Due Date, reschedule-on-FSRS-change, deleting duplicates, one-way sync (sync-and-backup.md)
  • Output format — target language of card text, answer verbosity, whether explanations ride in an extra field, images and audio included or not
  • Work order — generate-then-review in batches vs card-by-card approval; duplicate check before or after generation
  • Restrictions — copyright limits on shared material, no-images or no-audio constraints, subjects deliberately left uncarded
  • Cadence — study time of day, weekly maintenance day, exam dates that trigger the deadline math (exam-prep.md)

Traps

TrapWhy it failsDo instead
Answering Hard to keep a card closeHard is a pass with a shrinking multiplier; used habitually it drives intervals toward daily and inflates difficultyAgain for failures, Good for successes; Hard only for genuine slow retrievals
Deleting a leechRemoves the evidence and the fact; the same gap reappears from the source material next monthSuspend, rewrite, reset history, unsuspend (rule 4)
Studying a giant shared deck as-isThousands of unsuspended cards on material not yet taught — a backlog by day threeUnsuspend by lecture or topic tag as you cover it (medicine.md)
Editing deck options from a subdeckPresets are shared; the edit hits every deck using that presetCheck the usage count, clone the preset first (rule 7)
Fixing retention by raising desired retentionThe recall gap is usually card quality or grading; the dial only buys reviewsDiagnose the Again-rate by deck first (retention.md)
Enabling FSRS and skipping OptimizeDefault parameters model an average stranger, not youOptimize once real history exists, then periodically (scheduling.md)
Treating AnkiWeb as a backupSync mirrors deletions and corruption to every deviceKeep local .colpkg exports; automatic backups are per-profile and local (sync-and-backup.md)
Importing with "update existing notes" on the wrong keySilently overwrites edited notes that match on the first fieldDry-run on a copy of the collection and verify the key column (importing.md)
One deck per lecture, five levels deepNavigation and per-deck limits become the thing you manageShallow decks, hierarchical tags (organization.md)
Carding a textbook you have not readProduces recognition of phrasing, not knowledgeUnderstand first, card second (When Anki Is The Wrong Tool)

Where Experts Disagree

  • FSRS vs SM-2. FSRS is the default for anyone with review history and no add-on constraints; SM-2 stays defensible for very small collections, for old clients kept in sync across devices, and for people who deliberately hand-tune ease. The boundary is history volume, not taste: with only a few hundred reviews the optimizer has nothing to fit.
  • Sentence cards vs word cards (languages). Sentence-first argues context is the unit of meaning; word-first measures faster coverage of high-frequency vocabulary. Resolved by goal: reading speed → word cards with an example field; production and listening → sentence cards (language.md).
  • Premade decks vs your own. Writing cards is itself encoding, and self-made decks match your syllabus; premade decks are professionally written and your time is finite. The line is volume: medicine and law load beyond what a student can author (medicine.md).
  • How aggressively to delete. One school deletes any card that lapses twice; the other rewrites everything. Both beat the middle position — reviewing bad cards forever.

More Clawic skills, get them at https://clawic.com/skills/anki (install if the user confirms):

  • flashcards — card writing when the tool is not Anki, or not yet decided
  • studying — study plans, technique choice, exam countdown beyond deck math
  • spaced-repetition — the scheduling theory behind these settings
  • usmle — board-exam content strategy that medicine.md here plugs into

Feedback

Part of Clawic, the verified skill library. Get this skill: https://clawic.com/skills/anki.

常见问题

它会打开或修改我的 Anki 集合吗?
不会。它只基于你提供的文本、文件、导出和统计数据工作,生成的卡片由你自己导入;偏好与记忆文件存放在 ~/Clawic/data/anki/。
能处理 FSRS 和 SM-2 的配置吗?
可以。覆盖 FSRS(anki >=23.10 内置)、作为负载旋钮使用的目标保留率、每日上限、学习步骤、僵尸卡阈值,以及预设和单牌组设置之间的区别。
支持考前规划和积压清理吗?
支持。包含容量计算、牌组分诊和稳态负载公式,并明确指出:考前 3 周内才首次出现的卡片达不到成熟间隔,无法撑到考试日。
它能帮我写插件吗?
不能。插件开发明确不在范围内,只覆盖该装哪些插件以及升级后哪些会出问题。

相关技能

按考试日期倒推排周计划,安排闭卷回忆式学习块,把学期从头管到期末。

64 次安装2 星标

以系统方式规划并执行自学:从出口测试倒推课程,加入间隔复习与刻意练习,产出可验证的迁移证据。

作者 Iván93 次安装3 星标

自适应教学:先探测基础再讲解,每次只讲一个概念,讲完立刻检查记忆。

270 次安装8 星标

针对每场考试的剩余时间和学生自身习惯,规划复习时间表并执行以回忆为主的练习。

59 次安装3 星标

把内容转成适合阅读和分享的幻灯片图片,提供多套样式预设,可合并为 PPTX 或 PDF。

110 次安装2 星标