1. 01 Apr, 2026 9 commits
    • Your Name's avatar
      docs: Add Claude provider improvements and SDK migration analysis · 63dc05af
      Your Name authored
      - Comprehensive analysis of potential improvements
      - Recommended improvements without SDK migration:
        1. Message validation pipeline (HIGH priority)
        2. Automatic retry with exponential backoff (HIGH)
        3. Streaming idle watchdog (MEDIUM)
        4. Token counting and context management (MEDIUM)
        5. Cache token tracking (LOW)
      - SDK migration analysis with pros/cons
      - Recommendation: Don't migrate yet, implement quick wins first
      - Hybrid approach evaluation for future consideration
      63dc05af
    • Your Name's avatar
      fix: Skip temperature 0.0 for Claude API to avoid thinking conflict · 2559e2f1
      Your Name authored
      - Claude API requires temperature: 1.0 when thinking is enabled
      - Our Anthropic-Beta header includes interleaved-thinking-2025-05-14
      - Sending temperature: 0.0 with thinking beta causes API errors
      - Now only add temperature to payload if > 0
      2559e2f1
    • Your Name's avatar
      fix: Set Claude provider rate_limit to 5s to prevent 429 errors · e33c263b
      Your Name authored
      - Changed rate_limit from 0 to 5 seconds for Claude provider
      - Changed rate_limit from 0 to 5 seconds for all Claude models
      - This adds a minimum 5-second delay between requests to avoid
        hitting Anthropic's OAuth2 API rate limits
      e33c263b
    • Your Name's avatar
      feat: Add streaming thinking block support for Claude provider · d4d2c7b2
      Your Name authored
      - Handle 'thinking' and 'redacted_thinking' in content_block_start events
      - Handle 'thinking_delta' events to accumulate thinking content during streaming
      - Handle 'signature_delta' events for thinking block signatures
      - Log thinking block completion with character count
      - Thinking content is accumulated but not emitted to client (stored for final response)
      - Matches original Claude Code streaming thinking implementation
      d4d2c7b2
    • Your Name's avatar
      docs: Update Claude provider comparison with deep-dive into vendors/claude source · 882b3eb7
      Your Name authored
      - Added detailed analysis of 3419-line claude.ts implementation
      - Expanded streaming comparison with 30+ features from original source
      - Updated message conversion comparison with normalizeMessagesForAPI details
      - Added comprehensive feature comparison table for streaming implementations
      - Documented advanced features: idle watchdog, stall detection, VCR support,
        cache break detection, cost tracking, memory cleanup, request ID tracking
      882b3eb7
    • Your Name's avatar
      Fix streaming rate limit error handling and retry logic · a2a816ac
      Your Name authored
      Analysis of debug.log showed 429 rate limit errors during streaming
      were not being caught by the retry logic because:
      1. Streaming generators don't raise exceptions until consumed
      2. Error message 'Claude API error (429): Error' didn't contain retry keywords
      
      Changes:
      1. Added _handle_streaming_request_with_retry() wrapper that catches
         rate limit errors and re-raises with proper keywords
      2. Added _wrap_streaming_with_retry() method that consumes streaming
         generator and retries with fallback models on rate limit errors
      3. Updated retry logic to check for '429' keyword in error messages
      4. Added exponential backoff with jitter before retry attempts
      5. Improved error messages to include rate limit context
      
      This ensures that when streaming hits a 429 rate limit, the system
      will automatically retry with fallback models instead of failing.
      a2a816ac
    • Your Name's avatar
      Implement Phase 4.1: Image/Multimodal Support for Claude provider · df1191b4
      Your Name authored
      Add image content block handling to ClaudeProviderHandler:
      
      1. Image Extraction (_extract_images_from_content):
         - Extract images from OpenAI message content format
         - Handle base64 data URLs (data:image/jpeg;base64,...)
         - Handle HTTP/HTTPS URL-based images
         - Convert to Anthropic image source format
         - Validate image size (5MB limit for base64)
         - Pass through existing Anthropic-format image blocks
      
      2. Image Integration in Message Conversion:
         - Extract images from user message content blocks
         - Convert image_url blocks to Anthropic image source format
         - Add image blocks to anthropic_messages content array
         - Preserve text content alongside images
      
      Reference: vendors/kilocode image handling + vendors/claude multimodal support
      df1191b4
    • Your Name's avatar
      Implement Phase 3 Claude provider improvements · 5c357f98
      Your Name authored
      Add three robustness improvements to ClaudeProviderHandler:
      
      1. Message Role Validation (_validate_messages):
         - Validate roles are one of: user, assistant, system, tool
         - Auto-fix unknown roles to 'user'
         - Ensure system messages only appear at start
         - Insert synthetic assistant messages between consecutive user messages
         - Merge consecutive assistant messages
         - Validate tool messages have tool_call_id
         - Reference: vendors/kilocode normalizeMessages() + ensure_alternating_roles()
      
      2. Tool Result Size Validation (_truncate_tool_result):
         - Truncate oversized tool results with configurable limit (default 100k chars)
         - Add truncation notice with original length info
         - Reference: vendors/claude applyToolResultBudget
      
      3. Model Fallback Support (handle_request refactoring):
         - Add _get_fallback_models() to read fallback list from config
         - Retry with fallback models on retryable errors (rate limit, overloaded)
         - Split into handle_request() (with retry) and _handle_request_with_model() (actual logic)
         - Log fallback attempts for debugging
      
      All methods integrated into handle_request() for automatic application.
      5c357f98
    • Your Name's avatar
      Implement Phase 2 Claude provider improvements · 920fff5a
      Your Name authored
      Add three key improvements to ClaudeProviderHandler:
      
      1. Thinking Block Support (Phase 2.1):
         - Extract thinking/reasoning content from Claude API responses
         - Handle both 'thinking' and 'redacted_thinking' block types
         - Store thinking content in provider_options for downstream access
         - Reference: vendors/kilocode thinking support via AI SDK
      
      2. Tool Call Streaming (Phase 2.2):
         - Parse content_block_start events for tool_use blocks
         - Stream tool call arguments via input_json_delta events
         - Emit tool calls in OpenAI streaming format on content_block_stop
         - Reference: fine-grained-tool-streaming-2025-05-14 beta feature
      
      3. Detailed Usage Metadata (Phase 2.3):
         - Extract cache_read_input_tokens from API response
         - Extract cache_creation_input_tokens from API response
         - Add prompt_tokens_details and completion_tokens_details to usage
         - Log cache usage for analytics
         - Reference: vendors/kilocode session/index.ts usage extraction
      
      All methods integrated into _convert_to_openai_format() and
      _handle_streaming_request() for automatic application.
      920fff5a
  2. 31 Mar, 2026 7 commits
    • Your Name's avatar
      Implement Phase 1 Claude provider improvements · cc941d28
      Your Name authored
      Add three key improvements to ClaudeProviderHandler based on comparison
      with vendors/kilocode implementation:
      
      1. Tool Call ID Sanitization (_sanitize_tool_call_id):
         - Replace invalid characters in tool call IDs with underscores
         - Claude API requires alphanumeric, underscore, hyphen only
         - Reference: vendors/kilocode normalizeMessages() sanitization
      
      2. Empty Content Filtering (_filter_empty_content):
         - Filter out empty string messages and empty text parts
         - Claude API rejects messages with empty content
         - Reference: vendors/kilocode normalizeMessages() filtering
      
      3. Prompt Caching (_apply_cache_control):
         - Apply ephemeral cache_control to last 2 messages
         - Enable Anthropic's prompt caching feature for cost savings
         - Reference: vendors/kilocode applyCaching()
      
      All methods integrated into _convert_messages_to_anthropic() for
      automatic application during message conversion.
      cc941d28
    • Your Name's avatar
      Add comprehensive Claude provider improvement plan · 125f1647
      Your Name authored
      Create docs/claude_provider_improvement_plan.md with detailed implementation
      plan for AISBF ClaudeProviderHandler improvements identified in the provider
      comparison analysis.
      
      Plan includes 10 improvements across 4 phases:
      - Phase 1 (Quick Wins): Tool call ID sanitization, empty content filtering,
        prompt caching
      - Phase 2 (Core): Thinking block support, tool call streaming, usage metadata
      - Phase 3 (Robustness): Message validation, tool result size limits, fallback
      - Phase 4 (Advanced): Image/multimodal support
      
      Each improvement includes: problem statement, reference implementation,
      detailed implementation steps, files to modify, and effort estimate.
      
      Total estimated effort: 24-37 hours across 4 weeks.
      125f1647
    • Your Name's avatar
      Rewrite Claude provider comparison: AISBF vs vendors/kilocode vs vendors/claude · c68beece
      Your Name authored
      Document now correctly compares only the three Claude provider implementations:
      
      - AISBF (aisbf/providers.py) - Direct HTTP with OAuth2
      - vendors/kilocode (vendors/kilocode/packages/opencode/src/provider/) - AI SDK
      - vendors/claude (vendors/claude/src/) - Original Claude Code
      
      All tables and references now use these three sources exclusively.
      Removed all Kiro Gateway content which was unrelated to Claude.
      c68beece
    • Your Name's avatar
      Remove Kiro Gateway from Claude provider comparison · 2170715c
      Your Name authored
      Kiro Gateway is an Amazon Q Developer implementation using AWS CodeWhisperer API,
      not a Claude provider. The comparison now focuses on actual Claude implementations:
      
      - AISBF Claude Provider (direct HTTP with OAuth2)
      - Original Claude Code (TypeScript/React from Anthropic)
      - KiloCode (TypeScript using @ai-sdk/anthropic)
      
      Removed all Kiro-related sections including:
      - Kiro Gateway architecture comparison
      - Kiro message conversion and tool handling
      - Kiro streaming (AWS Event Stream)
      - Kiro model name normalization
      - Kiro exclusive features (thinking injection, truncation recovery, etc.)
      
      Document now cleanly compares three Claude provider implementations.
      2170715c
    • Your Name's avatar
      Add KiloCode Claude provider comparison to review document · a96f358d
      Your Name authored
      - Add KiloCode implementation analysis (vendors/kilocode/packages/opencode/src/provider/)
      - Compare KiloCode's AI SDK approach (@ai-sdk/anthropic) vs direct HTTP
      - Document KiloCode's features: automatic prompt caching, thinking support,
        message validation, reasoning variants, model management
      - Add comparison tables for architecture, message conversion, streaming,
        headers, model resolution, reasoning/thinking support, prompt caching
      - Document KiloCode exclusive features: empty content filtering, tool call ID
        sanitization, duplicate reasoning fix, provider option remapping,
        Gemini schema sanitization, unsupported part handling
      - Update summary with KiloCode strengths and additional improvement areas
      a96f358d
    • Your Name's avatar
      Update Claude provider comparison to include Kiro Gateway implementation · ce2788a9
      Your Name authored
      - Add comprehensive Kiro Gateway analysis alongside Claude Code comparison
      - Document Kiro's unified intermediate message format approach
      - Compare streaming implementations (SSE vs AWS Event Stream)
      - Document Kiro's advanced features: thinking injection, tool content stripping,
        image extraction, truncation recovery, model name normalization
      - Add comparison tables for architecture, message handling, tools, streaming
      - Identify patterns from Kiro that could improve AISBF (unified format,
        message validation, multimodal support)
      ce2788a9
    • Your Name's avatar
      Add Claude provider comparison review and include all pending changes · 406ae38a
      Your Name authored
      - Add comprehensive comparison of AISBF Claude provider vs original Claude Code source
      - Document message conversion, tool handling, streaming, and response parsing differences
      - Identify areas for improvement: thinking blocks, tool call streaming, usage metadata
      - Include all other pending changes across the codebase
      406ae38a
  3. 30 Mar, 2026 5 commits
    • Your Name's avatar
      docs: Comprehensive documentation update with all missing features · f64585f1
      Your Name authored
      - Updated CHANGELOG.md with complete feature list including:
        * Claude OAuth2 provider with PKCE flow and automatic token refresh
        * Response caching with semantic deduplication (Memory/Redis/SQLite/MySQL)
        * Model embeddings cache with multiple backends
        * User-specific API endpoints and MCP enhancements
        * Adaptive rate limiting and token usage analytics
        * Smart request batching and streaming optimization
        * All performance features and bug fixes
      
      - Enhanced README.md with:
        * Claude OAuth2 authentication section with setup guide
        * Response caching details with all backends and deduplication
        * Flexible caching system with Redis/MySQL/SQLite/File/Memory
        * Updated key features with expanded descriptions
        * Configuration examples for all caching systems
      
      - Updated DOCUMENTATION.md with:
        * Claude Code provider in Provider Support section
        * Enhanced provider descriptions with caching capabilities
        * Reference to Claude OAuth2 setup documentation
      
      - Enhanced CLAUDE_OAUTH2_SETUP.md with key features list
      
      - Added clarifying comments to aisbf/claude_auth.py
      
      All documentation now accurately reflects the codebase with complete
      coverage of caching systems (response cache and model embeddings cache),
      request deduplication via SHA256, and all implemented features.
      f64585f1
    • Your Name's avatar
      Add comprehensive user API documentation and MCP user tools · a33c622b
      Your Name authored
      - Document user-specific API endpoints: /api/user/models, /api/user/providers,
        /api/user/rotations, /api/user/autoselects, /api/user/chat/completions
      - Document user MCP tools: list_user_models, list_user_providers, set_user_provider,
        delete_user_provider, list_user_rotations, set_user_rotation, delete_user_rotation,
        list_user_autoselects, set_user_autoselect, delete_user_autoselect, user_chat_completion
      - Update user dashboard with clear endpoint documentation
      - Add enhanced analytics for user token usage tracking
      - Add database improvements for user token management
      a33c622b
    • Your Name's avatar
      Add user-specific API endpoints and MCP configuration · 76c5318f
      Your Name authored
      - Added /api/user/* endpoints for authenticated users to access their own configurations
      - Admin users get access to global + user configs, regular users get user-only
      - Global tokens from aisbf.json have full access to all configurations
      - Enhanced MCP with user-specific tools for authenticated users
      - Updated user dashboard with comprehensive API endpoint documentation
      - Updated README.md, DOCUMENTATION.md with new endpoint documentation
      - Updated CHANGELOG.md with new features
      - Bumped version to 0.9.1
      76c5318f
    • Your Name's avatar
      Add pricing extraction (rate_multiplier, rate_unit, prompt/completion tokens)... · 53558e03
      Your Name authored
      Add pricing extraction (rate_multiplier, rate_unit, prompt/completion tokens) and auto-configure rate limits on 429
      
      - Parse rate_multiplier and rate_unit from nexlab API as pricing
      - Parse promptTokenPrice and completionTokenPrice from AWS Q API
      - Extract pricing from OpenRouter-style API responses for OpenAI provider
      - Add _auto_configure_rate_limits to extract X-RateLimit-* headers
      - Update parse_429_response to capture rate limit headers
      53558e03
    • Your Name's avatar
      Add model metadata fields (top_provider, pricing, description,... · 3d925b69
      Your Name authored
      Add model metadata fields (top_provider, pricing, description, supported_parameters, architecture) and dashboard Get Models button
      
      - Update providers.py to extract all fields from provider API responses
      - Add max_input_tokens support for Claude provider context size
      - Add top_provider, pricing, description, supported_parameters, architecture fields
      - Update cache functions to save/load new metadata fields
      - Update handlers.py to expose new fields in model list response
      - Add Get Models button to dashboard
      3d925b69
  4. 27 Mar, 2026 5 commits
    • Your Name's avatar
      Add analytics filtering by provider, model, rotation and autoselect · b0dfd636
      Your Name authored
      - Added filter parameters to analytics route in main.py
      - Updated get_model_performance() to support filtering by provider, model, rotation, and autoselect
      - Added get_rotations_stats() and get_autoselects_stats() methods
      - Added filter UI to analytics.html with dropdowns for filtering
      - Updated Model Performance table to show type (Provider/Rotation/Autoselect)
      b0dfd636
    • Your Name's avatar
      Add admin user management feature to dashboard · e9a2c8b9
      Your Name authored
      - Added new dashboard template (templates/dashboard/users.html) for managing users
      - Added routes in main.py: GET /dashboard/users, POST /dashboard/users/add,
        POST /dashboard/users/{id}/edit, POST /dashboard/users/{id}/toggle,
        POST /dashboard/users/{id}/delete
      - Added 'Users' link to navigation menu (visible only for admin users)
      - Added update_user method to database.py for editing user details
      
      Features:
      - Add new users with username, password, and role (user/admin)
      - Edit existing user details
      - Toggle user active/inactive status
      - Delete users
      e9a2c8b9
    • Your Name's avatar
      feat: Implement Adaptive Rate Limiting · 97ad28ec
      Your Name authored
      - Add AdaptiveRateLimiter class in aisbf/providers.py for per-provider adaptive rate limiting
      - Enhance 429 handling with exponential backoff and jitter
      - Track 429 patterns per provider with configurable history window
      - Implement dynamic rate limit adjustment that learns from 429 responses
      - Add rate limit headroom (stays 10% below learned limits)
      - Add gradual recovery after consecutive successful requests
      - Add AdaptiveRateLimitingConfig in aisbf/config.py
      - Add adaptive_rate_limiting configuration to config/aisbf.json
      - Add dashboard UI at /dashboard/rate-limits
      - Add dashboard API endpoints for stats and reset functionality
      - Update TODO.md to mark item #8 as completed
      97ad28ec
    • Your Name's avatar
      feat: Implement Token Usage Analytics (Point 7) · 2176c233
      Your Name authored
      - Add aisbf/analytics.py module with Analytics class for tracking token usage,
        request counts, latency, error rates, and cost estimation per provider
      - Add templates/dashboard/analytics.html with comprehensive dashboard page
      - Integrate analytics recording into RequestHandler, RotationHandler, and
        AutoselectHandler
      - Add /dashboard/analytics route in main.py
      - Add Analytics link to base.html navigation
      - Update CHANGELOG.md with new feature documentation
      
      Features:
      - Token usage tracking with database persistence
      - Real-time request counts and latency tracking
      - Error rates and types tracking
      - Cost estimation per provider (Anthropic, OpenAI, Google, Kiro, OpenRouter)
      - Model performance comparison
      - Token usage over time visualization (1h, 6h, 24h, 7d)
      - Optimization recommendations
      - Export functionality (JSON, CSV)
      - Integration with all request handlers
      - Support for rotation_id and autoselect_id tracking
      2176c233
    • Your Name's avatar
      feat: Implement Streaming Response Optimization (Point 6) · add528f4
      Your Name authored
      - Add aisbf/streaming_optimization.py module with:
        - StreamingConfig: Configuration dataclass for optimization settings
        - ChunkPool: Memory-efficient chunk object reuse pool
        - BackpressureController: Flow control to prevent overwhelming consumers
        - StreamingOptimizer: Main coordinator combining all optimizations
        - KiroSSEParser: Optimized SSE parser for Kiro streaming
        - OptimizedTextAccumulator: Memory-efficient text accumulation
        - calculate_google_delta(): Incremental delta calculation
      
      - Update aisbf/handlers.py to integrate streaming optimizations:
        - Use chunk pooling for Google streaming
        - Use OptimizedTextAccumulator for memory efficiency
        - Add delta-based streaming for Google provider
        - Integrate KiroSSEParser for Kiro provider
      
      - Update setup.py to include streaming_optimization.py
      - Update pyproject.toml with package data
      - Update TODO.md with completed status
      - Update README.md with new feature description
      - Update CHANGELOG.md with streaming optimization details
      
      Expected benefits:
      - 10-20% memory reduction in streaming responses
      - Better flow control with backpressure handling
      - Optimized Google and Kiro streaming with delta calculation
      - Configurable optimization via StreamingConfig
      add528f4
  5. 26 Mar, 2026 8 commits
    • Your Name's avatar
      feat: implement smart request batching (v0.8.0) · 709b6f80
      Your Name authored
      - Add aisbf/batching.py module with RequestBatcher class
      - Implement time-based (100ms window) and size-based batching
      - Add provider-specific batching configurations (OpenAI: 10, Anthropic: 5)
      - Integrate batching with BaseProviderHandler
      - Add batching configuration to config/aisbf.json
      - Initialize batching system in main.py startup
      - Update version to 0.8.0 in setup.py and pyproject.toml
      - Add batching.py to setup.py data_files
      - Update README.md and TODO.md documentation
      - Expected benefit: 15-25% latency reduction
      
      Features:
      - Automatic batch formation and processing
      - Response splitting and distribution
      - Statistics tracking (batches formed, requests batched, avg batch size)
      - Graceful error handling and fallback
      - Non-blocking async queue management
      - Streaming request bypass (batching disabled for streams)
      709b6f80
    • Your Name's avatar
    • Your Name's avatar
      feat: Enhanced Context Condensation - 8 methods with analytics · 21a1c101
      Your Name authored
      - Optimized existing condensation methods (hierarchical, conversational, semantic, algorithmic)
      - Added 4 new condensation methods (sliding_window, importance_based, entity_aware, code_aware)
      - Fixed critical bugs in conversational and semantic methods (undefined variables)
      - Added internal model warm-up functionality for faster first inference
      - Implemented condensation analytics (effectiveness %, latency tracking)
      - Added similarity detection in algorithmic method using difflib
      - Support for condensation method chaining
      - Per-model condensation thresholds
      - Adaptive condensation based on context size
      - Updated README, TODO, DOCUMENTATION, and CHANGELOG
      21a1c101
    • Your Name's avatar
      feat: implement response caching with granular control · f04ae15d
      Your Name authored
      - Add ResponseCache class with multiple backend support (memory, Redis, SQLite, MySQL)
      - Implement LRU eviction for memory backend with configurable max size
      - Add SHA256-based cache key generation for request deduplication
      - Implement TTL-based expiration (default: 600 seconds)
      - Add cache statistics tracking (hits, misses, hit rate, evictions)
      - Integrate caching into RequestHandler, RotationHandler, and AutoselectHandler
      - Add granular cache control at model, provider, rotation, and autoselect levels
      - Implement hierarchical configuration: Model > Provider > Rotation > Autoselect > Global
      - Add dashboard endpoints for cache statistics (/dashboard/response-cache/stats) and clearing (/dashboard/response-cache/clear)
      - Add response cache initialization in main.py startup event
      - Skip caching for streaming requests
      - Add comprehensive test suite (test_response_cache.py) with 6 test scenarios
      - Update configuration models with enable_response_cache fields
      - Update TODO.md to mark Response Caching as completed
      - Update CHANGELOG.md with response caching features
      
      Files created:
      - aisbf/response_cache.py (740+ lines)
      - test_response_cache.py (comprehensive test suite)
      
      Files modified:
      - aisbf/handlers.py (cache integration and _should_cache_response helper)
      - aisbf/config.py (ResponseCacheConfig and enable_response_cache fields)
      - config/aisbf.json (response_cache configuration section)
      - main.py (response cache initialization)
      - TODO.md (mark task as completed)
      - CHANGELOG.md (document new features)
      f04ae15d
    • Your Name's avatar
      feat: Add Provider-Native Caching Integration · af46d8c0
      Your Name authored
      - Implement Anthropic cache_control support for 50-70% cost reduction
      - Add Google Context Caching API framework with TTL configuration
      - Add provider-level caching configuration (enable_native_caching, cache_ttl, min_cacheable_tokens)
      - Update dashboard UI with caching settings
      - Update documentation with detailed caching guide and examples
      - Mark system messages and conversation prefixes as cacheable automatically
      - Test Python compilation and validate implementation
      af46d8c0
    • Your Name's avatar
      feat: Integrate existing database module for multi-user support · 84d6f6e4
      Your Name authored
      - Implement user-specific configuration isolation with SQLite database
      - Add user management, authentication, and role-based access control
      - Create user-specific providers, rotations, and autoselect configurations
      - Add API token management and usage tracking per user
      - Update handlers to support user-specific configs with fallback to global
      - Add MCP support for user-specific configurations
      - Update documentation and README with multi-user features
      - Add user dashboard templates for configuration management
      84d6f6e4
    • Your Name's avatar
      Complete database integration with multi-user support and persistent tracking · 4ec3cf51
      Your Name authored
      - Integrate existing SQLite database module with full functionality
      - Add persistent token usage tracking across application restarts
      - Implement context dimension tracking and effective context updates
      - Add automatic database cleanup on startup (7+ day old records)
      - Implement multi-user authentication with role-based access control
      - Add user management with isolated configurations (providers, rotations, autoselects)
      - Enable user-specific API token management and usage tracking
      - Update dashboard with role-based access (admin vs user dashboards)
      - Add database-first authentication with config admin fallback
      - Update README, TODO, and documentation with database features
      - Cache model embeddings for semantic classification performance
      4ec3cf51
    • Your Name's avatar
      feat: Add NSFW/privacy content filtering and semantic classification · e02ed7fc
      Your Name authored
      - Add NSFW/privacy boolean fields to models (providers.json, rotations.json, autoselect.json)
      - Implement content classification using last 3 messages for performance
      - Add semantic classification with hybrid BM25 + sentence-transformer re-ranking
      - Update autoselect handler to support classify_semantic flag
      - Add new semantic_classifier.py module with hybrid search capabilities
      - Update dashboard templates to manage new configuration fields
      - Update documentation (README.md, DOCUMENTATION.md) with new features
      - Bump version to 0.6.0 in pyproject.toml and setup.py
      - Add new dependencies: sentence-transformers, rank-bm25
      - Update package configuration for PyPI distribution
      e02ed7fc
  6. 23 Mar, 2026 6 commits
    • Your Name's avatar
      Update CHANGELOG with all changes since 0.1.2 · b2151583
      Your Name authored
      - Added Kiro AWS Event Stream parsing and converters
      - Added TOR hidden service support
      - Added MCP server endpoint
      - Added credential validation for kiro/kiro-cli
      - Added various Python 3.13 compatibility fixes
      - Added intelligent 429 rate limit handling
      - Updated venv handling and auto-update features
      b2151583
    • Your Name's avatar
      Merge branch 'experimental' · 8a986192
      Your Name authored
      8a986192
    • Your Name's avatar
      Update CHANGELOG with recent changes · 50f5d67a
      Your Name authored
      - Added Unreleased section for OpenRouter fields implementation
      - Added web dashboard documentation updates
      - Documented Model class fixes for API compatibility
      50f5d67a
    • Your Name's avatar
      Add web dashboard section to README with screenshot · 9467bd25
      Your Name authored
      - Added screenshot.png reference at top of README
      - Added Web Dashboard section describing features
      - Includes dashboard access information and default credentials
      9467bd25
    • Your Name's avatar
      Add OpenRouter-style extended fields to Model class · 27da6f46
      Your Name authored
      - Added description, context_length, architecture, pricing, top_provider, supported_parameters, and default_parameters fields
      - Fixes crash when returning model data through API with OpenRouter metadata
      - Aligns Model class with ProviderModelConfig, RotationConfig, and AutoselectConfig
      27da6f46
    • Your Name's avatar
      feat: Add Kiro AWS Event Stream parsing, converters, and TODO roadmap · 2e7a8460
      Your Name authored
      - Add aisbf/kiro_parsers.py: AWS Event Stream parser for Kiro API responses
      - Update kiro_converters_openai.py: Add build_kiro_payload_from_dict function
      - Update kiro_converters.py: Minor fixes
      - Update kiro_auth.py: Add AWS SSO OIDC authentication support
      - Update handlers.py: Enhance streaming and error handling
      - Update main.py: Add proxy headers middleware and configuration
      - Update setup.py: Add version bump
      - Add TODO.md: Comprehensive roadmap for caching and performance improvements
      
      Features:
      - Kiro AWS Event Stream parsing for non-streaming responses
      - OpenAI-to-Kiro payload conversion
      - AWS SSO OIDC authentication for Kiro
      - Proxy headers middleware for reverse proxy support
      - TODO roadmap with prioritized items for future development
      2e7a8460