Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Latex Academic Writing Assistant

ASecurity

Professional LaTeX writing assistant. Capabilities include: scanning existing LaTeX templates, reading reference materials (Word/Text), drafting content strictly following templates, and compiling PDFs. Triggers include: 'write thesis', 'draft section', 'compile pdf', 'check lat…

19 stars
0 votes
0 copies
0 views
Added 9/19/2026
ai-agentspythongobash

Works with

terminal

Security Analysis

A96/100
mediumInstalls packages at runtime which could introduce malicious dependencies

Scanned 9/19/2026

Install to Claude Code

$npx -y skills add rondoflow/rondoflow --skill latex-academic-writing-assistant --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Latex Academic Writing Assistant?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Latex Academic Writing Assistant
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/rondoflow-latex-academic-writing-assistant/badge)](https://www.skillsdirectory.com/skills/rondoflow-latex-academic-writing-assistant)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: latex-academic-writing-assistant
description: "Professional LaTeX writing assistant. Capabilities include: scanning existing LaTeX templates, reading reference materials (Word/Text), drafting content strictly following templates, and compiling PDFs. Triggers include: 'write thesis', 'draft section', 'compile pdf', 'check lat…"
category: "Content & Writing"
author: community
version: "0.1.0"
icon: pencil
---

# Academic Writer & LaTeX Composer

A comprehensive agent skill for orchestrating academic paper writing in a WSL2/Linux environment. It manages the lifecycle from template analysis to PDF compilation.

⚠️ **Prerequisite:** This skill requires a full LaTeX distribution and Python 3.

## Installation & Setup

Since you are running this in WSL2 (Ubuntu), you must install both system-level LaTeX packages and a Python virtual environment for the worker script.

### 1. System Dependencies (LaTeX)
Open your WSL terminal and run:

```bash
# Update package lists
sudo apt-get update

# Install the full TeX Live distribution (Required for all templates)
# Warning: This download is approx 4GB-7GB
sudo apt-get install texlive-full

# Install latexmk for automated compilation
sudo apt-get install latexmk
```

### 2. Python Environment & Dependencies
It is best practice to use a virtual environment to avoid conflicts.

```bash
# Go to your skill directory
cd ~/.openclaw/skills/academic-writer

# Create a virtual environment
python3 -m venv venv

# Activate the environment
source venv/bin/activate

# Install required Python packages
# python-docx: For reading Word documents
pip install python-docx
```

---

## Quick Reference

| Task | Tool Command |
|------|--------------|
| **Analyze Project** | `scan_template` |
| **Read Notes** | `read_reference` |
| **Draft Content** | `write_latex` |
| **Generate PDF** | `compile_pdf` |
| **Find Citations** | *Delegate to `academic-research-hub`* |

---

## System Instructions & Workflow

**Role:** You are an expert Academic Writer and LaTeX Typesetter.

**Primary Objective:** Create high-quality academic PDFs by strictly adhering to provided templates and user content.

### Core Logic Steps

#### 1. Initialization (Template Enforcement)
*   **Action:** Always start by calling `scan_template` on the current directory.
*   **Logic:**
    *   **If a template exists (e.g., IEEE, ACM, local .cls files):** You MUST respect the class structure. Do not change the preamble unless necessary for a new package.
    *   **If no template exists:** Ask the user if they want to generate a standard `article` structure.

#### 2. Context Loading (Reference Material)
*   **Action:** If the user mentions input files (e.g., "use my notes.docx" or "reference draft.txt"), call `read_reference`.
*   **Logic:** Use this content as the "Ground Truth" for your writing. Do not hallucinate facts outside of the provided context or external research.

#### 3. Literature Search (Cross-Skill Delegation)
*   **Trigger:** When you need to support a claim with a citation and the user hasn't provided it.
*   **Action:** **DO NOT** make up citations. Instead, instruct the agent to use the **`academic-research-hub`** skill.
*   **Protocol:**
    1.  Pause writing.
    2.  Invoke search (e.g., "Find papers on X using academic-research-hub").
    3.  Get the BibTeX.
    4.  Resume writing: Append BibTeX to the `.bib` file using `write_latex` (mode='a') and use `\cite{key}` in the text.

#### 4. Writing & Compilation
*   **Action:** Use `write_latex` to create `.tex` files.
*   **Action:** After finishing a significant section, call `compile_pdf`.
*   **Error Handling:** If `compile_pdf` returns an error log, analyze it, fix the LaTeX syntax, and re-compile.

---

## Tools Definition

### tool: scan_template
Analyzes the current directory to identify LaTeX structure, main files, and templates.
- **command**: `${PYTHON_CMD} scripts/writer_tools.py scan_template {{directory}}`
- **params**:
  - `directory`: (string) Path to scan. Default is ".".

### tool: read_reference
Reads raw text from reference files. Supports `.docx`, `.txt`, `.tex`, `.md`.
- **command**: `${PYTHON_CMD} scripts/writer_tools.py read_reference {{filepath}}`
- **params**:
  - `filepath`: (string) Path to the reference file.

### tool: write_latex
Writes content to a specific file. Can overwrite or append.
- **command**: `${PYTHON_CMD} scripts/writer_tools.py write_latex {{filename}} {{content}} {{mode}}`
- **params**:
  - `filename`: (string) Target filename (e.g., "introduction.tex").
  - `content`: (string) Raw LaTeX content.
  - `mode`: (string) "w" for overwrite, "a" for append. Default is "w".

### tool: compile_pdf
Compiles the project using `latexmk`. Returns success message or error logs.
- **command**: `${PYTHON_CMD} scripts/writer_tools.py compile_pdf {{main_file}}`
- **params**:
  - `main_file`: (string) The root TeX file (e.g., "main.tex").

---

## Common Workflows

### 1. The "Strict Template" Flow
Use this when the user provides a conference template (e.g., IEEEtrans).

1.  **User:** "Draft the intro using `notes.docx` in this folder."
2.  **Agent:** Calls `scan_template` -> Detects `main.tex` (IEEE class).
3.  **Agent:** Calls `read_reference` -> Gets content from `notes.docx`.
4.  **Agent:** Calls `write_latex` -> Writes `intro.tex` following IEEE style.
5.  **Agent:** Calls `write_latex` -> Updates `main.tex` to `\input{intro}`.
6.  **Agent:** Calls `compile_pdf` -> Checks for layout errors.

### 2. The "Research & Write" Flow
Use this when the user needs external citations.

1.  **User:** "Write a paragraph about LLM Agents and cite recent papers."
2.  **Agent:** *Thinking:* "I need citations."
3.  **Agent:** **Calls `academic-research-hub`** (e.g., search arXiv for "LLM Agents 2025").
4.  **Agent:** Receives BibTeX data.
5.  **Agent:** Calls `write_latex` (mode='a') -> Appends to `references.bib`.
6.  **Agent:** Calls `write_latex` -> Writes paragraph with `\cite{...}`.
7.  **Agent:** Calls `compile_pdf`.

---

## Troubleshooting

### Compilation Failures
*   **Error:** `latexmk: command not found`
    *   **Fix:** Ensure you ran `sudo apt-get install latexmk`.
*   **Error:** `! LaTeX Error: File 'article.cls' not found.`
    *   **Fix:** Ensure you ran `sudo apt-get install texlive-full`.
*   **Error:** `! Package citation Error`
    *   **Fix:** Run the compilation twice, or ensure `latexmk` is used (it handles re-runs automatically).

### Python Errors
*   **Error:** `ModuleNotFoundError: No module named 'docx'`
    *   **Fix:** Ensure you activated the venv and ran `pip install python-docx`.

Attribution

rondoflowrondoflow
View sourceMore from rondoflow →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1074701 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

693621 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

691 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →