Anki ID Copy & Compare

AnkiWeb addon 2110918647

Copies selected note IDs as a search string and compares them with a friend's collection to show missing, extra, shared, and suspended cards by deck or tag, plus due siblings.
AI-generated summary; may contain mistakes.

schedulingnote-managementsearchfiltered-decks

Open on AnkiWeb GitHub Find alternatives

AnkiWeb

Votes
4 (👍 3 · 👎 1)
Updated
2026-06-30
Anki versions
25.12.2~
License
MIT (from the GitHub repository)
Virus scan
No ClamAV match A match does not prove malware. No match does not prove that the code is safe.
Languages
Python, JSON
Description language
en

Maintenance

active

  • Last update or commit: 2026-06-30 (124 days before the snapshot).
  • Test files: 2.
  • GitHub Actions workflows: 1.
  • Commits in the last year: 36.
  • Issues: 0 open, 0 closed.
  • Pull requests: 0 open, 2 merged.

Will it work on my Anki?

Version branches
Min AnkiMax AnkiUpdated
2.1.02.1.12025-11-13
2.1.22.1.32025-11-13
2.1.5025.12.2+2026-06-30
History across monthly snapshots

Loading…

Similar addons

Copy Text Field to Clipboard

Adds right-click Browser options to copy a selected field from multiple notes to the clipboard, either as clean plain text with header and Note ID or as raw HTML.

exportnote-management

7 votes 49% approval 👍 6 · 👎 1 Anki 2.1.1~ Updated 2025-10-27
𝕾 Selected Notes to Structured Text (for LLMs)

Exports selected Anki notes as LLM-friendly structured text—copyable or saved—preserving field contents unchanged while including note type, deck path, and optionally tags.

export

2 votes 34% approval 👍 2 · 👎 0 ⭐ 3 Anki 26.09~ Updated 2026-08-24

Description

Anki ID Copy & Compare

TLDR: Copy selected Note IDs as a search string, send them to a friend, and compare your collection with theirs to instantly see exactly which cards you're missing — in a clear, colour-coded results panel. Built for students who share large decks (AnKing / Zanki / AMBOSS / Ankizin / Ankiphil).

Why use this add-on?

When you and your study partners use the same shared deck, it's hard to tell whether you're all studying the same cards. Comparing thousands of Note IDs by hand is slow and error-prone. This add-on does it in one click — and shows you not just what differs, but where (by subject) and how (e.g. cards you have but suspended).

Key features

1. Copy Note IDs as a search string

  • Select notes in the Browser, right-click → Copy Note IDs as Search String (or press the shortcut, default Ctrl+Alt+C).
  • Copies a compact query (e.g. nid:1,2,3) to your clipboard — share it, or paste it into Anki's search bar.
  • Excluding suspended: a second entry Copy Note IDs (excluding suspended) leaves out fully-suspended notes — a note is kept as long as it still has at least one active card — so you share only what you're actively studying. The tooltip reports how many were left out, and an optional separate shortcut is configurable.

2. Compare with a friend — results scorecard

Paste your IDs and your friend's, click Compare, and get a scorecard with every region:

  • Missing (your friend has, you don't) — split into present in your collection (e.g. suspended) vs not in your collection at all.
  • Extra (you have, your friend doesn't).
  • Shared (both have).

Each region opens straight in the Browser or copies to the clipboard.

3. Suspension-aware

For every region you own, see how many of those notes you have suspended and jump right to them — perfect for "activate the cards my study partner is learning that I've turned off".

4. Coverage breakdown by deck or tag

Break any region down by deck (subject) or by tag, sorted by count, to see where you differ — e.g. "Pharmacology: 42, Cardiology: 18" — and open each group in the Browser.

5. Find due siblings (Tools menu)

Via Tools → Find due siblings … (DE: Werkzeuge → Fällige Geschwister finden …) you find new (blue) cards whose sibling cards — other cards of the same note, e.g. other clozes — you have already learned to a stable state, so they don't drown in your pile of new cards. Options:

  • Deck — restrict the search to one deck, or leave empty for all decks.
  • Hide cards whose siblings are struggling — exclude notes whose siblings are still in the learning phase, are leeches, or have too many lapses (default: on).
  • Advanced → Interval threshold — minimum sibling interval (days) to count as learned (default: 21 days).
  • Advanced → Max. lapses — maximum allowed lapses of the sibling (default: 1).

A live count updates as you adjust the settings. Then choose Show in browser to inspect the cards, or Start as study deck to build a rescheduling filtered deck and review them immediately. Settings are remembered between sessions.

Also

  • Modern interface that follows Anki's light and dark theme.
  • German and English (follows Anki's language setting).
  • Configurable shortcut and output format (compact nid:1,2,3 or nid:1 OR nid:2) via Tools → Add-ons → Config.
  • Reachable from the Browser right-click menu or via Tools → Anki ID Copy: Compare Note IDs.

Compatibility

Anki 2.1.50 and newer (both Qt5 and Qt6 builds).

A note on Note IDs

Comparison matches on Anki Note IDs. These stay identical for everyone who got a deck the same way (a shared AnkiCollab subscription, an AnkiHub deck, or the same downloaded .apkg), so the comparison is exact for study groups on the same source. If two people obtained "the same" deck through different channels, their IDs may not line up.

Open-source (MIT). Issues and contributions welcome: https://github.com/tamenmd/Anki_ID_Copy

README

Anki ID Copy

Build AnkiWeb License: MIT

Copy selected note IDs as a search string, and compare your notes with a friend's to instantly see what you're missing — built for medical students who share large decks (AnKing / Zanki / AMBOSS / Ankizin / Ankiphil style).

Für deutsche Med-Studenten: Schickt euch gegenseitig Karten-Auswahlen als nid:-Suchstring und vergleicht per Klick, welche Notizen euch fehlen, welche ihr zusätzlich habt und welche gemeinsam sind — inkl. Suspension-Status und Aufschlüsselung nach Fach. Funktioniert, wenn ihr dasselbe geteilte Deck (z. B. Ankizin über AnkiCollab) nutzt.

Features

  • Copy Note IDs — right-click selected notes in the Browser → copy them as a search string (nid:1,2,3) to the clipboard. Configurable keyboard shortcut (default Ctrl+Alt+C).
  • Copy Note IDs (excluding suspended) — a second context-menu entry that leaves out fully-suspended notes (a note is kept while it still has at least one active card), so you share only what you're actively studying. Optional separate shortcut.
  • Compare with a friend — paste your IDs and your friend's IDs; get a scorecard with all set regions:
    • Missing (friend has, you don't), split into present in your collection (e.g. suspended) vs not in your collection at all
    • Extra (you have, friend doesn't)
    • Shared (both have)
  • Suspension-aware — for each locally-owned region, see how many notes you have suspended and jump straight to them (is:suspended …).
  • Coverage breakdown — break any region down by deck or tag, sorted by count, with one click to show each group in the Browser.
  • Polished UI — modern, theme-safe cards and badges that adapt to Anki's light and dark modes. German and English interface (follows Anki's language).

Fällige Geschwister · Due Siblings

DE: Über Werkzeuge → Fällige Geschwister finden … öffnest du einen Dialog, der neue (blaue) Karten findet, deren Geschwisterkarten (andere Karten derselben Notiz, z. B. andere Clozes) du schon stabil gelernt hast — so gehen sie nicht im Berg neuer Karten unter.

EN: Via Tools → Find due siblings … you open a dialog that finds new (blue) cards whose sibling cards (other cards of the same note, e.g. other clozes) you have already learned to a stable state — so they don't drown in your pile of new cards.

Actions: Show in browser opens the matching cards straight in the Browser. Start as study deck builds a rescheduling filtered deck so you can start reviewing immediately.

Settings (remembered between sessions):

  • Deck — restrict the search to a specific deck (or leave empty for all decks).
  • Hide cards whose siblings are struggling — exclude notes whose siblings are still in the learning phase, are leeches, or have too many lapses (default: on).
  • Advanced → Interval threshold — minimum interval (days) for a sibling to count as "learned" (default: 21 days).
  • Advanced → Max. lapses — maximum allowed lapses for the sibling (default: 1).

Installation

  • Manual (.ankiaddon): download Anki_ID_Copy.ankiaddon from the Releases page and double-click it (or drag it onto Anki).
  • From source: the add-on is this repository folder. Pushing to main triggers a GitHub Actions build that produces Anki_ID_Copy.ankiaddon as an artifact; tagged releases attach it automatically.

Usage

  1. Open the Browser (b).
  2. Copy: select notes → right-click → Anki ID Copy → Copy Note IDs as Search String (or press the shortcut). Send the copied text to your friend.
  3. Compare: right-click → Compare Note IDs with Friend (or Tools → Anki ID Copy: Compare Note IDs). Your selection is pre-filled on the left; paste your friend's IDs on the right → Compare.
  4. In the result scorecard, use Show in browser, Copy, Show suspended, or Break down on any region.

Configuration

Open Tools → Add-ons → Anki ID Copy → Config. See config.md for details.

Key Default Meaning
copy_shortcut Ctrl+Alt+C Browser shortcut for the copy action (empty disables it). Ctrl+Shift+C is reserved by Anki for Insert Cloze.
copy_unsuspended_shortcut "" Optional shortcut for Copy Note IDs (excluding suspended) (empty = none). Don't reuse copy_shortcut's value.
search_format compact compact → nid:1,2,3, or → nid:1 OR nid:2.
due_siblings (object) Last-used settings for the Due Siblings dialog (deck, min_ivl, max_lapses, exclude_struggling). See config.md.

Compatibility

Anki 2.1.50+, both Qt5 and Qt6 builds (Qt symbols are imported via aqt.qt).

Development

python -m unittest discover -s tests   # run the unit tests for the pure logic
python -m py_compile __init__.py nid_tools.py due_siblings_logic.py due_siblings.py

The pure, Anki-independent logic (ID parsing, search-string building, set diff, grouping, due-sibling queries) lives in nid_tools.py and due_siblings_logic.py and is unit-tested in tests/. The Anki/Qt glue lives in __init__.py and due_siblings.py. See CONTRIBUTING.md for the full layout and how to build the .ankiaddon.

A note on note IDs

Comparison matches on Anki note IDs (nid). These are preserved from the source when a deck is distributed as one artifact (a shared AnkiCollab subscription, an AnkiHub deck, or the same downloaded .apkg), so everyone who got the deck the same way shares identical IDs and the comparison is exact. If two people obtained "the same" deck through different channels, their IDs may not line up.

License

MIT © 2026 tamenmd