Metadata-Version: 2.1
Name: shy_sh
Version: 1.0.2
Summary: Shell copilot - sh shell AI copilot
Home-page: https://github.com/mceck/shy-sh
License: MIT
Author: Mattia Cecchini
Author-email: matcecco@gmail.com
Requires-Python: >=3.10,<3.13
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Terminals
Classifier: Topic :: Utilities
Requires-Dist: anthropic (>=0.31.2,<0.32.0)
Requires-Dist: boto3 (==1.34.162)
Requires-Dist: langchain (>=0.2.11,<0.3.0)
Requires-Dist: langchain-aws (>=0.1.12,<0.2.0)
Requires-Dist: langchain-community (>=0.2.10,<0.3.0)
Requires-Dist: langchain-google-genai (>=1.0.8,<2.0.0)
Requires-Dist: langchain-groq (>=0.1.8,<0.2.0)
Requires-Dist: openai (>=1.37.1,<2.0.0)
Requires-Dist: pillow (>=11.0.0,<12.0.0)
Requires-Dist: pydantic-settings (>=2.3.4,<3.0.0)
Requires-Dist: pyperclip (>=1.9.0,<2.0.0)
Requires-Dist: pyyaml (>=6.0.1,<7.0.0)
Requires-Dist: typer (>=0.12.3,<0.13.0)
Project-URL: Repository, https://github.com/mceck/shy-sh
Description-Content-Type: text/markdown

# Shy.sh

Sh shell AI copilot

**Help**

Usage: shy [OPTIONS] [PROMPT]...

Arguments
prompt [PROMPT]

Options

- -i Interactive mode [default false if a prompt is passed else true]
- -x Do not ask confirmation before executing scripts
- -s Take a screenshot to be analyzed with the prompt (requires vision model)
- --configure Configure LLM
- --help Show this message and exit.

**Install**

`pip install shy-sh`

Use `shy --configure` to change LLM (default use ollama - llama3.1)

api_key format for aws bedrock: `region_name acces_key secret_key`

**Examples**

```sh
> shy find all python files in this folder

🛠️ find . -type f -name '*.py'

Do you want to execute this command? [Y/n/c]:

./src/chat_models.py
./src/agent/tools.py
./src/agent/__init__.py
./src/agent/agent.py
./src/settings.py
./src/main.py

🤖: Here are all the Python files found in the current folder and its subfolders.
```

```sh
> shy -x convert aaa.png to jpeg and resize to 200x200

🛠️ convert aaa.png -resize 200x200 aaa.jpg

Success!

🤖: I converted the file aaa.png to JPEG format and resized it to 200x200 pixels.
```

```sh
> shy rescale movie.avi to 1024x768 and save it in mp4

🛠️ ffmpeg -i movie.avi -vf scale=1024:768 -c:v libx264 output.mp4

Do you want to execute this command? [Y/n/c]: c

🤖: Command copied to the clipboard!
```

```sh
> shy

✨: Hello, how are you?

🤖: Hello! I'm fine thanks

✨: how many file in this folder

🛠️ ls | wc -l

Do you want to execute this command? [Y/n/c]:

5

✨: exit

🤖: 👋 Bye!
```

