An AI agent TUI named Floppy built using agent-server, interop-router, and OpenTUI
Note
This library is in early development and subject to change.
Supported platforms are Windows and Linux x64.
Powershell (Windows):
irm https://github.com/DavidKoleczek/agent-tui/releases/latest/download/install.ps1 | iexLinux:
curl -fsSL https://github.com/DavidKoleczek/agent-tui/releases/latest/download/install.sh | bashLaunch with floppy!
# Resume an existing conversation in the current directory
floppy --resume
floppy --helpBy default, not all Windows terminals send modifier keys with Enter by default. You may need to configure your terminal to send Shift+Enter as an escape sequence.
Open settings.json at:
%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json
Add this entry to the root-level actions array:
{
"command": {
"action": "sendInput",
"input": "\u001b[13;2u"
},
"id": "User.sendInput.ShiftEnter"
}Add this entry to the root-level keybindings array:
{
"keys": "shift+enter",
"id": "User.sendInput.ShiftEnter"
}Save and restart Windows Terminal or open a new tab.
Quit any running instances, then run:
floppy uninstall --yesTo install dependencies:
bun installTo run:
bun devTo validate changes (typecheck, format, lint):
bun run checkTo auto-fix formatting and lint issues:
bun run fmt
bun run lint:fixOpen the repo in VSCode and accept the workspace recommendations, or install manually:
oxc.oxc-vscodeforoxlintdiagnostics andoxfmtformattingEditorConfig.EditorConfigfor.editorconfigsupportoven.bun-vscodefor the Bun runtime and debugger
.github/hooks/hooks.json registers an agentStop hook that runs .github/hooks/agent-stop.ts after every agent turn.
The script runs bun run fmt, bun run lint:fix, and bun run check in order. If any step fails, the hook emits a block decision so the failing output is fed back to the agent as a new turn for it to fix before yielding.