Fin Paper Writing
csmar432/finai-research
经济金融论文写作编排器。根据PAPEROUTLINE.md和REFINEDDESIGN.md,编排调用fin-paper-draft(正文写作)、fin-paper-figure(图表生成)、fin-review-loop(review循环),管理版本并确保章节间的一致性。
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.
$ npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill paper-poster-html -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install wanshuiyin/Auto-claude-code-research-in-sleep paper-poster-html --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ 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/paper-poster-html .claude/skills/paper-poster-html && rm -rf skills-srcUse ~/.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/
Install the "paper-poster-html" agent skill from https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep/tree/main/skills/paper-poster-html into .claude/skills/paper-poster-html/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paper-poster-html", 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.
$skill-installer install https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep/tree/main/skills/paper-poster-htmlType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill paper-poster-html -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install wanshuiyin/Auto-claude-code-research-in-sleep paper-poster-html --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/paper-poster-html .agents/skills/paper-poster-html && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "paper-poster-html" agent skill from https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep/tree/main/skills/paper-poster-html into .agents/skills/paper-poster-html/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paper-poster-html", 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 wanshuiyin/Auto-claude-code-research-in-sleep --skill paper-poster-html -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install wanshuiyin/Auto-claude-code-research-in-sleep paper-poster-html --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/paper-poster-html .cursor/skills/paper-poster-html && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "paper-poster-html" agent skill from https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep/tree/main/skills/paper-poster-html into .cursor/skills/paper-poster-html/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paper-poster-html", 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.
$ gemini skills install https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep.git --path skills/paper-poster-html--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill paper-poster-html -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install wanshuiyin/Auto-claude-code-research-in-sleep paper-poster-html --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/paper-poster-html .gemini/skills/paper-poster-html && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "paper-poster-html" agent skill from https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep/tree/main/skills/paper-poster-html into .gemini/skills/paper-poster-html/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paper-poster-html", 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 wanshuiyin/Auto-claude-code-research-in-sleep paper-poster-htmlInstalls 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 wanshuiyin/Auto-claude-code-research-in-sleep --skill paper-poster-html -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/paper-poster-html .github/skills/paper-poster-html && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "paper-poster-html" agent skill from https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep/tree/main/skills/paper-poster-html into .github/skills/paper-poster-html/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paper-poster-html", 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 wanshuiyin/Auto-claude-code-research-in-sleep --skill paper-poster-html -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install wanshuiyin/Auto-claude-code-research-in-sleep paper-poster-html --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/paper-poster-html .opencode/skills/paper-poster-html && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "paper-poster-html" agent skill from https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep/tree/main/skills/paper-poster-html into .opencode/skills/paper-poster-html/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "paper-poster-html", 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.
paper-poster-htmlBuilds 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.
The poster is one HTML file styled for the exact print canvas of the venue and rendered to PDF with Playwright print emulation, and the skill insists on measuring rather than eyeballing because the screen preview misleads. Hard gates for alignment, style and assets must pass before any visual review. Fixes are limited to a closed vocabulary of design tokens, whole catalogued components, content rebalance, assets or canvas choice, so no new inline styles, hex values or bespoke decorations are allowed.
Other rules are a two-hue color discipline checked by machine, real figures extracted from the paper with a provenance manifest (the gate fails without them), and a cross-model review loop that uses a fresh reviewer thread for each call. The canvas size comes from the venue's official spec, looked up live and never assumed. Bundled Python scripts extract PDF figures, preprocess them, check assets and the poster, and render previews. Part of the gate machinery is adapted from the MIT-licensed posterly project. The excerpt is truncated.
9 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 26b95cf. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
Bash(*)ReadWriteEditGrepGlobWebFetchWebSearchAskUserQuestionmcp__codex__codexFrom allowed-tools in the SKILL.md frontmatter.
Ships 13 files in scripts/ (Python, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
python3claudecodexpdftoppmFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comFrom 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.
Academic Poster Builder loads about 4.5k tokens when it runs. Until then it costs about 107 tokens; SKILL.md has 1,950 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 noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Bash(*), Read, Write, Edit, Grep, Glob, WebFetch, WebSearch, AskUserQuestion, mcp__codex__codexAutomated 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 wanshuiyin/Auto-claude-code-research-in-sleep at commit 26b95cf, republished under its MIT licence (© wanshuiyin). 1,950 words, ~4,523 tokens.
.claude/skills/paper-poster-html/SKILL.md (or your agent's skills folder). This skill also uses 32 other files; get the full folder from GitHub.One HTML file styled for an exact print canvas (@page { size: W H }), rendered to PDF
via Playwright print emulation. Iterate by measuring, not eyeballing — the screen
preview lies; only print emulation at the correct viewport tells the truth. Core gate
machinery is adapted from posterly (MIT, ©
2026 Ruishuo Chen — see NOTICE.md and LICENSES/posterly-MIT.txt); ARIS adds style
discipline gates, figure-provenance gates, the cross-model review loop, and the
anti-patch-loop fix vocabulary.
A predecessor pipeline produced a poster with 30+ colors, zero real paper figures, a screen-pixel canvas, and tiny formulas floating in oversized boxes, then spent 12+ review rounds making it worse — each round added a new badge color or bespoke SVG patch. The cure is structural, not exhortative:
paper (.tex / PDF) ──► content plan + claim→evidence audit (codex, fresh)
│
figures extracted ─────────┤ FIGURE_MANIFEST.json (provenance, sha256)
(real paper figures ONLY) ▼
template scaffold ──► fill ──► run_gates.py ◄─── HARD, loop here
preflight → style → asset → measure → polish
│ all hard gates PASS
▼
Claude visual review (≤3 issues × ≤3 rounds, fix-vocabulary only)
│ score ≥ 9
▼
codex final cross-model review (fresh thread, full HTML+PDF)
│ pass
▼
verify-final → poster.pdf + GATE_REPORT.json${CLAUDE_SKILL_DIR}/scripts — all helpers are single-owner and
ship inside this skill (Arch C). If the directory is missing the install is broken:
abort and tell the user to re-install the skill (Policy A — the gates ARE the skill;
never improvise replacements).gpt-6-astra, reasoning xhigh, fresh thread per review call
(mcp__codex__codex, never codex-reply across review boundaries).templates/tokens/generic.json (slate-blue #2D5F8B accent#C9A24A highlight + neutrals) for all venues. Venue packs are opt-in via
— venue-colors: true. Purple-dominant accents (hue 250–285) are banned unless the
user passes — allow-purple: true.poster_html/ in the working directory.poster_html/POSTER_STATE.json exists with status: in_progress
(< 24 h), resume from the saved phase.python3 -m playwright install chromium → if install fails but system Chrome exists, scripts fall back to
channel="chrome" → if all fail: you may produce the content plan and scaffold
only, label everything "not print verified", and must NOT emit a final PDF.pdfinfo missing → PyMuPDF reads PDF dimensions. At least one of
pdftoppm / PyMuPDF must exist for PNG review renders.tex-svg.js once into poster_html/assets/mathjax/ and
reference it locally in the HTML. CDN is acceptable only for drafts; the measure
gate hard-fails on unrendered MathJax either way.{spec, source_url, retrieved} into
POSTER_STATE.json — specs change yearly; never reuse a cached spec silently.🚦 Checkpoint: echo the venue spec table (canvas, orientation, source URL) and the chosen template. Wait.
Ask once, ≤4 questions: layout template (from templates/README.md), palette
(default generic pack / venue pack / custom within constraints), logos + venue mark
(paths or "none" — never fabricate; check the venue's logo policy), QR target (paper /
code / project page / none — generate offline with qrencode or python-qrcode;
never a remote QR-service URL). Persist answers in POSTER_STATE.json as
design_decisions — re-read before any later "improvement" so deliberate choices are
never reverted.
.tex ideal; PDF otherwise). Extract: title/authors/affils,
the 3–5 headline numbers, core method (equations verbatim), main results
(tables/figures and what they show), takeaways. Build
poster_html/POSTER_CONTENT_PLAN.md — what goes in which column, word budget per
card. Target density (excluding table cells, captions, author line, footer):
standard poster 550–850 words; dense theory+empirical poster 750–1050 words,
allowed only when ≥2 compact components are used (eqn-anatomy, flow-strip,
derived-col, claim-pills, keybox--4). Warn yourself below 500 words on a
4-column landscape (it will read as sparse next to professionally dense posters)
unless the template is hero/visual-first; warn above 1100 unless the user asked for
dense mode. Bullets ≤ 8 words when possible — density comes from structure, not
long prose. Prefer compact structure over prose: if the paper contains an
explicit objective, algorithm, theorem mechanism, or baseline comparison, extract at
least two of: (1) empirical objective / loss stack; (2) term-by-term equation
anatomy; (3) a method-flow strip grounded in paper variables; (4) a derived-Δ column
for method-vs-baseline rows; (5) a 4-up implementation/theory keybox; (6) a
claim/evidence pill table for numeric-heavy posters. Do not invent an algorithm.
If the paper has only an objective, label the component "objective flow" or "loss
anatomy", never "algorithm".xhigh): give it the content
plan path + paper source path(s) — paths only, no summaries — and ask for a
claim→evidence table: | claim on poster | paper file:line | paper says (verbatim) | match? | with match ∈ {OK, NUMERIC-MISMATCH, OVERCLAIM, MISSING-PRECONDITION,
NOT-IN-PAPER, SCOPE-NARROWED}. Save to poster_html/CLAIM_EVIDENCE.md.🚦 Checkpoint: content plan + audit summary. Wait.
Source preference chain:
figures/ (vector SVG/PDF → convert to SVG via
inkscape/pdf2svg if available, else rasterize ≥ 2× rendered px).extract_pdf_figures.py contact-sheet + auto to list candidate
regions → pick crops (🚦 human confirms crop choices) → crop at 300–450 DPI.page,x0,y0,x1,y1 bboxes.Then preprocess_figures.py --autocrop every asset. Every paper-derived image gets a
FIGURE_MANIFEST.json entry (source hash, page, bbox, dpi, sha256, natural_px) and is
embedded as <img data-source="paper" data-asset-id="...">.
Hard rule: ≥ 2 paper-derived visuals or the asset gate fails. Theory-only papers
may waive the total-area rule (--waive-total-area) at a human checkpoint — never
silently. Never draw bespoke decorative SVG "figures" as substitutes.
Figure-area bands (asset gate, fractions of body): total target 14–22 % (warn < 12 % / > 24 %, hard < 10 % / > 28 %); per ordinary figure target 4–8 % (warn
10 %, hard > 13 %);
figure--duocombined 8–12 %. Hero templates pass--hero(centerpiece may take 30–40 %). The failure mode is symmetric: too small reads as decoration, too big crowds out content. Sibling figures that share axes or tell a before→after story belong in onefigure--duocard, not two cards.
cp templates/<chosen>.html poster_html/poster.html; retarget @page + .poster
dims to the venue canvas (two edits, same values); apply the chosen token pack onto the
:root DESIGN TOKENS block; fill content per the plan; embed manifest figures.
Run preflight + style_check — both must PASS before any layout iteration. (A fresh
scaffold is expected to fail measure — that gate judges a filled poster.)
After every layout change:
python3 "$SKILL_SCRIPTS/run_gates.py" poster_html/poster.html \
--tokens <pack.json> --manifest poster_html/FIGURE_MANIFEST.json \
--report poster_html/GATE_REPORT.jsonCanonical order: preflight → style → asset → measure → polish. Targets: column-bottom
spread < 5 px (aim < 3), footer gap ∈ [30, 50] px, intercard gap ∈ [12, 50] px,
canvas-fill ∈ [95, 101] %, poster bbox aligned to page within ±2 px. Fix guidance for
each failure mode lives in the gate output and templates/COMPONENTS.md. Do not
proceed while any hard gate fails. Do not let a reviewer see an unmeasured poster.
Balance under-filled columns with content from the paper (Gate C), never with
whitespace, space-between, or stretched cards.
Render and read the result yourself:
python3 "$SKILL_SCRIPTS/render_preview.py" poster_html/poster.html
pdftoppm -r 100 poster_html/poster_preview.pdf poster_html/review_full -png -f 1 -l 1
# plus 2-4 region crops at higher res (header / one column / equations) via PILCalibrate first (../shared-references/taste-calibration.md): if
human-curated references/good/ + references/bad/ exist under this skill
dir (or the project supplies its own pair), score those 3+3 reference posters
on the axes below BEFORE the target, anchoring the scale. Never select, search
for, or generate anchors yourself; if no reference sets exist, proceed
uncalibrated and mark CALIBRATION: none — never fabricate anchor scores.
Axes (weights sum 1.0): Design 0.35 · Craft 0.30 · Functionality 0.20 ·
Originality 0.15. Mapping: SCORE = min(round(1 + 9 × COMPOSITE), lowest triggered cap) — caps apply AFTER the mapping, and the loop's Score ≥ 9
threshold below always reads this final capped SCORE, never the raw
composite.
Score strictly 1–10. Critical caps (hard floors — a calibrated composite never overrides them): < 2 real paper figures → ≤ 3; broken canvas / clipped content / unreadable math → ≤ 4; ≥ 4 visible hue families or gradient-heavy header → ≤ 4; large blank cards or columns → ≤ 5; fabricated visual claim → ≤ 3. Checks: posterly-showcase gestalt (would this hang next to a professionally designed poster without looking like a patched dashboard?), single-accent discipline, real figures readable and central, print hierarchy (title → headline stats → figures → detail), column fill, equation prominence (no tiny math in oversized boxes), serif-body/sans-display pairing, no gradient kitsch, component consistency, 60-second narrative. Output format:
SCORE: N/10 (= min(round(1 + 9 × COMPOSITE), lowest cap); drives the loop)
COMPOSITE: 0.xx (weighted; list the four per-axis scores)
CALIBRATION: anchored | none
GAP: <which reference poster the target falls short of / exceeds, on which axis, and why — one paragraph; omit only when CALIBRATION: none>
CAPS_TRIGGERED: ...
TOP_ISSUES: (max 3)
ALLOWED_FIX_TYPE per issue: token | component | rebalance | asset | template/canvas
PATCH_LOOP_RISK: low | medium | highLoop: fix (fix vocabulary below) → re-run Phase 4 gates → re-score. ≤ 3 issues per round, ≤ 3 rounds. Score ≥ 9 → Phase 6. Still < 9 after 3 rounds → STOP patching; escalate to template / canvas / content re-choice (back to Phase 3) or a human decision. Never enter round 4 of cosmetic patching.
Allowed: (a) edit a :root token value; (b) swap/remove/add a whole component
instance from templates/COMPONENTS.md; (c) content rebalance (move a card across
columns, trim/grow text from the paper, resize a figure within its AR band);
(d) template/canvas re-choice; (e) global edits to an existing component's CSS
that reference only tokens; (f) switching predefined variants (.eqn--large,
.card--compact, .figure--wide, .nowrap, …); (g) asset fixes (re-crop, swap
for a clearer figure from the same paper, re-preprocess).
Forbidden: new inline styles, new hex values anywhere, bespoke decorative SVG,
per-element font-size overrides. A new component may not be born inside the visual
loop — stop, get a human checkpoint, add it to COMPONENTS.md, re-run from Phase 3.
All hard gates PASS + polish warnings zero-or-waived + visual ≥ 9 first. Then a fresh
codex thread (xhigh) reviews the final artifacts (not the content plan):
poster.html, the rendered PDF/PNG, the paper source, GATE_REPORT.json,
CLAIM_EVIDENCE.md — paths only, no executor framing. It checks: (1) fidelity &
overclaims re-checked on final text (polish introduces new claims), (2) residue
(\ref{, TODO, raw < in math, missing images, remote URLs), (3) visual rhetoric
(headline numbers prominent, banner readable from 2 m), (4) gate-log coherence. The
reviewer recommends; it does not edit. Any fix → back through Phase 4/5 gates — never
straight to re-review.
python3 "$SKILL_SCRIPTS/poster_check.py" verify-final poster_html/poster_preview.pdf \
--from-html poster_html/poster.html --max-size-mb 20Page count 1, dimensions match @page, size ≤ 20 MB, no TODO/residue, no remote
assets. Report: PDF path, final spread px, footer-gap range, gate summary table,
unresolved waivers, codex verdict. Update POSTER_STATE.json → done.
poster_html/POSTER_STATE.json: {phase, venue, canvas{w,h,orientation,source_url, retrieved}, template, token_pack, design_decisions{...}, figures_selected[], visual_rounds, codex_threads{audit, final}, status, timestamp} — written after every
phase; enables compact-recovery resume.
run_gates.py output.design_decisions before "improving" anything.poster_check.py, render_preview.py, _posterly/ are
vendored from posterly — keep diffs minimal; ARIS-side logic goes in the new
scripts, not in vendored files.Save every codex reviewer call's trace per shared-references/review-tracing.md to
.aris/traces/paper-poster-html/<date>_run<NN>/ (audit + final threads, raw responses).
poster_html/
├── poster.html # single-file source of truth
├── poster_preview.pdf # print-emulated, verify-final-checked
├── poster_preview.png # thumbnail
├── POSTER_STATE.json # resume state
├── GATE_REPORT.json # canonical gate ledger (schema v1)
├── POSTER_CONTENT_PLAN.md # what-goes-where + word budgets
├── CLAIM_EVIDENCE.md # codex claim→evidence audit
├── FIGURE_MANIFEST.json # figure provenance (sha256, page, bbox, dpi)
└── assets/{paper_figures,logos,qr,mathjax}//paper-talk / /slides-polish.© wanshuiyin, 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 32 other files (scripts) in skills/paper-poster-html of wanshuiyin/Auto-claude-code-research-in-sleep.
Open the folder on GitHubat commit 26b95cf
We found 6 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in wanshuiyin/Auto-claude-code-research-in-sleep, which our catalogue first saw on October 7, 2026.
Academic Poster Builder 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 |
|---|---|---|---|---|---|---|
| Academic Poster Builder this skillwanshuiyin/Auto-claude-code-research-in-sleep | 17k | 1 repos | ~4.5k | Automated safety check: Notes | MIT | |
| Fin Paper Writingcsmar432/finai-research | 109 | — | ~2.3k | Automated safety check: Pass | MIT | |
| Research Writingalfonso0512/research-writing-skill | 490 | 1 repos | ~818 | Automated safety check: Pass | MIT | |
| Paper WritingMLNLP-World/Paper-Writing-Tips | 4.7k | — | ~630 | Automated safety check: Pass | None | |
| PaperjurySpark-To-Paper-Skills/paperjury | 1.2k | — | ~5.3k | Automated safety check: Pass | MIT | |
| LaTeX Example Content Generatorhuangwb8/ChineseResearchLaTeX | 2.9k | 1 repos | ~744 | Automated safety check: Pass | MIT |
csmar432/finai-research
经济金融论文写作编排器。根据PAPEROUTLINE.md和REFINEDDESIGN.md,编排调用fin-paper-draft(正文写作)、fin-paper-figure(图表生成)、fin-review-loop(review循环),管理版本并确保章节间的一致性。
alfonso0512/research-writing-skill
科研论文写作助手,提供 30 个 Prompt 模板覆盖论文写作全流程. An agent skill from alfonso0512/research-writing-skill.
MLNLP-World/Paper-Writing-Tips
学术论文写作检查与优化助手。基于 MLNLP-World 社区整理的论文写作技巧,帮助检查和优化学术论文。Use when: (1) 检查论文 LaTeX 格式和排版, (2) 优化公式符号使用, (3) 改进图表设计, (4) 润色英文学术表达, (5) 检查参考文献格式, (6) 投稿前终稿检查, (7) 用户询问论文写作技巧或规范。
Spark-To-Paper-Skills/paperjury
Three modes for CS-conference papers (CVPR/ICCV/ECCV vision, ACL/EMNLP/NAACL NLP, ICLR/NeurIPS/ICML/AAAI ML).
huangwb8/ChineseResearchLaTeX
Fills an existing LaTeX project with sample sections, tables and figure narratives, protecting the template structure and previewing before writing.
zai-org/ZCode
Professional PDF toolkit covering four production workflows: reports, creative visuals, academic LaTeX, and existing PDF processing.
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.
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.
wanshuiyin/Auto-claude-code-research-in-sleep
Audit experiment integrity before claiming results. An agent skill from wanshuiyin/Auto-claude-code-research-in-sleep.
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…
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).
wanshuiyin/Auto-claude-code-research-in-sleep
Privileged applier that LANDS meta-optimize / corpus-audit patches the user approved, with a fresh landing review and human approval.
Works with
Categories
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. The poster is one HTML file styled for the exact print canvas of the venue and rendered to PDF with Playwright print emulation, and the skill insists on measuring rather than eyeballing because the screen preview misleads. Hard gates for alignment, style and assets must pass before any visual review.
Academic Poster Builder fits situations like: designing a conference poster for a paper from its LaTeX source or PDF; redoing a research poster that has too many colors or no real figures; producing a print-ready PDF at a venue's required poster size.
Run `npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill paper-poster-html -a claude-code`. Or copy the skill folder (skills/paper-poster-html in wanshuiyin/Auto-claude-code-research-in-sleep) into .claude/skills/paper-poster-html in your project. Claude Code loads it when a task matches its description.
Run `npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill paper-poster-html -a codex`. Or copy the skill folder (skills/paper-poster-html in wanshuiyin/Auto-claude-code-research-in-sleep) into .agents/skills/paper-poster-html 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 wanshuiyin/Auto-claude-code-research-in-sleep --skill paper-poster-html -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-poster-html, .gemini/skills/paper-poster-html, .github/skills/paper-poster-html and .opencode/skills/paper-poster-html in your project.
Going by SKILL.md and its folder, Academic Poster Builder needs Python for the scripts in its folder and the command-line tools its instructions call (python3, claude, codex and pdftoppm). Our summary lists: Python and Playwright with Chromium for rendering and print emulation; The paper source (LaTeX) or PDF to take content and figures from; A Codex MCP connection for the cross-model review step. Its frontmatter pre-approves these tools: Bash(*), Read, Write, Edit, Grep, Glob, WebFetch, WebSearch, AskUserQuestion, mcp__codex__codex.
SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.
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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Academic Poster Builder is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.5k tokens (SKILL.md is roughly 18k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Academic Poster Builder: Fin Paper Writing (csmar432/finai-research, 109 stars), Research Writing (alfonso0512/research-writing-skill, 490 stars), Paper Writing (MLNLP-World/Paper-Writing-Tips, 4.7k stars) and Paperjury (Spark-To-Paper-Skills/paperjury, 1.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
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.