CLI
Git and Shell (POSIX) are obviously the first things to learn for every developer and researcher
This is the same as learning keyboard shortcuts for every PC user
The term "shell" refers to the outer layer, contrasting with the OS Kernel
Faster than GUI and enabling real-time communication, shells have been and will continue to be important
Modern terminals are complex and limited due to decisions made in the 1980s. To fundamentally redesign them requires reconstructing the entire stack simultaneously, while enabling 'incremental adoption' so users can accept changes gradually.
Current Terminal Architecture
- Terminal Emulator — renders grid on screen
- PTY — simple kernel state, converts input to signals
- Shell — interpreter like bash
- Programs — output via ANSI codes
To overcome current limitations (no interaction, images, state tracking, or undo), we need to redefine the terminal itself.
Requirements
- Shell integration: Structure execution blocks, prompts, and output areas like Warp, iTerm2
- Long-lived process suspend/resume support with TUI Jupyter Notebook -style UI with Terminal Multiplexer
- Dataflow tracking (Pluto.jl model) with structured RPC
- Sandbox + static tracing
Shell Notion
Shell Usages


Seong-lae Cho

