CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

integrity-forensics

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 gate (BLOCK/WARN/NO_NEW_BLOCKER) and an append-only obligations ledger. Codex-native limitation: upstream ships no Codex-native auditor pack, so the full nine-dimension semantic sweep requires a Claude Code session — this pack runs the honestly-scoped deterministic-only mode (it can flag, it can never say CLEAN). Use when user says "integrity forensics", "forensic audit this paper", "投稿前自查诚信".

Quality

87%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

77%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a dense, disciplined launcher workflow with genuinely strong validation and error-handling structure (workflow_clarity is excellent), but it is held back by a dangling reference to shared-references/integration-contract.md that does not exist in the bundle, an undefined $PAPER_DIR, and inline policy detail that should be split into reference files. Repetition of the deterministic-only caveat also costs a little token efficiency.

Suggestions

Ship or inline the GATE_HELPER resolution: the body's only pointer is 'shared-references/integration-contract.md §2, Policy A', which does not exist in this bundle — either include that file in references/ or replace the pointer with the actual resolution command(s).

Derive $PAPER_DIR explicitly from $ARGUMENTS (paper-dir | pdf | arxiv-id) in Step 1 or Step 2 so the gate command is executable as written.

Move the Step 2 gate-policy semantics and the Step 3 obligations discipline into a short reference file, keeping SKILL.md as the overview, and state the deterministic-only/'never CLEAN' scope once instead of three times.

DimensionReasoningScore

Conciseness

The body is token-lean with no explanation of concepts Claude already knows, but carries repeated statements: the deterministic-only/'never CLEAN' scope appears in the intro blockquote, Step 1's expected outcome, and Step 2's policy; 'NO REVIEWER KNOBS' is stated twice. Not 5: these redundancies and the over-nested Step 2 policy sentence ('exit 0 ⟺ produced at the current pin ∧ gate exists ∧ paper unchanged since ∧ gate matches the current ledger ∧ decision pass-capable') could be trimmed without loss; not 3: the padding is minor — most content is dense, non-generic, and earns its place.

4 / 5

Actionability

Step 0 is fully copy-paste-ready bash with error handling, and Step 2's gate command is concrete. Not 5: two variables are unresolvable from this bundle — $GATE_HELPER is resolved 'via the canonical helper chain (shared-references/integration-contract.md §2, Policy A)', a file that does not exist in this skill's bundle, and $PAPER_DIR is never derived from $ARGUMENTS; Step 1 delegates to an upstream SKILL.md path rather than giving commands. Not 3: the majority of guidance is genuinely executable, and the gaps are specific and minor rather than pseudocode.

4 / 5

Workflow Clarity

A clearly sequenced Step 0→3 workflow with explicit validation checkpoints: pristine-tree verification ('FATAL: tree not pristine'), the upstream eval gate ('refusing an unvalidated pin'), the out-of-tree marker, FATAL-exit feedback loops on every failure, the `fresh` preflight with defined exit-0 semantics, and tamper protections ('Any ledger mutation deletes the standing gate.json', 'refuses a report older than any paper file'). This matches the anchor-5 pattern of sequence + validation + error-recovery loops, and the destructive git reset/clean steps are validated.

5 / 5

Progressive Disclosure

The bundle has no references/, scripts/, or assets/ directories, yet the body cites 'shared-references/integration-contract.md §2, Policy A' — a dangling, unverifiable reference — and inlines dense policy material (the multi-clause Step 2 gate policy and Step 3 obligations discipline) that belongs in a reference file. Not 4: organization gaps are more than minor because a key navigation target is missing from the bundle entirely; not 2: the body does have clear section structure (Constants, Steps 0–3) and the upstream SKILL.md delegation is one level deep and clearly signaled.

3 / 5

Total

16

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: concrete, third-person, explicitly scoped (including an honest statement of what the mode cannot conclude), with an explicit 'Use when' clause containing natural and multilingual trigger phrases. The only weakness is moderate trigger-synonym coverage (no pdf/arxiv/research-integrity variants).

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — 'Run the ... DETERMINISTIC slice (numeric core + rules-only reporter) against a paper via a SHA-pinned thin launcher', 'convert the verdict into a typed policy gate (BLOCK/WARN/NO_NEW_BLOCKER)', 'an append-only obligations ledger' — with comprehensive coverage of the skill's scope, including the explicit boundary 'it can flag, it can never say CLEAN'. Not 4: coverage is comprehensive across run/gate/ledger phases, not leaving minor gaps.

5 / 5

Completeness

It explicitly answers both: what ('Run ... deterministic slice ... then convert the verdict into a typed policy gate ... and an append-only obligations ledger') and when ('Use when user says "integrity forensics", "forensic audit this paper", "投稿前自查诚信"') with concrete trigger phrases. This matches the anchor-5 example structure exactly; the 'when' clause is explicit, so the ≤3 cap for a missing trigger clause does not apply.

5 / 5

Trigger Term Quality

Explicit triggers are given ('integrity forensics', 'forensic audit this paper', '投稿前自查诚信') — good, natural, and even multilingual — but common synonyms such as 'research integrity check', 'audit my paper', 'statcheck', or file/argument triggers (pdf, arxiv-id) are missing. Not 5: anchor 5 requires comprehensive synonym and file-extension coverage, which this lacks; not 3: the included terms are natural phrases users would actually say, not generic keywords.

4 / 5

Distinctiveness Conflict Risk

A clear niche (paper research-integrity forensics against a named upstream repo, Anti-Autoresearch) with distinct trigger phrases and minimal overlap risk; it even disambiguates itself from the sibling 'mainline' Claude-Code pack by scoping to 'deterministic-only mode'. Not 4: there is no meaningful overlap with other skills — the niche is uniquely identifiable.

5 / 5

Total

19

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

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

Path

skills/skills-codex/integrity-forensics/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.