Agent skill

Integrity Forensics

by wanshuiyin in wanshuiyin/Auto-claude-code-research-in-sleep

Run the Anti-Autoresearch integrity-forensics sweep (span-anchored evidence ledger → GPT auditors propose findings → a rules-only reporter that lists every proposal with what the auditor said about…

MITAuto-check: notesResearch & Science

Install Integrity Forensics

skills CLI
$ npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill integrity-forensics -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install wanshuiyin/Auto-claude-code-research-in-sleep integrity-forensics --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/integrity-forensics .claude/skills/integrity-forensics && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
integrity-forensics
GitHub stars
17k
Token cost
~4.2k tokens
SKILL.md length
1,719 words
Files
1
Skills in repo
26
Repo updated
First seen
Licence
MIT

At a glance

Run the Anti-Autoresearch integrity-forensics sweep (span-anchored evidence ledger → GPT auditors propose findings → a rules-only reporter that lists every proposal with what the auditor said about…

  • Works in 4 steps: Bootstrap the pin (idempotent) → Delegate: run the upstream sweep,… → Typed gate + obligations (ARIS-side… → …
  • User says integrity forensics
  • SKILL.md covers Constants, Step 0 — Bootstrap the pin…, Step 1 — Delegate: run the… and Step 2 — Typed gate +…, plus 5 more sections
  • Calls git and python3; reaches github.com

What it does

Integrity Forensics is an agent skill from wanshuiyin/Auto-claude-code-research-in-sleep. Run the Anti-Autoresearch integrity-forensics sweep (span-anchored evidence ledger → GPT auditors propose findings → a rules-only reporter that lists every proposal with what the auditor said about it) against a paper via a SHA-pinned thin launcher — then convert the verdict into a typed policy gate (BLOCK/WARN/NONEWBLOCKER) and an append-only obligations ledger. Use when user says "integrity forensics", "forensic audit this paper", "投稿前自查诚信", "审这篇论文的诚信", or says "anti-autoresearch" when the upstream repo's own…

Its SKILL.md is about 4.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Research & Science, covering Autonomous loops, Scientific writing and Peer review. The repository describes itself as: ARIS ⚔️ (Auto-Research-In-Sleep) — Lightweight Markdown-only skills for autonomous ML research: cross-model review loops, idea discovery, and experiment automation. No framework… The licence is MIT.

When your agent uses it

  • User says integrity forensics
  • Forensic audit this paper
  • Says anti-autoresearch when the upstream repos own skills are not installed

Example prompts

  • “integrity forensics”
  • “forensic audit this paper”
  • “投稿前自查诚信”
  • “/integrity-forensics”

Requirements

  • Python 3
  • Pre-approved tools (allowed-tools): Bash(*), Read, Write, Grep, Glob, mcp__codex__codex

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Bootstrap the pin (idempotent)
  2. Delegate: run the upstream sweep, unchanged
  3. Typed gate + obligations (ARIS-side post-processing)
  4. Fix what it found (obligations, not a polish loop)

What it can do on your machine

Read from SKILL.md and the folder at commit 26b95cf. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash(*)
    • Read
    • Write
    • Grep
    • Glob
    • mcp__codex__codex

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Integrity Forensics loads about 4.2k tokens when it runs. Until then it costs about 173 tokens; SKILL.md has 1,719 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~173
When it runs · the whole SKILL.md, loaded when a task matches
~4.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash(*), Read, Write, Grep, Glob, mcp__codex__codex

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from wanshuiyin/Auto-claude-code-research-in-sleep at commit 26b95cf, republished under its MIT licence (© wanshuiyin). 1,719 words, ~4,243 tokens.

Download SKILL.mdSave it as .claude/skills/integrity-forensics/SKILL.md (or your agent's skills folder).
name
integrity-forensics
description
Run the Anti-Autoresearch integrity-forensics sweep (span-anchored evidence ledger → GPT auditors propose findings → a rules-only reporter that lists every proposal with what the auditor said about it) against a paper via a SHA-pinned thin launcher — then convert the verdict into a typed policy gate (BLOCK/WARN/NO_NEW_BLOCKER) and an append-only obligations ledger. Use when user says "integrity forensics", "forensic audit this paper", "投稿前自查诚信", "审这篇论文的诚信", or says "anti-autoresearch" when the upstream repo's own skills are not installed. Also invoked by /paper-writing (submission self-forensics, default ON), /peer-review (forensic appendix), /resubmit-pipeline.
allowed-tools
Bash(*), Read, Write, Grep, Glob, mcp__codex__codex
argument-hint
[paper-dir | pdf | arxiv-id]

Integrity Forensics — thin launcher for Anti-Autoresearch

Audit target: $ARGUMENTS

What this is. ARIS generates papers; Anti-Autoresearch is its outward-pointed dual — reviewer-side integrity forensics (46 patterns across 8 families, deterministic GRIM/GRIMMER/statcheck core, span-anchored claims, a rules-only reporter that summarizes rather than adjudicates). This skill is a thin launcher: it pins an upstream commit, validates the pin with the upstream eval gate, delegates execution unchanged, and post-processes the verdict into ARIS's policy vocabulary. It vendors nothing and forks nothing.

🔁 Cadence fence (shared-references/external-cadence.md): this skill is verdict-bearing decision support. Do not wrap it in /loop / /schedule — and NEVER as "iterate edits until it stops flagging" (see The One Forbidden Loop below).

Constants

  • ANTI_AR_REPO = https://github.com/wanshuiyin/Anti-Autoresearch.git
  • ANTI_AR_COMMIT = b47af6f983b38347b6d2110379e266400597cf66 — the SHA-pin. The launcher NEVER tracks upstream HEAD; bumping this constant is a reviewed change (see Pin-bump checklist).
  • CLONE_DIR = ~/.aris/anti-autoresearch — the pinned working copy. Host-neutral on purpose: ARIS also runs on DeepSeek Harness, Codex CLI, Cursor, Trae, Antigravity and Copilot CLI, where ~/.claude/ would name an installation the user does not have. An older clone at ~/.claude/anti-autoresearch is unused; move it and its .aris_eval_ok_* receipt only to keep an offline deterministic-only run working, otherwise delete it whenever convenient.
  • NO REVIEWER KNOBS. This launcher exposes no reviewer model/effort parameters and never maps ARIS — effort: onto upstream settings. The pinned upstream runs exactly what it pins (gpt-6-astra + xhigh, its own design decision). Overriding upstream review policy from a launcher would create a second, unauditable configuration surface.
  • GATE_HELPER = forensics_gate.py — resolved via the canonical chain (shared-references/integration-contract.md §2): .aris/tools/ → tools/ → $ARIS_REPO/tools/ → $ARIS_REPO/tools/ via ~/.aris/repo. Failure policy A (required): if it cannot be resolved at assurance: submission, STOP — never improvise the gate.

Step 0 — Bootstrap the pin (idempotent)

bash
CLONE_DIR="$HOME/.aris/anti-autoresearch"
ANTI_AR_COMMIT="b47af6f983b38347b6d2110379e266400597cf66"

mkdir -p "$HOME/.aris"
if [ ! -d "$CLONE_DIR/.git" ]; then
    git clone --no-checkout https://github.com/wanshuiyin/Anti-Autoresearch.git "$CLONE_DIR"
fi
# fetch ONLY if the pin isn't already present — a cached, validated pin works offline
git -C "$CLONE_DIR" cat-file -e "$ANTI_AR_COMMIT^{commit}" 2>/dev/null \
    || git -C "$CLONE_DIR" fetch -q origin
git -C "$CLONE_DIR" checkout -qf "$ANTI_AR_COMMIT" || {
    echo "FATAL: cannot checkout pinned commit $ANTI_AR_COMMIT"; exit 1; }
# Force a PRISTINE tree at the pin — local tampering with the clone (edited
# adjudicator, injected module, even one hidden inside a NESTED git repo,
# which single-f clean skips) must not survive bootstrap and run under the
# official pin's name. Every step is checked; then the tree is verified.
git -C "$CLONE_DIR" reset --hard -q "$ANTI_AR_COMMIT" || {
    echo "FATAL: reset to pin failed"; exit 1; }
git -C "$CLONE_DIR" clean -ffdxq || {
    echo "FATAL: clean failed"; exit 1; }
[ -z "$(git -C "$CLONE_DIR" status --porcelain)" ] || {
    echo "FATAL: clone is not pristine after reset+clean — refusing to run"; exit 1; }

# One-time-per-pin validation: the upstream eval gate (8 injected-defect
# classes, 100% recall + zero clean false positives) must PASS before this
# pin is allowed to produce a verdict. NEVER skip; NEVER proceed on failure.
# The marker lives OUTSIDE the clone: a marker inside a tamperable tree proves
# nothing (and `git clean` above would erase it, forcing re-eval every run).
MARKER="${CLONE_DIR}.aris_eval_ok_${ANTI_AR_COMMIT}"
if [ ! -f "$MARKER" ]; then
    ( cd "$CLONE_DIR" && python3 eval/run_eval.py ) || {
        echo "FATAL: upstream eval gate FAILED at pin $ANTI_AR_COMMIT — refusing to"
        echo "       use an unvalidated forensics pin for verdicts."; exit 1; }
    touch "$MARKER"
fi
echo "anti-autoresearch pinned at $ANTI_AR_COMMIT (eval gate: validated)"

Step 1 — Delegate: run the upstream sweep, unchanged

Open and follow $CLONE_DIR/workflows/anti-autoresearch/SKILL.md end to end on the target. Two wrapper rules — the ONLY things this launcher adds:

  1. cwd. Upstream skills self-locate via git rev-parse --show-toplevel. Run every upstream bash block with cd "$CLONE_DIR" first — ALWAYS the cd, never just an exported ROOT (upstream blocks re-derive ROOT themselves and would overwrite it) — and refer to the paper by absolute path, otherwise upstream resolves ROOT to the ARIS repo and finds the wrong Python spine.
  2. Codex calls carry approval-policy: never + sandbox: read-only (session hygiene; upstream already specifies fresh-thread-per-dimension, serial execution, and its own model pins — do not alter them).

Everything else — the evidence ledger, coverage.json state machine, the nine auditor dimensions, the refutation pass, the deterministic summary — is upstream's contract. Never rewrite, soften, or re-map its outputs (report.json + REPORT.md, verdict ∈ CLEAN_GIVEN_EVIDENCE / SOFT_FLAGS / HARD_FLAGS / REVIEW_UNAVAILABLE). The observability level (L0/L1/L2) is whatever upstream derives from the artifacts present — do not promise L2.

Step 2 — Typed gate + obligations (ARIS-side post-processing)

bash
# Resolve $GATE_HELPER via the canonical chain (integration-contract §2), then
# ONE atomic call (update + gate in a single locked transaction — the gate only
# ever speaks for the report the ledger has folded, sha-bound):
python3 "$GATE_HELPER" evaluate --report "$PAPER_DIR/report.json" --paper-dir "$PAPER_DIR" \
    --anti-ar-commit "$ANTI_AR_COMMIT" --executor-model "<this pipeline's executor>"
# exit 0 = WARN / NO_NEW_BLOCKER · exit 1 = BLOCK

The gate translates the verdict into policy WITHOUT re-labeling it:

upstream verdictpolicy
HARD_FLAGSBLOCK — an auditor proposed something critical and it is on the table for you to read; never "the machine found fraud"
REVIEW_UNAVAILABLEBLOCK — an incomplete sweep cannot wave a paper through
SOFT_FLAGSWARN — human disposition. Read the never-ran list too: the upstream verdict folds incompleteness in only when it would otherwise be clean, so a WARN can sit on top of a sweep where verdict-bearing dimensions never ran. evaluate and fresh both print those dimensions
CLEAN_GIVEN_EVIDENCENO_NEW_BLOCKER — never called PASS or accepted: it means "no flag found in the evidence at hand", not an acquittal
anything elseBLOCK (fail closed)

plus: any OPEN critical obligation → BLOCK; any OPEN obligation → at least WARN; a closed-without-receipt or unknown-status ledger entry → BLOCK (a hand-edited "status": "RESOLVED" does not open the gate).

gate.json also records a paper_fingerprint (sha over the paper's compile inputs AND deliverables — .tex/.bib/.sty/.cls/figures/PDF). The downstream preflight is ONE command: python3 "$GATE_HELPER" fresh --paper-dir "$PAPER_DIR" --anti-ar-commit "$ANTI_AR_COMMIT" — exit 0 ⟺ the gate was produced at the CURRENT pin ∧ a gate exists ∧ nothing in the paper changed after it ∧ the gate matches the current obligations ledger ∧ the decision — re-computed from the sha-verified archived report (last_report.json) + the live ledger, never read from the gate's stored token — is pass-capable (WARN / NO_NEW_BLOCKER). Anything else — missing gate, post-gate edit or recompile, unbound ledger or archive, recompute mismatch, BLOCK, unknown token — exits 1: re-run the sweep + evaluate. Every ledger mutation (update/resolve/waive) deletes the standing gate.json, so an interrupted run can never leave a stale pass; and evaluate refuses a report OLDER than any paper file (a stale report cannot be folded onto text it never audited). Run evaluate immediately after the sweep, before touching any paper file.

The gate artifact also records honest provenance: upstream's auditors are GPT-family, so for a Claude executor the findings carry cross-family proposal provenance; for a Codex executor they are same-family. Either way this gate only raises flags — it has no acceptance to grant, so the distinction is informational, not a loophole.

Step 3 — Fix what it found (obligations, not a polish loop)

Every OPEN obligation gets DISPOSITIONED — fixed, or explicitly waived. Upstream now reports every proposal an auditor made rather than deciding which ones do not count, so expect more obligations than a pre-2026-08 sweep opened, and expect some of them to be proposals you disagree with. waive is a first-class, expected outcome — "a model proposed this and I, the human, judge it wrong" is a normal disposition here, not a last resort. Weigh each one against the report's columns: Anchored, Observability, FP-risk, Surface, Ext-check.

For the ones that are real, use the right door:

Finding familyRepair route
A — numeric self-consistencyrecompute from the RESULT FILES (/paper-claim-audit evidence chain); fix the number, not the sentence
D — experiment integrityback to /experiment-audit / rerun
E — citations/citation-audit KEEP/FIX/REPLACE machinery
G — proof & derivation/proof-checker's fix loop
B / C / H — scope, baselines, eval designscience-level: feed the finding to /auto-review-loop as reviewer INPUT, or to the human
AIS / advisory (zero-weight)optional context for /auto-paper-improvement-loop; never gates

Close each obligation explicitly — the receipt is typed and hashed:

bash
python3 "$GATE_HELPER" resolve --paper-dir "$PAPER_DIR" --obligation-id <id> \
    --fix-type corrected-from-results|claim-narrowed|claim-withdrawn|citation-replaced \
    --evidence <path-to-the-ground-truth-that-backs-the-fix> \
    --verified-by "human:<name>" | "checker:<tool>" | "cross-family-review:<thread-id>"
# or, with HUMAN sign-off only:
python3 "$GATE_HELPER" waive --paper-dir "$PAPER_DIR" --obligation-id <id> \
    --approver "human:<name>" --reason "<why this stands as-is>"

Rules the ledger enforces mechanically (tests/test_forensics_gate.py):

  • append-only — re-running the sweep can open obligations, never close them;
  • a finding that disappears from a later report stays OPEN and gains UNRESOLVED_DISAPPEARANCE — rewording the span is not a fix;
  • claim-withdrawn is an honest fix (deleting an unsupported claim is a legitimate resolution — with the deletion diff as evidence);
  • a waiver is not a resolution: human-approved, permanently recorded, original finding snapshot immutable;
  • the executor's fix_type label is a receipt, not a verdict — closure of a critical needs a family checker, a fresh cross-family review, or a human (--verified-by requires TYPED provenance and is recorded; naming a human who did not approve is a false record with a permanent paper trail);
  • receipts are re-verified, not remembered: on every later gate the evidence file must still exist and still hash to what was recorded at closure time — editing the evidence after closing re-opens the BLOCK;
  • resolve/waive (like update) invalidate the standing gate.json — finish Step 3 by re-running the sweep + evaluate, so the gate that downstream preflights read reflects the post-fix state.
Show full SKILL.md (578 more words)Show less
The One Forbidden Loop

Never run "edit → re-sweep → repeat until CLEAN". That objective function teaches the editor to defeat the detector — deleting an anchored span kills a flag faster than fixing the number, and the result is a paper laundered against its own audit. The re-run after fixes exists to confirm the DISCREPANCY is gone (and to catch new ones); the obligations ledger — not the verdict — decides whether the gate opens.

Trust boundary (what is computed vs what is protocol)

  • Computed (the gate enforces these mechanically): verdict→policy mapping, append-only ledger lifecycle, sha bindings (report ↔ ledger ↔ archive), receipt re-hashing, the paper fingerprint, pin/version match, and the recomputed decision (fresh never trusts a stored token).
  • Protocol (instruction-graded, deliberately): that the sweep actually ran at the pinned clone against this paper. The gate raises the bar — structural floor (a report must name its adjudicator and carry a coverage map), stale-report mtime guard — and that is where it stops. There is no cryptographic binding between the report and the paper, deliberately: this is a research-workflow gate, not a provenance system, and the honest statement is that a determined executor can hand it a stale report. Likewise human: / checker: / cross-family-review: labels are accountability, not authentication: a false label is an explicit, permanent false record.
  • Out of scope: a party rewriting the .aris/ artifacts consistently with shell access has owner power (they could delete the directory outright). The gate defends against the sloppy or corner-cutting executor and against honest crashes/races/resumes — not against the machine's owner.

Pin-bump checklist (maintainers)

  1. Set the new ANTI_AR_COMMIT; delete no markers (the eval gate re-runs automatically for the new SHA).
  2. Diff upstream's schemas/report.schema.json + verdict vocabulary against the gate's policy table; extend tools/forensics_gate.py BEFORE bumping if they moved.
  3. Old findings/obligations stay valid (fingerprints are span/hash-based, not id-based) — but findings produced by an older adjudicator must be re-audited, not re-adjudicated (upstream's own migration rule).
  4. Tell users when a bump changes how much they must disposition. fresh rejects every stored gate.json at the old pin with PIN_MISMATCH, so a bump already forces a re-sweep for everyone — bundle upstream changes behind ONE bump rather than two, or the re-sweep cost is paid twice.

2026-08 bump (98a75fc) — expect more open obligations. Upstream moved from adjudicating proposals to reporting them: findings its FP-risk, observability, surface and needs-external-check gates used to demote to info now arrive above info, so they open obligations. Nothing got worse in the paper; more of what the auditors said is now visible. Waiving a proposal you judge wrong is the expected disposition, and the report's per-finding columns (Anchored, Observability, FP-risk, Surface, Ext-check) are what you weigh. Upstream also deleted its report self-binding hashes in the same window — nothing here ever consumed them.

Codex-native note (mirror)

Upstream ships no Codex-native pack; its auditor skills are Claude-Code contracts. A Codex-native session may run upstream's deterministic-only mode (numeric core + adjudicator with an all-review_unavailable coverage map — honestly scoped: it can flag, it can never say CLEAN). The full nine-dimension sweep requires a host that can execute upstream's Claude-Code contracts unchanged — Claude Code and the dsh-aris bundle on DeepSeek Harness are the known ones. Translating upstream's reviewer calls into spawn_agent on the fly is REWRITING an upstream contract — forbidden.

Review tracing

Upstream saves its own per-dimension traces under the paper's .aris/traces/. The launcher adds only the .aris/forensics/ artifacts: gate.json (pins anti_ar_commit + report/ledger hashes + the paper-text fingerprint), obligations.json (the append-only ledger), and last_report.json (the sha-verified archive of the folded report that fresh recomputes from).

© wanshuiyin, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/integrity-forensics of wanshuiyin/Auto-claude-code-research-in-sleep.

Open the folder on GitHubat commit 26b95cf

Compare with similar skills

Integrity Forensics next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Integrity Forensics compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Integrity Forensics this skillwanshuiyin/Auto-claude-code-research-in-sleep17k—~4.2kAutomated safety check: NotesMIT
Paper PlanningEvoScientist/EvoSkills4783 repos~2.4kAutomated safety check: PassApache-2.0
Autodecisionharshilmathur/autodecision102—~2.8kAutomated safety check: PassMIT
Scholarpeer Econfranklee16/academic-research-skills223—~2kAutomated safety check: NotesNone
Deli Autoresearchrongxinzy/RongxinAI154—~3.2kAutomated safety check: PassAGPL-3.0
Academic Paper Writing PipelineImbad0202/academic-research-skills51k—~16kAutomated safety check: PassCustom licence

Similar skills

  • Paper Planning

    EvoScientist/EvoSkills

    Guides pre-writing planning for academic papers with 4 structured steps: story design (task-challenge-insight-contribution-advantage), experiment planning (comparisons + ablations), figure design…

    478 GitHub starsUsed in 3 repos~2.4k tokens
    Research & ScienceAuto-check passed
  • Autodecision

    harshilmathur/autodecision

    Auto-Decision Engine: iterative decision simulation using autoresearch principles and a persona council.

    102 GitHub stars~2.8k tokensUpdated 5 mo ago
    Research & ScienceAuto-check passed
  • Scholarpeer Econ

    franklee16/academic-research-skills

    Multi-agent peer review simulation for finance/economics manuscripts.

    223 GitHub stars~2k tokensUpdated 21 days ago
    Research & ScienceAuto-check: notes
  • Deli Autoresearch

    rongxinzy/RongxinAI

    A protocol framework for long-horizon autonomous research tasks.

    154 GitHub stars~3.2k tokensUpdated today
    Research & ScienceAuto-check passed
  • Academic Paper Writing Pipeline

    Imbad0202/academic-research-skills

    Runs a 12-agent pipeline that plans, drafts, cites, reviews and formats academic papers, with modes for revision, rebuttals, abstracts and citation checks.

    51k GitHub stars~16k tokensUpdated yesterday
    Research & ScienceAuto-check passed
  • Academic Paper Reviewer

    Imbad0202/academic-research-skills

    Simulates a journal peer review of a manuscript with a five-seat reviewer panel, an editorial synthesizer and several review modes.

    51k GitHub stars~11k tokensUpdated yesterday
    Research & ScienceAuto-check passed

More from wanshuiyin/Auto-claude-code-research-in-sleep

All 26 skills in this repo
  • Academic Poster Builder

    wanshuiyin/Auto-claude-code-research-in-sleep

    Builds an academic conference poster as a single HTML and CSS file with measurement-based gates, real paper figures and a print-ready PDF rendered through headless Chromium.

    17k GitHub starsUsed in 1 repo~4.5k tokens
    Auto-check: notes
  • Proof Run Orchestrator

    wanshuiyin/Auto-claude-code-research-in-sleep

    Runs a mathematical proof project as a stateful pipeline of run directories: a local attempt first, then a manual GPT Pro handoff package, with an optional DeepSeek audit.

    17k GitHub starsUsed in 1 repo~4.7k tokens
    Auto-check passed
  • Render HTML

    wanshuiyin/Auto-claude-code-research-in-sleep

    Render an ARIS Markdown / JSON artifact (IDEAREPORT, AUTOREVIEW, KILLARGUMENT, PAPERPLAN, research-wiki state, etc.) into a single-file HTML view designed for human reading.

    17k GitHub starsUsed in 1 repo~5.4k tokens
    Auto-check: notes
  • Experiment Audit

    wanshuiyin/Auto-claude-code-research-in-sleep

    Audit experiment integrity before claiming results. An agent skill from wanshuiyin/Auto-claude-code-research-in-sleep.

    17k GitHub starsUsed in 1 repo~2.7k tokens
    Auto-check: notes
  • Integrity Forensics

    wanshuiyin/Auto-claude-code-research-in-sleep

    Run the Anti-Autoresearch integrity-forensics DETERMINISTIC slice (numeric core + rules-only reporter) against a paper via a SHA-pinned thin launcher, then convert the verdict into a typed policy…

    17k GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check passed
  • Interview Cheatsheet

    wanshuiyin/Auto-claude-code-research-in-sleep

    Generate a long-form Chinese interview-prep cheat sheet on a specific ML/LLM topic — formulas with derivations, from-scratch PyTorch code, comparison tables, and 25 高频面试题 (L1 必会 / L2 进阶 / L3 顶级 lab).

    17k GitHub starsUsed in 1 repo~3.3k tokens
    Auto-check: notes

Questions about Integrity Forensics

What does Integrity Forensics do?

Run the Anti-Autoresearch integrity-forensics sweep (span-anchored evidence ledger → GPT auditors propose findings → a rules-only reporter that lists every proposal with what the auditor said about…. Integrity Forensics is an agent skill from wanshuiyin/Auto-claude-code-research-in-sleep. Run the Anti-Autoresearch integrity-forensics sweep (span-anchored evidence ledger → GPT auditors propose findings → a rules-only reporter that lists every proposal with what the auditor said about it) against a paper via a SHA-pinned thin launcher — then convert the verdict into a typed policy gate (BLOCK/WARN/NONEWBLOCKER) and an append-only obligations ledger.

When should I use Integrity Forensics?

Integrity Forensics fits situations like: user says integrity forensics; forensic audit this paper; says anti-autoresearch when the upstream repos own skills are not installed.

How do I install Integrity Forensics in Claude Code?

Run `npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill integrity-forensics -a claude-code`. Or copy the skill folder (skills/integrity-forensics in wanshuiyin/Auto-claude-code-research-in-sleep) into .claude/skills/integrity-forensics in your project. Claude Code loads it when a task matches its description.

How do I install Integrity Forensics in Codex?

Run `npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill integrity-forensics -a codex`. Or copy the skill folder (skills/integrity-forensics in wanshuiyin/Auto-claude-code-research-in-sleep) into .agents/skills/integrity-forensics in your project. Codex loads it when a task matches its description.

Can I use Integrity Forensics in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill integrity-forensics -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/integrity-forensics, .gemini/skills/integrity-forensics, .github/skills/integrity-forensics and .opencode/skills/integrity-forensics in your project.

What does Integrity Forensics need to run?

Going by SKILL.md and its folder, Integrity Forensics needs the command-line tools its instructions call (git and python3). Our summary lists: Python 3. Its frontmatter pre-approves these tools: Bash(*), Read, Write, Grep, Glob, mcp__codex__codex.

Does Integrity Forensics access the network?

SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Integrity Forensics safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Integrity Forensics use?

Integrity Forensics is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Integrity Forensics use?

About 4.2k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Integrity Forensics?

Skills that share tags, products or a category with Integrity Forensics: Paper Planning (EvoScientist/EvoSkills, 478 stars), Autodecision (harshilmathur/autodecision, 102 stars), Scholarpeer Econ (franklee16/academic-research-skills, 223 stars) and Deli Autoresearch (rongxinzy/RongxinAI, 154 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Integrity Forensics?

wanshuiyin (a GitHub user) maintains it in wanshuiyin/Auto-claude-code-research-in-sleep, which has 17,205 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on October 7, 2026.

Source: wanshuiyin/Auto-claude-code-research-in-sleep on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.