Skip to content

v2.0.0 Major release introducing intelligent automatic memory capabilities

Choose a tag to compare

@JochenYang JochenYang released this 04 Nov 08:20
· 74 commits to main since this release

Major Release: Intelligent Auto-Memory

This is a major release introducing intelligent automatic memory capabilities that revolutionize how AI assistants manage context.

Added

Intelligent Auto-Memory System

  • Process Recognition: Automatically identifies 6 development process types

    • bug_fix: Bug fixes and error corrections
    • refactor: Code refactoring and improvements
    • solution_design: Architecture and design decisions
    • code_change: Regular code modifications
    • testing: Test writing and validation
    • documentation: Documentation updates
  • Value Assessment: Multi-dimensional content evaluation (4 dimensions)

    • Code Significance (30%): Algorithm complexity, code quality, code length
    • Problem Complexity (25%): Technical difficulty, tech stack depth, impact scope
    • Solution Importance (25%): Innovation, generality, completeness
    • Reusability (20%): Abstraction level, documentation, applicability
  • Smart Decision-Making: Three-tier automatic decision system

    • Score ≥ 80: Auto-remember (high confidence)
    • Score 50-79: Ask for confirmation (medium confidence)
    • Score < 50: Ignore (low value)
  • User Feedback Learning: Continuous optimization through user feedback

    • Records user feedback (useful/not_useful/needs_improvement)
    • Automatically adjusts evaluation weights
    • Optimizes recognition patterns
    • Adapts thresholds based on acceptance rates

Enhanced MCP Tools

  • record_context: Now supports intelligent evaluation

    • New parameter: auto_evaluate (default: true) - Enable intelligent evaluation
    • New parameter: force_remember (default: false) - Force remember (highest priority)
    • Returns detailed evaluation results with process type, value score, and decision reasoning
    • Supports three memory modes: AI proactive, user explicit, traditional
  • semantic_search: Returns intelligent memory metadata

    • Shows memory source (user_explicit/ai_proactive/auto_trigger)
    • Displays process type and confidence
    • Includes value score for each result
    • Helps AI understand context better
  • update_context: Supports user feedback learning

    • New parameter: user_feedback (useful/not_useful/needs_improvement)
    • New parameter: feedback_comment - Optional feedback comment
    • Automatically triggers learning system
    • Updates evaluation parameters based on feedback

Database Enhancements

  • Extended contexts table: Added auto_memory_metadata field

    • Stores process type, value score, trigger decision
    • Records user feedback
    • Maintains evaluation history
  • New learning_parameters table: Stores adaptive learning parameters

    • Thresholds (high_value, medium_value, low_value)
    • Weights (code_significance, problem_complexity, solution_importance, reusability)
    • Update history and reasons
  • New user_feedback table: Records user feedback for learning

    • Feedback actions (accepted/rejected/modified)
    • Process types and value scores
    • User comments and timestamps

Core Components

  • DevelopmentProcessDetector: Intelligent process type recognition

    • Keyword matching with scoring
    • Pattern matching with regex
    • Context analysis
    • Confidence calculation
  • DevelopmentValueEvaluator: Multi-dimensional value assessment

    • 4-dimensional evaluation system
    • Weighted average calculation
    • Detailed breakdown for each dimension
  • AutoMemoryTrigger: Smart decision-making engine

    • Three-tier decision logic
    • Context enhancement
    • User preference adjustment
    • Suggested tags generation
  • UnifiedMemoryManager: Orchestrates all components

    • Handles three memory modes
    • Integrates all evaluation components
    • Manages decision flow
    • Formats output messages
  • UserFeedbackLearning: Adaptive learning system

    • Learns from user feedback
    • Adjusts evaluation parameters
    • Optimizes recognition patterns
    • Maintains learning history

Changed

  • Default Behavior: record_context now evaluates content by default

    • Can be disabled with auto_evaluate: false for backward compatibility
    • User explicit memory (force_remember=true) always has highest priority
  • Output Format: Enhanced output with evaluation details

    • Shows process type and confidence
    • Displays value score breakdown
    • Includes decision reasoning
    • Suggests relevant tags
    • Auto-detects language (Chinese/English)

Fixed

  • FTS5 Query Issues: Fixed special character handling in semantic search

    • Sanitizes special characters (-, (), @, etc.)
    • Implements fallback mechanisms
    • Prevents query errors with UUIDs and file paths
  • Tool Parameter Consistency: Unified parameter naming across tools

    • Standardized project_path vs project_id usage
    • Improved parameter descriptions
    • Added usage examples

Performance

  • Evaluation Speed: < 50ms per evaluation (tested)
  • Memory Overhead: Minimal impact on existing operations
  • Learning Efficiency: Requires minimum 10 feedback samples before adjusting

Testing

  • Unit Tests: 11 tests covering all core components (100% pass rate)
  • Integration Tests: Complete evaluation flow tested
  • Performance Tests: Response time validated (< 500ms target met)
  • Accuracy Tests: Process recognition and value assessment validated

Documentation

  • README: Added comprehensive intelligent auto-memory guide

    • Usage examples for three memory modes
    • Value assessment dimensions explained
    • Process recognition types documented
    • User feedback learning guide
  • Chinese README: Full translation of new features

  • Test Summary: Detailed test coverage documentation

Migration Guide

From v1.x to v2.0

No breaking changes! The intelligent auto-memory system is fully backward compatible.

What's New:

  • record_context now evaluates content automatically (can be disabled)
  • semantic_search returns additional metadata
  • update_context supports feedback learning

Recommended Usage:

// Let AI decide (recommended)
await record_context({
  content: "Your content",
  type: "bug_fix",
  project_path: "./project"
  // auto_evaluate: true (default)
});

// Force remember important content
await record_context({
  content: "Critical decision",
  type: "solution_design",
  project_path: "./project",
  force_remember: true
});

// Provide feedback to improve
await update_context({
  context_id: "abc123",
  user_feedback: "useful"
});

Default Parameters (Optimized):

  • High Value Threshold: 80
  • Medium Value Threshold: 50
  • Code Significance Weight: 30%
  • Problem Complexity Weight: 25%
  • Solution Importance Weight: 25%
  • Reusability Weight: 20%

These parameters automatically adapt through user feedback learning!