https://github.com/notnanook/ash
A no-bullshit, seamless way to use LLMs right inside your shell. Supports bash and zsh
https://github.com/notnanook/ash
ai assistant assistant-chat-bots bash client llm plugin shell zsh
Last synced: 21 days ago
JSON representation
A no-bullshit, seamless way to use LLMs right inside your shell. Supports bash and zsh
- Host: GitHub
- URL: https://github.com/notnanook/ash
- Owner: NotNanook
- License: mit
- Created: 2025-09-03T22:56:29.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2025-09-05T22:14:51.000Z (about 1 month ago)
- Last Synced: 2025-09-05T23:33:38.838Z (about 1 month ago)
- Topics: ai, assistant, assistant-chat-bots, bash, client, llm, plugin, shell, zsh
- Language: Shell
- Homepage:
- Size: 27.3 KB
- Stars: 2
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Ash
A no-bullshit, seamless way to use LLMs right inside your shell (bash, zsh). Supports OpenAI, Claude, Ollama and OpenRouter## Why?
Ever felt that most AI tools sound nice but are completely impractical or simply useless? Then try Ash, because you don’t need another bloated wrapper or half-baked CLI tool.
## Features
- **Command-not-found Fallback**: Unrecognized commands become AI queries
```
~ ❯ hey chat how are you
I'm a program — ready to help. What would you like to do?
```
```python
~ ❯ ls
Desktop/ Documents/ Downloads/ Music/ Pictures/ Videos/
```- **Shell Integration**: Respects redirections, pipes, and standard shell behavior
```sh
git log --oneline -10 | summarize recent changes
grep "ERROR" app.log | categorize these errors > error_types.txt
```- **Easily extensible**: Simply implement a new `__send_to` function to `ash.zsh`. Feel free to create pull request
## Installation
Universal one line installer
```sh
sh -c 't=$(mktemp) && curl -fsSL https://raw.githubusercontent.com/NotNanook/Ash/main/installer.sh -o "$t" && bash "$t"; r=$?; rm -f "$t"; exit $r'
```
Or clone the repository and use the installer file. Follow on screen instructions for further information. The installer will append the following lines into your config file (zsh)
```zsh
# BEGIN ash
if [[ -f "/home/user/.config/ash/ash.zsh" ]]; then
source "/home/user/.config/ash/ash.zsh"
fi
# END ash
```## Dependencies
`jq`
`curl`## Configuration
Ash file: `~/.config/ash/ash.zsh` or `~/.config/ash/ash.sh`
Config file: `~/.config/ash/config.json`
Chat history: `~/.ash_history.json`
History limit: 15 messages (configurable via MAX_HISTORY in script)