Skip to main content
Glama

Helx

Die universelle Artefakt-Laufzeitumgebung für KI-Agenten. Eine Engine, die die Formate liest, erstellt, bearbeitet, validiert, diffed und rendert, mit denen Agenten tatsächlich arbeiten – DOCX, XLSX, PPTX, PDF, Markdown, HTML, CSV – plus Diagramme, Schaubilder, Vorlagen, Konvertierung zwischen Formaten und CSV-Datenoperationen. Auf drei Arten verfügbar:

  • CLIhelx für Menschen und Shell-Skripte

  • MCP-Server – 20 Tools über stdio für KI-Agenten (Claude, Cursor, etc.)

  • TypeScript-SDK – eine saubere Artifact-Fassade für Ihren eigenen Code

npm version license PRs welcome

one model, every file
create → read → edit → save → validate → diff → render → convert

Visuelle Galerie

Jedes unten gezeigte Artefakt wurde von Helx selbst erstellt und bearbeitet und dann von Helx in der Vorschau angezeigt. Klicken Sie auf eine Karte, um die Datei zu öffnen.

DOCX report

XLSX sales

PPTX deck

PDF quarterly

Markdown playbook

HTML landing

CSV customers

DOCX letter (template merge)

Diagram

Diagramme, erzeugt mit helx chart:

Revenue by region Trend Mix

Die Galerie wird von npx tsx scripts/make-gallery.ts erzeugt – sie öffnet jede Demo-Datei über das SDK und rastet eine gestaltete SVG-Vorschau mit @resvg/resvg-js in PNG um.

Related MCP server: LibreOffice MCP Tools

Warum Helx statt OfficeCLI

OfficeCLI ist ein starker Word/Excel/PPT-Editor für KI-Agenten. Helx geht weiter:

Fähigkeit

Helx

OfficeCLI

Formate

DOCX, XLSX, PPTX, PDF, Markdown, HTML, CSV

Nur Word, Excel, PPT

Konvertierung zwischen Formaten

helx convert report.docx report.md – DOCX↔MD/HTML/PDF, XLSX↔CSV/HTML/MD, PPTX→MD/HTML/DOCX, PDF→MD/HTML/DOCX, CSV↔XLSX

nein

Diagramme & Schaubilder

helx chart (Balken/Linie/Kreis/Donut/Fläche/Streuung), helx diagram (Mermaid-artige Flussdiagramme)

nein

Vorlagen

{{var}}/{{#each}}/{{#if}} + In-Place-DOCX-Zusammenführung

Nur DOCX-Zusammenführung

CSV-Datenoperationen

analyze, filter, sort, group, aggregate, profile, dedupe, clean

nein

PDF

erstellen, Text extrahieren, zusammenführen, aufteilen

nein

Rendering für die Agenten-Sicht

DOCX/XLSX/CSV→HTML, PPTX→SVG, PDF→Text, MD→HTML, Diagramme→SVG

Rendern → PNG

Schnittstellen

CLI + MCP (20 Tools) + TypeScript-SDK

CLI + MCP

Agentenpfade

einheitlich /p[2], /sheet[X]/cell[C3], css:.hero, ... über alle Formate

pro Format

Validierung & Diff

validate + semantisches diff auf jeder Engine

nein

Helx bietet außerdem stat (Dokumentstatistiken) und move (Absätze/Zeilen/Folien/Formen neu anordnen) über jede Schnittstelle.

Install

npm install -g helx        # CLI + MCP server
# or
npm install helx           # SDK for your own TypeScript/JavaScript project

Dann helx --help oder fügen Sie den MCP-Server zu Ihrem KI-Client hinzu:

{
  "mcpServers": {
    "helx": { "command": "helx", "args": ["mcp"] }
  }
}

Das war's – jedes KI-Modell oder jeder Agent (Claude, Cursor, Cline, LangChain, eigene Skripte) kann echte Office- und Webdokumente erstellen, lesen, bearbeiten und rendern.

Aus dem Quellcode erstellen

git clone https://github.com/Asno-dev/Helx.git
cd Helx
npm install
npm run build        # tsc → dist/
npm test             # 71 integration checks (tsx test/smoke.ts)

Node >= 18 (dynamischer ESM-Import erfordert >= 12.20; verifiziert auf Node 22).

Schnellstart (CLI)

# Create a DOCX from a JSON spec (type inferred from the extension)
helx create report.docx '{"title":"Q3 Report","paragraphs":["Revenue grew 20% to $52k."],"tables":[{"headers":["Metric","Value"],"rows":[["ARR","4.2M"]]}]}'

# Inspect the structure as a path-addressed tree
helx inspect report.docx

# Read / write a single value via an agent path
helx get report.docx "/p[1]"
helx set report.docx "/table[0]/row[1]/cell[1]" "4.5M"

# Insert / remove / move, then validate and render to HTML for a visual check
helx insert report.docx "/p[2]" '{"text":"New paragraph","style":"Heading 2"}'
helx remove report.docx "/p[4]"
helx move report.docx "/p[2]" "/p[5]" --after
helx stat report.docx
helx validate report.docx
helx render report.docx --out report-preview.html

# Cross-format conversion (any direction, any engine)
helx convert report.docx report.md
helx convert report.md report.pdf
helx convert sales.xlsx sales.csv
helx convert deck.pptx deck.md

# Spreadsheets
helx create data.xlsx '{"sheet":"Revenue","rows":[["Quarter","Amount"],["Q1","10"]]}'
helx get data.xlsx "/sheet[Revenue]/cell[B2]"
helx analyze data.csv
helx filter data.csv '{"col":"score","op":"gt","value":80}'

# Decks
helx create deck.pptx '{"title":"Investor Deck","subtitle":"Q3 2026","bullets":["Market size: $10B"]}'
helx get deck.pptx "/slide[0]/shape[1]"

# PDFs (create via model; merge/split for structure)
helx create a.pdf '{"title":"Doc A","sections":[{"heading":"Intro","text":"Hello."}]}'
helx merge merged.pdf a.pdf b.pdf
helx split page1.pdf merged.pdf --pages 1
helx extract merged.pdf

# Charts, diagrams, templates
helx chart '{"type":"bar","labels":["Q1","Q2"],"values":[10,12]}' --out chart.svg
helx diagram 'graph TD; A[Start] --> B[End];' --out diagram.svg
helx template 'Hello {{name}}' '{"name":"Ada"}'

# Run the MCP server (for AI agents)
helx mcp

Agentenpfade

Jedes Artefakt stellt einen stabilen, pfadadressierten Baum bereit, sodass Agenten jeden Wert lesen/schreiben können:

Format

Beispielpfade

DOCX

/p[2], /p[1]/text, /table[0]/row[1]/cell[0]

XLSX

/sheet[Revenue]/cell[C24], /sheet[0]/row[3]

PPTX

/slide[0]/shape[1], /slide[0]/shape[2]/text

PDF

/page[0], /page[0]/text

Markdown

/heading[0], /p[2]

HTML

css:h1, css:.summary > p

CSV

/row[3]/cell[1]

set, insert, remove und move verändern das Modell und save() schreibt es zurück in die Datei.

Konvertierung zwischen Formaten

convert arbeitet mit einem echten Inhaltsmodell – es ist keine String-Operation:

Von \ Zu

DOCX

XLSX

PPTX

PDF

MD

HTML

CSV

DOCX

XLSX

PPTX

PDF

MD

HTML

CSV

const md = await Artifact.create('markdown', { root: { children: [] } });
await md.insert('/node', { type: 'heading', depth: 1, text: 'Hello' });
const docx = await md.convertTo('docx');   // real DOCX bytes
const html = await docx.convertTo('html');

MCP-Server

helx mcp führt einen Model-Context-Protocol-Server über stdio aus. Er stellt 20 Tools bereit:

create_artifact, inspect, get, set, insert, remove, move, convert, stat, render, validate, diff, merge_pdf, split_pdf, extract, analyze_csv, filter_csv, chart, diagram, template

Die Tools basieren auf Dateisystempfaden – der Agent übergibt einen Dateipfad und einen JSON-Wert, und der Server liest, bearbeitet, speichert oder rendert das Artefakt. Registrieren Sie ihn in einem Client wie Claude Desktop:

{
  "mcpServers": {
    "helx": { "command": "node", "args": ["/path/to/helx/dist/cli/index.js", "mcp"] }
  }
}

TypeScript-SDK

import { Artifact, chartToSvg, dataFilter, renderTemplate } from 'helx';

// Create, edit, save
const doc = await Artifact.create('docx', {
  title: 'Report',
  paragraphs: ['Revenue grew 20% to $52k.'],
  tables: [{ headers: ['Metric', 'Value'], rows: [['ARR', '4.2M']] }],
});
await doc.set('/p[0]/text', 'Updated headline');
await doc.insert('/p[1]', { text: 'Inserted paragraph' });
const bytes = await doc.save();
await fs.writeFile('report.docx', bytes);

// Open any file, regardless of format
const art = await Artifact.open('data.xlsx', buffer);
console.log(await art.get('/sheet[Revenue]/cell[B2]'));
console.log(await art.inspect());

// Convert to another format, get stats, move elements
const md = await art.convertTo('markdown');
console.log(await art.stat());
await art.move('/sheet[Revenue]/row[3]', '/sheet[Revenue]/row[1]', 'before');

// Validation and diff
console.log(await art.validate());   // { status, issues[] }
console.log(await art.diff(other));  // DiffEntry[]

// Generator utilities
const svg = chartToSvg({ type: 'pie', labels: ['A', 'B'], values: [3, 7] });
const rows = dataFilter(data, { col: 'score', op: 'gt', value: 80 });
const out = renderTemplate('Hi {{name}}', { name: 'Ada' });

Außerdem exportiert: convertArtifact, canConvert, mergePdfs, splitPdf, dataProfile, dataSort, dataAggregate, dataDedupe, dataClean, parseDiagram, diagramToSvg, renderDocxTemplate, detectType, engineForFile, registerEngine, engines.

Architektur

src/
  core/
    types.ts        # shared model contracts (Engine, ArtifactModel, ValidationReport, ...)
    base.ts         # BaseEngine with typed dispatch for set/insert/remove/move
    paths.ts        # agent-path parser (/p[0], /sheet[X], css:..., /row[n]/cell[n])
    utils.ts        # LCS diff, diffText/diffSeqMerged, HTML document shell
    convert.ts      # cross-format converter (content-model based, 19 directions)
    index.ts        # engine registry + Artifact facade (create/open/save/...)
    engines/
      docx.ts       # paragraphs, heading styles, tables
      xlsx.ts       # sheets, cells, formula read-back
      pptx.ts       # slides, shapes, text boxes
      pdf.ts        # create (pdfkit), extract text (pdfjs-dist), merge/split (pdf-lib)
      markdown.ts   # remark/rehype round-trip
      html.ts       # cheerio DOM editing + css: selectors
      csv.ts        # rows + data ops: profile/filter/sort/group/aggregate/clean/dedupe
      chart.ts      # SVG charts (bar, line, pie, donut, area, scatter, grouped bar, stacked bar)
      diagram.ts    # mermaid-style flowchart → SVG
      template.ts   # {{var}}/{{#each}}/{{#if}} + in-place DOCX placeholder merge
  cli/index.ts      # helx CLI (commander)
  mcp/index.ts      # MCP stdio server (20 tools)
  sdk/index.ts      # public package surface
scripts/make-gallery.ts   # README gallery generator
examples/demo/            # all demo files created by Helx itself

Jede Datei-Engine implementiert einen Vertrag: read(bytes) → model, write(model) → bytes, plus create(spec), get/set/insert/remove/move(path), inspect(), validate(), diff(other), render(). Die Artifact-Fassade behält die ursprünglichen Bytes, sodass unveränderliche Formate (PDF) nach Bearbeitungen in andere Formate weiterhin round-trip-fähig sind.

Hinweise & Designentscheidungen

  • PDF ist modellbedingt unveränderlich: Textextraktion ist schreibgeschützt (pdfjs-dist; pdf-parse wurde verworfen, weil sein gebündeltes pdf.js 2.x die pdfkit-Ausgabe nicht parsen kann). Strukturoperationen verwenden pdf-lib: mergePdfs und splitPdf.

  • Rendert in HTML für die Sichtschleife des Agenten: DOCX/XLSX/CSV → HTML-Tabellen, PPTX → SVG pro Folie, PDF → Text pro Seite, Markdown → HTML, Diagramme/Schaubilder → SVG.

  • helx chart, helx diagram, helx template sind Generator-Dienstprogramme; sie sind keine registrierten Datei-Engines.

  • Konvertierung ist modellbasiert: Konverter lesen das echte Modell jedes Formats (DocxModel, XlsxModel, ...) und erzeugen die Spezifikation einer anderen Engine, sodass convert die Struktur erhält, anstatt Rohtext einzufügen.

Lizenz

Apache-2.0 – siehe LICENSE.

Mitwirken

Fehlerberichte, Feature-Anfragen und Pull-Requests sind willkommen. Siehe CONTRIBUTING.md für den Entwicklungsablauf, Konventionen und den Verhaltenskodex.

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Make videos and docs with your AI agent — describe what you need, every output stays editable.

  • Generate PDF/DOCX/XLSX/PPTX from templates+JSON. Convert Office/HTML/MD to PDF. Universal templating

  • Persistent docs and memory for AI agents — read, write, organize & search a shared workspace.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Asno-dev/Helx'

If you have feedback or need assistance with the MCP directory API, please join our Discord server