Skip to content

v1.4.0 - Enhanced Tool Display System & Critical Bug Fixes

Choose a tag to compare

@sizzlebop sizzlebop released this 28 Aug 22:28
· 41 commits to main since this release

🎨 MAJOR UI ENHANCEMENT - Enhanced Tool Calling Display

✨ What's New in v1.4.0

🧰 Enhanced Tool Display System

Revolutionary tool calling interface with Pink Pixel branding:

  • Beautiful gradient headers with status badges (Running, Success, Error, Cancelled)
  • Boxed parameter sections with magenta borders and JSON syntax highlighting
  • Boxed result sections with cyan borders and intelligent content formatting
  • Dynamic status updates with timing information (start time, duration)
  • Support for progress indicators using Ora spinners during tool execution

🎯 Smart Content Formatting

Intelligent detection and display of different data types:

  • Arrays of objects β†’ Beautiful tables with proper column headers and data truncation
  • Simple arrays β†’ Clean numbered lists with item formatting
  • JSON objects β†’ Syntax-highlighted key-value displays with colored brackets
  • URLs β†’ Clickable links with terminal-link integration where supported
  • File paths β†’ Green highlighting for easy identification
  • Text content β†’ Smart line wrapping and proper indentation

πŸ–ΌοΈ Interactive Features

Clipboard integration and keyboard shortcuts:

  • Copy tool results to clipboard with c key using clipboardy
  • Expand/collapse JSON sections with space key
  • Quit detailed view with q key
  • Interactive hints footer with keyboard shortcut guidance

🎨 Pink Pixel Brand Integration

Consistent theming throughout tool displays:

  • Gradient "Tool Call" banners with fire gradient effect
  • Color-coded status badges (cyan for running, green for success, red for errors)
  • Pink pixel branded icons and symbols throughout the interface
  • Beautiful gradient separators between tool calls

πŸ”§ Critical Bug Fixes

🚨 FIXED: MCP Tools System Prompt Issue

  • Resolved critical bug where tools list was generated before MCP servers were loaded
  • Fixed Agent constructor to defer system prompt generation until after tool loading
  • Updated Agent.initialize() to properly update system prompt with complete tools list
  • Enhanced system-prompt command to show actual loaded tools and descriptions
  • Models now properly recognize available MCP tools including Context7 documentation tools

🚨 FIXED: Duplicate Tool Display

  • Eliminated double tool call rendering
  • Fixed Agent stream processing to prevent tool marker emission when enhanced display is active
  • Ensured single, beautiful tool display per execution

🚨 FIXED: Object Serialization

  • Fixed "[object Object]" display issues
  • Ensured tool result content is properly stringified before display processing
  • Resolved object-to-string conversion issues in tool result rendering

πŸ”§ Backward Compatibility

Feature flag system for smooth adoption:

  • BIBBLE_ENHANCED_TOOLS=true (default) - Enable enhanced tool display
  • BIBBLE_ENHANCED_TOOLS=false - Use legacy tool display for compatibility
  • BIBBLE_TOOL_DISPLAY_MODE: Set to basic, compact, or full (default)

πŸ“¦ New Dependencies

Added essential UI enhancement packages:

  • cli-highlight for JSON syntax highlighting
  • clipboardy for clipboard integration
  • json-stringify-pretty-compact for optimal JSON formatting

πŸŽ‰ Visual Impact

  • Before: Basic text output with minimal formatting and duplicate displays
  • After: Professional, branded tool interface with boxed sections, syntax highlighting, status badges, and interactive features

This release transforms Bibble's tool calling interface from basic text output into a professional, interactive, and beautifully designed system that showcases tool execution results with Pink Pixel's signature style! ✨

πŸš€ Upgrade Instructions

npm install -g @pinkpixel/bibble@latest

If you experience any compatibility issues with the new tool display, you can temporarily disable it:

export BIBBLE_ENHANCED_TOOLS=false