feat(native-memory): semantic memory, cross-session context, skill management commands#4509
Closed
herjarsa wants to merge 23 commits into
Closed
feat(native-memory): semantic memory, cross-session context, skill management commands#4509herjarsa wants to merge 23 commits into
herjarsa wants to merge 23 commits into
Conversation
added 21 commits
May 23, 2026 14:01
- Create @oh-my-opencode/semantic-memory package with SQLite storage - Implement simple embedding generation using term frequency hashing - Add cosine similarity search for semantic memory retrieval - Create memory-context-injector hook for automatic memory storage - Add 'omo memory' CLI with search, recent, store, delete, stats, clear commands - Support memory types: context, decision, error, pattern, insight - Include comprehensive test suite (13 tests) Closes code-yeongyu#2
…errors - Remove packages/semantic-memory package - Move implementation to src/features/semantic-memory/ - Update imports to use relative paths - Fix type errors by removing non-existent type imports - Update CLI command to import from local feature
- Fix getBunSqlite() to properly await dynamic import() (was returning Promise instead of module, causing TypeError in tests) - Make all memory.ts functions async (storeMemory, retrieveMemories, etc.) - Add createMemoryContextInjector hook for automatic memory retrieval/injection on chat.message to provide relevant past memories as context - Fix semantic-memory.test.ts to use async/await - Fix hooks/semantic-memory.ts to await storeMemory calls - Fix CLI commands to use async actions
…egistry commands - createFindSkillsTool(): Searches .agents/skills/ and user config for matching skills - createSkillCreatorCommand(): /create-skill - generates SKILL.md from template - createSkillRegistryCommand(): /update-skill-registry - scans dirs, writes .atl/skill-registry.md - Built-in auto-detection: agents can invoke find_skills when they lack capabilities
Contributor
Author
|
Superseded by #4404 (per-agent memory, clean version) |
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.
Summary
Cross-session persistent memory system for oh-my-opencode with semantic search, context injection hooks, and skill management CLI commands.
Key Features
/create-skill,/update-skill-registryas built-in commandsTechnical Details
new Function('return import("bun:sqlite"))pattern for CI bundle compatibilitytool-registry.tsasfind_skillstoolCommits
21 commits, all tests pass, typecheck clean.
Closes feature request for persistent cross-session memory.
Summary by cubic
Adds a persistent semantic memory system with semantic search and cross-session recall. Also introduces a memory CLI, a
find_skillstool, and built-in skill management commands.New Features
memory-context-injectorstores key tool outcomes viatool.execute.afteras context/error memories.oh-my-opencode memory {search|recent|store|delete|stats|clear}for managing memories.find_skillstool, plus/create-skilland/update-skill-registrybuilt-in commands.Migration
memory-context-injectorhook in config to auto-store tool outcomes.bun:sqlitevia dynamic import. Optional DB path viaSEMANTIC_MEMORY_DB_PATH.Written for commit dfc40b6. Summary will update on new commits. Review in cubic