I kept leaving my terminal. A developer built a CLI tool called 'shortcuts' that displays keyboard shortcuts, commands, and notes from a plain-text Markdown file directly in the terminal. The tool aims to reduce context switching by keeping reference information accessible without leaving the terminal. It supports Windows, Linux, macOS, WSL, and Git Bash, and deliberately avoids dependencies, cloud sync, and telemetry. shortcuts . Every developer knows keyboard shortcuts are worth learning. The problem is remembering them. shortcuts does that for you. You forget how to split a pane in Windows Terminal, search through tmux scrollback, or jump to the end of a command. Instead of staying in your terminal, you open a browser, search the web, skim documentation, on a bad day ask some AI chatbot. The interruption often costs more time than the shortcut was supposed to save. I was doing this whenever I switched to some new CLI tool, so I stopped trying to memorize everything and instead built a tool that keeps the information exactly where I need it. TBH the real issue was context switching in ma mind. Even if finding the answer only takes ten to twenty seconds, those twenty seconds involve changing windows, searching, reading, and mentally returning to the task you were already working on took another 5 seconds. Existing solutions weren't quite what I wanted There are already plenty of ways to write it down: I wanted something that lived and behaved like any other CLI utility hence building the smallest thing that solved the problem shortcuts === Panes === Alt + Shift + + Split pane Alt + Shift + - Split pane horizontally Alt + Arrow Keys Move focus === SSH === 127.0.0.1 LocalHost ... my shorcuts file contain : standard keyboard shortcuts Git commands I rarely use SSH hosts Docker commands development ports temporary notes phone numbers plaintext passwords {sorry} {I do not recommend this T T} It's just a text file one of the first decisions I made was to avoid complication. everything lives in a single plain-text file. that gives a few advantages almost for free: editable in any text editor easy to version control portable between machines trivial to back up no migration or export formats Sometimes the simplest storage format is also the most future-proof Markdown ... but adapted for the terminal I wanted the file to be pleasant to edit without inventing a completely new syntax. So instead of creating a custom format, I borrowed the parts of Markdown that make sense in a terminal: headings become terminal sections bold and italic still work one intentional difference is backticks. instead of representing inline code, they highlight individual keys by using a different color: Ctrl + Shift + P this lets the renderer emphasize the important parts of a shortcut while leaving connectors like + or / visually unobtrusive. many common Markdown features such as tables, HTML, images, nested lists were intentionally left out. A terminal cheat sheet doesn't need them, does it ? Making it work everywhere was an interesting idea the project supports Windows , Linux , macOS , WSL , and Git Bash . the goal wasn't simply to run everywhere it was to behave the same. Internally, the project maintains independent PowerShell and POSIX shell implementations that parse the same file format and produce equivalent output. That meant solving differences in ANSI rendering, alignment, text parsing, and shell behavior without exposing any of those differences to the user. Keeping both implementations in sync ended up being more challenging when adding new features. Constraints became features Whenever I considered adding something, I asked a simple question to myself, and ma AI, Does this make the tool easier to use every day? If the answer wasn't clearly yes, it stayed out. That meant deliberately avoiding: dependencies cloud synchronization telemetry will never be present complex configuration The only time the tool connects to the internet is when you explicitly ask it to update itself. Everything else stays local. final yap, I promise. Simplicity is prerequisite for reliability. - Edsger W. Dijkstra This project reminded me that not every useful piece of software has to be ambitious and big. Sometimes the best tools are the ones which solve the smallest problems. shortcuts started as a way to remember keyboard shortcuts, but it would ultimately become a daily use for me. If you'd like to try it, the project is available on GitHub GitHub: https://github.com/Suhaas-code/shortcuts-cmd https://github.com/Suhaas-code/shortcuts-cmd If you find it useful, consider giving the repository a ⭐ please T T . It helps more developers discover the project, and to support contributions. I'm also interested in hearing on what you'd add to a tool like this.