* Package name : safeshell
Version : 1.0.0
Upstream Author : Samarth Vala and Tavish Gupta
* URL : https://github.com/samarthsinh2660/safeshell
* License : Expat
Programming Lang: Go
Description : safety layer for your terminal
SafeShell sits between you and your shell (bash or zsh) and rates every
command by how reversible it is, from R0 (read-only) to R4 (catastrophic).
Risky commands are first run in a rootless sandbox (user and mount
namespaces
with OverlayFS, network blocked and watched), so the user sees which files,
processes and disks they would really affect before anything happens.
Dangerous commands are blocked with a reason and a safer alternative, and
the
user can still choose to go ahead. Before an approved risky command runs,
the
files it will change are saved, so "safeshell undo" can put them back and
verify the result.
An optional assistant turns plain English into a command that is checked
like
any other; it can only make a command look riskier, never safer. It can use
a local model or the user's own cloud API key. Nothing is downloaded when
the
package is installed: the local model and engine are fetched only when the
user explicitly runs "safeshell ai setup".
Why it is useful in Debian: accidental "rm -rf", "git reset --hard" or
"curl | sudo bash" are common, and no packaged tool tells the user whether a
command can be undone before it runs. Related tools such as trash-cli and
molly-guard cover only parts of this.
The command is named "safeshell" and not "ss" because /usr/bin/ss belongs to
iproute2. It builds with only packaged Go libraries (golang-mvdan-sh-dev,
golang-golang-x-sys-dev, golang-golang-x-term-dev) and no network access. I
have already built it in a clean Debian unstable container and lintian
reports
no errors.
I will maintain the package myself and will need a sponsor, as I am not yet
a Debian Developer. The packaging is in the debian/ directory of the
upstream
repository.
Thanks,
samarthsinh2660