Tabella
Document lifecycle for agents in one package: create .docx/.xlsx/.pptx/.pdf/.odt/.ods/.odp from structured JSON or raw HTML/CSS, convert between formats via pandoc + LaTeX, and read any document — anydoc (Rust, office formats and text PDFs to Markdown, in-process) with LiteParse + Tesseract OCR fallback for scanned PDFs and images, plus PDF text editing with output-directory guards. Ships as an Agent Plugins v1 package (auto-discovered plugin.json + mcp.json declaring a stdio MCP server — the client spawns it per the v1 lifecycle, PLUGIN_ROOT/PLUGIN_DATA injected — plus an optional self-host streamable-HTTP server; first run of either bootstraps the dependency venv). The HTTP lane binds to 127.0.0.1 only and requires Bearer auth out of the box: a random token is generated into PLUGIN_DATA on first run (TABELLA_TOKEN overrides); requests with an Origin header or a non-JSON body are rejected, and model-supplied HTML cannot fetch network or local-file resources (data: URIs only — the same fetcher now also guards CSS input, not just HTML). Pandoc invocations are argument-safe: extra_args is allowlisted (--toc, --number-sections, -V key=value) and from_format/to_format are validated against the built-in format-name grammar (^[a-z0-9_]+([+-][a-z0-9_]+)*$), closing pandoc's *.lua reader/writer code-exec path; both servers re-exec into the dependency venv after bootstrap.
Good to know before installing
Python deps (python-docx, openpyxl, python-pptx, weasyprint, odfpy, Pillow, lxml, PyMuPDF, firecrawl-anydoc, liteparse — 10 direct packages, transitives included in a 25-package closure) are pinned to exact versions with sha256 hashes in requirements-pinned.txt and installed with --require-hashes into a venv under PLUGIN_DATA or ~/.venvs/docs (scripts/setup.sh on Linux/macOS; on Windows the venv is built with the standard library's venv module — no bash or MSYS2 needed); system pandoc is required for conversion, a TeX engine (e.g. texlive-xetex) only when the output format is PDF (weasyprint for HTML->PDF); OCR needs the tesseract binary (UB-Mannheim build on Windows); all conversion, reading, OCR and PDF editing run locally with no network or telemetry; nothing is uploaded; read, convert, and PDF-edit tools access exactly the filesystem paths you pass; doc_create_document additionally containment-checks its output paths against the configured output directory (escape warns). Linux and Windows are CI-tested platforms (five-lane smoke battery on windows-latest: stdio lifecycle through a natively bootstrapped venv, create, read, pdf-from-html via the GTK runtime, pandoc convert).
From the plugin's catalog listing.
How to install
- Install it. Hermes asks for any API keys it needs, then asks whether to turn it on.
hermes plugins install tabella - Said no? Turn it on later:
hermes plugins enable tabella - Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide (opens in a new tab).
- Category
- Memory & notes · Work & business
- Maintained by
- dyiapanis (Community)
- Needs
- No API keys declared
- Adds tools
doc_readdoc_read_metadoc_convertdoc_create_documentdoc_edit_pdf- Works on
- linux, windows
- Needs Hermes
- 0.21 or newer
- Version
- 2.0.2
- In the catalog
- 2026-10-18, updated 2026-10-23
- GitHub stars
- 2
Full setup & settings ↗Source code ↗
More in memory & notes
New Hermes Agent updates every day on X. Follow @HermesWatcher