Skip to content

v0.3.0

Choose a tag to compare

@buger buger released this 23 Mar 22:18
· 932 commits to main since this release

Probe v0.3.0 Release Notes

New website: https://probeai.dev

Major Features & Improvements

  • Enhanced Search Capabilities with Elasticsearch-like Query Syntax:

    • Implemented advanced query syntax inspired by Elasticsearch, including:
      • Logical operators (AND, OR, NOT)
      • Required (+) and excluded (-) terms
      • Grouping with parentheses
      • Field-specific searching
      • Wildcards for flexible matching
    • This allows for more precise and powerful code searches.
  • Interactive AI Chat Mode:

    • Added a new interactive AI chat mode, accessible via npx -y @buger/probe-chat and npx -y @buger/probe-chat --web
    • Allows users to ask natural language questions about their codebase and receive AI-powered answers.
    • Supports Anthropic Claude, Google and OpenAI models (API key required).
    • Includes session-based search caching to avoid redundant code snippets in conversations.
  • Code Extraction Tooling:

    • Introduced a new extract command for CLI, MCP server, and Node.js SDK.
    • Supports extracting code blocks by:
      • Line numbers (e.g., src/main.rs:42)
      • Line ranges (e.g., src/main.rs:10-20)
      • Symbol names (e.g., src/main.rs#function_name)
      • Piping from stdin, allowing integration with other tools like grep and go test
    • Uses tree-sitter to intelligently extract complete code blocks (functions, classes, etc.).
    • Supports multiple output formats including markdown, plain, json, and xml.
  • Node.js SDK (@buger/probe NPM Package):

    • Published a new @buger/probe NPM package providing a Node.js SDK.
    • Enables programmatic access to Probe's core functionalities (search, query, extract).
    • Includes pre-built AI tool integrations for Vercel AI SDK and LangChain.
    • Simplifies embedding Probe into Node.js applications and AI tooling.
  • MCP Server Enhancements (@buger/probe-mcp NPM Package):

    • Published @buger/probe-mcp NPM package for the MCP server.
    • Improved MCP server with new query_code and extract_code tools.
    • Enhanced error handling and logging.
    • Streamlined binary management using the @buger/probe package.
  • Web Interface for Team Collaboration (@buger/probe-web NPM Package Example):

    • Published @buger/probe-web as an example NPM package showcasing the web interface.
    • Provides a browser-based UI for code search and AI-powered code exploration.
    • Features an interactive chat UI, Mermaid diagram support, and configurable search paths.
    • Includes API endpoints for programmatic access.
  • Performance and Binary Size Optimizations:

    • Optimized release builds for smaller binary size and improved performance.
    • Implemented link-time optimization (LTO) and stripping symbols.
    • Enhanced search speed with optimized algorithms and caching.
  • Codebase Modernization and Refactoring:

    • Refactored the chat module for better modularity and maintainability.
    • Improved code structure and error handling throughout the codebase.
    • Enhanced test suite with new integration and unit tests.
  • Developer Experience Improvements:

    • Added new install target to Makefile for easier binary installation.
    • Introduced .roomodes for custom Roo modes and improved AI assistant guidance.
    • Added issue templates and contributing guidelines for community contributions.
    • Enhanced debug logging and error reporting for easier troubleshooting.
  • Security Enhancements:

    • Added SECURITY.md file with vulnerability reporting procedures and security policy.
    • Implemented optional basic authentication for the web interface.
    • Improved handling of user inputs and API keys.