paper
Skill0 starsChanged 11 days agoApache-2.0View on GitHub
Research paper, article, or conference or journal submission as a finished PDF in IEEE, ACM or the person's template; every reference looked up, never from memory.
11 other projects use a version of this.
Adopted by
Most recently taken up by
- hemal08ce094/DesignSkillsSwiftUItheir own version, first seen Nov 8, 2026
- m0NSYuke/PaperLabtheir own version, first seen Nov 8, 2026
- DaeSeokSong/oh-my-ouroborostheir own version, first seen Nov 1, 2026
- s-choung/Research-Skillstheir own version, first seen Nov 1, 2026
- TheAxeC/ordotheir own version, first seen Nov 1, 2026
- tpc-pascal/skillsmiththeir own version, first seen Oct 20, 2026
Used with
Projects with it also use storytelling.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
jordiportalSkillstorytelling
Tecnicas para crear narrativas efectivas, comunicacion persuasiva y estructuras de mensaje.
Also in 3 projects that use this
Other versions11 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 11
- bergside/awesome-design-skills★ 2.9ksame name
- s-choung/Research-Skills★ 36same name
- m0NSYuke/PaperLab★ 4same name
- DaeSeokSong/oh-my-ouroboros★ 3same name
- diskixix0-collab/Paperwise★ 3same name
- labdaps/labskills★ 2same name
- sameerhimati/claude-code-kit★ 1same name
- tpc-pascal/skillsmith★ 1same name
- hemal08ce094/DesignSkillsSwiftUI★ 0same name
- lachinovedhem/standards-mcp★ 0same name
1 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository24 other files it gives its agents.
- AGENTS.mdAGENTS.md
- llms.txtllms.txt
- academic-referencesSkill
- annual-accountsSkill
- business-deckSkill
- business-letterSkill
- _checksSkill
- contract-draftingSkill
- diagramSkill
- docxSkill
- e-invoiceSkill
- employment-statementSkill
- html-deckSkill
- literature-searchSkill
- meeting-minutesSkill
- pdfSkill
- powerpointSkill
- requirements-specSkill
- _sharedSkill
- social-posterSkill
- trade-documentsSkill
- whatsapp-exportSkill
- xlsxSkill
- zotero-librarySkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
17 rules. 0 are common, 12 are distinctive, and 5 are very specific to this project.
0
Common
Most of the 8 edited versions we read keep these.
12
Distinctive
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 36
Read the person's draft and notes, and the layout they name (Layouts, below).
- Very specific: line 37
Write paper.json in their folder: title, authors, abstract, keywords, sections and references, each reference with its record (key, …
- Distinctive: line 52
Run the pack check (The check is the finish line, below) and fix what it names.
- Very specific: line 56
Write a real file, never an outline in chat.
- Distinctive: line 65
Never hand-fill the starter's .tex.
- Distinctive: line 67
Never hand back a paper that does not build.
- Very specific: line 69
Every reference is real. Take references from the person's material or from literature-search, never from memory.
- Distinctive: line 72
Every number comes from the person's material or a cited paper.
- Distinctive: line 75
Keep the person's caveats and limits.
- Distinctive: line 98
When the paper is for review, or the person says blind, anonymous or double-blind:
- Distinctive: line 103
No names, organisations, emails, grant numbers or acknowledgments anywhere, including the PDF's document properties.
- Very specific: line 133
If the build reports no_engine, say plainly that this computer cannot make the PDF yet and offer the same paper as a Word file in the …
- Distinctive: line 154
Keep each reference's title in the language and wording of its record, and take the year from the record, never from memory.
- Distinctive: line 167
Every citation number has a reference and every reference is cited.
- Very specific: line 170
Run papers.py verify on every DOI in the references.
- Distinctive: line 197
Use those and set the cache to the shipped bundle, so a paper builds with no network:
- Distinctive: line 205
Before you answer, run the pack check on what you produced:
“Common” is measured: kept by at least 6 in 10 of the 8 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Paper
Adapted from the orx-paper skill in alphaXiv OpenResearch (MIT): write a
real source file, start from the template, and never hand back a paper that
does not build. Use literature-search to find and check sources and
academic-references for the reference style.
The person asked for a paper. They get a PDF they can open and submit. They never see LaTeX, a command, a log or a setup step, and you never ask them to install anything. In your reply, speak about the paper: its layout, its length, what is in it and what still needs their input.
How to make one
- Read the person's draft and notes, and the layout they name (Layouts, below).
- Write
paper.jsonin their folder: title, authors, abstract, keywords, sections and references, each reference with its record (key, authors, title, venue, year, doi or arxiv) and cited in the text as\cite{key}. The shape is at the top ofscripts/build_paper.py. Build it there:
python3 <skill folder>/scripts/build_paper.py paper.json paper.tex --template ieee-conference --pdf--template acm-sigconffor ACM. It writespaper.texandpaper.pdfand finds the TeX engine itself, fetching it once when the computer has none. Never look for LaTeX yourself and never print the paper another way (reportlab, a Word export, HTML): a PDF without the builder'spaper.texbeside it fails the check. To change the paper, change the JSON and build again.- With the person's own template, keep their
.texand build it withpython3 <skill folder>/build_paper.py paper.tex(Build, below). - Run the pack check (The check is the finish line, below) and fix what it names.
Rules
- Write a real file, never an outline in chat. Deliver two files together
in the folder the person asked for:
paper.pdfand thepaper.texit was built from. A PDF handed over without its source cannot be revised or checked, so never copy only the PDF. - Template first. If the person supplied a template or class file, use it and keep its document class line, its package list and its section skeleton. Otherwise write the paper as a JSON of sections and build it with the builder ("Build it with the builder" below): it puts the starter's preamble in, and the check fails a paper it did not build. Never hand-fill the starter's .tex. Never restyle a publisher's layout by hand: margins, fonts and columns come from the class.
- Never hand back a paper that does not build. Build, read the error, fix the source, build again.
- Every reference is real. Take references from the person's material or
from
literature-search, never from memory. A reference you cannot confirm is left out and mentioned in your reply. - Every number comes from the person's material or a cited paper. A result that is not measured yet is written as not yet measured, never as a placeholder that reads as real.
- Keep the person's caveats and limits.
- The method says what the person's material says, and no more. A setting, a count, a procedure or a claim about the runs that the material does not state (how a check reached the model, a temperature, that runs were deterministic) is asked about, never filled in.
- Copy each paper's DOI, arXiv id or URL from its record into its entry. The check looks each one up and fails an entry with no identifier or an author its record does not list.
- A sentence about the field or about others' work ("recent work shows", "models like X often") cites its source in that sentence or the next. Without a source in the list, write only what the person's material says; the check fails an uncited claim.
Layouts
| Asked for | Starter | Notes |
| IEEE conference | templates/ieee-conference/paper.tex | Two columns, numbered references in order of first citation, Index Terms after the abstract |
| ACM conference | templates/acm-sigconf/paper.tex | Two columns, CCS Concepts and Keywords after the abstract, numbered references; acmart 2.20 ships beside it and the builder puts it next to the .tex |
| The person's own template | their file | One template supplied: use it without asking. Several: ask which. |
| No layout named | ask once, in plain words, which journal or conference it is for; if they do not know, use the IEEE conference starter |
Blind review
When the paper is for review, or the person says blind, anonymous or double-blind:
- IEEE: keep the starter's author block, "Anonymous Author(s)".
- ACM: keep
[sigconf,anonymous,review]. - No names, organisations, emails, grant numbers or acknowledgments anywhere, including the PDF's document properties.
- Refer to your own earlier work in the third person ("Lee et al. showed"), never "our earlier work".
- Tell the person the names were left out and how to get the named version.
Build
python3 <skill folder>/build_paper.py paper.texThe first paper on a computer needs the internet once and takes about a minute while the layout files are fetched; later papers take seconds. Say so in one plain sentence before the first build, for example "Putting the paper into the conference layout, the first time takes about a minute."
It prints ok, the PDF path and the page count, or the first error with its
line and a hint. Fix that line and build again. Common causes:
| Message | Cause |
| Undefined control sequence | a command whose package is not loaded |
| Missing $ inserted | _, ^ or % in text; write \_, \^{}, \% |
| File not found | a figure or file that is not beside the paper |
| Citation undefined | a \cite{key} with no \bibitem{key} |
In text, escape & % $ # _ { } with a backslash. Use -- for a number
range and ``quotes''.
If the build reports no_engine, say plainly that this computer cannot make
the PDF yet and offer the same paper as a Word file in the layout's page
setup. Do not pretend the paper is finished.
Writing it
- Abstract first, one paragraph, no citations. Then Index Terms (IEEE) or CCS Concepts and Keywords (ACM). Then numbered sections, ending with the references. A submission always has its title, abstract and keywords, even when the person asked you to write only some sections: write a short abstract of what those sections say and never delete these from the starter.
- References go in the file's own reference block, one
\bibitemper work, in order of first citation, written withpapers.py cite ieee <id>or from the person's list. Cite with\cite{key}; several at once as\cite{a,b}. - Journal names are italic (
\emph{}), article titles in quotation marks for IEEE. - A Conclusion that restates a finding cites it again, and never states it more strongly than the body did: an association stays an association and mixed evidence stays mixed.
- Keep each reference's title in the language and wording of its record, and take the year from the record, never from memory.
- Label every table and figure and refer to it by number, never "the table below". Reference only image files that exist.
- Respect the page limit the person or the venue gives. The build prints the page count; cut text, never shrink the font or margins.
Before handing back
- The build says
ok, the page count is within the limit, and bothpaper.pdfandpaper.texare in the folder the person asked for. - Open the PDF text: no
[?], no??, no placeholder words from the starter (TITLE OF THE PAPER, TEXT, first keyword). - Every citation number has a reference and every reference is cited.
- For blind review, search the PDF for each author name, organisation and email. None may appear.
- Run
papers.py verifyon every DOI in the references.
On a revision, change what was asked everywhere it appears, rebuild, and check the page count again.
Build it with the builder
Build the PDF with scripts/build_paper.py against the starter in templates/, not with hand rolled LaTeX. The starter carries the Times family for text and for math, which the paper checks look for, and a hand built preamble is how a paper ends up in Computer Modern.
python3 <skill folder>/scripts/build_paper.py paper.json paper.tex --template ieee-conference --pdfIt writes paper.tex and paper.pdf beside the JSON. paper.json holds the title, authors,
abstract, keywords, sections and references; scripts/build_paper.py shows its shape. Give each
reference its record from literature-search (key, authors, title, venue, year, doi or arxiv) and
cite it as \cite{key}. --template acm-sigconf for ACM. Never edit the .tex it writes: change
the JSON and build again.
The engine ships with the app
The kit carries the pinned TeX engine and the package cache the templates need:
Resources/tectonic/bin/tectonic the engine, version pinned at build time
Resources/tectonic/bundle the packages, built at build timeUse those and set the cache to the shipped bundle, so a paper builds with no network:
TECTONIC_CACHE_DIR="<resources>/tectonic/bundle" "<resources>/tectonic/tectonic" --outdir . paper.texFall back to a system tectonic only when the bundled one is absent.
The check is the finish line
Before you answer, run the pack check on what you produced:
python3 <skill folder>/../_checks/packcheck.py paper <your output>It prints one FAIL line per rule with the evidence. Fix what it names and run it again, at most three times. The turn does not end on a fail: if it still fails after three tries, say plainly which rules fail and what you tried, and leave the file in place. A clean run prints "pack check clean".
Say what passed, not more
Tell the person which checks the file passed and against which source and version. Never call the file certified, compliant or approved, and give no legal, tax or accounting advice.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

