Who it is forA paper author with a local LaTeX repo who wants a comfortable reading surface and wants feedback kept out of chat windows.
The problemReviewing with a coding agent usually means compiling a PDF and copying quotes and comments back into a chat by hand, so the manuscript and the feedback never sit in the same place.
The outcomeComments, Edit-mode changes, and Review-mode proposals are saved as independent files under .pairtex/feedback/ while the original TeX stays untouched.
What you need first
- Python 3 installed to run pairtex.py (standard library only)
- A local LaTeX project in a Git repository
- A rendered HTML file of the manuscript, produced by the default make4ht renderer or an adapter
- A coding agent of your choice to consume the feedback files
Steps
- Ask your coding agent to render the repo with the PairTeX skill, or run
python3 pairtex.py --project /path/to/paper --html /tmp/pairtex-rendered/main.html --port 8765after rendering the HTML yourself. (inferred, check the README) - Open the URL printed by PairTeX in your browser.
- Add comments, Edit-mode changes, or Review-mode proposals in the HTML page.
- Check that the entries appear under /path/to/paper/.pairtex/feedback/.
Prompt for your agent
Read and follow skills/pairtex-agent/SKILL.md in the PairTeX repo. Render the LaTeX repository at <paper-path> into a disposable HTML projection and start the local PairTeX view. Report the URL, source HEAD commit, dirty state, render command, and HTML output path, and confirm that no canonical source file changed.
Caveat. The HTML view is a disposable projection that you must re-render after each TeX change, and PairTeX does not synchronize projections between users.
Get 5 new use cases every morning. Free, one short email, unsubscribe anytime.
Get them freeShare: X LinkedIn Hacker News Email Copy link
Disclaimer
Deduped lists open-source repositories that belong to other people. We do not own, maintain, audit, or vouch for any of them, and a repo appearing here is not an endorsement or a safety check. The use cases, steps, and prompts are written by AI and may be incomplete, outdated, or just wrong. Where a use case is marked "Seen in the wild", we link to public posts where someone described something similar, but we have not verified those posts and the use case itself is still our AI's own write-up. Use all of this at your own risk. Only run code, commands, or agents on systems and accounts you are authorized to use, and read the code and every command before you run it, especially anything that touches credentials, files, or the network. Nothing here is professional, security, legal, or financial advice. All trademarks and project names belong to their respective owners, and their use here does not imply affiliation. Content is provided as is, without warranties of any kind. Found a mistake, a safety problem, or something you want removed? Email [email protected] and we will look at it promptly. Full disclaimer page