Pular para o conteúdo principal

Parolsh

Build Status Opensource ByJG GitHub source GitHub license GitHub release

Speak to your terminal. Natural language first.

Parolsh is a shell where natural language is the primary command language. What you type goes to an AI agent through the Agent Client Protocol (ACP), and Bash stays one ! away.

wallet ❯ list the 10 most recently modified files ← the agent
wallet ❯ !git status ← bash
wallet ❯ !bash ← a full Bash session
wallet ❯ #cd ~/projects/billing ← Parolsh itself

It runs inside your usual terminal emulator, prints to the normal scrollback (no full-screen UI), and works with any ACP agent: Claude Code, Codex, Qwen Code, Gemini CLI, OpenCode and others.

The name comes from Esperanto parol- (to speak) + sh.

Early development

Parolsh talks to one ACP agent: answers stream as they arrive, permission requests are asked in the terminal, and Ctrl+C cancels a turn. #agent <name> switches agents. Not there yet: #resume, sending !command output to the agent, and Markdown formatting.

Input​

Every line is routed by its first character. Nothing guesses whether you typed English or a command.

You typeWhat happens
textSent to the agent
/commandSent to the agent unchanged (the agent's own slash commands)
!commandRun with bash -ic, in the current directory
!bashInteractive Bash session; exit returns to Parolsh
#commandParolsh control command, see #help

See Input routing.

Install​

Add the ByJG package repository, then:

# Debian/Ubuntu
sudo apt install parolsh

# Fedora/RHEL
sudo dnf install parolsh

Packages are built for amd64 and arm64, and need glibc 2.28 or newer (Debian 10+, Ubuntu 20.04+, RHEL 8+).

On macOS (or Linux) with Homebrew:

brew install byjg/tap/parolsh

Homebrew builds it from source, installing Rust only for the build.

Documentation​

Build from source​

Requires Rust 1.88 or newer.

cargo build --release
./target/release/parolsh

Run the checks the CI runs:

cargo fmt --check
cargo clippy --all-targets -- -D warnings
cargo test

License​

MIT


Open source ByJG