{"id":26895181,"url":"https://github.com/s41r4j/aish","last_synced_at":"2026-04-30T20:32:00.243Z","repository":{"id":285342218,"uuid":"952715039","full_name":"s41r4j/aish","owner":"s41r4j","description":"AiSH - Artificially Intelligent Shell (v0.2-beta)","archived":false,"fork":false,"pushed_at":"2025-05-11T17:17:33.000Z","size":2898,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-04T11:49:00.164Z","etag":null,"topics":["ai","artificial-intelligence","automation","linux","linux-shell","shell","unix","unix-shell","windows-command-line","windows-powershell","windwos"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/s41r4j.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-03-21T18:47:25.000Z","updated_at":"2025-05-11T17:34:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"e9e8fc0a-168a-4a42-84c5-d7b0129b5d20","html_url":"https://github.com/s41r4j/aish","commit_stats":null,"previous_names":["s41r4j/aish"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/s41r4j/aish","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s41r4j%2Faish","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s41r4j%2Faish/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s41r4j%2Faish/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s41r4j%2Faish/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/s41r4j","download_url":"https://codeload.github.com/s41r4j/aish/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s41r4j%2Faish/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32476682,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"ssl_error","status_checked_at":"2026-04-30T13:12:06.837Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","artificial-intelligence","automation","linux","linux-shell","shell","unix","unix-shell","windows-command-line","windows-powershell","windwos"],"created_at":"2025-04-01T01:54:25.415Z","updated_at":"2026-04-30T20:32:00.221Z","avatar_url":"https://github.com/s41r4j.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AiSH: _Artificially Intelligent Shell_\n\n![image](https://github.com/user-attachments/assets/a2a45042-95b2-43fc-8fa0-7201b23707a9)\n\n\n**AiSH** (Artificially Intelligent Shell) is an autonomous, AI-driven shell assistant that interprets user input, generates shell commands, and executes them on your real machine. It supports both online (cloud LLMs) and offline (Ollama) modes, with robust error handling, command history, and dynamic configuration.\n\n\u003e Beta Version 0.2\n\n\u003cbr\u003e\n\n## Features\n\n- **AI-Powered Command Generation:** Converts natural language into shell commands using LLMs (Groq, Gemini, OpenRouter, Ollama).\n- **Autonomous Task Processing:** Breaks down complex tasks into step-by-step shell commands and executes them.\n- **Error Correction:** Uses AI to analyze and retry failed commands.\n- **Interactive Shell:** Enhanced prompt with auto-completion, history, and customizable themes.\n- **Secure API Key Storage:** API keys are encrypted using Fernet.\n- **Cross-Platform:** Works on Linux, macOS, and Windows.\n\n\n\u003cbr\u003e\n\n## Getting Started\n\n### 1. Install Requirements\n\n```sh\npip install -r requirements.txt\n```\n\n### 2. Configure API Keys\n\n- On first run, `.aishrc` is created in your home directory.\n- It is recommended to add your API keys and preferred models using the commands:\n  - `/config api edit \u003capi\u003e key \u003cvalue\u003e`\n  - `/config api edit \u003capi\u003e model \u003cvalue\u003e`\n- You can also add them directly in `.aishrc`, but above method is preferred.\n\u003e API keys are securely encrypted automatically.\n\n### 3. Run AiSH\n\n```sh\npython src/aish.py\n```\n\n\n\u003cbr\u003e\n\n## Usage\n\n### Shell Commands\n\n- Enter natural language requests (e.g., `list files in home directory`).\n- Use `/help` for a list of commands.\n\n### Special Commands\n\n| Command                | Description                                  |\n|------------------------|----------------------------------------------|\n| `/help` or `/h`        | Show help                                    |\n| `/verbose` or `/v`     | Toggle verbose mode                          |\n| `/config` or `/c`      | Configure APIs, history, etc.                |\n| `/prompt [theme]`      | Change prompt theme (default, pwd, mood)     |\n| `/exit` or `/e`        | Exit AiSH                                    |\n| `!\u003ccmd\u003e`               | Execute raw shell command                    |\n\n### Configuration\n\n- Use `/config api current \u003capi\u003e` to set the active AI provider.\n- Use `/config api edit \u003capi\u003e key \u003ckey\u003e` to update API keys.\n- Use `/config api edit \u003capi\u003e model \u003cmodel\u003e` to update models.\n- Use `/config prev_cmds \u003cn\u003e` to set command history length in prompts.\n\n\n\u003cbr\u003e\n\n## Security\n\n- API keys are securely stored and never saved in plaintext.\n- Your sensitive configuration remains protected at all times.\n\n\n\u003cbr\u003e\n\n## Example Tasks\n\n- `list files and folders`\n- `write hello world python program`\n- `how much disk space is left?`\n- `is docker running?`\n\n\n\u003cbr\u003e\n\n## Troubleshooting\n\n- If you see errors about missing API keys, edit `.aishrc` and add your keys.\n- For offline mode, ensure Ollama is running and the model is set in `.aishrc`.\n\n\n\u003cbr\u003e\n\nFor more details, see the code in the [src/](../src) directory.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs41r4j%2Faish","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fs41r4j%2Faish","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs41r4j%2Faish/lists"}