AI-enhanced terminal shell with LLM-powered capabilities
Project description
TafySH
AI-Enhanced Terminal Shell with LLM-Powered Capabilities
TafySH 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 tafysh
# From source
git clone https://github.com/TafyLabs/TafySH.git
cd TafySH
uv sync
uv pip install -e ".[dev]"
Quick Start
# Set your API key
export ANTHROPIC_API_KEY="your-key-here"
# Start TafySH
uv run tafysh
# Or with custom config
uv run tafysh --config ~/.tafysh/config.yaml
Usage
Inside the TafySH 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 ~/.tafysh/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
TafySH is built with a modular architecture:
tafysh/
├── 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
TafySH 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tafysh-0.2.1.tar.gz.
File metadata
- Download URL: tafysh-0.2.1.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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4292c15d5a7c45da1719d4b5b4eb98c31763303de5b5fe655b17cfeba78e133e
|
|
| MD5 |
2f657eb5856c434d99803c4b30bcf155
|
|
| BLAKE2b-256 |
d00058d1a686a89fb3dd1330f577c04c4f5d7b199eefe59337fa1d2beddb987b
|
File details
Details for the file tafysh-0.2.1-py3-none-any.whl.
File metadata
- Download URL: tafysh-0.2.1-py3-none-any.whl
- Upload date:
- Size: 278.9 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c8f503b19741771a03dddd0b4251489c20ca585c6e28547674144574004a763a
|
|
| MD5 |
5823779cb0fbb2d81f66dbaf89bf596c
|
|
| BLAKE2b-256 |
a1ae2ede18cef81f026f118ff245dfb1632315b0f4f6313d210a7b41cb6327c4
|