Skip to content

Plugins

A gpty plugin is a repository containing a gpty-plugin.toml manifest. It can ship pure data - profiles (named layouts) and concepts (terminal-output triggers), both delivered to the running GUI - or name programs to run.

Two sections are declarations, never delivery. Events: gpty dispatches nothing to plugins, so a plugin that wants them reads the event socket itself - a program launched in a pane already has GPTY_EVENT_SOCKET, and subscribe/eventsPoll are open to same-UID processes. Link handlers: nothing runs them; the Markdown view opens http(s)/mailto links through the OS after a confirmation and ignores every other scheme. build/startup are shown for review and run by nobody. The install review prints each of these sections as the declaration it is. The manifest schema is the plugin-manifest section of the agent guide. Installing one is explicit:

gpty plugin install <id>

The command clones the repo, validates the manifest with the shipped validator, and asks you to review the plugin in the GUI before anything installs - a plugin’s content runs as you, so acceptance is pinned to the revision you reviewed, and a newer revision asks again. The index below is a catalog: display data only, and nothing in it executes.

  • OMP — A terminal running OMP (oh-my-pi) — the agent workspace profile.

    gpty plugin install godot-pty/gpty-omp · agent · gpty ≥ 0.5.4 · linux, macos, windows

  • Claude — A terminal running Claude Code.

    gpty plugin install godot-pty/gpty-claude · agent · gpty ≥ 0.5.4 · linux, macos, windows

  • Herdr — A terminal running Herdr, the session multiplexer.

    gpty plugin install godot-pty/gpty-herdr · multiplexer · gpty ≥ 0.5.4 · linux, macos, windows

  • Lazygit — A terminal running Lazygit, the Git TUI.

    gpty plugin install godot-pty/gpty-lazygit · git · gpty ≥ 0.5.4 · linux, macos, windows

  • Neovim — A terminal running Neovim.

    gpty plugin install godot-pty/gpty-neovim · editor · gpty ≥ 0.5.4 · linux, macos, windows

Source: fetched live from <a href="https://github.com/godot-pty/gpty-plugins">godot-pty/gpty-plugins</a>.

Submitting a plugin

The index lives in godot-pty/gpty-plugins. Open a pull request there adding one entry to registry.json; its CI validates the index and fetches every listed repo’s manifest to confirm the entry agrees with it (id, name, version floor, platforms). Run the same check locally with python3 validate.py --check-repos. The full entry schema, the category list, and the registry’s policies - an id is owned by its repo and does not change, min_gpty_version is a floor the registry states rather than an install gate, and removing an entry stops new installs only because every install is pinned to a commit - are documented in that repo’s README.