Models can edit Topic files directly or submit structured changes through the Memory API. Runtime validation and derived views are shared by both paths.
The Scheduler agent may create a durable Memory record while planning, update it during execution, and close or delete it when the task ends. ^7a12e4c9 · source refs 3
Current retrieval
Keyword retrieval uses BM25 over Topic and Source events. Semantic retrieval remains unavailable until its embedding model is installed and selected.
▤
No memory has been written yet
OpenProgram writes durable topics after enough conversation has accumulated. You can configure the writer model and recall method first.
Settings
Memory
Choose how OpenProgram writes, stores, and recalls long-term memory.
CaptureConversation archive
WriteMiniMax-M3
StoreLocal + Git
RecallBM25 only
Memory service
Enable MemoryTurns on recall, background writing, organization, and Memory tools.
Next start
StorageTopic Markdown with derived views and Git history.
Local workspace · Git enabled
Background writing
Writer modelUses the default chat model unless you select an enabled model here.
Live
Automatic writingTurn completed conversations into Topic records in the background.
Write frequencyControls how much conversation accumulates before a background write.
Retrieval
Recall methodSelect the retrieval path used before each model turn.
Live
Embedding modelRequired for semantic and hybrid retrieval.
Not installed
Recall depthMaximum number of matching records added to a turn.
Search Source evidenceInclude archived evidence alongside curated Topic records.
Context and history
Core Memory in every chatInject the compact Core view into each system prompt.
Recent view sizeNumber of latest records kept in the Recent derived view.
WorkspaceCurrent Memory data location. Runtime-managed files remain read-only.
~/.openprogram/memory
Settings saved
Implemented interface contract
Memory keeps the standard 64px title bar and exposes a direct /settings/memory link.
Topics, Timeline, Recent, and Core form a vertical section list above the Topic tree.
At a 720px viewport the section list, tree, and content stack without removing Memory navigation.
Settings reads and writes the same schema used by the CLI and TUI.
Implementation and acceptance
Public entries: /memory, /settings/memory, GET/POST /api/settings, automatic recall, memory_search, and Topic/API writes.
Semantic and Hybrid remain disabled until an embedding model is actually available.
No external API permission controls are added to this page.
Accepted with focused and affected tests, TypeScript validation, independent specification and quality reviews, and visible default-App checks at normal and 720px widths.