Language support¶
ESML is a polyglot project. This page lists every language we support in the repo, the LSP server used for code intelligence, the formatter and linter, and the command that installs it.
Matrix¶
Language |
LSP server |
Formatter |
Linter |
Install |
|---|---|---|---|---|
Python |
|
|
|
|
Rust |
|
|
|
|
C |
|
|
|
|
C++ |
|
|
|
|
Go |
|
|
|
|
JavaScript |
|
|
|
|
TypeScript |
|
|
|
|
R |
|
|
|
|
Bash |
|
|
|
|
Zsh |
|
|
|
|
POSIX shell |
|
|
|
|
SQL |
|
|
|
|
Lua |
|
|
— |
|
One-shot install¶
bash scripts/setup_lang_support.sh all
Post-edit formatter hook¶
Whenever Claude Code edits a source file in this repo, a PostToolUse hook
dispatches the matching formatter + linter automatically. The hook is defined
in .claude/settings.json and the dispatch script lives at
.claude/hooks/lang_format.sh.
If a formatter is not installed, the hook warns and continues — it never
blocks the edit. Run /esml-lang-setup <lang> to install the missing tool.
Model Context Protocol servers¶
Project-scoped MCP servers are declared in .mcp.json at the repo root:
Name |
Purpose |
Auth |
|---|---|---|
|
File ops scoped to |
none |
|
Read-only queries against |
none |
|
Structured git operations beyond plain Bash |
none |
|
Issues and PRs on the EpiNodes org |
|
|
HTTP fetch for CKAN API and docs |
none |
|
Alternative persistence store for Perseus |
none |
Skills¶
Custom ESML skills live under .claude/skills/esml-*/SKILL.md:
/esml-lang-setup <lang,...>— install tooling for one or more languages/esml-lang-check [staged|all]— run the lint+format matrix over changed files/esml-perseus-vision [plan|scaffold|status]— scaffold the Perseus vision feature/esml-polyglot-add <lang>— add a new language backend to the REPL polyglot mode/esml-frontend <cmd> <surface>— frontend design via the vendored Impeccable skills
Eighteen additional frontend design skills live under .claude/skills/ —
impeccable, audit, polish, critique, layout, typeset,
colorize, animate, delight, adapt, bolder, clarify,
distill, harden, optimize, overdrive, quieter, shape —
vendored from https://github.com/pbakaus/impeccable (Apache 2.0).