The CLI Paradigm, Brought to the GUI
In a Unix terminal, the shell is the integration point. You don't launch programs into isolated environments — you run commands that operate on data, and the shell ties everything together. Tools are interchangeable: if you don't like one text processor, you swap it for another. Installing a new command extends what the shell can do. The power comes not from any single tool, but from how they work together.
Ideal applies the same model to the graphical desktop.
The Shell Analogy
| Terminal | Ideal Desktop |
|---|---|
| The shell is the entry point for all interaction | The explorer is the entry point for all interaction |
| Commands operate on files and streams | Applications operate on files and folders |
| Installing a command extends the shell | Installing an application extends the desktop |
| Tools are interchangeable for the same task | Applications are interchangeable for the same data |
man, --help, tab completion aid discovery | Contextual actions and search aid discovery |
What This Means in Practice
Interchangeability
In the terminal, you can replace grep with ripgrep and everything else continues to work — because
both operate on the same data through the same conventions. In Ideal, you can replace one mail
application with another, and the rest of the desktop continues to work — because both operate on the
same mail data and expose actions through the same integration model.
The user doesn't commit to an application ecosystem. They choose tools that work for them, and switch when something better comes along. The data and the desktop don't care which application is doing the work.
Discoverability
The terminal has man pages, --help flags, and tab completion. You don't need to know every command
in advance — you can explore what's available. Ideal provides the same through contextual actions: when
you're looking at data, the desktop shows you what you can do with it, provided by whichever
applications are relevant. You don't need to know which application offers which capability — the
actions are there, in context.
Transparency
In the terminal, your data is always visible and inspectable. Files are files — you can ls, cat,
diff, and git them freely. Ideal preserves this property: user data remains as files in folders
that the user controls. The desktop presents them through rich views, but the underlying files are
always accessible, movable, and inspectable with any tool.