Repository navigation
Release v2.4.2 — Hybrid Retrieval, Embedded Auto-Router & Decoupled Providers
PhenixCode v2.4.2 brings a major architectural upgrade over the v1.2.x series. This release introduces hybrid search (combining HNSW vector embeddings with SQLite FTS5 BM25 keyword retrieval), a sub-millisecond local task classifier for intelligent model auto-routing without API round-trips, Anthropic API protocol support, a comprehensive retrieval evaluation suite (eval), and persistent chat history.
Breaking Changes & Migration Guide
Configuration Split: settings.json and providers.json
To simplify multi-project workflows, LLM/Embedding API configurations are now decoupled from per-project settings:
providers.json(Global): Defines all embedding and generation endpoints, API keys, and models (OpenAI, Anthropic, or localllama-server).settings.json(Per Project): Contains project-specific paths, source inclusion rules, chunking thresholds, and database settings.
What you need to do:
If upgrading from v1.2.x, extract your provider entries (embedding_providers, generation_providers) into a separate providers.json in your working directory, or launch the updated Admin Dashboard to configure them automatically. You can specify a custom provider file using the new -w, --providers-config <path> flag or the PHENIXCODE_PROVIDERS_CONFIG environment variable.
Major Highlights
1. Hybrid Search (Vector + BM25 via Reciprocal Rank Fusion)
- SQLite FTS5 Integration: Bundled SQLite now has FTS5 enabled natively.
- Reciprocal Rank Fusion (RRF): Queries combine dense semantic search (HNSW) and exact keyword matching (BM25) to catch exact function names, variable symbols, and identifiers that semantic vector models often miss.
2. Zero-Latency Embedded Task Auto-Router
- Local C++ Classification Engine: Built-in embedded classifier (
assets/baseline_v2.bin) replaces external LLM classification round-trips. - Tiered Routing: Instantly categorizes queries into
Simple(Tier 1),Medium(Tier 2), orComplex(Tier 3) within ~70–300 µs on CPU, dynamically dispatching queries to the most cost-effective and capable model.
3. Anthropic Protocol & Cloud LLM Expansion
- Native Anthropic API Support: Direct integration with Claude models (e.g., Claude 3.5 / 3.7 Sonnet) via
/v1/messagesalongside standard OpenAI-compatible endpoints. - Expanded Provider Ecosystem: Tested and optimized for xAI Grok, Mistral, Qwen 2.5 Coder, and local
llama-serverbackends.
4. Retrieval Evaluation CLI (eval)
Measure and optimize retrieval quality directly against your codebase:
phenixcode-core eval --init <output.json>: Generate ground-truth benchmark datasets from your indexed code.phenixcode-core eval --list/--detail <doc_id>: Inspect indexed files and chunk distributions.phenixcode-core eval <dataset.json> [--top <k>]: Run evaluations benchmarking Recall@k, MRR, and NDCG across dense vs. hybrid retrieval modes.
5. Persistent Chat History & UI Upgrades
- SQLite Chat Database: Chat sessions in the desktop client and Webview now persist automatically across restarts.
- Markdown Improvements: Full support for Markdown tables and improved one-click code copy button UX.
- Reasoning Token Telemetry: Visual indicators for reasoning model token output (e.g., DeepSeek-R1, o3-mini) in the chat status bar.
- Central Admin Dashboard: New provider management panels, project directory explorers, and live index statistics.
Bug Fixes & Engine Improvements
- Robust Chunking: Fixed edge cases when processing large, opaque, or unsplittable data blobs.
- SSE Stream Handling: Resolved corner cases where Server-Sent Events (SSE) were split across network packets.
- Token Counter Precision: Fixed off-by-one errors and multi-byte UTF-8 handling in the internal tokenizer.
- Graceful Fallbacks: Improved error propagation from upstream inference endpoints back to client webviews.
Asset Binaries
Download the appropriate archive for your operating system below:
phenixcode-v2.4.2-linux-x86_64.tar.gzphenixcode-v2.4.2-windows-x86_64.zipphenixcode-v2.4.2-macos-arm64.tar.gz
Each package includes:
phenixcode-core(CLI indexing engine & HTTP server)phenixcode-ui(Desktop chat client)phenixcode-admin(Dashboard manager)- Embedded classifier weights (
baseline_v2.bin) - Sample
settings.jsonandproviders.jsonconfigurations