@jolter/jdt, and the Jolter registry.
Plugin request syntax
latest. Scoped names use the selector after the package name, not the scope.
JDT commands
Install the toolkit:jdt pack writes:
Root manifest
Root manifests live atplugin.json in the GitHub repository root.
| Field | Type | Meaning |
|---|---|---|
$schema | string | Optional, must be https://schemas.jolter.dev/plugin/v1/schema.json when present |
schemaVersion | integer | Must be 1 |
name | string | Canonical scoped plugin name, for example @example/example |
displayName | string | Optional human name |
description | string | Required summary |
keywords | string array | Optional search keywords |
homepage | string | Optional URL |
repository.type | string | Must be git |
repository.url | string | GitHub HTTPS URL for the selected repository |
license | string | License identifier or text |
readme | string | Relative README path |
icon | string | Optional relative icon path |
categories | string array | Optional registry categories |
supports.jolter | string | Supported Jolter version range |
links | object | Optional named links |
provides.tools | object | Tool declarations used by JDT and registry previews |
permissions | object | Optional permission declaration copied into release manifests |
Release manifest
Release manifests are generated asdist/plugin.release.json.
| Field | Type | Meaning |
|---|---|---|
$schema | string | Optional, must be https://schemas.jolter.dev/plugin-release/v1/schema.json when present |
schemaVersion | integer | Must be 1 |
name | string | Canonical plugin name |
version | string | Plugin release version generated by JDT |
repository.type | string | Must be github |
repository.owner | string | GitHub owner |
repository.repo | string | GitHub repository |
release.tag | string | GitHub tag, usually v<version> |
release.commit | string | Source commit |
jolter.minimumVersion | string | Minimum Jolter version |
jolter.apiVersion | string | Plugin API version |
entrypoint.type | string | Must be wasm |
entrypoint.path | string | WASM asset name |
provides.tools | object | Tool definitions and command names |
permissions | object | Declared plugin permissions |
artifacts.wasm.file | string | WASM asset name |
artifacts.wasm.sha256 | string | Expected WASM SHA-256 |
artifacts.wasm.size | integer | Expected WASM byte length |
v<version>. The release must contain plugin.release.json, the WASM file named by the manifest, and checksums.txt.
WIT world
TypeScript API
resolveTool may return stable versions such as 1.0.0 or prerelease versions such as 1.0.0-rc.1 for the tool release. Plugin release manifests produced by JDT should use normal stable release versions.
Jolter CLI
Environment variables
| Variable | Purpose |
|---|---|
JOLTER_REGISTRY_URL | Override the plugin registry API origin |
JOLTER_HOME | Select the storage root for plugins and plugin tools |
JOLTER_OFFLINE | Forbid network requests; plugin operations need cached or installed state |
Register release action
Usejolterjs/register-release-action@v1 after a GitHub release is published.
Inputs:
| Input | Required | Meaning |
|---|---|---|
registry-url | Yes | Registry API origin, usually https://registry.jolter.dev |
plugin-name | Yes | Canonical plugin name or approved alias |
github-token | Yes | Repository-scoped GitHub token |
version | No | Semantic version override |
release-tag | No | GitHub release tag override |
registered=false.