@pinkpixel/bibble
v1.9.0
Published
An AI agent/chatbot with built-in tools and MCP support that lives in your terminal
Downloads
28
Readme
Bibble - CLI Chatbot with MCP Integration
Bibble is a command-line interface (CLI) chatbot application built in TypeScript that runs directly in your terminal. It supports OpenAI, Anthropic, Google Gemini, and OpenAI-compatible API endpoints, implements real-time response streaming, maintains chat memory, and functions as an MCP (Model Context Protocol) client.
Features
- Launch as a chat instance via the CLI command
bibble - Support for OpenAI, Anthropic (Claude models), Google Gemini, and OpenAI-compatible API endpoints
- Real-time response streaming of model output
- Contextual multi-turn conversations with chat memory
- MCP client functionality for connecting to MCP-compatible servers
- 🌐 BUILT-IN WEB SEARCH & RESEARCH TOOLS - Multi-engine search with intelligent fallbacks
- 🔍 Comprehensive Web Search - DuckDuckGo, Bing, Google, and Brave integration with AI-powered query enhancement
- 🧠 Advanced Research Assistant - Orchestrated workflows that combine built-in web search and content extraction for thorough answers
- ⚡ Quick Search Tools - Fast information retrieval without external MCP server setup
- Settings and configuration options accessible from the CLI
- Detailed error handling and user feedback
- 🎨 Beautiful Pink Pixel themed terminal interface with gorgeous ASCII banners
- 📊 Stunning table displays for configuration and data with smart color coding
- 🌈 Gradient text effects and role-based chat styling
- 🧰 Enhanced interactive tool display system with status badges and syntax highlighting
- 🐱 Advanced Cat Images Tool - Real terminal image display using @pinkpixel/pixelpop with animated GIF support
- Colored text output and markdown rendering
- Chat history storage and retrieval
- Model switching capabilities
- Configurable system prompts and user guidelines
Installation
Prerequisites
- Node.js v16 or higher
- npm v7 or higher
Install from npm
# Install the official package
npm install -g @pinkpixel/bibbleInstall from source
- Clone the repository
- Install dependencies
npm install - Build the project
npm run build - Install globally
npm install -g .
Usage
After installation, you can run Bibble using the command bibble. If you installed the package with the @pinkpixel scope, you can also use npx @pinkpixel/bibble.
Start a chat
bibbleor
bibble chatWith npx:
npx @pinkpixel/bibbleConfigure settings
bibble configManage chat history
bibble historyCommands
Chat commands
bibble chat- Start a chat sessionbibble chat --model gpt-4- Start a chat with a specific modelbibble chat --continue- Continue the most recent chatbibble chat --history <id>- Load a specific chat history
Config commands
bibble config list- List all configuration settingsbibble config set <key> <value>- Set a configuration valuebibble config get <key>- Get a configuration valuebibble config reset- Reset configuration to defaultsbibble config api-key- Set up API key for a providerbibble config mcp-servers- Manage MCP server configurationsbibble config web-search- Configure preferred search engine and API keysbibble config timezone- Configure default timezone for datetime toolsbibble config user-guidelines- Configure user guidelines
History commands
bibble history list- List chat historybibble history show <id>- Show a specific chat historybibble history delete <id>- Delete a chat historybibble history clear- Clear all chat historybibble history export <id> <filename>- Export chat history to a JSON filebibble history import <filename>- Import chat history from a JSON file
System commands
bibble setup- Run the setup wizardbibble system-prompt- View the system prompt with tools listbibble diagnose- Diagnose environment and terminal compatibilitybibble diagnose --verbose- Show detailed diagnostic information
In-chat commands
The following commands are available during a chat session:
/help- Display help information/exitor/quit- Exit the chat/clear- Clear the screen/save- Save the current chat to history/reset- Reset the current conversation/multilineor/paste- Enter multi-line input mode for pasting documentation, code, etc.- Start code block mode (typeand continue with your code)
Enhanced Tool Display System
Bibble v1.4.0 introduces a completely overhauled tool display system featuring:
- Dynamic Status Badges: Visual indicators showing tool execution status (running, completed, error)
- Boxed Parameter/Output Sections: Clearly delineated tool input/output for better readability
- Syntax Highlighted JSON: Beautiful formatting for JSON parameters and results
- Clickable URLs: Terminal hyperlinks for any URLs found in tool outputs
- Clipboard Support: Copy tool results directly to clipboard with interactive buttons
- Keyboard Shortcuts: Intuitive keyboard navigation for tool output exploration
These enhancements make working with MCP tools more intuitive and visually appealing. The new display system can be toggled using environment variables if compatibility issues arise.
🌐 Built-In Web Search & Research Tools
New in v1.7.0! Bibble now includes comprehensive web search and research capabilities built directly into the application - no external MCP servers required!
🔍 Web Search Features
- Multi-Engine Support: Integrated DuckDuckGo (primary), Bing, Google, and Brave search with intelligent fallbacks
- AI-Powered Query Enhancement: Smart query optimization for better search results
- Advanced Content Extraction: Intelligent web scraping with rate limiting and content parsing
- Research Session Management: Event-driven research workflows with progress tracking
- Cross-Platform Compatible: Optimized for Windows environments with proper path handling
Available Built-In Web Tools
🔍 Web Search Tool (
web_search)- Multi-engine search with DuckDuckGo, Bing, Google, and Brave fallbacks
- Configurable result counts and search depth
- Real-time progress monitoring
- Clean, formatted search results with metadata
⚡ Quick Search Tool (
quick_web_search)- Fast single-query searches for immediate answers
- Streamlined interface for rapid information retrieval
- Minimal processing overhead for speed
📊 Research Session Status (
research_status)- Monitor ongoing research operations
- Progress visualization and session management
- Result aggregation and consolidated findings
The prior comprehensive research tool family has been retired; Bibble now routes every deep-dive request through these core tools, letting the enhanced research agent sequence searches, follow-ups, and content extraction as a single workflow.
Configure Web Search Engines
Configure your preferred search engine and API keys:
bibble config web-searchThis wizard allows you to:
- Choose preferred engine: DuckDuckGo (no API key), Bing, Google Custom Search, or Brave
- Set API keys: Configure keys for Bing, Google, or Brave search APIs
- Automatic fallbacks: If your preferred engine fails, Bibble automatically tries other available engines
How to Use Web Search
Once you start Bibble, the web search tools are automatically available. Simply ask questions that require web search, and Bibble will intelligently use the appropriate search tools:
> What are the latest developments in AI?
🔍 Bibble will automatically search the web using the built-in tools...Or explicitly request web search:
> Can you search for information about TypeScript 5.0 features?
🌐 Bibble will use the `web_search` tool to find current information...Environment Variables
BIBBLE_DISABLE_ENHANCED_TOOLS: Set totrueto disable enhanced tool displaysBIBBLE_TOOL_DISPLAY_MODE: Set tobasic,compact, orfull(default)
Configuration
Bibble stores its configuration in a .bibble directory in your home directory. The configuration includes:
- API keys
- Default model settings
- UI preferences
- MCP server configurations
- User guidelines (additional instructions for the AI)
🎛️ Model Configuration Wizard
Bibble v1.6.1 introduces a user-friendly configuration wizard to easily set up your AI provider and model settings:
bibble config configureThe wizard guides you through:
- Provider Selection: Choose from OpenAI, Anthropic, Google, or OpenAI Compatible
- Model Selection: Pick from predefined models or enter custom model IDs
- Parameter Configuration: Set temperature, max tokens, reasoning effort, and more
- OpenAI Compatible: Define custom parameters (name and value pairs) to ensure compatibility with your specific endpoint
- Automatic Saving: All settings are saved automatically with confirmation
Other Configuration Commands
# Set up API keys
bibble config api-key
# Set default provider
bibble config default-provider
# View all settings
bibble config list
# Set specific values
bibble config set <key> <value>
# Reset to defaults
bibble config resetMCP Integration
Bibble functions as an MCP client, allowing it to connect to MCP-compatible servers and use their tools. MCP (Model Context Protocol) is a protocol for connecting language models to external tools and services.
To configure MCP servers, use:
bibble config mcp-serversTroubleshooting
Environment Diagnostics
Bibble includes built-in diagnostic tools to help troubleshoot common issues:
# Basic diagnostic information
bibble diagnose
# Detailed system analysis
bibble diagnose --verboseThe diagnostic command will check:
- Platform and terminal information
- Node.js, npm, and npx executable paths and versions
- Environment variables and PATH configuration
- MCP server connectivity issues
Common Issues
MCP Server Connection Failures
Problem: You see "Connection closed" errors when starting Bibble, especially in terminals other than Warp.
Solution:
- Run
bibble diagnoseto check your environment - Ensure Node.js and npm are properly installed and accessible
- Check that your PATH includes Node.js and npm directories
- Try running from a different terminal (Command Prompt, PowerShell, or Git Bash on Windows)
Symptoms:
Failed to connect to MCP server "server-name": Connection closedAdvanced Troubleshooting:
- Run
bibble diagnose --verbosefor detailed information - Try running
node --versionandnpx --versionin your terminal - If using Windows, try running your terminal as Administrator
- Check if antivirus software is blocking Node.js processes
Terminal Compatibility
Problem: Bibble works in one terminal but not others.
Solution: Bibble v1.3.9+ includes multi-tier fallback systems for cross-terminal compatibility:
- Primary Strategy: Uses resolved executable paths
- Fallback Strategies: Direct commands, corepack, and bundled npm approaches
- Graceful Degradation: Continues working even if some servers fail
Supported Terminals:
- ✅ Warp Terminal
- ✅ Windows Terminal
- ✅ Hyper
- ✅ Command Prompt
- ✅ PowerShell
- ✅ Git Bash
- ✅ Most Unix terminals
System Prompt Visibility
Problem: Tools not appearing in the system prompt or model not recognizing available tools.
Solution:
- Ensure you're using Bibble v1.4.0+ which fixes the tool visibility issue
- Check that all MCP servers are properly connected with
bibble diagnose - View the full system prompt with
bibble system-promptto confirm tools are listed - If tools are missing, try restarting Bibble or reconnecting to MCP servers
Node.js Installation Issues
Problem: Bibble can't find Node.js, npm, or npx.
Solutions:
- Install Node.js: Download from nodejs.org
- Check Installation:
node --version npm --version npx --version - Path Issues: Add Node.js to your PATH environment variable
- NVM Users: Make sure your Node.js version is activated
- Windows Users: Try reinstalling Node.js with "Add to PATH" option checked
API Key Issues
Problem: API key errors or authentication failures.
Solutions:
- Run the setup wizard:
bibble setup - Manually set API keys:
bibble config api-key - Check your API key is valid and has sufficient credits
- Verify the correct API endpoint is configured
Performance Issues
Problem: Slow startup or response times.
Solutions:
- Check your internet connection
- Try a different model or provider
- Reduce the number of enabled MCP servers
- Clear chat history if it's very large:
bibble history clear
Getting Help
If you're still experiencing issues:
- Run Diagnostics:
bibble diagnose --verbose - Check Logs: Look for error messages in the terminal output
- Update Bibble:
npm install -g @pinkpixel/bibble@latest - Check GitHub Issues: Visit the GitHub repository
- Report Bugs: Create a new issue with:
- Your operating system and terminal
- Output from
bibble diagnose --verbose - Steps to reproduce the issue
- Error messages or unexpected behavior
Version Compatibility
0
- Node.js 16+: Required for all Bibble versions
Development
Project structure
/
├── src/
│ ├── commands/ # CLI command handlers
│ ├── config/ # Configuration management
│ ├── mcp/ # MCP client implementation
│ ├── llm/ # LLM integration
│ ├── tools/ # Built-in tools system
│ │ └── built-in/
│ │ └── web/ # Web search & research tools
│ ├── ui/ # Terminal UI components
│ ├── utils/ # Utility functions
│ ├── index.ts # Main entry point
│ └── types.ts # TypeScript type definitions
├── bin/ # Binary executable
├── scripts/ # Helper scripts
├── package.json # NPM package definition
└── tsconfig.json # TypeScript configurationBuild the project
npm run buildDevelopment mode with watch
npm run devPublishing to npm
The package is published to npm under the @pinkpixel scope:
# Login to npm
npm login
# Build the project
npm run build
# Publish the package
npm publish --access publicTo install the latest version:
npm install -g @pinkpixel/bibble@latestLicense
ISC
