-23

Running several coding agents at once means several worktrees, several branches and several terminals - and keeping track of which is which in your head.

Lich puts it on screen. A session is a terminal plus the worktree it runs in; its branch, diff and pull request travel with it. Review the diff, comment on the lines, hand it back to the agent, open and merge the PR - same window.

Works with Claude Code, Codex, opencode and Crush.

https://github.com/omartelo/lich

6

A TUI for OpenVPN client connections, in the style of lazygit/lazydocker. Lists your configs, connects/disconnects with one keypress, streams live per-connection logs.

  • Finds configs in /etc/openvpn/client, /etc/openvpn, ~/.config/lazyovpn/connections.
  • Status reflects OpenVPN's own connection signal, not just process state.
  • Credentials for auth-user-pass: masked, never on disk in plaintext.
  • Optional OS keyring storage, off by default.
  • Imports .ovpn via native picker (zenity/kdialog).

The TUI runs unprivileged; only openvpn runs as root via pkexec. While connected, credentials sit in a 0600 file on tmpfs and are wiped on disconnect.

omartelo

0 post score
0 comment score
joined 1 month ago