Folio is a terminal for Windows. The LaTeX a command prints is typeset where it
was printed, above the next prompt. A file a command names opens in a pane beside
the shell, rendered rather than paged: Markdown, images, PDF and, where the
WebView2 Runtime is installed, a web page. A tab says so when Claude Code, Codex
or Copilot CLI has stopped and is waiting on an answer, so a window left in the
background is not read late.
It starts PowerShell 7, Windows PowerShell, WSL, Git Bash and Command Prompt
through ConPTY, and draws on the GPU. There is no installer and nothing is
written outside the install folder until it is run. That folder is the unit:
folio.exe will not start a shell without conpty.dll and OpenConsole.exe beside
it, and folio.msix names the same folder as the program it grants an identity
to, which is why this package puts its own directory on PATH rather than
linking the one file somewhere else. Needs Windows 10 1809 or newer, 64-bit.
0.2.2 is a preview build; folio.exe and folio.msix in it are signed by Weiyi Shi.
README
Folio is an open-source terminal for Windows and macOS. It typesets LaTeX where
a command prints it, previews files beside the prompt, lets panes and windows
move freely, and marks the tab of an agent that is waiting for you.
Windows — take the zip from the
releases page, unpack it,
and run folio.exe. No installer; the files in it belong together, so keep the
folder as it came. Windows 10 1809 or newer, 64-bit.
macOS — take the DMG from the releases page and drag Folio to Applications.
Needs an Apple silicon Mac running macOS 14 or newer. Or, with Homebrew:
brew install --cask lulu-loopp/folio/folio
On Windows, winget has it too:
winget install --id WeiyiShi.Folio --exact
docs/install.md has the rest: what is in the archive, what
the first run asks, and what to do if the system puts a panel in front of you.
Uninstall
Take Folio out the way it came in:
Windows zip — open Settings ▸ About ▸ Uninstall Folio, or quit Folio
and double-click uninstall.cmd in its folder.
scoop — quit Folio, then scoop uninstall folio; it runs the same
cleanup for you.
winget — quit Folio, then
cmd /c "folio --uninstall-cleanup && winget uninstall --id WeiyiShi.Folio --exact":
the cleanup first, winget only once it succeeded, since winget runs nothing of
Folio's. Settings ▸ About shows this line for a winget copy.
macOS DMG — open Settings ▸ About ▸ Uninstall Folio, or quit Folio and
run /Applications/Folio.app/Contents/MacOS/folio --uninstall. Either one
removes Folio completely, the app included.
Homebrew — quit Folio, then brew uninstall --zap folio.
Only the files Folio installed are removed, and its folder only if nothing else
is left in it; a file of your own in the folder stays, and the uninstall names it.
If something Folio set up cannot be removed — a file another program holds, for
example — the uninstall says which, keeps the program so you can run it again,
and keeps your settings and data even if you asked for them to go. If the
computer loses power while the files are being removed, run the uninstall again
from the same folder: it removes what is left.
The uninstall removes what Folio set up outside its folder — the Explorer or
Finder menu, the line it added to your PowerShell profile (with the profile file
itself and the one copy it kept, when Folio made them), agent hooks — and keeps
your settings and data. To remove those too, turn on Also remove settings and
data in Settings, answer n in uninstall.cmd, or add --remove-data;
Homebrew's --zap already removes the settings folder. Its lines are in the
language Folio is set to. docs/install.md says
what its exit codes mean.
What it does
The LaTeX a command prints is typeset where it was printed.
A file is read beside the prompt, and a markdown one typed into where you read it.
A terminal on a hotkey — Win+` , or ⌃` on a Mac, brings one down over whatever is on the screen.
Search everything — actions, panes, commands, files and settings in one box.
System integration — the Explorer and Finder right-click menus, and VS Code's external terminal.
English and Chinese — every string in Folio's own interface in both, switched from one row in Settings.
Every feature is described in full, with the rules it follows, in docs/features.md.
Privacy
Folio collects nothing: no telemetry, no analytics, no crash reporting. Two
things reach the network — a page you open in the web preview, and the update
check, one GET of https://api.github.com/repos/lulu-loopp/folio-terminal/releases
carrying no version and no identifier — once a day on its own, which
Settings > About > Automatic check (or "update_check": false) turns off,
and once each time you press Check on the Version row.
Settings, profiles and sessions live on your own machine and go nowhere;
docs/PRIVACY.md says what is in each file.
Feedback
Something broken goes in an issue. An idea, a feature you would like, or a question goes in Discussions, where the next person can find the answer.