Brief Compliance Check
flonat/flonat-research
Check a LaTeX coursework submission against the requirements in a supplied PDF assessment brief.
Pre-submission CS-conference LaTeX paper editing and adversarial review.
$ npx skills add Spark-To-Paper-Skills/paperjury-codex --skill paperjury -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Spark-To-Paper-Skills/paperjury-codex paperjury --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
Claude Code skills documentation · loads skills from .claude/skills/
Install the "paperjury" agent skill from https://github.com/Spark-To-Paper-Skills/paperjury-codex/tree/main into .claude/skills/paperjury/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paperjury", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Spark-To-Paper-Skills/paperjury-codex --skill paperjury -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Spark-To-Paper-Skills/paperjury-codex paperjury --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "paperjury" agent skill from https://github.com/Spark-To-Paper-Skills/paperjury-codex/tree/main into .agents/skills/paperjury/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paperjury", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Spark-To-Paper-Skills/paperjury-codex --skill paperjury -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Spark-To-Paper-Skills/paperjury-codex paperjury --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "paperjury" agent skill from https://github.com/Spark-To-Paper-Skills/paperjury-codex/tree/main into .cursor/skills/paperjury/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paperjury", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Spark-To-Paper-Skills/paperjury-codex --skill paperjury -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Spark-To-Paper-Skills/paperjury-codex paperjury --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "paperjury" agent skill from https://github.com/Spark-To-Paper-Skills/paperjury-codex/tree/main into .gemini/skills/paperjury/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paperjury", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Spark-To-Paper-Skills/paperjury-codex paperjuryInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Spark-To-Paper-Skills/paperjury-codex --skill paperjury -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "paperjury" agent skill from https://github.com/Spark-To-Paper-Skills/paperjury-codex/tree/main into .github/skills/paperjury/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paperjury", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Spark-To-Paper-Skills/paperjury-codex --skill paperjury -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Spark-To-Paper-Skills/paperjury-codex paperjury --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "paperjury" agent skill from https://github.com/Spark-To-Paper-Skills/paperjury-codex/tree/main into .opencode/skills/paperjury/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paperjury", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
paperjuryPre-submission CS-conference LaTeX paper editing and adversarial review.
Paperjury is an agent skill from Spark-To-Paper-Skills/paperjury-codex. Pre-submission CS-conference LaTeX paper editing and adversarial review. Use for direct edits such as polish, de-AI, translating Chinese notes to LaTeX, compressing passages, captions, and experiment prose; for review or critique requests such as review, mock-review, 审稿, 评审; and for explicit auto or goal-driven review-revise loops. Runs deterministic Node guards, a durable ledger, isolated reviewer and juror fan-out, author sign-off, and compile or compliance checks. Not for writing a paper from scratch, figure…
Its SKILL.md is about 4.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 73 other files, including scripts and reference files (for example `.agents/plugins/marketplace.json`, `.github/ISSUE_TEMPLATE/bug_report.yml` and `.github/ISSUE_TEMPLATE/config.yml`).
It sits in Documents & Office, covering LaTeX, Translation and Regulatory compliance. It works with LaTeX. The repository describes itself as: Codex-first port of PaperJury, a pre-submission CS paper review and editing skill. The licence is MIT.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 6383d0c. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/, which the agent can run.
Shell commands in SKILL.md call:
nodeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Paperjury loads about 4.4k tokens when it runs, and up to ~20k if it reads all its reference files. Until then it costs about 140 tokens; SKILL.md has 2,253 words of instructions outside code blocks.
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.
The automated check found no risky patterns in SKILL.md.
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); the scripts in this folder are not scanned.
The full file from Spark-To-Paper-Skills/paperjury-codex at commit 6383d0c, republished under its MIT licence (© Spark-To-Paper-Skills). 2,253 words, ~4,360 tokens.
.claude/skills/paperjury/SKILL.md (or your agent's skills folder). This skill also uses 67 other files; get the full folder from GitHub.PaperJury edits and hardens any CS-conference paper. It runs in
three modes. In direct-edit mode (the common case) the user describes a change
in Chinese or English and the LaTeX is edited directly through a CS-venue writing
toolkit, with author sign-off. In review mode (occasional, pre-submission) it
exposes the manuscript to a harsh, multi-perspective courtroom review engine that
adjudicates each issue (N holistic domain reviewers -> contestability routing ->
two-sided trial -> three-way verdict, with a polish track and a clerk-converged
multi-round loop), gates every change behind consensus, and tracks issues in a durable
ledger. In auto mode (unattended, opt-in via /goal) it runs that same engine
toward a verifiable goal, applying safe fixes under a drift-bounded policy and
queueing the risky ones for one human pass on return. All modes share the same
writing toolkit, hard rules, ledger, and author sign-off (auto via up-front policy
sign-off plus the queue, see hard rule 1).
This skill is fully generic. It ships no hardcoded paths, no project files, and no embedded paper. Everything specific to a given paper (where the manuscript is, the venue, who signs off, the house style) is resolved at runtime or supplied by a config the project owns. The skill itself is the backbone; any concrete paper is just an instantiation of it.
Scope: CS conferences only. Three venue families, each with its own style profile:
This repository is the Codex-first PaperJury port. Read codex/runtime.md
before running review or auto, then use codex/phase-contracts.md for phase
inputs, outputs, isolation, and validation. Run deterministic guards with
node scripts/*.js, and run semantic fan-out via Codex subagents only when the
user has explicitly authorized multi-agent work.
Soft update reminder: at the start of each PaperJury invocation, before choosing
the mode or editing a manuscript, run node scripts/check-update.js from the
skill root unless PAPERJURY_DISABLE_UPDATE_CHECK=1 is set. If it reports an
available update, show the notice once and continue. If the check is skipped,
silent, or cannot reach GitHub, continue without mentioning it; update checks are
never allowed to block review or editing.
If host capabilities conflict with this file, keep the scientific invariants: author sign-off, reviewer isolation, no silent drops, a machine ledger, and honest degradation when a check cannot be verified.
Three modes, one skill. Pick by what the user is asking for:
references/review-engine-v3.md)./goal (or config mode: auto)
to run the review-revise loop AFK toward a verifiable goal. Establish the spine
up front (the one human step), then the engine applies safe fixes under the
bounded-aggressive policy and queues the rest. See references/auto-mode.md.
Never self-detect auto; it is explicit only.Do NOT use for: writing a paper from scratch (use ml-paper-writing), figure or
diagram generation (use academic-plotting), or an official-venue rebuttal (this
is a pre-submission self-hardening loop, no score gate).
This paradigm is expressed as Skill + Semantic Fan-Out + Memory. Each carries one concern; together they replace the heavy per-round file-and-flag machinery a hand-rolled version accumulates.
references/review-engine-v3.md, references/reviewer-personas.md,
references/writing-toolkit.md.assign-reviewers -> reading-check -> coverage-auditor -> merge ->
{trial (+ escalate) || polish} -> recall-audit -> drafter ->
{edit-audit | meaning-audit} -> clerk. Protocol + every orchestrator seam:
references/review-engine-v3.md; Codex runtime mapping:
codex/runtime.md; Codex-native phase contracts:
codex/phase-contracts.md.LEDGER.json resolved at runtime = the machine source of truth,
plus a rendered LEDGER.md view; managed by scripts/ledger.js): the live,
mutable issue state across rounds and sessions. Schema + status state machine:
references/ledger-schema.md..paper-review/CONVENTIONS.md or the host's
native project memory. Do not store transient issue state outside the ledger.The skill ships ZERO hardcoded paths or project files. On trigger it resolves each input by discovery first, then asking:
.tex with \documentclass /
\begin{document}, or the file the user names). If several candidates, ask.<manuscript-dir>/.paper-review/LEDGER.json (the machine
source of truth; scripts/ledger.js also renders a LEDGER.md view). Create if
absent, reuse if present. The user may point elsewhere.assign-reviewers, from the project gatekeeper core + a generated domain overlay);
the three generic lenses in references/reviewer-personas.md are the degrade
fallback. If the project defines its own named reviewer subagents, use them as
agentType; otherwise inline the persona prompts.A project MAY pin these by dropping a config in ITS OWN repo (see
configs/config-template.md for the shape). That file is owned by the project,
never by this skill. At round start, recall any pinned conventions from memory.
The user states a change in Chinese or English; you draft and apply the LaTeX edit. No panel, no ledger, no discussion. Minimal flow:
translate-to-english for a Chinese idea, polish-english / de-ai for a
rewrite, compress / expand for length, caption / experiment-analysis
for those units) and draft the LaTeX patch to do exactly what was asked. The
Common guards apply (LaTeX-safe, plain CS prose, no log leakage into the .tex).logic-check on the drafted passage.This is the writing toolkit used on its own. Escalate to review mode only when the user wants the paper critiqued or hardened, not for a single asked-for edit.
The reviewer panel and the trial jury are pure fan-out: spawn, collect, merge. Codex uses subagents when the user has explicitly authorized parallel agent work. Each reviewer or juror gets only the quoted manuscript context and a strict JSON contract; no peer report, ledger, prior round, or project file path is included in the prompt.
But the loop has genuine human gates (the author reviews the issue list, gives per-issue direction, authorizes edits, breaks ties). Fan-out phases run to completion and return a result; they do not pause mid-run for hours of human input. So:
The full adversarial loop (the v3 courtroom engine). Use it to harden the paper,
not for a single asked-for edit (that is direct-edit mode). Full protocol + the
14 orchestrator seams: references/review-engine-v3.md. [SF] = semantic
fan-out step using Codex subagents per codex/runtime.md and
codex/phase-contracts.md; [det] = deterministic Node guard run
orchestrator-side between semantic steps; [HUMAN] = author gate; [LEDGER] =
state write.
full (whole paper) or passage (one section / para / claim).[det] decompose. Split the manuscript into reading units + stable
passage_ids + the canonical section list.[SF] assign-reviewers + [HUMAN] confirm. Name N subfields (2-4,
default 3); instantiate N holistic domain reviewers from the gatekeeper core + a
generated overlay. An unconfirmable slot degrades per slot to a generic gatekeeper
(the three generic lenses in reviewer-personas.md are the fallback). The author
confirms the assignment (or pins it via config).[SF] reading-check. Each reviewer reads the WHOLE paper → weaknesses
{significance(major|minor), kind(mechanical|substantive), verbatim quote —
cannot quote = did not read} + one overall_confidence + a per-section coverage
report. Anti-skim is three layers: [det] per-section quote-verify, [SF]
coverage-auditor, [SF] targeted re-invoke.[SF] merge. Semantic dedup across reviewers; derive significance (MAX) /
kind (substantive-dominates) / corroboration. [LEDGER] intake as raised.[det] route. mechanical → polish; substantive&minor → polish;
substantive&major → trial (two parallel tracks).[SF] trial. Per substantive-major charge: a whole-paper DEFENSE → 5
decorrelated local-context jurors (+ on-demand expansion) → a deterministic verdict
(decide iff quorum surviving >= ceil(0.8*jurySize) AND one side > 60% of
surviving votes; else escalate to 12). Verdict ∈ {invalid-drop, valid-fixable,
author-required, escalate}; the judge sets a close_criterion ONLY for a
valid-fixable charge, satisfiable by editing existing text (no new data). [SF]
polish runs the off-gate mechanical/minor track in parallel (never silently dropped).[SF] recall-audit. Mode A revives wrongly-dropped charges; Mode B spot-checks
strong-consensus majors BEFORE the edit. Runs before the drafter.[HUMAN] Authorize + [SF] drafter + edit-safety. On authorization, the
drafter writes the minimal patch per surviving valid-fixable. The edit-safety chain
gates it: [det] anchor-diff + cross-ref → [SF] meaning-audit (frozen anchor,
four-state) / edit-audit (risky non-anchor); [det] apply-patch + compile-guard land
a passing patch and [LEDGER] mark closed; a drift / anchor / failed edit is
reverted and queued. Revision logs / back-translations stay author-side.[SF] clerk + report. The clerk reconciles the round boundary (carried
open-questions vs this round's edits, via a passage_id + similarity merge key) and
emits convergence counts. Summarize new/closed counts; in review mode do not
auto-start the next round (auto mode drives the outer loop via /goal).GATE: node scripts/ledger.js gate = 0 gate-blocking active major (gate-blocking =
{raised, in-trial, re-trial, valid-fixable}; author-required / queued / dropped /
closed are gate-OK and author-required accumulates to the queue). Full protocol +
ledger schema + status machine: references/review-engine-v3.md,
references/ledger-schema.md. The single-pass 3-reviewer panel is available as
the review-panel fast path in codex/phase-contracts.md.
close_criterion (one concrete sentence an
edit must satisfy), set by the judge at trial; it is null at intake.LEDGER.json for open issues.The quick panel can run in stronger or cheaper forms using the review-panel
fast path in codex/phase-contracts.md:
dryStop consecutive passes that add no
surviving issue (hard cap maxRounds). Raises recall past a single pass.Toggle via args: thorough mode -> defaults (maxRounds 4, dryStop 2,
verify true); light mode -> pass {maxRounds:1, verify:false} for the basic
single-panel form. The loop is budget-aware and stops early if the token budget
runs low. Codex treats intensity as an ordinary runtime setting, not as a
separate launch keyword.
Built: the review engine; the submission-readiness checker (deterministic desk-reject screening plus a real LaTeX compile, degrading to a structural lint when no toolchain is present); and auto mode (the review-revise loop toward a goal under a drift-bounded policy, applying safe fixes and queueing risky ones for author review). Roadmap: vision-based layout verification, automatic venue detection from the class file, and reviewer personas tuned to each venue community.
ml-paper-writing: from-scratch drafting, citation verification (never
hallucinate citations), conference checklists. This loop borrows its
sentence-level guidance for the edit-drafting step rather than duplicating it.academic-plotting: figure and architecture-diagram generation (out of scope
here; this loop edits text and captions, not figure images).© Spark-To-Paper-Skills, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 67 other files (scripts, references) in the repository root of Spark-To-Paper-Skills/paperjury-codex.
Open the folder on GitHubat commit 6383d0c
Paperjury 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Paperjury this skillSpark-To-Paper-Skills/paperjury-codex | 223 | — | ~4.4k | Automated safety check: Pass | MIT | |
| Brief Compliance Checkflonat/flonat-research | 146 | — | ~1.7k | Automated safety check: Pass | MIT | |
| Review RevisionM1n-n9/paper-lifecycle | 693 | — | ~2.3k | Automated safety check: Pass | None | |
| Typst Paperbahayonghang/academic-writing-skills | 500 | — | ~3.6k | Automated safety check: Pass | None | |
| Sci PptShZhao27208/Aut_Sci_Write | 209 | — | ~757 | Automated safety check: Pass | MIT | |
| Academic Paperbrycewang-stanford/Auto-Empirical-Research-Skills | 4.6k | — | ~7.3k | Automated safety check: Pass | Custom licence |
flonat/flonat-research
Check a LaTeX coursework submission against the requirements in a supplied PDF assessment brief.
M1n-n9/paper-lifecycle
Review and revise academic papers with a senior-reviewer workflow.
bahayonghang/academic-writing-skills
Typst paper assistant for existing .typ manuscripts in English or Chinese.
ShZhao27208/Aut_Sci_Write
Generate professional academic PowerPoint (PPTX) presentations from paper PDFs, structured outlines, or plain text.
brycewang-stanford/Auto-Empirical-Research-Skills
Academic paper writing skill with 12-agent pipeline. An agent skill from brycewang-stanford/Auto-Empirical-Research-Skills.
wentorai/research-plugins
Translate LaTeX documents preserving math formulas and structure
Spark-To-Paper-Skills/paperjury-codex
Pre-submission CS-conference LaTeX paper editing and adversarial review.
Works with
Categories
Pre-submission CS-conference LaTeX paper editing and adversarial review. Paperjury is an agent skill from Spark-To-Paper-Skills/paperjury-codex. Pre-submission CS-conference LaTeX paper editing and adversarial review.
Paperjury fits situations like: direct edits such as polish; translating Chinese notes to LaTeX; compressing passages; experiment prose.
Run `npx skills add Spark-To-Paper-Skills/paperjury-codex --skill paperjury -a claude-code`. Or copy the skill folder (the Spark-To-Paper-Skills/paperjury-codex repository) into .claude/skills/paperjury in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Spark-To-Paper-Skills/paperjury-codex --skill paperjury -a codex`. Or copy the skill folder (the Spark-To-Paper-Skills/paperjury-codex repository) into .agents/skills/paperjury in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Spark-To-Paper-Skills/paperjury-codex --skill paperjury -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/paperjury, .gemini/skills/paperjury, .github/skills/paperjury and .opencode/skills/paperjury in your project.
Going by SKILL.md and its folder, Paperjury needs the command-line tools its instructions call (node).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Paperjury is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.4k 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. Its references folder adds about 15k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Paperjury: Brief Compliance Check (flonat/flonat-research, 146 stars), Review Revision (M1n-n9/paper-lifecycle, 693 stars), Typst Paper (bahayonghang/academic-writing-skills, 500 stars) and Sci Ppt (ShZhao27208/Aut_Sci_Write, 209 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Spark-To-Paper-Skills (a GitHub organization) maintains it in Spark-To-Paper-Skills/paperjury-codex, which has 223 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on August 9, 2026.
Source: Spark-To-Paper-Skills/paperjury-codex on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.