Plugins, apps, tools and resources for Tern, Stencil's terminal.
Tern is a Rust-native terminal from Stencil. Shells, omp agents and browser panes keep running in a daemon when the window closes, and come back after a reboot. One session can be open on the desktop app, on iOS and in a WebGPU browser tab at the same time; typing in one shows up in the others.
Plugins are written in Luau, and any program can draw native UI through the Tern Surface Protocol (TSP). tern remote serve serves a remote machine's sessions over QUIC. Tern is in closed beta; you get in through the waitlist.
- Plugins
- Native TSP apps
- Agent integrations
- SDKs and protocol libraries
- Official resources
- Nix and dotfiles
Tern plugins are written in Luau and can be installed directly from GitHub with tern plugin install github.com/OWNER/REPO. See the plugin CLI reference for the available commands.
A lens captures a shell command's output and shows it as a native view. A Raw toggle shows the original text.
- tern-kube ★ 4 · 2026-10-09 - Renders
kubectloutput as sortable, filterable native views, with a live Explore block, one-key pod shells and logs, previewed and confirmed changes, and GitOps drift against your manifests. - tern-jj ★ 1 · 2026-10-04 - Displays
jj statusandjj stoutput as a read-only native card with added, modified and deleted files colored to match the Tern theme. - tern-jj-diff ★ 1 · 2026-10-08 - Renders
jj diffandjj showoutput as a native view with summary badges and one collapsible section per file, filling the gap left by Tern's built-injj standjj logviews.
- tern-grafana ★ 7 · 2026-10-12 - Grafana and Prometheus-compatible backends as native blocks for PromQL queries, dashboards, alerts and silences, logs and traces; pre-release.
- PR Guide ★ 3 · 2026-10-13 - Walks through a GitHub pull request one change at a time with the code beside a plain explanation, then lets you comment and post a single review.
- tern-netsuite ★ 3 · 2026-10-09 - Native views for the NetSuite SuiteCloud SDF CLI with a production deploy guard, a project explorer and read-only SuiteQL execution logs and account health; public beta.
- tern-spotify ★ 3 · 2026-10-10 - Player block for the Spotify desktop app with cover art, playback, seeking and volume controls on macOS, Windows and Linux.
- tern-spotify (Windows) ★ 3 · 2026-10-06 - Floating player for the Windows Spotify desktop app with cover art, playback controls, search, keyboard shortcuts and the current track in the status line.
- tern-video-block ★ 3 · 2026-10-05 - Opens video files in a block with mpv sound, frame stepping and synced side-by-side playback using ffmpeg and the kitty graphics protocol.
- tern-CDP-tidal ★ 2 · 2026-10-06 - Player block for the TIDAL desktop app, driven over the Chrome DevTools protocol, with cover art, playback, seeking, volume, shuffle, repeat and line-based search.
- tern-pomodoro ★ 2 · 2026-10-09 - Minimal timer block with 25-minute focus and 5-minute break defaults, adjustable durations and a quiet progress line, using no network or subprocesses.
- tern-margin ★ 1 · 2026-10-08 - Renders a Markdown file block by block so you can leave CriticMarkup comments on any paragraph, list, table or code block, and hands them back to the agent that opened it.
- tern-office-preview ★ 1 · 2026-10-06 - Previews Word and Excel files natively in a block using a Rust renderer, with no Office, browser or LibreOffice involved.
- tern-pokemon ★ 1 · 2026-10-08 - Ports vscode-pokemon to a block where Pokémon walk, sit and get petted on themed beach, forest and castle scenes, drawn natively with animated GIF sprites and no web view.
- tern-rss ★ 1 · 2026-10-07 - Follows RSS and Atom feeds in a block with expandable previews, articles in a docked reader browser, toasts for starred feeds and a catch-up line instead of an ever-growing unread count.
- tern-ssh ★ 1 · 2026-10-09 - An ssh host manager that runs as a Tern pane. It lists the hosts of an ssh config, connects to them, and adds, edits and removes hosts without leaving Tern.
- TernMeOn ★ 1 · 2026-10-08 - Controls Buttplug devices from Tern, with haptic patterns written as code and feedback when long commands finish.
- Forge Meetings ★ 0 · 2026-10-13 - Lists Granola and Fireflies meetings, email threads over IMAP and local transcript exports in one keyboard-driven block, and pastes the ones you pick into the agent's composer as a summary or full transcript.
- kedi-tern ★ 0 · 2026-10-09 - Read-only viewer for
.kedifiles that highlights them in a native Tern editor using tree-sitter, without running the embedded Python. - omp Tiles ★ 0 · 2026-10-10 - Block with one colored tile per open omp session across all Tern sessions, showing the session title and whether it is working, waiting for you or idle.
- Tern Reviewr ★ 0 · 2026-10-12 - Reviews staged, unstaged, and untracked Git changes in a native Tern diff view, sends line-anchored comments directly to an agent, and tracks per-file review progress.
- tern-spotify (kyle-elliott) ★ 0 · 2026-10-09 - Spotify player pane with album art, queue, library, search and device picker, plus a floating mode, status-line track and palette commands for playback.
- tern-tracker ★ 0 · 2026-10-12 - Lists the GitHub issues and pull requests of the repository in the focused pane's directory, with comments and a form for creating issues, in English or Chinese.
Window plugins add commands, keybindings, layouts, and status-line segments.
- tern-agent-scheduler ★ 12 · 2026-10-13 - Schedules omp agent runs with cron, presets, plain-English or one-shot times, starts each in a background tab and keeps their results, failures and costs in a manager block, with status-line, notification and Carly support.
- Overseer ★ 6 · 2026-10-09 - Panel listing every branch in flight with its worktree, agents, pull request and ticket, where each worktree gets its own Tern session.
- herdr-tern-plugin ★ 3 · 2026-10-05 - Adds an Open Herdr Session command that picks an existing herdr session and attaches to it inside Tern without copying or converting workspaces.
- tern-cat ★ 3 · 2026-10-08 - Adds a pixel-art menace that naps in your panes, swats at your pointer, stares when you sudo and dives through portals when you switch panes.
- tern-chirp ★ 3 · 2026-10-08 - Plays a short synthesized beep when an agent finishes or waits for you, with the sound's shape chosen by Jev to match how the turn went.
- tern-usage-monitor ★ 3 · 2026-10-06 - Floating or docked panel showing usage for every omp linked account, with per-account quota bars, auto-refresh, ordering and update-time settings.
- workspaces-sidebar ★ 3 · 2026-10-13 - Pins a workspace sidebar to every tab that lists sessions and their tabs as a tree, with live badges for waiting agents, running and failed commands, one-click switching, tab color tags, and attention-jump keybindings.
- tern-herdr ★ 2 · 2026-10-06 - Shows Herdr as native Tern tabs, splits and a sidebar, with tabs colored by agent state and Herdr's prefix keys working.
- tern-ide layout ★ 2 · 2026-10-12 - Window plugin with an IDE-style four-pane layout, set split ratios, and an omp pane, packaged with Nix inside a NixOS config.
- tern-jj workspaces ★ 2 · 2026-10-12 - Creates, opens, removes, and inspects jj workspaces using Tern dialogs, tabs, and the status line, packaged with Nix inside a NixOS config.
- tern-mizu ★ 2 · 2026-10-08 - Paints the Mizu Icons VS Code file icon theme over the Files pane, with 893 icons covering 847 file names, 947 extensions and 1457 folder names.
- tern-worktree ★ 2 · 2026-10-09 - Lists, opens and creates git worktrees from the command palette using plain git, with
jqand a POSIX shell as the only other requirements. - omaterm ★ 1 · 2026-10-06 - Matches Tern's background, foreground, window chrome and ANSI colors to your active Omarchy theme.
- pane-highlight ★ 1 · 2026-10-11 - Marks the active split with a border and tint, dims the others, and recolors a pane by user or host, such as red for
prod-*hosts. - tern-agents ★ 1 · 2026-10-08 - Runs Claude Code, Codex, Gemini, OpenCode, Aider or any agent CLI as a Tern agent block, with profiles, run presets, a launcher and an Agents sidebar.
- tern-chime ★ 1 · 2026-10-08 - Plays a configurable sound when a pane raises an unseen alert, an omp agent yields its turn, or a long command finishes, with bundled chimes and per-trigger overrides.
- tern-model-usage ★ 1 · 2026-10-04 - Shows omp coding-plan quota for each signed-in account in the status line and opens a canvas pane with provider cards and reset countdowns.
- tern-status ★ 1 · 2026-10-06 - Status line in the style of tmux with CPU, memory, battery, network, disk and clock segments drawn with Tern's own icons and theme tones.
- tern-worktrees ★ 1 · 2026-10-13 - Opens git worktrees as Tern tabs with a branch picker and teardown on close, backed by a
tern-wtCLI and an omp skill for agents. - tern-worktrees (aliefe04) ★ 1 · 2026-10-07 - Adds palette commands that create a git worktree on a new branch with an agent tab, and remove the focused worktree only when it is clean and merged into the default branch.
- Toons ★ 1 · 2026-10-08 - Draws cartoons of what the agent is doing while commands run, as a port of claude-toons to Tern's native UI.
- font-default ★ 0 · 2026-10-06 - Makes the Reset font size command return to your configured size instead of Tern's built-in default.
- Forge Omarchy ★ 0 · 2026-10-13 - Makes Omarchy's window keys act on Tern panes first and fall through to Hyprland at the edges, in the style of vim-tmux-navigator, with desktop notifications when agents finish or wait for you.
- Forge Projects ★ 0 · 2026-10-13 - Sidebar for parallel agent work that gives each git worktree its own Tern session, with agent status, pull request and Linear ticket on every row, and one box that opens or creates a worktree from a branch, ticket or pull request.
- jira-tern ★ 0 · 2026-10-13 - Native Jira browser that reads and posts issue comments, runs status transitions, and opens a Git worktree or jj workspace with an omp agent tab for an issue.
- power-surge ★ 0 · 2026-10-11 - Neovim plugin that shows sparks on every text change with a combo meter and screen shake, with a Tern command and chord for it.
- remote-image-paste ★ 0 · 2026-10-12 - Uploads a macOS clipboard image to the focused remote host over SSH and pastes the server path into the current pane.
- tern-bell ★ 0 · 2026-10-12 - Rings a bell when an agent turn finishes, with a keyboard-driven settings pane that previews fourteen macOS system sounds and user-supplied custom sounds before saving.
- tern-claude-usage ★ 0 · 2026-10-12 - Shows Claude Pro and Max usage limits in a panel and a status-line segment, with 5-hour and 7-day windows, per-model limits, pace tracking and reset countdowns.
- tern-close-plugin ★ 0 · 2026-10-05 - Adds palette commands that close the other tabs and the split blocks left, right and around the focused block, each row hidden while it would close nothing.
- tern-file-paste ★ 0 · 2026-10-13 - Uploads copied local files from macOS, Linux, and Windows to remote hosts over SSH and inserts their paths into Tern panes.
- tern-haptic-alert ★ 0 · 2026-10-06 - Sends a haptic pulse to a Logitech MX Master 4 when an agent finishes or is blocked waiting for input.
- tern-omp-layout-fixes ★ 0 · 2026-10-09 - Widens omp transcripts to the full pane and adds spacing above the composer, touching only omp session surfaces.
- tern-paste-image ★ 0 · 2026-10-10 - Pastes Windows clipboard screenshots into local or remote Tern terminals with Ctrl+Alt+V, uploading over SSH and inserting the quoted path without pressing Enter.
- tern-remote-open ★ 0 · 2026-10-13 - Opens file links, localhost URLs and OAuth loopback sign-in links from remote ssh panes on your Mac, where the file or port would not otherwise exist.
- tern-swarm ★ 0 · 2026-10-06 - Kanban board that runs omp agents on its cards in separate git worktrees, runs your checks on their work and waits for your approval.
- tern-vimnav ★ 0 · 2026-10-08 - Brings vim-tmux-navigator to Tern so Ctrl+H/J/K/L moves between Neovim splits and Tern panes.
- TernGitButler ★ 0 · 2026-10-12 - GitButler workspaces in Tern, with a status-bar segment, a workspace block with one lane per branch stack and a diff block.
These examples ship with the official SDK repository. They are a good starting point if you are writing your own plugin.
- Terraform Plans - Lens for
terraform planandtofu planthat shows badges, diagnostics and resources grouped by action. - Review Queue - Block that polls
ghevery two minutes and lists pull requests waiting for your review. - JSON Explorer - Opens JSON and GeoJSON files as collapsible trees and copies the jq path of a node.
- Long-Running Commands - Shows a toast when slow commands finish, keeps a history of run times and status, and adds a status-line segment.
- Directory Variables - Loads approved
.tern-envfiles into new shells and signals when a directory's environment changed. - Project Workspaces - Builds named tabs and split panes from
.tern/workspace.json. - Canvas Dashboard - Window-only persistent dashboard that shows canvas ownership, keyed patches, and a Refresh action.
Applications that draw their own user interface natively inside Tern using the Tern Surface Protocol (TSP).
- oh-my-pi (omp) ★ 35266 · 2026-10-13 - Stencil's coding agent that Tern is built around, drawing its transcript and UI natively, restoring sessions, and opening web pages as browser picture-in-picture panes.
- Hermes for Tern ★ 17 · 2026-10-10 - Unofficial Tern frontend for Hermes Agent that draws the conversation, tool rows, subagents, buttons and a docked composer natively over TSP, and leaves the normal Hermes interface alone in other terminals.
- rmon ★ 8 · 2026-10-08 - Resource monitor for Linux and macOS with CPU, GPU, memory, network, disk and process panels and a disk benchmark, drawn natively in Tern over TSP.
- Octet ★ 7 · 2026-10-13 - Coding-agent shell rendering transcript cards, split diffs, pickers, and reports through TSP; Tern support is merged into the integration branch for 0.8.2 but not in the latest 0.8.1 release.
- mantern ★ 6 · 2026-10-05 - Drop-in
manreplacement that draws pages natively in Tern over TSP, with a synopsis card, option cards, tables, foldable sections and clickable SEE ALSO links, and falls back to the systemmanelsewhere. - neotern ★ 5 · 2026-10-07 - Neovim drawn as a native Tern surface in the style of Neovide, with a native command palette and picker; alpha and tuned to the author's own dotfiles.
- Ternatro ★ 3 · 2026-10-09 - Plays Balatro in a Tern pane, running the game's own Lua code from your copy of Balatro.exe and drawing its layout, card motion, particles and shaders natively; you need to own the game.
- Terngram ★ 2 · 2026-10-05 - Unofficial keyboard-driven Telegram client built on TDLib and omp's UI toolkit, also installable as a Tern plugin.
- saavy ★ 1 · 2026-10-05 - Persistent coding agent on Cloudflare with a native TSP frontend in Tern and a
pi-tuifallback elsewhere.
- omp-side ★ 7 · 2026-10-12 - Adds a
/sidecommand to fork the conversation into a child session and open it in a side pane in Tern, cmux, tmux, WezTerm, Kitty, and Ghostty. - pi-tern ★ 4 · 2026-10-07 - Makes the pi coding agent Tern-aware with the TSP handshake, native Mermaid diagrams, browser automation, pane capture and a session mirror.
- tern-mcp ★ 2 · 2026-10-03 - Python MCP server over stdio wrapping the tern CLI with 14 tools for sessions, panes, capture, process inspection, input and layout.
- omp-thinking-translator ★ 1 · 2026-10-10 - An omp extension that translates visible thinking into collapsible native sections in Tern and plain ANSI output in other terminals.
- tern-control ★ 1 · 2026-10-01 - An omp and Pi extension giving agents tools to find Tern sessions, read transcript digests, follow daemon events, change layout, and type into terminals.
- tern-omp-vimnav ★ 0 · 2026-10-07 - Vim-style navigation of the omp transcript in Tern, with block cursor, text selection and copying, search and Vimium-style hints for links, code blocks and buttons.
- tern-sdk ★ 49 · 2026-10-12 - Official repository of Surface Protocol SDKs for Rust, Python, Go and TypeScript, plus the Luau type definitions (
tern.d.luau) and example plugins. - @oh-my-pi/pi-wire ★ 35266 · 2026-10-13 - TypeScript package implementing the TSP wire format: APC framing, component types, frame operations, handshake and events.
- @oh-my-pi/pi-tui ★ 35266 · 2026-10-13 - TypeScript UI toolkit from omp for rendering transcripts, chat, dashboards, and pickers natively over TSP.
- octet-tern ★ 7 · 2026-10-13 - A Rust TSP client built into Octet with wire types, APC chunking, tty flow control, and scene builders.
- Tern - Stencil's product page for Tern with a feature tour.
- Waitlist - Sign up for Tern's closed beta using a Stencil account.
- Beta builds - CI-generated beta builds from the
mainbranch, requiring sign-in. - Stencil on GitHub - Stencil's GitHub organization; Tern's source is not public.
- @stencil_labs - Stencil's account on X.
- @_can1357 - Stencil founder Can Bölük on X, where he posts most Tern announcements.
- omp Discord - The community Discord server for omp, where Tern is also discussed.
- Tern plugin book - Official documentation covering host and window runtimes, lenses, blocks, native views, styling, and TSP.
- Getting Started - Walkthrough of building a lens and palette command, then linking, type-checking, and reloading.
- Command Lenses - Explains how to turn command output into native views using manifest globs and host callbacks.
- Debugging - Covers toasts, logs, Luau typing, handler budgets, and scripted window control.
- Plugin CLI - Reference for
tern plugin list,install,link,unlink,remove,reload,dir, andtypes. - Tern Surface Protocol - Specifies the in-band protocol where CLIs, TUIs, and agents send UI trees that Tern lays out and draws natively.
Tern builds are behind a sign-in, so these Nix setups expect you to download the build yourself.
- pelikanade/flake ★ 11 · 2026-10-13 - Nix packaging guide covering signed-in downloads,
requireFile, graphics libraries, and updating. - plumj-am/nixos ★ 2 · 2026-10-12 - NixOS module that manages Tern settings, theme, tmux-style keybindings, the
omplaunch command and plugins. - tdortman/dotfiles ★ 1 · 2026-10-12 - A Nix package with desktop entries, an update script finding new builds via a Stencil browser session, and a KDE Plasma Home Manager module where Meta+Return focuses Tern or starts it.
- theoparis/nix-tern ★ 1 · 2026-10-07 - Nix flake that packages a hand-downloaded Tern tarball and keeps it from being garbage collected.
Suggestions are welcome as pull requests. Read the contribution guidelines first.