Skip to content

Manifest reference

Every package provides a plugin.toml manifest. The following flat form is suitable for a post-pitch package:

protocol = "amadeus.plugin/v1"
id = "com.example.pitch"
name = "Pitch adjustment"
version = "0.1.0"
role = "hook"
stage = "post_pitch"
runtime = "quickjs"
entry = "dist/plugin.iife.js"
order = 100
enabled_by_default = true
sha256 = "..."
FieldRequirementPurpose
protocolRequiredMust be amadeus.plugin/v1.
idRequiredStable package identifier.
nameRequiredUser-visible package name.
versionRequiredPackage version.
roleRequiredlanguage, hook, importer, or exporter.
stageHook onlyHook stage. Omit it for a language package.
runtimeRequiredquickjs for a JavaScript entry.
entryRequiredCompiled JavaScript entry relative to the manifest.
sha256OptionalIntegrity checksum for the entry.
orderOptionalRelative hook order; lower values execute first.
enabled_by_defaultOptionalInitial enabled state.

A sectioned manifest places identity under [package], loading fields under [plugin], and sha256 under [verification]. Use one stable identifier and preserve it across updates. For remote distribution, add an [update] block with metadata_url and entry_url; see Publishing and updating.

Importer and exporter role values are reserved; registration is unavailable in the current release.