| Name | sassyshell JSON |
| Version |
0.1.5
JSON |
| download |
| home_page | None |
| Summary | A sassy, AI-powered CLI sidekick that remembers the commands you forget and mocks you into getting better. |
| upload_time | 2025-10-15 08:55:01 |
| maintainer | None |
| docs_url | None |
| author | None |
| requires_python | >=3.12 |
| license | None |
| keywords |
cli
ai
shell
productivity
developer-tools
linux
terminal
|
| VCS |
 |
| bugtrack_url |
|
| requirements |
No requirements were recorded.
|
| Travis-CI |
No Travis.
|
| coveralls test coverage |
No coveralls.
|
# SassyShell (sassysh)
Your sassy, command-line tutor that remembers the commands you keep forgetting.
---
### Why I Built This
Like a lot of developers, I found myself constantly switching contexts to ask an LLM for the same simple shell commands over and over. `tar` flags, `find` syntax, `awk` one-liners... I wasn't *learning* them, I was just outsourcing my memory. It felt like a bad habit.
Instead of just trying to memorize everything, I thought: what if a tool could track my bad habits and help me internalize the patterns?
So, I built **SassyShell**. It's not just another "GPT in the terminal." It's a CLI sidekick that:
1. Uses a local TF-IDF search to find similar commands you've asked for in the past.
2. Feeds that history to an LLM to provide context-aware answers.
3. Gives you the command you need, along with a bit of sarcastic feedback based on how often you forget it.
It's a project born from turning my own laziness into data. It's designed to mock you into getting better.
### Features
* **Personalized Memory:** Remembers the *types* of commands you struggle with and uses that history to inform its responses.
* **Sassy Feedback:** The more you ask for the same thing, the more it will gently (or not so gently) remind you.
* **Platform Aware:** Automatically detects if you're on Linux, macOS, or Windows and asks the LLM for the correct shell syntax (`bash`/`zsh` vs. PowerShell).
* **Lightweight & Fast:** Uses a fast local similarity search before ever calling an LLM.
<img src="assets/render1760508770224.gif" alt="Sassyshell Demo" width="800" />
### Installation
The recommended way to install SassyShell is with `pipx` or `uvx`. This installs it in an isolated environment so it doesn't clutter your global packages.
```bash
pipx install sassyshell
```
You can install `pipx` using:
```bash
pip install --user pipx
```
Or, if you use `uvx`:
```bash
uvx sassyshell
```
### Quickstart
#### 1. One-Time Setup
Before you can use the tool, you need to run the setup wizard to configure your LLM provider and API key. Your credentials are saved locally in `~/.config/sassyshell/.env`.
```bash
sassysh setup
```
You'll be guided through selecting a provider (OpenAI, Google, etc.) and entering your API key.
#### 2. Ask a Question
Use the `ask` command to ask for help.
```bash
sassysh ask "how to find all files modified in the last 24 hours"
```
**Example Interaction:**
```
$ sassysh ask "how to add changes to my last git commit without a new one"
Looks like you're having trouble with your Git commits again! You can add your new changes using:
git commit --amend --no-edit
```
### License
This project is licensed under the MIT License.
Raw data
{
"_id": null,
"home_page": null,
"name": "sassyshell",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.12",
"maintainer_email": null,
"keywords": "cli, ai, shell, productivity, developer-tools, linux, terminal",
"author": null,
"author_email": "Parth Jain <parthjain1812@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/c2/02/38aa80300e284126653f7ecb0f331b14facabf9d36d4f5681f04f145c7aa/sassyshell-0.1.5.tar.gz",
"platform": null,
"description": "# SassyShell (sassysh)\n\nYour sassy, command-line tutor that remembers the commands you keep forgetting.\n\n---\n\n\n\n### Why I Built This\n\nLike a lot of developers, I found myself constantly switching contexts to ask an LLM for the same simple shell commands over and over. `tar` flags, `find` syntax, `awk` one-liners... I wasn't *learning* them, I was just outsourcing my memory. It felt like a bad habit.\n\nInstead of just trying to memorize everything, I thought: what if a tool could track my bad habits and help me internalize the patterns?\n\nSo, I built **SassyShell**. It's not just another \"GPT in the terminal.\" It's a CLI sidekick that:\n1. Uses a local TF-IDF search to find similar commands you've asked for in the past.\n2. Feeds that history to an LLM to provide context-aware answers.\n3. Gives you the command you need, along with a bit of sarcastic feedback based on how often you forget it.\n\nIt's a project born from turning my own laziness into data. It's designed to mock you into getting better.\n\n### Features\n\n* **Personalized Memory:** Remembers the *types* of commands you struggle with and uses that history to inform its responses.\n* **Sassy Feedback:** The more you ask for the same thing, the more it will gently (or not so gently) remind you.\n* **Platform Aware:** Automatically detects if you're on Linux, macOS, or Windows and asks the LLM for the correct shell syntax (`bash`/`zsh` vs. PowerShell).\n* **Lightweight & Fast:** Uses a fast local similarity search before ever calling an LLM.\n\n<img src=\"assets/render1760508770224.gif\" alt=\"Sassyshell Demo\" width=\"800\" />\n\n### Installation\n\nThe recommended way to install SassyShell is with `pipx` or `uvx`. This installs it in an isolated environment so it doesn't clutter your global packages.\n\n```bash\npipx install sassyshell\n```\n\nYou can install `pipx` using:\n```bash\npip install --user pipx\n```\n\nOr, if you use `uvx`:\n\n```bash\nuvx sassyshell\n```\n\n### Quickstart\n\n#### 1. One-Time Setup\n\nBefore you can use the tool, you need to run the setup wizard to configure your LLM provider and API key. Your credentials are saved locally in `~/.config/sassyshell/.env`.\n\n```bash\nsassysh setup\n```\n\nYou'll be guided through selecting a provider (OpenAI, Google, etc.) and entering your API key.\n\n#### 2. Ask a Question\n\nUse the `ask` command to ask for help.\n\n```bash\nsassysh ask \"how to find all files modified in the last 24 hours\"\n```\n\n**Example Interaction:**\n\n```\n$ sassysh ask \"how to add changes to my last git commit without a new one\"\n\nLooks like you're having trouble with your Git commits again! You can add your new changes using:\n\ngit commit --amend --no-edit\n```\n\n### License\n\nThis project is licensed under the MIT License.\n",
"bugtrack_url": null,
"license": null,
"summary": "A sassy, AI-powered CLI sidekick that remembers the commands you forget and mocks you into getting better.",
"version": "0.1.5",
"project_urls": {
"Homepage": "https://github.com/parthjain18/sassyshell",
"Issues": "https://github.com/parthjain18/sassyshell/issues"
},
"split_keywords": [
"cli",
" ai",
" shell",
" productivity",
" developer-tools",
" linux",
" terminal"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "4c6ecb88e2987605ca173374d02c7979805911a560aa55574873b0076a3ec1da",
"md5": "c22f4df75e45d6606cecf2efee463be7",
"sha256": "dee4b1feb5bc480c97c10b4141dbe44445a769898da70c1b03491dfb741bb55f"
},
"downloads": -1,
"filename": "sassyshell-0.1.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c22f4df75e45d6606cecf2efee463be7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.12",
"size": 9495,
"upload_time": "2025-10-15T08:55:00",
"upload_time_iso_8601": "2025-10-15T08:55:00.043340Z",
"url": "https://files.pythonhosted.org/packages/4c/6e/cb88e2987605ca173374d02c7979805911a560aa55574873b0076a3ec1da/sassyshell-0.1.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c20238aa80300e284126653f7ecb0f331b14facabf9d36d4f5681f04f145c7aa",
"md5": "b47749add20140fd894c73f2d79e7b60",
"sha256": "2c54c5cb41ef9a805bab637bf05f9776c1a21ac835a205bf818c084f570dc848"
},
"downloads": -1,
"filename": "sassyshell-0.1.5.tar.gz",
"has_sig": false,
"md5_digest": "b47749add20140fd894c73f2d79e7b60",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.12",
"size": 9488,
"upload_time": "2025-10-15T08:55:01",
"upload_time_iso_8601": "2025-10-15T08:55:01.463119Z",
"url": "https://files.pythonhosted.org/packages/c2/02/38aa80300e284126653f7ecb0f331b14facabf9d36d4f5681f04f145c7aa/sassyshell-0.1.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-15 08:55:01",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "parthjain18",
"github_project": "sassyshell",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "sassyshell"
}