Enhanced Composer is an OpenCode 2 TUI plugin that replaces the prompt footer and draws configurable status widgets above and below the composer.
A Nerd Font is required to display all default glyphs correctly. If you prefer not to use a nerd font, use Customize footer (
/customize-footer) to replace those icons with text or hide them.
Every widget can be moved between the four corners of the composer, reordered, and hidden. Most widgets also have appearance controls; TPS always uses a ~N t/s rate label.
Configure it from the in-TUI Customize footer editor (/customize-footer) or by editing cli.json. Configuration lists every setting, what it changes, and the editor keys.
The minimum supported OpenCode 2 version is 2.0.11. Install it with the CLI's plugin command, which adds the entry to cli.json for you:
opencode plugin add opencode2-enhanced-composerOr add the package to cli.json yourself:
{
"plugins": ["opencode2-enhanced-composer"]
}OpenCode 2 installs the package into its own cache and reuses the newest cached generation, so a restart alone may not pick up a new release. Delete the package's cache directory and restart to upgrade:
rm -rf ~/.cache/opencode/npm/opencode2-enhanced-composer@latestFrom the repository root, install the development dependencies before opening OpenCode 2:
npm ciPoint a path entry in cli.json at this repository's directory:
{
"plugins": [
{
"package": "/absolute/path/to/opencode2-enhanced-composer"
}
]
}The entry must be a directory containing a tui.tsx entry file. OpenCode 2 skips entries that point at a file, so aiming at src/footer.tsx or dist/tui.js directly loads nothing. Development covers the commands and the build.
| Document | Contents |
|---|---|
| Configuration | Every option, the settings editor, and what each widget shows. |
| Development | Commands, tests, build, and CI. |
| Architecture | Module map, data flow, and design invariants. |
| Release | Maintainer runbook. |
| options.schema.json | Machine-readable options schema. |

