Skip to main content

AI-enhanced terminal shell with LLM-powered capabilities

Project description

AgentSH

AI-Enhanced Terminal Shell with LLM-Powered Capabilities

AgentSH wraps traditional shells (Bash/Zsh/Fish) with intelligent features:

  • Natural language to command translation
  • Multi-step autonomous task execution
  • Multi-device orchestration (servers, robots, IoT)
  • Strong security with human-in-the-loop
  • Memory and context management

Installation

Requires uv for dependency management.

# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh

# From PyPI (when released)
uv pip install agentsh

# From source
git clone https://github.com/TafyLabs/AgentSH.git
cd AgentSH
uv sync
uv pip install -e ".[dev]"

Quick Start

# Set your API key
export ANTHROPIC_API_KEY="your-key-here"

# Start AgentSH
uv run agentsh

# Or with custom config
uv run agentsh --config ~/.agentsh/config.yaml

Usage

Inside the AgentSH shell:

# Regular shell commands work normally
ls -la
git status

# AI-powered requests (prefix with 'ai ')
ai list all python files modified today
ai explain what this git command does: git rebase -i HEAD~3
ai help me set up a Python virtual environment

# Force shell execution (prefix with !)
!echo "force shell mode"

Configuration

Create ~/.agentsh/config.yaml:

llm:
  provider: anthropic
  model: claude-sonnet-4-20250514

shell:
  backend: zsh
  ai_prefix: "ai "

security:
  mode: normal
  require_confirmation: true

log_level: INFO

See examples/config.yaml for full options.

Development

# Install dev dependencies
make dev

# Or manually with uv
uv pip install -e ".[dev,all]"

# Run tests
make test

# Run linters
make lint

# Run type checks
make type-check

# Run all checks
make check

# Sync dependencies
make sync

# Update lock file
make lock

Architecture

AgentSH is built with a modular architecture:

agentsh/
├── shell/         # User I/O, PTY management
├── agent/         # LLM client, planning, execution
├── tools/         # Tool interface, registry
├── workflows/     # LangGraph orchestration
├── memory/        # Session & persistent storage
├── security/      # Risk classification, RBAC
├── telemetry/     # Logging, metrics, health
├── orchestrator/  # Multi-device, SSH, MCP
├── plugins/       # Extensible toolsets
└── config/        # Configuration management

See docs/ARCHITECTURE_SUMMARY.md for details.

Implementation Status

Phase Component Status
0 Foundation ✅ Complete
1 Shell Wrapper ✅ Complete
2 LLM Integration ✅ Complete
3 Security ✅ Complete
4 Tool Interface ✅ Complete
5 Workflows ✅ Complete
6 Memory ✅ Complete
7 Telemetry ✅ Complete
8 Orchestration ✅ Complete
9 Robotics ✅ Complete
10 Polish ✅ Complete
11 Testing & Coverage ✅ Complete
12 Release & Distribution ✅ Complete

See docs/IMPLEMENTATION_CHECKLIST.md for details.

Security

AgentSH includes multiple security layers:

  • Risk Classification: Commands classified as SAFE, MEDIUM, HIGH, CRITICAL
  • RBAC: Role-based access control (VIEWER, OPERATOR, ADMIN)
  • Human-in-the-Loop: Approval required for dangerous operations
  • Audit Logging: All actions logged for compliance

Contributing

Contributions are welcome! Please read the documentation and submit PRs.

License

Apache License 2.0 - see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tafysh-0.1.0.tar.gz (378.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tafysh-0.1.0-py3-none-any.whl (279.0 kB view details)

Uploaded Python 3

File details

Details for the file tafysh-0.1.0.tar.gz.

File metadata

  • Download URL: tafysh-0.1.0.tar.gz
  • Upload date:
  • Size: 378.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for tafysh-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4fd503fae60cf341dd79630f2696162446739d4961dc41e6ae9c79c190808541
MD5 33e821a49ffd3c85eea8ea2447db0e58
BLAKE2b-256 4e82c335fb9efb818504a23a7c21e045931733fa7ec263578d067f484d89e712

See more details on using hashes here.

File details

Details for the file tafysh-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: tafysh-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 279.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for tafysh-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eaea9206aa5d5a0f37adcdb10b744bf070f6ccb60aa910c28b3a9cf8f8d299f5
MD5 b044172fa6a81a077d1fbcdc7913a57a
BLAKE2b-256 7ff91434c41ac20d8e0ea43d467c3d62bda3b833732420bcbddbdbf3bf0590b5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page