Skip to main content

ShellSense

Python Version License PRs Welcome PyPI version

A universal AI-powered terminal assistant for Linux

Features • Installation • Usage • Development • Contributing

ShellSense Demo

Features

  • AI Assistant: Get expert help for any terminal task with multiple AI providers
  • Smart Search: Integrated web search and Wikipedia lookup
  • Data Tools: GitHub info, stock data, and product research
  • Translation: Built-in support for multiple languages
  • Screenshots: Capture webpage screenshots
  • Code Help: Generate and explain code snippets
  • Rich Output: Beautiful terminal formatting with loading animations
  • Universal: Works with any Linux terminal (bash, zsh, fish, etc.)
  • Extensible: Easy to add new tools and providers

Installation

Prerequisites

  • Python 3.8 or higher
  • pip (Python package installer)
  • Chrome/Chromium (optional, for screenshots)

Quick Install

pip install shellsense

That's it! ShellSense is now installed and ready to use.

First-time Setup

Run the setup command to create your configuration:

shellsense --setup

This creates a configuration file at ~/.config/shellsense/config.env. Edit this file with your API keys:

# OpenAI API Keys (Optional)
OPENAI_API_KEY=your-openai-api-key

# Gemini API Keys (Optional)
GEMINI_API_KEY=your-gemini-api-key

# Cloudflare Environment Variables
CLOUDFLARE_ACCOUNT_ID=your-cloudflare-account-id
CLOUDFLARE_AUTH_TOKEN=your-cloudflare-auth-token
FUNCTION_CALL_MODEL=@hf/nousresearch/hermes-2-pro-mistral-7b
FRIENDLY_RESPONSE_MODEL=@hf/mistral/mistral-7b-instruct-v0.2

Usage

Basic Commands

# Show help and available commands
shellsense --help

# Use Specific AI Provider
shellsense -p gemini -q "What is the current weather in New York?"

# Default to Cloudflare AI
shellsense -q "Search Wikipedia for quantum computing"

Available Tools

Tool Description
WebSearch Search the web using Bing/DuckDuckGo
Wikipedia Search and retrieve Wikipedia articles
Translator Translate text between languages
Screenshot Capture webpage screenshots
GitHub Fetch GitHub user/repo information
Stock Get real-time stock market data
ProductHunt Discover trending tech products
Coder Generate code snippets and explanations

Development

Setup Development Environment

  1. Clone and setup:

    git clone https://github.com/venopyX/shellsense.git
    cd shellsense
    
    # Create and activate virtual environment
    python -m venv venv
    source venv/bin/activate
    
    # Install in development mode with dev dependencies
    pip install -e ".[dev]"
    
  2. Run tests:

    pytest
    
  3. Build documentation:

    cd docs
    make html
    
  4. Build and publish:

    python -m build
    twine upload dist/*
    

Project Structure

shellsense/
├── shellsense/        # Main package
│   ├── ai/           # AI providers and models
│   │   └── providers/# AI provider implementations
│   ├── tools/        # Tool implementations
│   │   ├── coder/    # Code generation tools
│   │   ├── data/     # Data processing tools
│   │   ├── language/ # Language tools
│   │   ├── media/    # Media tools
│   │   ├── shell/    # Shell tools
│   │   └── web/      # Web tools
│   ├── config/       # Configuration management
│   ├── utils/        # Utility functions
│   └── __main__.py   # CLI entry point
├── tests/            # Test suite
├── docs/             # Documentation
│   ├── api/         # API reference
│   ├── guides/      # User guides
│   └── examples/    # Usage examples
└── pyproject.toml    # Project configuration

Code Style

We use industry-standard Python tools:

  • Black for code formatting
  • isort for import sorting
  • flake8 for linting
  • mypy for type checking

Run all checks:

black .
isort .
flake8 .
mypy .

Contributing

We welcome contributions! Please see our Contributing Guide for details.

  1. Fork the repository
  2. Create your feature branch
  3. Make your changes
  4. Run the tests
  5. Submit a pull request

Documentation

For comprehensive documentation, visit our Documentation. Key sections include:

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support


Made with ❤️ by the Gemechis Chala

Metadata

Release files for shellsense 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for shellsense 0.1.0
File Size Uploaded Provenance Actions
shellsense-0.1.0.tar.gz 48.3 kB Without provenance Details for shellsense-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for shellsense 0.1.0
File Interpreter ABI Platform Actions
shellsense-0.1.0-py3-none-any.whl Python 3 none any Details for shellsense-0.1.0-py3-none-any.whl

Total release size: 93.1 kB

Release files / shellsense-0.1.0.tar.gz

Download URL shellsense-0.1.0.tar.gz
Size 48.3 kB
Tags Source
SHA-256 checksum
How to use checksums
2ec58fa6f49ecafa9712bfe4b47923d9337dc0fd18d74921cd5f47c179f0602f
BLAKE2b-256 checksum
How to use checksums
36c20f5241b3a8d09148f6749e045f60bbf973f45e9b42a4794ad55dca3d01e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.7

Release files / shellsense-0.1.0-py3-none-any.whl

Download URL shellsense-0.1.0-py3-none-any.whl
Size 44.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
70894039b36dd5ac9431b40f7a718b22b1528c525fb5006ec4883b74dfc7e7ae
BLAKE2b-256 checksum
How to use checksums
1d928e0f1449a10b7e77eb3c03cac93becadc1c88ed495cc5f91e8add0456abf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.7

Security for shellsense 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page