An opinionated, batteries-included Rust shell. The goal is a daily-driver
replacement for zsh with a baked-in starship-style prompt, fzf-powered
history and completion, lsd semantics for ls, and optional AI helpers.
Status: very early. The REPL currently shells out to
/bin/sh -cfor everything it can't yet handle natively.
With Nix + direnv:
direnv allow
cargo run -p fredshellWithout Nix:
cargo run -p fredshellcrates/fredshell— binary entrypoint, CLI, reedline glue.crates/fredshell-core— builtins, exec, REPL state.crates/fredshell-prompt— starship-style prompt renderer.xtask— project automation (cargo xtask check,coverage, ...).nix/— overlay + home-manager module.flake.nix— dev shell + package + checks.
See the conversation that bootstrapped this repo. MVP target:
- Reedline REPL with starship-subset prompt.
- Builtins (
cd,exit,export,alias,history). - Native fork/exec for simple pipelines,
/bin/sh -cfallback otherwise. - fzf-style history (Ctrl-R) backed by nucleo.
lsdbuilt in as the defaultls.- Nix flake + home-manager module (already present in skeleton form).
- Optional AI helpers (natural-language → command, error explanation).
MIT — see LICENSE.