Open
Conversation
…on design document - Add bilingual (English/Chinese) design document for memory templating system - Include YAML-based MemoryTypeRegistry with 8 built-in types - Detail ReAct 3+1 phase flow with pre-fetch optimization - Describe 3-operation Schema: write/edit/delete - Document RoocodePatch SEARCH/REPLACE format - Explain dual-mode design: simple mode vs template mode - Cover pre-fetch optimization: ls directories + read .abstract.md/.overview.md + search once - Include merge operations: patch, sum, avg, immutable - Address #578: allow custom prompt template addition and specification Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add YAML-configurable memory schemas (cards, events, entities, etc.) - Implement MemoryReAct with tool use (read/find/ls) - Add schema-driven memory operations (write_uris/edit_uris/delete_uris) - Implement memory patch handler for incremental updates - Add comprehensive test suite
## Summary Implement memory templating system (GitHub Issue #578) - a complete rewrite of the memory extractor subsystem to support YAML-configurable memory types instead of hardcoded categories. ## Key Changes ### Architecture - Replace hardcoded 8 memory types with YAML-configurable schema system - Add MemoryTypeRegistry to load memory type definitions from YAML files - Dynamic Pydantic model generation from schema for type safety - Field-level merge operations: PATCH, SUM, IMMUTABLE ### Memory Extraction Flow - Implement ReAct orchestrator for single-pass memory updates - MemoryUpdater for applying operations to storage - Memory tools (read, search, ls) for ReAct loop - Stable JSON parser with 5-layer fault tolerance ### File Naming & Storage - Semantic filenames from template ({topic}.md instead of random IDs) - Two memory modes: simple mode and template mode - MEMORY_FIELDS HTML comment for structured metadata ### Configuration - 9 YAML templates in openviking/prompts/templates/memory/ - memory_config.py for memory system configuration - Dual-threshold compact upload mechanism in design doc ### Deletions - Remove old memory_content.py, memory_data.py, memory_operations.py - Remove memory_types.py, memory_utils.py, memory_patch.py - Remove corresponding old test files ### Updated Components - VLM backends (litellm, openai, volcengine) for new interfaces - Session and service core integration - Test suite for new architecture Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
## Summary Fix missing parameters in commit_async() when calling extract_long_term_memories(). The synchronous commit() method correctly passes these parameters, but the async version was missing them, causing memory extraction to be skipped. ## Changes - Pass user=self.user, session_id=self.session_id, ctx=self.ctx in commit_async() when calling extract_long_term_memories() Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
## Summary Fix JSON serialization error by converting FindResult object to dict using its to_dict() method before returning from MemorySearchTool. ## Changes - In MemorySearchTool.execute(), return search_result.to_dict() instead of search_result directly Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Also rename schema_models.py to schema_model_generator.py for clarity. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…zation - Add edit_overview_operations to MemoryUpdater for updating .overview.md files - Optimize MemoryTypeRegistry initialization in SessionCompressorV2 (load once) - Various memory templating system improvements Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Also fix duplicate line in system prompt. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- MemoryUpdater now vectorizes written/edited memory files after apply_operations - MemoryReAct generates overview following semantic.overview_generation.yaml format - Auto-extract and write .abstract.md from overview in memory_updater - Fix import: VikingURI is from openviking_cli.utils.uri Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Change vikingbot gateway to openviking-server --with-bot - Change vikingbot chat to ov chat - Update --no-markdown to --no-format - Remove --logs flag (not available) - Simplify CLI Reference table - Also update Chinese README_CN.md Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Convert from pytest to standalone script with: - SyncHTTPClient instead of AsyncHTTPClient - Rich for pretty console output - Phase control (ingest/verify/all) - Better error handling and progress display Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Remove duplicate logger and create_session_compressor in session/__init__.py - Remove duplicate MemoryConfig import in open_viking_config.py Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Parse function_call type responses (Responses API format) - Fix cache key logic to use consistent "current" messages - Fix previous_response_id not being passed when tools exist - Fix tool call parsing to handle both tc.name and tc.function.name - Preserve tool role info and image content in message conversion Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Failed to generate code suggestions for PR |
- search 工具无论是否有结果都记录到 messages 中 - refetch 时如果已达最大迭代次数,允许额外增加一次迭代 - 使用局部变量 max_iterations 避免修改实例属性 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Related Issue
Type of Change
Changes Made
Testing
Checklist
Screenshots (if applicable)
Additional Notes