Extensions

Extend zot in any language over JSON-RPC.

zot can be extended in any language via a subprocess plus JSON-RPC protocol. Extensions can register slash commands, expose new tools to the model, intercept tool calls for permission gates, and open interactive extension-owned panels inside the TUI.

Nothing installs automatically. Opt in per machine with zot ext install, or per run with zot --ext ./path while hacking on one. Each extension gets its own directory, so persistent state can live beside the extension itself.

shell
zot ext install ./my-extension    # copy into $ZOT_HOME/extensions/
zot ext list                      # show what's loaded
zot ext logs my-extension -f      # tail stderr
zot update                        # fast-forward every git-installed extension

Reference implementations live under examples/extensions/ in Go, TypeScript, and Node. Browse community extensions on the Extensions page, or read the full protocol spec on GitHub.