Will.hou

LaTeX Compiler

开发编程v1.0.6
作者:Will.hou更新于 2026-05-11共 7 个版本 · 最新版本发布于 2026-03-16latex-compiler@clawhub_willamhou/latex-compiler
脚本工具#PDF

据 AlphaMoat 统计,截至 2026-09,LaTeX Compiler 累计下载 1,963 次、获 0 个星标,在全部 5,078 个 AI 技能中排名第 4,455 位,在「开发编程」分类(577 个)中排名第 533 位。

累计安装
452
累计下载
1,963
星标
-
全站排名
#4,455
全站前 88% · 「开发编程」前 93%
平台累计安装累计下载星标评论
ClawHub ↗321,307--
SkillHub ↗4521,963-—

各平台的计数口径不同,统计时间不一致。

这个技能是做什么的

它支持 pdflatex、xelatex、lualatex、起始模板、biber 参考文献和多轮编译。PDF 保存在容器内,可通过 base64 取回预览。依赖文档所述本地服务;服务不可达时返回错误而不回退。运行前应审查容器配置,所描述数据流程不读取宿主文件或凭据。

资料发布于 2026-10-27

可以用来做什么

  • 编译提供的 LaTeX 内容并预览 PDF

什么时候用

  • 本地编译服务已可用,需要将 LaTeX 文档输出为 PDF 时

示例提示词

以下是根据技能文档生成的示例,不代表实际运行结果。

检查可用模板,编译这份提供的源码,返回 PDF 预览以及错误或警告。

月度数据趋势

累计下载1,963
5411,3052,0682026-03 · 累计下载 6462026-05 · 累计下载 9892026-06 · 累计下载 1,1042026-07 · 累计下载 1,3122026-08 · 累计下载 1,4782026-09 · 累计下载 1,96326-0326-09
星标-
0112026-03 · 星标 -2026-05 · 星标 -2026-06 · 星标 -2026-07 · 星标 -2026-08 · 星标 -2026-09 · 星标 -26-0326-09

2026-09 起统计方法调整:同名技能按作者分别统计,并覆盖全部技能。图中虚线为调整前的月份,与之后的数据不直接比较,也不计算跨越调整的增长。

月份累计下载环比星标
2026-091,963—-
2026-081,478+12.7%-
2026-071,312+18.8%-
2026-061,104+11.6%-
2026-05989—-
2026-03646—-

SKILL.md 原文

以下是作者发布的原始文件,按纯文本显示,本站未做修改或审核;其中的链接不可点击,命令请核实后再运行。抓取于 2026-10-23。

5.1 KB · ClawHub v1.0.6
---
name: latex-compiler
description: Compile LaTeX documents to PDF using pdflatex, xelatex, or lualatex with template support
metadata:
  openclaw:
    emoji: 📝
    tags: [latex, pdf, academic, writing, compilation]
    source: https://github.com/Prismer-AI/Prismer
    homepage: https://github.com/Prismer-AI/Prismer
    requires:
展开全部(共 126 行)
      bins: []
      os: [darwin, linux, win32]
      runtime: node
      services:
        - name: prismer-latex-server
          port: 8080
          description: LaTeX compilation server bundled in the Prismer container
          source: https://github.com/Prismer-AI/Prismer/tree/main/docker/base
---

# latex-compiler

Compile LaTeX documents to PDF. Accepts LaTeX source as content strings and returns compiled PDF via base64 or container-internal path.

## Prerequisites

This skill requires a LaTeX compilation server listening on `localhost:8080`. The Prismer project provides one as part of its container setup.

**Source & review:** The container source is at [github.com/Prismer-AI/Prismer/tree/main/docker/base](https://github.com/Prismer-AI/Prismer/tree/main/docker/base) (Apache-2.0). Before running, review the [Dockerfile](https://github.com/Prismer-AI/Prismer/blob/main/docker/base/Dockerfile) and [docker-compose.dev.yml](https://github.com/Prismer-AI/Prismer/blob/main/docker/docker-compose.dev.yml) to verify:
- No host filesystem volumes are mounted (the dev compose only maps ports)
- The container runs as a non-root user
- Only port 16888 (gateway) is exposed to the host

If the container is not running, all tool calls will fail with a connection error. The skill does not fall back to other local services or retry on different ports.

## Description

This skill sends LaTeX source strings via HTTP POST to `localhost:8080`. It supports pdflatex, xelatex, and lualatex engines, bibliography processing via biber, multi-pass compilation for cross-references, and starter templates.

**Data flow:** The skill sends only LaTeX content strings (from tool parameters) to the container via HTTP. It does not read host files, environment variables, or credentials. Output PDFs are generated inside the container at `/home/user/output/reports/` (container-internal path, not host-mounted). Use `latex_preview` to retrieve PDFs as base64 — no host filesystem mount is involved.

## Usage Examples

- "Compile this LaTeX document to PDF"
- "Preview the PDF output of my paper"
- "What LaTeX templates are available?"
- "Give me the IEEE template"
- "Compile this with xelatex for Chinese support"

## Process

1. **Choose template** — Use `latex_templates` to see available templates, then `latex_get_template` to get starter content
2. **Write LaTeX** — Edit the source document
3. **Compile** — Use `latex_compile` to generate the PDF (saved in container)
4. **Preview** — Use `latex_preview` to get an inline base64 PDF for display

## Tools

### latex_compile

Compile LaTeX source to PDF. The PDF is saved inside the container.

**Parameters:**
- `content` (string, required): Full LaTeX source code
- `filename` (string, optional): Output filename stem (default: `document`)
- `engine` (string, optional): `pdflatex` | `xelatex` | `lualatex` (default: `pdflatex`)
- `bibliography` (string, optional): BibTeX/BibLaTeX content (triggers biber)
- `runs` (number, optional): Compilation passes (default: 2 for cross-references)

**Returns:** `{ success, pdf_path, log, errors, warnings, compile_id }`

**Example:**
```json
{ "content": "\\documentclass{article}\\begin{document}Hello\\end{document}", "engine": "pdflatex" }
```

### latex_preview

Compile LaTeX source and return the PDF as base64 for inline preview.

**Parameters:**
- `content` (string, required): Full LaTeX source code
- `filename` (string, optional): Output filename stem (default: `document`)
- `engine` (string, optional): `pdflatex` | `xelatex` | `lualatex` (default: `pdflatex`)
- `bibliography` (string, optional): BibTeX/BibLaTeX content (triggers biber)

**Returns:** `{ success, pdf_base64, pdf_path, log, errors, warnings, compile_id }`

**Example:**
```json
{ "content": "\\documentclass{article}\\begin{document}Hello\\end{document}" }
```

### latex_templates

List available LaTeX templates and supported engines.

**Parameters:** None

**Returns:** `{ templates: string[], engines: string[] }`

### latex_get_template

Get the LaTeX source of a starter template.

**Parameters:**
- `name` (string, required): Template name — `article`, `article-zh`, `beamer`, `ieee`

**Returns:** `{ name, content }`

**Example:**
```json
{ "name": "ieee" }
```

## Notes

- Chinese documents (`article-zh`) require `xelatex` or `lualatex` engine
- Compilation timeout is 120 seconds per run
- Multi-pass compilation (default 2 runs) resolves cross-references and TOC
- If `bibliography` is provided, biber runs automatically between passes
- PDFs are saved to `/home/user/output/reports/` **inside the container** (not on the host)
- Use `latex_preview` to get PDF as base64 without needing host filesystem access
- No host filesystem mounts are required — all I/O is via HTTP to the container
- If localhost:8080 is unreachable, tools return a connection error (no fallback to other services)

「开发编程」分类下的热门技能

数据月份:2026-09 · 下载/星标/安装数聚合自公开技能注册库(ClawHub、SkillHub),按月更新。口径说明见数据方法。