Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Meta-Harness Language (MHL)New to Visual Studio Code? Get it now.
Meta-Harness Language (MHL)

Meta-Harness Language (MHL)

mhl-language

|
1 install
| (0) | Free
Syntax highlighting, diagnostics, completion and navigation for Meta-Harness Language (.mh) AI agent pipelines.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Meta-Harness Language (MHL) for VS Code

MHL (Meta-Harness Language, .mh) is a declarative language for describing AI agent pipelines. A program declares the pieces — agents, tools, memory, prompts, MCP servers, and typed data (type / enum) — and the pipelines or workflows that wire them together into an ordered run. See the language reference.

Features

  • Syntax highlighting for .mh files, and for MHL code blocks in Markdown
  • Diagnostics as you type
  • Completion and signature help
  • Go-to-definition (F12 / Cmd+click) across imports and aliases
  • Find references
  • An optional MHL File Icons theme that keeps every Seti icon and adds .mh

Syntax highlighting works on its own. Everything else is served by mhl lsp, the language server built into the mhl CLI, so it needs the CLI installed.

Requirements

Install the mhl CLI.

macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/mh-language/mhl-core-runtime/main/install.sh | sh

Windows (PowerShell):

irm https://raw.githubusercontent.com/mh-language/mhl-core-runtime/main/install.ps1 | iex

Published binaries cover linux-amd64, linux-arm64, darwin-arm64 (Apple Silicon), windows-amd64 and windows-arm64. There is no Intel Mac binary. Other install options are in the project README.

Then run MHL: Restart Language Server from the Command Palette.

Settings

Setting Default Description
mhl.serverPath mhl Path to the mhl binary. ${workspaceFolder} is expanded, e.g. ${workspaceFolder}/src/mhl-runtime/dist/mhl.

After changing it, run MHL: Restart Language Server.

Workspace Trust

The language server only reads your files: it never runs agents, tools, or extensions. In Restricted Mode it keeps working, but mhl.serverPath comes only from your user settings and ${workspaceFolder} is ignored, so an untrusted folder cannot choose which binary runs. Trusting the folder restarts the server with your full settings.

MHL in Markdown

Use a fenced code block tagged with mhl (or mh):

```mhl
agent Local {
    command: "echo"
}

pipeline Example {
    step Run {
        log(Local.run(prompt: "Olá"))
    }
}
```

The Markdown document keeps its normal highlighting, while the contents of the fence use the same grammar as .mh files. This is syntax highlighting only: the language server targets .mh documents, not Markdown code blocks.

Other editors

The extension is also on the Open VSX Registry, so editors that use Open VSX (VSCodium, Cursor, Windsurf, Gitpod, Eclipse Theia) can install it by searching for Meta-Harness Language (MHL) in the Extensions view.

Development

From vscode-mhl/ in the repository:

npm install
npx @vscode/vsce package   # builds mhl-language-<version>.vsix

Install the VSIX with Extensions → ⋯ → Install from VSIX..., or run ./install.sh to do both steps. To work on the extension, open this directory in VS Code and press F5 to launch an Extension Development Host. Build the language server with make build in src/mhl-runtime.

To release, set the new version in package.json, add it to CHANGELOG.md, and push a tag named extensions-v<version>.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft