Skip to content

Releases: ToastCoder/shell-agent

Version 1.0.1

27 May 20:34

Choose a tag to compare

v1.0.1 — Initial Release: The Autonomous CLI Agent

We are excited to announce the initial release of Shell-Agent, a sophisticated autonomous AI assistant that lives directly in your terminal. Shell-Agent goes beyond static chat interfaces by dynamically executing bash commands, modifying directories, and debugging code on your local machine using a secure, gated workflow.


Key Features

1. Human-in-the-Loop (HITL) Approval Gates

To ensure security and safety, the agent cannot execute any bash command autonomously. It prompts the user with a y/n check before launching any process, leaving you in complete control.

2. Directory Sandboxing

The agent is restricted from navigating into sensitive operating system folders (e.g., /etc, /var, /System, /private). Any command targeting these paths is blocked at the sandbox layer.

3. Real-Time Token Streaming & Colorized Prompts

  • Streams the agent's thought process and response text token-by-token.
  • Features a clean, modernized command-line UI with colored prompts (you ❯ in bold blue, agent ❯ in bold green).
  • Clear ANSI-colorized headers for process phases, such as [ACTION REQUIRED] (Red) and [SHELL OBSERVATION] (Yellow).

4. Zero-Configuration Installer

A single deployment command clones the repository, sets up a clean Python virtual environment, installs LangGraph/Ollama dependencies, and adds the global shell-agent command to your environment PATH.


Installation & Setup

Prerequisites

  1. Python 3: A modern Python 3 installation (3.9+).
  2. Ollama: Ensure Ollama is running locally and your chosen model (defaults to gemma4) has been pulled.

Deploy in One Command

Run the installer via curl to clone the repository and configure the system path automatically:

curl -sL https://raw.githubusercontent.com/ToastCoder/shell-agent/refs/heads/master/install.sh | bash

Once the installation completes, reload your terminal profile (e.g., source ~/.zshrc) and run the agent from any directory:

shell-agent

Configuration & Customization

Agent settings are stored in ~/.local/share/shell-agent/config/settings.json. You can easily switch models (e.g., to llama3.2) or edit the system prompts:

{
  "model": {
    "name": "gemma4",
    "temperature": 0
  },
  "prompt": [
    "You are Shell-Agent. Your BASE_DIR is {BASE_DIR}...",
    "..."
  ]
}

Core Components

  • main.py: Coordinates the LangGraph execution flow, handles state transitions, and streams LLM output.
  • utils/tools.py: Implements the shell execution tool with sandboxing and output formatting.
  • install.sh: Auto-deploys the agent globally on Unix-based systems.