Skip to content
Research
Skill

/novelty-duplication-advisory

MEMO-ONLY prior-work overlap advisory: surfaces the two ADVISORY taxonomy signals neither a tool nor a model can decide from the paper alone — ADV-TRIVIAL-COMBINATION (standard A+B+C / 缝合 stapling) and ADV-DUPLICATE-PUBLICATION (repackaged / duplicate submission). The executor

BOOST
From plugin
anti-autoresearch
16611 skills
Install
$ npx -y skills add wanshuiyin/Anti-Autoresearch --skill novelty-duplication-advisory --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/novelty-duplication-advisory

Context preview

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

MEMO-ONLY prior-work overlap advisory: surfaces the two ADVISORY taxonomy signals neither a tool nor a model can decide from the paper alone — ADV-TRIVIAL-COMBINATION (standard A+B+C / 缝合 stapling) and ADV-DUPLICATE-PUBLICATION (repackaged / duplicate submission). The executor

SKILL.md

novelty-duplication-advisory.SKILL.md
name: novelty-duplication-advisory
description: "MEMO-ONLY prior-work overlap advisory: surfaces the two ADVISORY taxonomy signals neither a tool nor a model can decide from the paper alone — ADV-TRIVIAL-COMBINATION (standard A+B+C / 缝合 stapling) and ADV-DUPLICATE-PUBLICATION (repackaged / duplicate submission). The executor RETRIEVES candidate prior work (DBLP fuzzy-title + boolean · WebSearch · WebFetch) from the paper's own title + contribution spans in the evidence ledger; TWO fresh cross-model codex reviewers (one per axis) LAY OUT the overlap side-by-side against each anchored contribution claim. It NEVER rules 'trivial' or 'duplicate' (that is a human judgment) and absence of a match is NOT evidence of originality. Emits novelty-duplication-advisory.memo.md + an info-only findings mirror; carries NO verdict weight — tools/adjudicate_findings.py lists it in ZERO_WEIGHT_SKILLS and caps it at info. Detect-only. Adapted from ARIS novelty-check, reframed from 'is MY idea novel' to 'here is the overlap a reviewer should weigh'. Triggers: \"novelty advisory\", \"duplication check\", \"prior-work overlap\", \"is this stapling\", \"缝合\", \"查重\", \"重复发表\", \"duplicate submission\"."
argument-hint: [paper-dir | claims.json]
allowed-tools: Bash(*), Read, Write, WebSearch, WebFetch, mcp__codex__codex, mcp__mcp-dblp__fuzzy_title_search, mcp__mcp-dblp__search

Novelty & Duplication Advisory — the overlap a reviewer should weigh

Lay out, for **$ARGUMENTS** (a paper-dir or a `claims.json` from `/evidence-ledger`), the candidate prior-work overlap a human reviewer should weigh for two reviewer-judgment signals — **trivial combination** ("standard A+B+C") and **duplicate publication** ("repackaged prior work"). Retrieve candidates, map them side-by-side against the paper's ledger-anchored contribution, and emit `novelty-duplication-advisory.memo.md`. Run AFTER `/evidence-ledger` (so `claims.json` exists). This skill **decides nothing** — it never rules "trivial" or "duplicate", and the deterministic adjudicator caps it at `info`.

> 🔒 **Do not wrap this skill in `/loop`, `/schedule`, or `CronCreate`.** It retrieves > external prior work once and synthesizes it into one advisory memo. Even though it is > **memo-only** (the adjudicator caps it at `info`, so it adds no verdict weight), the > no-new-signal cadence rule still applies: its output changes only when the **ledger / the > paper / the literature** change, never with the wall clock. It is tempting to re-fire on a > timer "to catch newly-posted prior work," but a wall-clock loop burns real DBLP + web + > cross-model budget on every tick for a paper that has not changed. Schedule the *work that > precedes it* — ledger built → run this **once**. (Mirrors ARIS's external-cadence doctrine: > `/loop`·`/schedule` are fire-control, not a judge.)

> Adapted from ARIS `novelty-check`, with **one deliberate reframing and one deliberate > downgrade.** The reframing: ARIS `novelty-check` asks *"is MY idea novel — should I PROCEED > / ABANDON?"* and hands the author a `Score: X/10` + a recommendation; this skill asks *"here > is the overlap a third-party reviewer should weigh"* and hands the human candidates, not a > verdict. The downgrade: it is **memo-only.** Novelty is the textbook example of a judgment > that is **not decidable from the paper alone, and not decidable at any observability level** > — it depends on a corpus you can never prove you searched exhaustively. So this skill > **retrieves and lays out** overlap; it refuses to grade it. `tools/adjudicate_findings.py` > lists `novelty-duplication-advisory` in `ZERO_WEIGHT_SKILLS` and caps anything it emits at > `info`. The memo *informs*; the human *judges*; the deterministic adjudicator owns the > report verdict — and this skill never moves it.

Why this exists

Two complaints recur in real reviews of autoresearch (and rushed human) output, and neither is an *internal*-consistency failure the other auditors catch — they are *relational* to the wider literature:

  • **"标准的 A + B + C,全是已知模块" / "缝合" (stapling)** — the paper bolts together three

well-known techniques and presents the bundle as the contribution. Whether that bundle is a genuine advance or a trivial staple is a **reviewer judgment** — a surprising combination is publishable, an obvious one is not, and no tool can draw that line.

  • **"这不就是 X 换了个壳" (repackaged / duplicate submission)** — the submission looks like a

prior paper (often the authors' own) with a new title. An *exact* title/abstract/DOI match is reportable; the **absence** of a match proves nothing, because your search corpus is never complete.

Both are listed in `references/hack-pattern-taxonomy.md` (v0.5) under **Advisory signals (NOT a hard pattern · zero verdict weight · reviewer-judgment only)** — `ADV-TRIVIAL-COMBINATION` and `ADV-DUPLICATE-PUBLICATION`. The taxonomy is explicit: *"Novelty is a reviewer judgment; the tool can lay out the prior-work overlap, it cannot rule 'trivial'"* and *"the absence of a match is **not** evidence of originality."*

So this skill does the one honest, high-leverage thing the other auditors do not: it **reaches outside the paper** to *retrieve* candidate prior work, and **lays it out side-by-side** against the paper's own contribution so a human can weigh novelty with the overlap in front of them. It is the only auditor that consults an external corpus — which is exactly why it can carry **no verdict weight**: the moment a tool grades novelty from an incomplete search, it manufactures the "AI slop grading AI slop" failure this repo exists to refuse. It is the literature-facing complement to `citation-forensics`: that skill audits the papers the submission **does** cite; this one surfaces prior work it may **not** have cited at all.

Core principle

**MEMO-ONLY · retrieve-don't-rule · ledger-anchored on the paper side · real-record-bound on the prior-work side · cross-model, fresh thread per axis · reviewer ≠ a

Read more
Ships withanti-autoresearch

· · · · · · · ·

Get the whole plugin

Other skills on anti-autoresearch.