Skip to content

v0.2.3

Latest

Choose a tag to compare

@het0814 het0814 released this 22 Jun 21:50
· 15 commits to main since this release
b88e5d5

Release Notes for v0.2.3

This release adds conversation memory extraction — turn chat-style message history into typed, durable memories in a single call and surfaces full provenance metadata (source, source ref, provenance) across the recall path, CLI, MCP, and UI.

New Features

  • Conversation memory extraction (memanto/app/services/conversation_memory_extraction_service.py,
    memanto/app/routes/memory.py, memanto/app/models/__init__.py)
    • New POST /{agent_id}/remember/extract endpoint that distills chat-style
      conversation turns into typed memory candidates using the same Moorcheh
      answer-generation path as the RAG answer endpoint.
    • Candidates are auto-classified into valid memory types, de-duplicated,
      confidence-scored, and tagged conversation-extract; secrets/API
      keys/tokens are explicitly excluded by the extraction prompt.
    • dry_run returns candidates without persisting; otherwise they're written
      through the standard batch-remember path and logged to the session summary.
    • New ExtractMemoriesRequest / ConversationMessage models with bounded
      limits (≤200 messages, ≤100 memories, 12k-char cap).
    • CLI: memanto remember --from-conversation <path|-> (reads a JSON message
      array from a file or stdin) with --dry-run, --max-memories, and
      --ai-model flags; renders each extracted candidate as a panel.
    • SDK and direct clients gain extract_memories_from_conversation().

Improvements

  • Provenance metadata in recall (memanto/cli/commands/memory.py,
    integrations/mcp/memanto_mcp/tools.py, memanto/app/ui/static/index.html)
    • recall output now displays Source, Ref, and Provenance for each
      memory (in addition to tags), unifying file-upload source names and
      origin (user/agent/tool) into one consistent block.
    • MCP MemoryHit model extended with status, source, source_ref, and
      provenance fields so MCP clients receive full memory metadata.
    • Web UI memory cards surface the same source/provenance metadata.

Tests

  • New tests/test_conversation_memory_extraction.py covering extraction,
    JSON parsing/normalization, validation limits, and dry-run behavior.
  • Expanded tests/test_api.py and tests/test_cli.py for the extract endpoint
    and --from-conversation CLI flow.

Full Changelog

Full Changelog: v0.2.2...v0.2.3