本文へ移動
cccskills
無料GitHub で公開

paper-version

Convert a LaTeX research paper into a policy brief, 1-page summary, or 5-page summary for a general audience, with factual review and a standalone HTML page for GitHub Pages.

日本語の概要は準備中です。原文の説明を表示しています。

claesbackman/AI-research-feedbackスター 507(GitHub 507 + cccskills 0)
連携ツールX (Twitter)GitHub

実行スコア 未検証

インストール方法を見る

含まれるファイル(1)

  • SKILL.md15.6 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Paper Versions

Convert a LaTeX research paper project into an accessible audience-facing version, review it for accuracy, and produce a standalone HTML page.

Input

  • $ARGUMENTS[0] — Output format: brief, 1page, or 5page (required)

Format definitions

  • brief — A structured 2-page policy brief with fixed sections: The Question, What We Do, Key Findings, Policy Implications, Caveats. Formal but accessible. No jargon.
  • 1page — One flowing page of prose for a general audience. No section headers. Written like a short article. Leads with the main finding.
  • 5page — A five-page narrative summary with light structure (Background, What We Did, What We Found, Why It Matters, Limitations). Accessible to an educated non-specialist.

Instructions

Step 0 — Validate input

If $ARGUMENTS[0] is not one of brief, 1page, 5page, stop and tell the user: "Please specify a format: brief, 1page, or 5page."

Set FORMAT = the argument value.


Step 1 — Reader Agent

Launch an Agent (subagent_type: general-purpose) with this task:

You are reading a LaTeX research paper project. Your job is to extract the full content of the paper into a clean, structured plain-text representation that will be used by a writer agent.

Instructions:

  1. Find the main .tex file in the current directory. It is usually the file that contains \documentclass or \begin{document}. Use Glob to search for **/*.tex files, then identify the root file.
  2. Read the root .tex file. Wherever you find \input{...} or \include{...} commands, read those files too, recursively, until you have assembled the full paper text.
  3. Strip LaTeX markup: remove commands like \textbf{}, \emph{}, \cite{}, \label{}, \ref{}, \footnote{}, equation environments, figure environments, table environments. Keep the text content. For tables, summarize the key numbers in prose form. For figures, note what the figure shows based on the caption.
  4. Extract and clearly label these components:
    • Title
    • Authors
    • Abstract (verbatim)
    • Introduction (full text)
    • Data/Empirical Setting (if present)
    • Methods/Approach (condensed)
    • Main Results — list every key quantitative finding, with exact numbers, units, and confidence intervals as stated in the paper. Be exhaustive here.
    • Robustness/Heterogeneity (condensed)
    • Conclusion
    • Key claims made by the authors — list every causal or interpretive claim the authors make explicitly, noting the exact language they use (e.g., "we find that X causes Y" vs. "X is associated with Y")
  5. Extract figure information: scan the full .tex source for \includegraphics commands. For each one, record:
    • The filename as specified (e.g., figures/fig1 or fig_results)
    • The caption text from the nearest \caption{} command
    • Which section of the paper the figure appears in List these under a Figures section in your output, formatted as: FIGURE: [filename] | CAPTION: [caption text] | SECTION: [section name]
  6. Identify the 1-2 figures that best illustrate the paper's main finding and mark them with [KEY FIGURE].
  7. Return the full extraction as structured markdown. Do not summarize or interpret — just extract.

Save the Reader Agent's output to output/paper_extraction.md. Create the output/ directory if it does not exist.

After the Reader Agent finishes, scan the project directory for image files that match the extracted figure filenames. Use Glob to search for **/*.png, **/*.jpg, and **/*.jpeg. For each figure listed as [KEY FIGURE] in paper_extraction.md, check whether a matching PNG or JPG file exists (try the filename with and without extension, and with common path prefixes like figures/, Figures/, fig/). Build a list of embeddable figures — those where a .png or .jpg file was found — and save it to output/figures_list.md in this format:

EMBEDDABLE: [relative path from project root] | CAPTION: [caption text]
NOT FOUND (PDF or missing): [filename] | CAPTION: [caption text]

If no PNG/JPG figures are found at all, note that in output/figures_list.md and continue — the HTML will be text-only.


Step 2 — Writer Agent

Launch an Agent (subagent_type: general-purpose) with this task, passing it the content of output/paper_extraction.md and the value of FORMAT:

You are a science writer creating an accessible version of an economics research paper for a general audience.

Paper content: [paste full content of output/paper_extraction.md]

Output format requested: [FORMAT]

Format instructions:

For brief — Write a structured policy brief. Use exactly these section headers:

  • The Question — What problem does this paper address? (2-3 sentences)
  • What We Do — How do the authors study it? Data, setting, method in plain language. (3-4 sentences)
  • Key Findings — The main quantitative results. Report actual numbers. (4-6 bullet points, each 1-2 sentences)
  • Policy Implications — What do these findings suggest for policy? Be concrete. (3-5 sentences)
  • Caveats — Limitations the authors themselves acknowledge. (2-3 sentences) Total length: approximately 500-600 words.

For 1page — Write one page of flowing prose. No section headers. Open with the main finding stated plainly. Use accessible analogies where helpful. Do not use academic hedging or jargon. End with why it matters. Total length: approximately 350-400 words.

For 5page — Write a 5-page narrative summary with these light headers:

  • Background — Context and motivation
  • What We Did — Data, setting, approach
  • What We Found — Results in detail, with numbers
  • Why It Matters — Implications
  • Limitations — What the paper cannot establish Total length: approximately 1400-1600 words.

General writing rules (all formats):

  • Write for an intelligent adult with no economics background
  • Report key numbers — do not vague them out
  • Do not overclaim causality beyond what the paper itself claims — match the paper's own language precisely
  • No passive voice where avoidable
  • No bullet points except where explicitly called for above
  • No jargon without explanation

Key findings callout: Identify the single most important quantitative finding — the one number or result a reader should walk away remembering. Write it as a short punchy sentence (max 25 words). Mark it clearly in your output with the tag [CALLOUT]: at the start of the line, e.g.: [CALLOUT]: Homeowners in the top wealth decile hold 40% of all housing wealth, despite representing only 10% of households. This will be displayed as a highlighted box on the webpage.

Return only the finished draft (including the [CALLOUT] line), with no preamble or meta-commentary.

Save the Writer Agent's output to output/[FORMAT]_draft.md (e.g., output/brief_draft.md).


Step 3 — Reviewer Agent

Launch an Agent (subagent_type: general-purpose) with this task:

You are a fact-checker and editorial reviewer. You will compare a summary/brief of an economics paper against the original paper's extracted content, and produce a structured review report.

Original paper extraction: [paste full content of output/paper_extraction.md]

Draft to review: [paste full content of output/[FORMAT]_draft.md]

Your job — check for three categories of issues:

1. Factual accuracy Go through every quantitative claim, statistic, or finding stated in the draft. For each one, verify it against the original extraction. Flag anything that:

  • Uses a wrong number
  • Changes units or direction of an effect
  • Attributes a finding to the wrong group or condition
  • Omits a critical qualifier (e.g., "only for renters" or "only in the short run")

2. Overclaiming Compare every causal or interpretive claim in the draft against the exact language in the original paper. Flag anywhere the draft uses stronger language than the paper (e.g., draft says "causes" when paper says "is associated with"; draft says "proves" when paper says "suggests").

3. Framing consistency Flag anywhere the draft:

  • Shifts the emphasis of the findings away from what the paper presents as primary
  • Buries or omits a key finding the paper treats as central
  • Introduces an implication the paper does not make

Output format: Produce a numbered list of issues found. For each issue, state:

  • Category (Factual / Overclaiming / Framing)
  • Location in draft (quote the relevant phrase)
  • The problem (what is wrong or overstated)
  • Suggested fix (what it should say instead, with reference to the source)

If no issues are found in a category, say so explicitly. End with an overall verdict: PASS (ready to use with minor edits), REVISE (needs targeted fixes before use), or MAJOR REVISION (significant accuracy or framing problems).

Save the Reviewer Agent's output to output/[FORMAT]_review.md.


Step 4 — Pause and present review

After the Reviewer Agent finishes:

  1. Read output/[FORMAT]_review.md and display its full contents to the user.
  2. Tell the user: "The draft is saved at output/[FORMAT]_draft.md. Edit it as needed before proceeding. When you are ready to generate the HTML, reply proceed. To cancel, reply cancel."
  3. Wait for the user's response.
    • If the user says cancel or anything indicating they want to stop, end the skill.
    • If the user says proceed or any clear affirmation, continue to Step 5.

Step 5 — Website Agent

Read the current contents of output/[FORMAT]_draft.md (which may now be edited by the user).

Launch an Agent (subagent_type: general-purpose) with this task:

You are building a clean standalone HTML page for an economics research paper summary. This page should have no JavaScript dependencies, use a single <style> block in <head>, and be ready to deploy on GitHub Pages.

Paper title: [extracted title from paper_extraction.md] Authors: [extracted authors from paper_extraction.md] Abstract: [extracted abstract from paper_extraction.md] Format type: [FORMAT] (brief / 1page / 5page) Content: [paste full content of output/[FORMAT]_draft.md — strip the [CALLOUT]: line from the body text, it will be rendered separately as a callout box] Callout text: [the sentence that was tagged [CALLOUT]: in the draft] Embeddable figures: [paste content of output/figures_list.md — use only lines marked EMBEDDABLE]

Build the HTML page with these requirements:

<head> — Open Graph and meta tags: Include these meta tags so the page looks good when shared on social media:

<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="[first 150 characters of the abstract]">
<meta property="og:title" content="[paper title]">
<meta property="og:description" content="[first 150 characters of the abstract]">
<meta property="og:type" content="article">
<meta property="og:article:author" content="[authors]">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="[paper title]">
<meta name="twitter:description" content="[first 150 characters of the abstract]">

Layout and structure:

  • Single-column, centered, max-width 740px
  • Header area: paper title, authors, format badge, today's date
  • Immediately below the header: the callout box (see styling below)
  • Then the body content
  • If format is brief, render the section headers as <h2> elements
  • If format is 1page or 5page, use <h2> only for the light section headers if present
  • After the body text: any embeddable figures (see figure section below)
  • Footer: "This is a [format label]. The full paper is available <a href="#">here</a>."

Callout box: Render the callout sentence as a visually distinct block immediately after the header and before the body text:

<div class="callout">
  <span class="callout-label">Key Finding</span>
  <p>[callout text]</p>
</div>

Style it as: background #f0ebe2, left border 4px solid #8b7355, padding 1rem 1.25rem, margin 2rem 0. The label: display block, font-size 0.75rem, font-weight 700, text-transform uppercase, letter-spacing 0.08em, color #8b7355, margin-bottom 0.4rem. The paragraph: margin 0, font-size 1.05rem, font-style italic, color #1a1a1a.

Figures: For each embeddable figure provided, add an <figure> block after the main body text and before the footer:

<figure>
  <img src="[relative path from output/ — prepend ../ to the project-root-relative path]" alt="[caption text]" style="max-width:100%;height:auto;display:block;margin:0 auto;">
  <figcaption>[caption text]</figcaption>
</figure>

If the figures list says "NOT FOUND" for all figures, omit the figures section entirely. Add a <h2>Figures</h2> header above the figure block only if at least one figure is embeddable. Figure caption style: font-size 0.85rem, color #555, text-align center, margin-top 0.5rem, font-style italic.

Full CSS (in <style> block in <head>):

*, *::before, *::after { box-sizing: border-box; }
body { font-family: system-ui, -apple-system, Georgia, serif; background: #fafaf8; color: #1a1a1a; font-size: 18px; line-height: 1.7; margin: 0; padding: 2rem 1rem; }
.container { max-width: 740px; margin: 0 auto; }
.header { margin-bottom: 2rem; }
.title { font-size: 2rem; font-weight: 700; line-height: 1.25; margin: 0 0 0.4rem 0; }
.authors { font-size: 1rem; color: #555; margin: 0 0 0.6rem 0; }
.meta { display: flex; align-items: center; gap: 0.75rem; font-size: 0.85rem; color: #888; }
.badge { background: #e8e4dd; color: #555; font-size: 0.8rem; padding: 3px 10px; border-radius: 20px; font-weight: 500; }
.callout { background: #f0ebe2; border-left: 4px solid #8b7355; padding: 1rem 1.25rem; margin: 2rem 0; }
.callout-label { display: block; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: #8b7355; margin-bottom: 0.4rem; }
.callout p { margin: 0; font-size: 1.05rem; font-style: italic; }
h2 { font-size: 1.15rem; font-weight: 600; color: #1a1a1a; margin-top: 2rem; border-bottom: 1px solid #ddd; padding-bottom: 4px; }
p { margin: 0 0 1rem 0; }
ul { margin: 0 0 1rem 0; padding-left: 1.2rem; }
li { margin-bottom: 0.5rem; }
figure { margin: 1.5rem 0; }
figcaption { font-size: 0.85rem; color: #555; text-align: center; margin-top: 0.5rem; font-style: italic; }
.footer { margin-top: 3rem; padding-top: 1rem; border-top: 1px solid #ddd; font-size: 0.85rem; color: #888; }
.footer a { color: #555; }
@media (max-width: 600px) { body { font-size: 16px; padding: 1rem 0.75rem; } .title { font-size: 1.5rem; } }

Return only the complete HTML file contents, nothing else.

Save the Website Agent's output to output/index.html.

Tell the user: "Done. Files produced:

  • output/[FORMAT]_draft.md — your draft
  • output/[FORMAT]_review.md — reviewer notes
  • output/index.html — standalone HTML page

To publish on GitHub Pages: commit the output/ folder and enable Pages in your repo settings, or copy index.html to a Pages repo."

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

Adversarially audit changed analysis code against a base ref, hunting for correctness errors in sample construction, merges, variable construction, silent failures, and clustering or fixed effects. Runs in an isolated subagent. Use before circulating results or submitting. This is not a reproducibility or paper-to-code review — use review-paper-code for that.

日本語の概要は準備中です。原文の説明を表示しています。

claesbackman/AI-research-feedback5072026年10月24日 更新

Explain a code change as a standalone offline HTML page with a five-question quiz. Reads the diff and the surrounding code from scratch, states the consequences for the empirical results, and saves the page outside the repository under a dated filename.

日本語の概要は準備中です。原文の説明を表示しています。

claesbackman/AI-research-feedback5072026年10月24日 更新

Build a LaTeX beamer slide deck in the explorable-explanation style (Nicky Case) — one idea per frame, assertion titles, a concrete running example, TikZ/pgfplots stages the presenter steps through, the source's own figures recoloured into the deck palette, an appendix of side rooms, and a screenshot-and-log check of every page. Use for any request for a Beamer, LaTeX or TeX presentation, talk, slides, seminar, conference, lecture, keynote or job-market deck, "turn this paper into beamer slides", a deck that must be a PDF, or for revising or reviewing a deck built this way. The sibling skill explorable-deck builds the same deck in Quarto reveal.js; use this one when the user names Beamer, LaTeX, TeX or PDF, or works in a LaTeX project. Not for a website explorable (that is explorable-explanations) or a poster.

日本語の概要は準備中です。原文の説明を表示しています。

claesbackman/AI-research-feedback5072026年10月24日 更新

Build a Quarto reveal.js slide deck in the explorable-explanation style (Nicky Case) — one idea per slide, assertion titles, a concrete running example, run-time SVG stages the presenter drives live, the source's own figures recoloured into the deck palette, and an appendix of side rooms. Use for any request for a presentation, talk, slides, a seminar, conference, lecture, keynote or job-market deck, a Quarto or reveal.js deck, "turn this paper into slides", "a deck like the explorable", or for revising or reviewing a deck built this way. Prefer it over .pptx skills unless the user names PowerPoint, Beamer, LaTeX or Google Slides. Not for a website explorable (that is explorable-explanations) or a poster.

日本語の概要は準備中です。原文の説明を表示しています。

claesbackman/AI-research-feedback5072026年10月24日 更新

Split a PDF into chunks and convert it to readable markdown text. Use when the user wants to read, extract, or convert a PDF document.

日本語の概要は準備中です。原文の説明を表示しています。

claesbackman/AI-research-feedback5072026年10月24日 更新

Run a 6-agent pre-submission panel review for a grant proposal targeting a specified funder or program

日本語の概要は準備中です。原文の説明を表示しています。

claesbackman/AI-research-feedback5072026年10月24日 更新

claesbackman のスキルをすべて見る

このスキルの問題を報告する