{"id":32791494,"url":"https://github.com/sayurbox/ask-bob-ai","last_synced_at":"2025-11-05T13:01:40.518Z","repository":{"id":320351860,"uuid":"1081740871","full_name":"sayurbox/ask-bob-ai","owner":"sayurbox","description":"Bob AI connects VS Code to AI CLIs like Claude Code and Gemini CLI. Select code, press a shortcut, and boom—AI suggestions, refactors, tests, you name it.","archived":false,"fork":false,"pushed_at":"2025-10-31T09:47:20.000Z","size":414,"stargazers_count":6,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-31T11:29:17.040Z","etag":null,"topics":["code-assistant","vibe-code","vscode","vscode-extension"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/sayurbox.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-23T08:12:37.000Z","updated_at":"2025-10-31T09:29:11.000Z","dependencies_parsed_at":null,"dependency_job_id":"8c915433-378c-4b29-85eb-40070f074087","html_url":"https://github.com/sayurbox/ask-bob-ai","commit_stats":null,"previous_names":["sayurbox/ask-bob-ai"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sayurbox/ask-bob-ai","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sayurbox%2Fask-bob-ai","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sayurbox%2Fask-bob-ai/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sayurbox%2Fask-bob-ai/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sayurbox%2Fask-bob-ai/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sayurbox","download_url":"https://codeload.github.com/sayurbox/ask-bob-ai/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sayurbox%2Fask-bob-ai/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":282823603,"owners_count":26733133,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-11-05T02:00:05.946Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["code-assistant","vibe-code","vscode","vscode-extension"],"created_at":"2025-11-05T13:00:59.395Z","updated_at":"2025-11-05T13:01:40.512Z","avatar_url":"https://github.com/sayurbox.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🤖 Bob AI CLI Extension\n\n\u003cdiv align=\"center\"\u003e\n\n**Your AI coding buddy, right in VS Code** ⚡\n\n![VS Code](https://img.shields.io/badge/VS%20Code-1.74.0+-blue.svg)\n![License](https://img.shields.io/badge/license-MIT-green.svg)\n![Version](https://img.shields.io/badge/version-0.0.5-orange.svg)\n[![VS Marketplace](https://img.shields.io/badge/VS%20Marketplace-Install-brightgreen.svg)](https://marketplace.visualstudio.com/items?itemName=1031022.bob-ai-cli)\n\n*Select code. Hit a key. Let AI do the heavy lifting.*\n\n\u003c/div\u003e\n\n---\n\n## 🎯 What's This?\n\nBob AI connects VS Code to AI CLIs like **Claude Code** and **Gemini CLI**. Select code, press a shortcut, and boom—AI suggestions, refactors, tests, you name it.\n\n**Zero config. Pure speed. Maximum fun.** 🚀\n\n*Includes delightful sound feedback (toggle on/off in settings)*\n\n---\n\n## ⚡ Keyboard Shortcuts (ASDF Home Row)\n\nThe fastest way to use Bob AI—your fingers never leave home row!\n\n| Keys | Mac | What it does |\n|------|-----|--------------|\n| `Ctrl+K A` | `Cmd+K A` | 🎯 **Quick Actions** menu |\n| `Ctrl+K D` | `Cmd+K D` | 📤 **Send** to terminal |\n| `Ctrl+K F` | `Cmd+K F` | 📋 Copy **reference** |\n| `Ctrl+K G` | `Cmd+K G` | 🚀 Start AI CLI |\n| `Ctrl+K I` | `Cmd+K I` | 🖼️ Send **image file** to terminal |\n| `Ctrl+Shift+K I` | `Cmd+Shift+K I` | 📋 **Paste image** from clipboard |\n\n**Pro tip:** Just select code and mash `Ctrl+K A` (or `Cmd+K A` on Mac). Choose your action. Done. ⚡\n\n---\n\n## 🎨 Quick Actions Menu\n\nHit `Ctrl+K A` and choose:\n\n- 🔍 **Explain this code** - Get the breakdown\n- 🐛 **Find and fix bugs** - Catch issues fast\n- ♻️ **Refactor this code** - Clean it up\n- ✅ **Write unit tests** - Auto-generate tests\n- 📝 **Add documentation** - JSDoc magic\n- ⚡ **Optimize performance** - Make it faster\n- 🔒 **Security review** - Find vulnerabilities\n- 🎯 **Simplify logic** - Untangle spaghetti code\n\n---\n\n## 📁 Folder Operations\n\nRight-click any folder/file in Explorer → **\"Bob AI: Actions\"** for quick operations:\n\n### ✨ Quick Actions (Template-based)\nChoose from customizable templates:\n- 📖 **Explain This** - Get AI explanation of folder structure \u0026 purpose\n- 🔍 **Review Code** - Comprehensive code review\n- 🔬 **Deep Code Review** - Expert review with confidence-based filtering (≥80 threshold)\n- 🐛 **Find Bugs** - Analyze for potential issues\n- ✅ **Generate Tests** - Create test coverage\n- 📝 **Add Documentation** - Generate or improve documentation\n- ♻️ **Refactor** - Get refactoring suggestions\n- 📂 **Show Structure** - Show file tree + send to AI CLI\n\n### 📋 Copy Code Reference\nCopy clean references to folders or files:\n- **Folders:** `@src/components/`\n- **Files:** `@src/utils/helper.js`\n\nPerfect for analyzing entire features, reviewing modules, or understanding unfamiliar code! 🚀\n\n**Customize:** Create your own folder action templates in `.askbob/folder-actions/` - just like Quick Actions!\n\n---\n\n## 🖼️ Working with Images\n\nSend images to Claude Code for visual context and analysis!\n\n### ⚡ NEW: Paste from Clipboard (Phase 2!)\n\n**🤖 Auto-Detect Mode (Recommended):**\n```bash\n1. Enable: Cmd+Shift+P → \"Bob AI: Toggle Auto-Detect Screenshots\"\n2. Make sure AI CLI (Claude Code) is running\n3. Take screenshot (Cmd+Shift+4 / Win+Shift+S)\n4. Notification appears: \"📷 Screenshot detected!\"\n5. Click \"Preview \u0026 Send\"\n6. Review image → Click \"Send to Terminal\"\n7. Text populates in terminal → Press Enter to submit\n```\n\n**⌨️ Manual Mode:**\n```bash\n1. Take screenshot (Cmd+Shift+4 / Win+Shift+S)\n2. Press Ctrl+Shift+K I (or Cmd+Shift+K I on Mac)\n   OR: Command Palette → \"Paste Image from Clipboard\"\n3. Preview opens → Click \"Send to Terminal\"\n4. Text populates in terminal → Press Enter to submit\n```\n\n**Features:**\n- ✅ **Auto-detect screenshots** (optional, only when AI CLI running)\n- ✅ **60-second deduplication** (same screenshot won't trigger twice)\n- ✅ **Preview image before sending** (cancel anytime)\n- ✅ **No auto-execute** (review prompt before pressing Enter)\n- ✅ No need to save file first\n- ✅ Temp files saved to `~/.bob-ai/temp/`\n- ✅ Manual cleanup command\n- ✅ Works even if you change clipboard after taking screenshot\n\n### Quick Image Send (Files)\n\n- **Right-click** any image file in Explorer → \"Bob AI: Send Image to Terminal\"\n- **Keyboard:** Select image → Press `Ctrl+K I` (or `Cmd+K I`)\n\n### Supported Formats\n`.png` `.jpg` `.jpeg` `.gif` `.svg` `.webp` `.bmp`\n\n### Use Cases\n\n- 🐛 **Debug UI issues** - Send screenshots of broken layouts\n- 🎨 **Implement designs** - Share mockups and get code suggestions\n- 📊 **Analyze diagrams** - Get help understanding architecture\n- 🖥️ **Explain errors** - Screenshot error messages for analysis\n- 🔍 **Code reviews** - Show before/after UI comparisons\n\n**Example Workflow (Clipboard - Auto-Detect):**\n```bash\n1. Start Claude Code (AI CLI must be running)\n2. See UI bug → Take screenshot (auto-copies to clipboard)\n3. Notification appears: \"📷 Screenshot detected!\"\n4. Click \"Preview \u0026 Send\" → Preview appears → Click \"Send\"\n5. Prompt populates in terminal → Press Enter\n6. Ask: \"Why is this button misaligned?\"\n```\n\n**Example Workflow (File):**\n```bash\n1. Save screenshot to workspace/screenshots/\n2. Right-click → \"Bob AI: Send Image to Terminal\"\n3. Ask: \"How do I fix this layout?\"\n```\n\n**Pro tip:** Combine images with code references for full context!\n```bash\n1. Select code → Ctrl+K D\n2. Take screenshot → Click \"Preview \u0026 Send\" in notification\n3. Add your question\n```\n\n**Cleanup temp images:**\n```bash\nCommand Palette → \"Bob AI: Clean Up Temp Images\"\nChoose: Delete All, 7 days, 30 days, or Open Folder\n```\n\n**Learn more:** See [Working with Images Guide](./docs/user-guide/WORKING_WITH_IMAGES.md) for detailed examples and workflows.\n\n---\n\n## 🚀 Quick Start\n\n### 1. Install\n```bash\nvsce package\n# Install the .vsix from Extensions panel\n```\n\n### 2. Select Some Code\n```typescript\nfunction fibonacci(n: number): number {\n    if (n \u003c= 1) return n;\n    return fibonacci(n - 1) + fibonacci(n - 2);\n}\n```\n\n### 3. Press `Ctrl+K A` (or `Cmd+K A`)\n\n### 4. Pick \"🔍 Explain this code\"\n\n### 5. Watch the magic ✨\n\nBob sends this to your AI CLI:\n```\nExplain this code @src/math.ts#L1-5 \\\n```\n\nYour AI explains it line-by-line. Beautiful.\n\n---\n\n## 🎪 All Commands\n\n### Main Commands\n\n| Command | Shortcut | What it does |\n|---------|----------|--------------|\n| Quick Actions | `Ctrl+K A` | Template prompt menu |\n| Send to Terminal | `Ctrl+K D` | Just the reference |\n| Copy Reference | `Ctrl+K F` | Copy `@path#L1-5` |\n| Start AI CLI | `Ctrl+K G` | Launch Claude/Gemini |\n| Send Image | `Ctrl+K I` | Send image file to terminal |\n| Paste Image | `Ctrl+Shift+K I` | Paste from clipboard with preview |\n| Toggle Sound Effects | - | Enable/disable sound feedback |\n| Toggle Auto-Detect | - | Enable/disable screenshot detection |\n\n### Advanced Features\n\n- **💡 Lightbulb Quick Fixes** - Click 💡 icon for inline AI suggestions\n- **📁 Folder Operations** - Right-click folders for module-level AI operations\n- **📋 Add Feature** - Guided tech spec creation workflow\n- **⚙️ Execute Plan** - Implement from `.md` tech specs\n- **🔒 Terminal Management** - Auto-detects when AI CLI closes\n\n---\n\n## ⚙️ Settings \u0026 Customization\n\n### 🔊 Sound Effects\n\nBob AI includes delightful birds chirping sound feedback when you execute commands! Control it your way:\n\n**Toggle via Command Palette:**\n1. Press `Ctrl+Shift+P` (or `Cmd+Shift+P` on Mac)\n2. Type \"Bob AI: Toggle Sound Effects\"\n3. Press Enter to enable/disable\n\n**Configure in Settings:**\n1. Open Settings: `Ctrl+,` (or `Cmd+,` on Mac)\n2. Search for \"Bob AI CLI\"\n3. Check/uncheck \"Enable Sound Effects\"\n\n**Or edit settings.json directly:**\n```json\n{\n  \"bobAiCli.enableSoundEffects\": true,  // or false to disable\n  \"bobAiCli.autoPromptClipboardImage\": false  // set true to auto-detect screenshots\n}\n```\n\n**Default:** Sound effects are **enabled** by default. Auto-detect is **disabled** by default (use toggle command to enable).\n\n### 📷 Auto-Detect Screenshots\n\nBob AI can automatically detect when you take screenshots and show a notification!\n\n**Toggle via Command Palette:**\n1. Press `Ctrl+Shift+P` (or `Cmd+Shift+P` on Mac)\n2. Type \"Bob AI: Toggle Auto-Detect Screenshots\"\n3. Press Enter to enable/disable\n\n**How it works:**\n- Monitors clipboard every 2 seconds (lightweight)\n- Detects when new image appears\n- **Only shows notification when AI CLI is running** (smart \u0026 non-intrusive)\n- Shows notification: \"📷 Screenshot detected! [Preview \u0026 Send] [Ignore]\"\n- **60-second deduplication** - same screenshot won't trigger twice\n- Click \"Preview \u0026 Send\" to open preview window\n- Silent when dismissed - no clutter\n- No interruption if you're just copying text\n\n**Settings:**\n```json\n{\n  \"bobAiCli.autoPromptClipboardImage\": true  // Enable auto-detection\n}\n```\n\n### ✏️ Customize Quick Action Prompts\n\nBob AI lets you customize **both** Quick Action prompts (for code selections) **and** Folder Action templates (for files/folders)! Edit templates, create new ones, or reset to defaults.\n\n**Edit Quick Actions (Code Selections):**\n1. Press `Ctrl+Shift+P` (or `Cmd+Shift+P` on Mac)\n2. Type \"Bob AI: Edit Quick Action Prompts\"\n3. Choose your editing mode:\n   - **🎨 Open Visual Editor** (Recommended) - Edit templates in a friendly UI\n   - **📄 Edit Files Directly** - Open template files in your editor\n   - **📁 Open .askbob Folder** - Browse all customizations\n\n**Edit Folder Actions (Files/Folders):**\n1. Press `Ctrl+Shift+P` → \"Bob AI: Edit Folder Action Templates\"\n2. Or right-click any folder → \"Bob AI: Actions\" → \"Bob AI: Edit Folder Action Templates\"\n3. Same visual editor with support for `{{type}}` and `{{path}}` variables\n\n**Visual Editor Features:**\n- ✨ Edit any template with live preview\n- ➕ Create new custom templates with intuitive form interface\n- 🎯 Auto-selection of newly created templates\n- 🔄 Reset to default anytime\n- 🗑️ Delete custom templates\n- 💾 Auto-saves and reloads instantly\n- ✅ HTML5 validation for template filenames\n\n**Creating New Templates:**\n\nWhen you click \"➕ Create New Template\", you'll see an intuitive form with:\n- **Filename field** - Auto-validates (lowercase, letters, numbers, hyphens only)\n- **Label field** - Display name with emoji support\n- **Kind selector** - Choose template category (Quick Fix, Refactor, etc.)\n- **Prompt editor** - Large text area with variable hints\n- **Variable documentation** - Built-in hints for `{{code}}`, `{{type}}`, `{{path}}`\n- **Instant feedback** - Template appears in list immediately after creation\n\nNo popup dialogs or browser prompts - everything works seamlessly in the webview!\n\n![alt text](edit-prompt-visual-editor-preview.png)\n\n**Your customizations are stored in:**\n```\n.askbob/quick-actions/    # Quick Actions (code selections)\n.askbob/folder-actions/   # Folder Actions (files/folders)\n```\n\nAll customizations are automatically git-ignored by default. Perfect for personal preferences!\n\n**Template Variables:**\n\n*Quick Actions (Code Selections):*\n- `{{code}}` - Selected code reference (e.g., @file.js#L10-15)\n\n*Folder Actions (Files/Folders):*\n- `{{type}}` - \"module\" (folders) or \"file\" (files)\n- `{{path}}` - Relative path to the resource\n\n**Learn more:** See [📘 User Guide](./docs/user-guide/CUSTOMIZING_TEMPLATES.md) • [🏗️ Architecture](./docs/technical/TEMPLATE_ARCHITECTURE.md) • [📚 All Docs](./docs/)\n\n---\n\n## 📦 Installation\n\n### Option 1: VS Code Marketplace (Recommended)\n\n**[Install from VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=1031022.bob-ai-cli)**\n\nOr search \"Bob AI CLI\" in VS Code Extensions panel.\n\n### Option 2: From Source\n```bash\ngit clone https://github.com/sayurbox/ask-bob-ai.git\ncd ask-bob-ai\nnpm install -g @vscode/vsce\nvsce package\n# Install .vsix in VS Code Extensions panel\n```\n\n### Requirements for Clipboard Image Support\n\n**Linux Users Only:**\n```bash\n# Ubuntu/Debian\nsudo apt-get install xclip\n\n# Fedora/RHEL\nsudo yum install xclip\n\n# Arch Linux\nsudo pacman -S xclip\n```\n\n**macOS \u0026 Windows:** No additional requirements (built-in clipboard support)\n\n---\n\n## 🎨 Code Reference Format\n\nBob uses clean references that AI loves:\n\n```\n@src/components/Button.tsx#L15-42\n```\n\n**Single line:** `@src/utils/helper.js#L42`\n**Multi-line:** `@src/components/Header.tsx#L15-28`\n\nCopy, paste, send. Works everywhere. ✅\n\n---\n\n## 🤝 Compatible With\n\n| AI CLI | Status |\n|--------|--------|\n| **Claude Code** | ✅ Fully Supported |\n| **Gemini CLI** | ✅ Fully Supported |\n| **Custom CLIs** | ✅ Supported |\n| **Any Terminal** | ✅ Fallback mode |\n\n---\n\n## 💡 Pro Tips\n\n### Tip 1: Multi-file Context\n```bash\n# Build context across files\n1. Select code in file1.js → Ctrl+K F (copy)\n2. Select code in file2.js → Ctrl+K F (copy)\n3. Paste both in terminal with your prompt\n4. AI now sees the full picture!\n```\n\n### Tip 2: Custom Templates\nUse the Visual Editor to create your own quick actions:\n```bash\n1. Press Ctrl+Shift+P → \"Bob AI: Edit Quick Action Prompts\"\n2. Choose \"🎨 Open Visual Editor\"\n3. Click \"➕ Create New Template\"\n4. Fill in the form:\n   - Filename: convert-typescript (auto-validated)\n   - Label: 🔄 Convert to TypeScript\n   - Prompt: Convert this code to TypeScript: {{code}}\n5. Click \"✅ Create Template\" - it auto-selects and is ready to use!\n6. Use it instantly in Quick Actions with Ctrl+K A!\n```\n\n### Tip 3: Tech Spec Workflow\n```bash\n# Plan before you code\n1. Right-click → \"Bob AI: Add Feature\"\n2. Answer questions (feature name, requirements, etc.)\n3. Get tech spec in /research/research-{feature}.md\n4. Right-click .md → \"Bob AI: Execute Plan\"\n5. Watch Bob implement it!\n```\n\n### Tip 4: Folder Operations for Quick Understanding\n```bash\n# Quickly understand unfamiliar modules\n1. Right-click any folder → \"Bob AI: Folder Operations\"\n2. Choose \"📖 Explain module\"\n3. Get instant overview of architecture \u0026 purpose\n4. Use \"📂 List files\" to see the file structure first\n```\n\n---\n\n## 🔧 Development\n\n```bash\n# Clone \u0026 open\ngit clone https://github.com/sayurbox/ask-bob-ai.git\ncd ask-bob-ai\n\n# Test (press F5 in VS Code)\n# Or package and install\nvsce package\n```\n\n**Architecture:** Pure JavaScript • Zero dependencies • Modular design • Lightning fast\n\n---\n\n## 🎯 Roadmap\n\n**✅ Done:**\n- [x] ASDF keyboard shortcuts\n- [x] Tech spec workflow\n- [x] Terminal lifecycle tracking\n- [x] Lightbulb quick fixes\n- [x] Folder operations (module-level AI analysis)\n- [x] Deep Code Review with confidence filtering\n- [x] VS Code Marketplace\n- [x] Streamlined command set (6 core commands)\n- [x] Sound effects with customizable settings\n- [x] Custom template UI with visual editor\n- [x] Folder action templates (customizable like Quick Actions)\n- [x] Copy code reference for files/folders\n- [x] Visual editor for folder action templates\n- [x] Template variables for Quick Actions (`{{code}}`)\n- [x] Template variables for Folder Actions (`{{type}}`, `{{path}}`)\n- [x] HTML form-based template creation (no browser prompts)\n- [x] Auto-selection of newly created templates\n- [x] Template filename validation and sanitization\n- [x] Image attachment support (send screenshots to Claude Code)\n- [x] Image file path references for visual context\n- [x] Clipboard image paste with preview (Phase 2)\n- [x] Auto-detect screenshots with toggle (only when AI CLI running)\n- [x] 60-second deduplication for screenshots\n- [x] Manual control (no auto-execute, review before Enter)\n- [x] Temp file management with manual cleanup\n- [x] Image preview WebView before sending\n\n**🚧 Coming Soon:**\n- [ ] Context builder (code + images + prompts) (Phase 3)\n- [ ] Multi-file references\n- [ ] Response preview in editor\n- [ ] Claude Code skills integration\n\n---\n\n## 🐛 Issues?\n\n[Open an issue](https://github.com/sayurbox/ask-bob-ai/issues/new) with:\n- Your OS \u0026 VS Code version\n- Steps to reproduce\n- What you expected vs what happened\n\nWe'll fix it! 💪\n\n---\n\n## 📜 License\n\nMIT - Go wild! 🎉\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n**Made with ❤️ for devs who love AI**\n\nPress `Ctrl+K A` and let Bob do the work\n\n[⭐ Star](https://github.com/sayurbox/ask-bob-ai/stargazers) • [🐛 Issues](https://github.com/sayurbox/ask-bob-ai/issues) • [💡 Ideas](https://github.com/sayurbox/ask-bob-ai/issues) • [📦 Marketplace](https://marketplace.visualstudio.com/items?itemName=1031022.bob-ai-cli)\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsayurbox%2Fask-bob-ai","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsayurbox%2Fask-bob-ai","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsayurbox%2Fask-bob-ai/lists"}