Skip to main content

This is AIPATT: AI Powered Assistant Tool for Terminals

Project description

AIPATT

A versatile terminal-based AI Powered Assistant Tool.

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License
  6. Contact

About The Project


AIPATT is an AI-powered Assistance Tool for Terminals designed to streamline your workflow by providing tools to generate code, execute shell commands, retrieve and summarize information from Google, and engage in interactive chats.

Here's why:

  • Boost productivity: AIPATT helps automate repetitive tasks like coding, information retrieval, and system commands right from the terminal.
  • Easy integration: Integrates seamlessly with your command-line environment, making it a powerful addition to your development toolkit.
  • Versatile: Whether you're coding, querying data, or managing system tasks, AIPATT adapts to your needs.

AIPATT is built with an emphasis on simplicity, power, and flexibility, enabling developers and power users to get things done faster and smarter.

Built With

These are the major frameworks and libraries used to build AIPATT:

  • Python
  • Ollama
  • LLaMa3
  • Langchain
  • Langgraph

Getting Started

To get a local copy of AIPATT up and running, follow these steps.

Prerequisites

Before installing and using AIPATT, ensure you have the following installed:

  • Python 3.10+ - Ensure Python is installed on your system. You can download it from here.
  • Ollama - To run the language models, you need to install Ollama. You can get Ollama from their official site.
    • Once installed, you can run a model like llama3.2 using:

      ollama run llama3.2
      
    • You can explore other models available on Ollama's model library that supports tools calling.

Installation

Once the prerequisites are installed, follow these steps to install AIPATT:

  1. Install AIPATT via pip:

    pip install aipatt
    
  2. After the installation, you can start using AIPATT directly in your terminal by running:

    aipatt
    

Configuration

The first time you run AIPATT, you will need to configure a few settings. You can either use the default settings or customize them as per your needs. Below are the configuration options you'll need to provide:

  1. DATABASE_PATH: Default value is available, but you can specify your own database path.
  2. DEFAULT_MODEL: Default model is set, but you can change it to any available model in Ollama.
  3. OPENWEATHERMAP_API_KEY: You need to get your API key from OpenWeatherMap.
  4. GOOGLE_SEARCH_URL: The default Google search URL is set, but you can override it.
  5. GOOGLE_CSE_ID: Get your Custom Search Engine ID from Google CSE.
  6. GOOGLE_API_KEY: Get your Google API Key from Google Cloud Console.
  7. SMTP_SERVER: Default is set for Gmail, but you can configure your own SMTP server.
  8. PORT: Default is set for Gmail. If using a different SMTP server, you need to provide the correct port.
  9. USERNAME: Your email address or username for the SMTP server.
  10. PASSWORD: Your email password or an app-specific password if using Gmail.

Note: When you first run AIPATT, it will ask you to enter these configuration values. You can also manually edit the .aipatt.env file that is created in the home directory to modify these settings.

Usage

Here are some useful examples of how you can use AIPATT to perform different tasks. Each command can be run directly in your terminal. For more details on the available commands, use the -h or --help option.

To see all available options, use:

aipatt -h

Available Commands

Generate Code: Use this to generate code based on your input query.

aipatt -c "Write a Python script for Fibonacci series"

Chat: Engage in a continuous conversation with the AI.

aipatt -ch

YouTube Search: Search and play YouTube videos directly from the terminal.

aipatt -y "Top Python tutorials"

Shell Command Generation: Generate and execute shell commands based on a query.

aipatt -s "How to update my system?"

Mail Composer: Compose and send an email using AI.

aipatt -m "Send email to example@gmail.com, Meeting at 10 AM"

Google Search and Summarize: Search on Google and get a summarized answer.

aipatt -gs "What is the capital of France?"

Update Configuration: Use this command to update your configuration settings.

aipatt -u

Clear Memory: Clear the entire chat memory.

aipatt -cm

Version Info: Get the version of AIPATT installed.

aipatt -v

Help: Display the help message with all available options.

aipatt -h

Example Commands

Ask a Question: Query the AI to answer questions directly:

aipatt "What is internet?"

Search Latest News About AI: Use AIPATT to stay updated with the latest AI news:

aipatt "Latest news about AI"

Search and Play YouTube Videos: Search for specific videos on YouTube and play them:

aipatt -y "Top Python tutorials"

Generate Shell Command: Run a query and generate a shell command, or execute a script:

aipatt -s "How to update my system?"

Summarize Google Search Results: Use AIPATT to search Google and get a summary of the results:

aipatt -gs "What is the capital of France?"

Current Weather Conditions: Get the weather report of a city:

aipatt "Current Weather Condition of New York"

Generate Code: Generate code for a common task like a Fibonacci series:

aipatt -c "Write a Python script for Fibonacci series"

Send an Email: Compose and send an email using AI:

aipatt -m "Send email to example@gmail.com, Meeting at 10 AM"

Explain Shell Script: You can even pipe a shell script into AIPATT and get an explanation of the code:

cat install.sh | aipatt "Explain the code"

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".

Don't forget to give the project a star! Thanks again!

Steps to Contribute

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

See CONTRIBUTING.md for more information.

License

Distributed under the GNU AGPLv3 License. See LICENSE.md for more information.

Contact

Somesh Sharma

LinkedIn: Somesh Sharma
Instagram: Somesh Sharma
Email: someshs.ce@gmail.com
AIPATT Link: GitHub Link

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

aipatt-0.0.0.tar.gz (54.4 kB view details)

Uploaded Source

Built Distribution

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

aipatt-0.0.0-py3-none-any.whl (42.4 kB view details)

Uploaded Python 3

File details

Details for the file aipatt-0.0.0.tar.gz.

File metadata

  • Download URL: aipatt-0.0.0.tar.gz
  • Upload date:
  • Size: 54.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.10

File hashes

Hashes for aipatt-0.0.0.tar.gz
Algorithm Hash digest
SHA256 b40583b56080ba3727818c769f8250351b5a6b46a9bbf578246b41572bc41941
MD5 d9f1ba4fda20473770314e8578996fb7
BLAKE2b-256 6f22891777f6faa2bb15e97164f6f9a2422536f3f32dec8e61bb7ae96ec5f284

See more details on using hashes here.

File details

Details for the file aipatt-0.0.0-py3-none-any.whl.

File metadata

  • Download URL: aipatt-0.0.0-py3-none-any.whl
  • Upload date:
  • Size: 42.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.10

File hashes

Hashes for aipatt-0.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fa7661326ddfbd7bd9351cd204a7e8f6145ff39b64e3c64cbda3264fab609b5c
MD5 94eb9a1a9d59e7552188c6b6dfe9113c
BLAKE2b-256 2ac282acf3256ce5c68ac757af89db624a0da9929eaa32e75ab190015e36bbc5

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