Skip to content

K-Shell 0.2.0

Choose a tag to compare

@github-actions github-actions released this 04 Nov 06:33

Workspaces for your local projects, autosuggestions, your own shell prompt, custom keyboard shortcuts, drag-and-drop panes, and port forwarding straight from an ssh -L command.

Already using K-Shell 0.1.0? Open K-Shell and click Update K-Shell in the top-right of the tab bar (or Settings → About → Check for updates). It downloads, verifies, installs and restarts. Your hosts, keys and settings are kept.

New install: pick your installer below, or open https://www.keselyoleren.com/download and the right file for your system downloads automatically.

System File
macOS (Apple Silicon and Intel) K-Shell_0.2.0_universal.dmg
Windows 10 / 11 (64-bit) K-Shell_0.2.0_x64-setup.exe (or the .msi)
Linux .AppImage (any distro), .deb (Debian/Ubuntu) or .rpm (Fedora/openSUSE)

First launch: the installers aren't code-signed yet.

  • macOS: open the app once, then go to System Settings → Privacy & Security and click Open Anyway.
  • Windows: in the SmartScreen dialog, click More info → Run anyway.

How everything works: https://www.keselyoleren.com/docs/

What's new

Workspaces

Group the local project folders you work on, for example one workspace per client. Click a project to open a terminal in its folder, optionally running a startup command (e.g. git pull && npm run dev), or use Open all. Tabs take the workspace colour, and projects are searchable in the command palette.

Terminal

  • Autosuggestions: the rest of a command you ran before appears in grey as you type. → accepts it, ⌥→ / Ctrl+→ takes one word. Commands from the same host or project come first. History lives in the encrypted vault; passwords and other input that isn't echoed, and commands starting with a space, are never saved. Turn it off or clear it in Settings → Terminal.
  • K-Shell prompt (Settings → Terminal → Prompt, off by default): build a bash/zsh prompt from segments (user@host, directory, git branch, Python venv, conda env, kube context, time, date, exit code…) with drag and drop and a live preview. Long directories are shortened from the left, e.g. …project/chronicle/fork/core-api. Apply it to local and/or SSH sessions, or copy it for ~/.bashrc / ~/.zshrc.
  • Drag panes and tabs: drag a pane by its header to move it while the other panes make room; drop it on the tab bar to give it its own tab. Drag a terminal tab onto another terminal to merge it in as a split. Sessions keep running.

Port forwarding

Paste an ssh -L/-R/-D … user@host -p port command and K-Shell fills in the rule and picks the matching saved host (several tunnels become several rules). Unknown servers can be added in one click. Every rule shows its equivalent ssh command with a copy button, and a host's right-click menu has Port forwarding….

Settings

  • Settings are split into Appearance, Terminal, Keyboard shortcuts, Vault & backup and About.
  • Appearance: System theme that follows your OS, accent colour, interface zoom (⌘= ⌘- ⌘0), and an optional separate terminal theme for light mode.
  • Custom keyboard shortcuts: click a shortcut and press new keys; search by name or keys; conflicts are flagged. New actions: settings (⌘,), next/previous tab (⌃⇥), next/previous pane (⌘] ⌘[), close pane, clear terminal, and more.
  • The command palette (⌘K) also finds app commands and workspace projects, with their shortcuts.

Fixed

  • The Font list in Settings showed an empty value when the saved font wasn't one of the presets.

Known limitations

  • Tested mostly on macOS. The Windows and Linux builds pass the automated build and tests but have had little hands-on testing.
  • The K-Shell prompt works with bash and zsh only, and applies to new sessions. In zsh, its setup line can appear in your shell history unless HIST_IGNORE_SPACE is set.
  • Updating from 0.1.0 inside the app is the first real use of the updater; if it fails, download the new version from https://www.keselyoleren.com/download and install it over the old one.

Please report problems in Issues.