Agent skill

Paper Review

by eunomia-bpf in eunomia-bpf/ActPlane

Review and fix academic writing in a LaTeX paper section. An agent skill from eunomia-bpf/ActPlane.

MITAuto-check passedDocuments & Office

Install Paper Review

skills CLI
$ npx skills add eunomia-bpf/ActPlane --skill paper-review -a claude-code

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

GitHub CLI
$ gh skill install eunomia-bpf/ActPlane paper-review --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/eunomia-bpf/ActPlane.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/paper-review .claude/skills/paper-review && 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
paper-review
GitHub stars
104
Token cost
~3.8k tokens
SKILL.md length
1,963 words
Files
1
Skills in repo
2
Repo updated
First seen
Licence
MIT

At a glance

Review and fix academic writing in a LaTeX paper section. An agent skill from eunomia-bpf/ActPlane.

  • Works in 6 steps: Read the entire file → Check terminology consistency (Section T… → For each paragraph, analyze every… → …
  • Tasks that involve Peer review
  • SKILL.md covers Review process, Critical rules (for fixes), Section T: Terminology… and Sentence-level antipatterns, plus 5 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Paper Review is an agent skill from eunomia-bpf/ActPlane. Review and fix academic writing in a LaTeX paper section. Checks sentence-level antipatterns, terminology consistency, and systems-paper conventions.

Its SKILL.md is about 3.8k 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 Documents & Office, covering Peer review, LaTeX and Scientific writing. It works with LaTeX. The repository describes itself as: eBPF Information Flow Enforcement for AI Agent safety, security and effectiveness. The licence is MIT.

When your agent uses it

  • Tasks that involve Peer review
  • Tasks that involve LaTeX
  • Tasks that involve Scientific writing

Example prompts

  • “/paper-review”

Requirements

  • Pre-approved tools (allowed-tools): Read, Edit, Bash(grep *), Bash(wc *)

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Read the entire file
  2. Check terminology consistency (Section T below) FIRST
  3. For each paragraph, analyze every sentence against the checklist below
  4. Report issues grouped by severity: Must fix (clarity/logic errors), Should fix (antipatterns), Consider (style preferences)
  5. For each issue, give the line number, quote the problematic text, explain the problem, and suggest a concrete rewrite
  6. Ask user which fixes to apply, then use Edit tool

What it can do on your machine

Read from SKILL.md and the folder at commit 4045428. 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:

    • Read
    • Edit
    • Bash(grep *)
    • Bash(wc *)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).

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

  • Network

    No URLs in SKILL.md.

    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

Paper Review loads about 3.8k tokens when it runs. Until then it costs about 41 tokens; SKILL.md has 1,963 words of instructions outside code blocks.

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

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 passed

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); files beside SKILL.md are not scanned.

SKILL.md

The full file from eunomia-bpf/ActPlane at commit 4045428, republished under its MIT licence (© eunomia-bpf). 1,963 words, ~3,756 tokens.

Download SKILL.mdSave it as .claude/skills/paper-review/SKILL.md (or your agent's skills folder).
name
paper-review
description
Review and fix academic writing in a LaTeX paper section. Checks sentence-level antipatterns, terminology consistency, and systems-paper conventions.
allowed-tools
Read, Edit, Bash(grep *), Bash(wc *)
when_to_use
Review paper writing, fix academic prose, check terminology consistency, find writing antipatterns
argument-hint
section-file-path

Academic Paper Writing Review & Fix

Review the LaTeX file at $ARGUMENTS sentence by sentence for academic writing quality. If no argument is given, ask which section to review.

Review process

  1. Read the entire file
  2. Check terminology consistency (Section T below) FIRST
  3. For each paragraph, analyze every sentence against the checklist below
  4. Report issues grouped by severity: Must fix (clarity/logic errors), Should fix (antipatterns), Consider (style preferences)
  5. For each issue, give the line number, quote the problematic text, explain the problem, and suggest a concrete rewrite
  6. Ask user which fixes to apply, then use Edit tool

Critical rules (for fixes)

  • NEVER delete design decisions or technical content. Compression means better prose, not less information.
  • NEVER change the meaning of a sentence. If unsure, ask.
  • NEVER remove a scope-bearing hedge (suggest ... on the selected subset, in our setting, up to): it protects the claim from outrunning its evidence (/paper-logic A4/A5). Only collapse stacked hedges down to one.
  • Always diff-check after multiple edits to ensure no content was lost.
  • No em-dashes (---) in paper text. Table --- for N/A is fine.
  • No semicolons joining independent clauses. Use periods, conjunctions, or causal connectors.
  • Why before what: every design decision states its motivation first.
  • Example before abstraction: show a concrete case, then generalize.

Section T: Terminology Consistency (NEW - check FIRST)

Terminology drift confuses readers more than awkward prose. Run these checks before sentence-level review.

T1: Same concept, same term

Grep for near-synonyms. If the same concept uses multiple terms, unify to one.

bash
grep -oE '(policy|rule|constraint|directive)' file.tex | sort | uniq -c

Common drift pairs to check:

  • policy / rule / constraint / directive
  • harness / runtime / framework
  • enforce / check / validate / verify
  • block / deny / prevent / reject
T2: Compound adjective hyphenation

Compound adjectives before nouns need hyphens; standalone uses do not.

ContextCorrectWrong
Before nountool-call guardrailstool call guardrails
After verboperates at the OS leveloperates at the OS-level
Before nouncross-event policycross event policy

Check common compounds:

bash
grep -oE '(tool|cross|per|intent|system|application|kernel)[- ](call|event|level)' file.tex | sort | uniq -c
T3: Redundant *-level qualifiers

Many *-level compounds are redundant. Check if removing -level loses meaning:

Often redundantUsually needed
system-level (just "system")OS-level (vs tool-level)
kernel-level (just "kernel")intent-level (vs syscall-level)
application-level (just "application")enforcement-level (classification)

Test: "system actions" vs "system-level actions" — if both mean the same, drop -level.

T4: Capitalization consistency

Check proper nouns and acronyms:

bash
grep -oE '(eBPF|EBPF|ebpf|BPF)' file.tex | sort | uniq -c

Common issues:

  • eBPF (not EBPF, ebpf)
  • GitHub (not Github, github)
  • macOS (not MacOS, macos)
T5: Spelling variants

Pick one and stick to it:

  • runtime vs run-time
  • pre-defined vs predefined
  • sub-agent vs subagent

Sentence-level antipatterns

Semicolons joining independent clauses

Semicolons that join two independent clauses should be rewritten as:

  • Two sentences (period)
  • One sentence with a conjunction (", and", ", but", ", so")
  • One sentence with a causal connector ("because", "since", "therefore") Semicolons ARE acceptable inside parenthetical lists.

Bad: The engine propagates labels; rules fire at each event. Good: The engine propagates labels, and rules fire at each event. Good: Because the engine propagates labels, rules fire at each event.

Note-like prose (short declarative sentences strung together)

Academic prose uses causal connectors, subordinate clauses, and flowing sentences. Short declarative sentences read like bullet points, not a paper.

Bad: Labels propagate at fork. The child inherits the parent mask. Rules check the mask at each event. Good: Labels propagate at fork, so the child inherits the parent mask and rules can check it at each event.

Tie-breaker: this rule targets runs of three or more short declaratives. A pair of sentences produced by splitting an overlong sentence (e.g., to fix subject-verb separation) is fine — do not re-merge it.

Missing "why" before "what"

Every design decision must explain its motivation before describing the mechanism. Readers need to understand the problem before the solution.

Bad: We use monotonic labels. Labels are never removed once added. Good: To ensure no history is lost across the session, labels are monotonic: propagation adds labels but never removes them.

Em-dashes (---)

Never use em-dashes in paper text. Use commas, parentheses, semicolons (in lists), or restructure the sentence. Table cells using --- for "not applicable" are acceptable.

Colons before non-lists

Colons may introduce lists, definitions, and elaborations of the claim just made (labels are monotonic: propagation adds labels but never removes them). Avoid colons that splice two clauses with no claim-elaboration relationship.

Bad: The engine uses eBPF: the verifier imposes a stack limit. (the second clause does not elaborate the first; use "so" or two sentences) Good: The engine has three effects: notify (observe only), block (pre-operation denial), and kill (process termination). Good: Labels are monotonic: propagation adds labels but never removes them.

Word-level antipatterns

AntipatternFix
"in order to""to"
"utilize" / "utilization""use"
"it is important to note that"delete or rephrase
"it should be noted that"delete or rephrase
"there is/are ... that"rewrite with real subject
"due to the fact that""because"
"a number of""several" or the actual count
"in the case of""for" or "when"
"is able to""can"
"has the ability to""can"
"prior to""before"
"subsequent to""after"
"with respect to""for" or "about"
"in terms of"rephrase directly
"the fact that"delete or use "that"

Sentence structure antipatterns

Weak openings

Avoid starting sentences with "It is", "There is/are", "This is". Use a concrete subject.

Bad: There are three hooks that the engine attaches to. Good: The engine attaches to three hooks.

Subject-verb separation (Gopen & Swan)

Keep the grammatical subject within 7 words of its verb. Long intervening clauses force the reader to hold the subject in memory.

Bad: The protocol, which was developed over three years by a distributed team working across four time zones, handles failover. Good: The protocol handles failover. A distributed team developed it over three years across four time zones.

Topic position / stress position (Gopen & Swan)

Put old/known information at the sentence start (backward link). Put the new, emphatic information at the sentence end (stress position).

Bad: A 40\% reduction in latency results from label caching. Good: Label caching reduces latency by 40\%.

Dangling modifiers

The modifier must attach to the grammatical subject.

Bad: Using eBPF, the policy is enforced at the kernel level. Good: Using eBPF, the engine enforces the policy at the kernel level.

Passive voice (when the agent matters)

Passive is fine for methodology when the actor is obvious and irrelevant ("traces were collected"), but use active voice when the actor matters for understanding.

Bad: Labels are propagated by the engine at each system event. Good: The engine propagates labels at each system event.

Exception: verification and judgment steps ("samples were verified", "results were reviewed") must name the actor and criterion even in methodology — an agentless verification claim is unfalsifiable (see /paper-logic C6).

Nominalizations (turning verbs into nouns)

Use the verb form when possible. "make assumption" -> "assume"; "perform analysis" -> "analyze"; "is a requirement" -> "requires".

Bad: The propagation of labels occurs at fork events. Good: Labels propagate at fork events.

Redundant hedging

One hedge per claim is enough. Remove stacked hedges. Do not hedge your own measurements or established facts.

Bad: This may potentially suggest that the overhead could possibly be acceptable. Good: This suggests the overhead is acceptable.

Protected hedges — never remove: a hedge that carries claim scope (suggest ... on the 12 selected workloads, in our setting, up to) is protecting the claim from outrunning its evidence. Removing it creates a logic error worse than the wordiness (see /paper-logic A4/A5). Remove the stack, keep one scope-bearing hedge.

Show full SKILL.md (753 more words)Show less
Vague referents

"This", "it", "they" must have an unambiguous antecedent. If unclear, name the referent.

Bad: The engine checks labels and fires rules. This improves compliance. Good: The engine checks labels and fires rules. This label-checking mechanism improves compliance.

Unnecessary adverbs

Cut "very", "extremely", "basically", "actually", "really", "significantly" unless they carry measurable meaning. Replace vague intensifiers with numbers.

Bad: significantly reduces latency Good: reduces latency by 40\%

Excessive parentheticals

Max two parenthetical remarks per page. If a parenthetical carries important information, promote it to the main text or cut it.

Paragraph-level checks

  1. Topic sentence: Does the first sentence state the paragraph's claim?
  2. One idea per paragraph: Does the paragraph contain exactly one main point?
  3. Old-to-new thread: Each sentence should begin with something the reader already knows and end with the new point. Violations cause "garden path" confusion.
  4. Logical connectors: Are paragraphs linked by transitions that show the relationship (contrast, consequence, elaboration)?
  5. No redundancy across paragraphs: Is the same fact stated in multiple places? "In other words" signals you should rewrite the first version, not add a second.

Systems paper conventions (Levin & Redell, SPJ, Irene Zhang)

  1. Concrete before abstract: Show an example, then generalize. "Once the reader has the intuition, they can follow the details." (SPJ)
  2. Numbers are claims: Every number needs a source (measurement, citation, or derivation). Always state: repetitions, duration, object sizes, hardware.
  3. Consistent terminology: The same concept uses the same term throughout (don't alternate between "policy", "rule", "constraint" for the same thing)
  4. Forward references earn their keep: Only forward-reference if the reader needs the promise to follow the current paragraph
  5. Declare system status upfront: Do not bury "this is a simulation" or "this is future work" at the end (Levin & Redell)
  6. Evaluation isolates decisions: Include breakdown experiments showing each design choice's contribution, not just end-to-end comparisons (Irene Zhang)
  7. Cite by author: "Smith et al. [1] showed" not "[1] shows". Place citation near the name.

Quick self-edit pass (apply to every sentence)

  1. Can I delete the first word/phrase without losing meaning? ("It is", "There are", "Note that")
  2. Is a verb hidden inside a noun? Undo the nominalization.
  3. Is the subject more than 7 words from its verb? Restructure.
  4. Does the sentence end on the most important new information?
  5. Does the sentence start with something the reader already knows?
  6. Is an adverb doing the work a number should do?
  7. Am I hedging my own result? Remove the hedge.
  8. Is this passive? Can I name the actor?

Fix priority (apply in this order)

Priority 1: Logic and clarity
  • Missing motivation for design decisions (add "why" before "what")
  • Vague referents ("this", "it" with unclear antecedent)
  • Dangling modifiers
  • Incorrect or misleading claims
Priority 2: Sentence structure
  • Semicolons joining independent clauses -> rewrite with connectors
  • Note-like short declarative sentences -> merge with causal connectors
  • Weak "There is/It is" openings -> concrete subjects
  • Passive voice where actor matters -> active voice
  • Nominalizations -> verb forms
Priority 3: Word choice
  • "in order to" -> "to"
  • "utilize" -> "use"
  • "due to the fact that" -> "because"
  • "is able to" -> "can"
  • Other verbose phrases (see word-level antipatterns table)
Priority 4: Punctuation
  • Colons before non-lists -> restructure
  • Em-dashes -> commas, parentheses, or restructured sentences

Rewrite patterns

Semicolons -> flowing prose

When replacing semicolons, don't just swap punctuation. Rewrite the sentence to flow:

Before: Labels propagate at fork; the child inherits the parent mask. After: Labels propagate at fork, so the child inherits the parent mask.

Choose the connector based on the logical relationship:

  • Cause/effect: "because", "since", "so", "therefore"
  • Addition: ", and"
  • Contrast: ", but", "however," (new sentence), "although"
  • Elaboration: restructure as a relative clause or appositive
Note-like -> academic prose

Before: The DSL has three components. Sources identify objects. Targets are operations. Effects decide outcomes. After: Each rule in the DSL encodes three components: a source identifies which objects the rule applies to, a target names the operation being constrained, and an effect determines whether the engine blocks, kills, or notifies.

Missing why

Before: Labels are monotonic. After: To ensure no history is lost across the session, labels are monotonic.

Vague referent

Before: The engine checks labels and propagates them. This improves safety. After: The engine checks and propagates labels. This monotonic tracking improves safety.

Output format

For each issue found:

L<line>: "<quoted text>"
  Problem: <what's wrong>
  Fix: "<suggested rewrite>"

End with a summary: total issues by severity, and the top 3 most impactful changes.

After reporting, ask: "Apply fixes? [all / select / none]"

After all fixes, provide:

  • Number of sentences changed
  • Categories of changes made
  • Any sentences you flagged but did NOT change (and why)

© eunomia-bpf, 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 .claude/skills/paper-review of eunomia-bpf/ActPlane.

Open the folder on GitHubat commit 4045428

Compare with similar skills

Paper Review 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.

Paper Review compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Paper Review this skilleunomia-bpf/ActPlane104—~3.8kAutomated safety check: PassMIT
PaperjurySpark-To-Paper-Skills/paperjury1.2k—~5.3kAutomated safety check: PassMIT
Academic Paper Writing PipelineImbad0202/academic-research-skills51k—~16kAutomated safety check: PassCustom licence
Paper Writingvoidful/academic-skills135—~1.9kAutomated safety check: PassMIT
Research Paper Writing CoachXiaomiMiMo/MiMo-Code14k—~1.7kAutomated safety check: PassMIT
Research Writingalfonso0512/research-writing-skill4901 repos~818Automated safety check: PassMIT

Similar skills

  • Paperjury

    Spark-To-Paper-Skills/paperjury

    Three modes for CS-conference papers (CVPR/ICCV/ECCV vision, ACL/EMNLP/NAACL NLP, ICLR/NeurIPS/ICML/AAAI ML).

    1.2k GitHub stars~5.3k tokensUpdated 1 mo ago
    Documents & OfficeAuto-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
  • Paper Writing

    voidful/academic-skills

    頂級會議論文寫作技能——以嚴格 reviewer 視角指導從草稿到終稿的完整寫作流程。當使用者要寫論文、改善論文草稿、修改特定章節(introduction、method、experiments、conclusion)、潤色學術英文、回應 reviewer 意見,或問「這段怎麼寫」時,一定要使用此技能。觸發詞包括:寫論文、paper writing、improve my…

    135 GitHub stars~1.9k tokensUpdated 6 mo ago
    Research & ScienceAuto-check passed
  • Research Paper Writing Coach

    XiaomiMiMo/MiMo-Code

    Drafts, rewrites and reviews academic papers in ML, CV and NLP style, section by section, and compiles LaTeX sources to PDF.

    14k GitHub stars~1.7k tokensUpdated 2 days ago
    Research & ScienceAuto-check passed
  • Research Writing

    alfonso0512/research-writing-skill

    科研论文写作助手,提供 30 个 Prompt 模板覆盖论文写作全流程. An agent skill from alfonso0512/research-writing-skill.

    490 GitHub starsUsed in 1 repo~818 tokens
    Documents & OfficeAuto-check passed
  • Paper Writing

    MLNLP-World/Paper-Writing-Tips

    学术论文写作检查与优化助手。基于 MLNLP-World 社区整理的论文写作技巧,帮助检查和优化学术论文。Use when: (1) 检查论文 LaTeX 格式和排版, (2) 优化公式符号使用, (3) 改进图表设计, (4) 润色英文学术表达, (5) 检查参考文献格式, (6) 投稿前终稿检查, (7) 用户询问论文写作技巧或规范。

    4.7k GitHub stars~630 tokensUpdated 15 days ago
    Documents & OfficeAuto-check passed

More from eunomia-bpf/ActPlane

  • Paper Logic

    eunomia-bpf/ActPlane

    Review a LaTeX paper for argument-level logic, cross-section consistency, and house style.

    104 GitHub stars~5.7k tokensUpdated 2 days ago
    Auto-check passed

Works with

Questions about Paper Review

What does Paper Review do?

Review and fix academic writing in a LaTeX paper section. An agent skill from eunomia-bpf/ActPlane. Paper Review is an agent skill from eunomia-bpf/ActPlane. Review and fix academic writing in a LaTeX paper section.

When should I use Paper Review?

Paper Review fits situations like: tasks that involve Peer review; tasks that involve LaTeX; tasks that involve Scientific writing.

How do I install Paper Review in Claude Code?

Run `npx skills add eunomia-bpf/ActPlane --skill paper-review -a claude-code`. Or copy the skill folder (.claude/skills/paper-review in eunomia-bpf/ActPlane) into .claude/skills/paper-review in your project. Claude Code loads it when a task matches its description.

How do I install Paper Review in Codex?

Run `npx skills add eunomia-bpf/ActPlane --skill paper-review -a codex`. Or copy the skill folder (.claude/skills/paper-review in eunomia-bpf/ActPlane) into .agents/skills/paper-review in your project. Codex loads it when a task matches its description.

Can I use Paper Review 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 eunomia-bpf/ActPlane --skill paper-review -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/paper-review, .gemini/skills/paper-review, .github/skills/paper-review and .opencode/skills/paper-review in your project.

What does Paper Review need to run?

SKILL.md names no scripts, command-line tools or credentials: Paper Review is instructions for the agent only. Its frontmatter pre-approves these tools: Read, Edit, Bash(grep *), Bash(wc *).

Does Paper Review access the network?

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.

Is Paper Review safe to install?

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. Review the folder before installing.

What licence does Paper Review use?

Paper Review 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 Paper Review use?

About 3.8k tokens (SKILL.md is roughly 15k 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 Paper Review?

Skills that share tags, products or a category with Paper Review: Paperjury (Spark-To-Paper-Skills/paperjury, 1.2k stars), Academic Paper Writing Pipeline (Imbad0202/academic-research-skills, 51k stars), Paper Writing (voidful/academic-skills, 135 stars) and Research Paper Writing Coach (XiaomiMiMo/MiMo-Code, 14k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Paper Review?

eunomia-bpf (a GitHub organization) maintains it in eunomia-bpf/ActPlane, which has 104 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 9, 2026.

Source: eunomia-bpf/ActPlane on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.