memory

package
v0.17.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 16, 2026 License: MIT Imports: 14 Imported by: 0

Documentation

Overview

Package memory provides file-backed project and global memory storage.

Index

Constants

This section is empty.

Variables

View Source
var ErrSecret = errors.New("memory: content appears to contain a secret")

ErrSecret is returned when memory content looks like it contains a secret.

Functions

func LooksLikeSecret

func LooksLikeSecret(content string) bool

LooksLikeSecret reports whether content matches common secret patterns.

func ParseFile

func ParseFile(path string) (*session.Memory, error)

ParseFile reads a Markdown memory file with frontmatter.

Types

type FileStore

type FileStore struct {
	// contains filtered or unexported fields
}

FileStore persists project and global memories as Markdown files.

func NewFileStore

func NewFileStore(opts FileStoreOptions) *FileStore

NewFileStore constructs a file-backed memory store.

func (*FileStore) Forget

func (s *FileStore) Forget(ctx context.Context, scope session.MemoryScope, memoryID string) (*session.Memory, error)

Forget removes an active project or global memory file by id.

func (*FileStore) List

func (s *FileStore) List(ctx context.Context, scope session.MemoryScope) ([]*session.Memory, error)

List returns active file-backed memories for a single scope.

func (*FileStore) ListMemories

func (s *FileStore) ListMemories(ctx context.Context) ([]*session.Memory, error)

ListMemories returns global memories, then project memories, for prompt injection.

func (*FileStore) MemoryDir

func (s *FileStore) MemoryDir(scope session.MemoryScope) (string, error)

MemoryDir returns the directory that backs a project or global memory scope.

func (*FileStore) ProjectMemoryGitignoreWarning

func (s *FileStore) ProjectMemoryGitignoreWarning(ctx context.Context) (string, error)

ProjectMemoryGitignoreWarning returns a warning before the first project memory write when .hygge/ is not ignored by git. It never edits .gitignore.

func (*FileStore) Remember

func (s *FileStore) Remember(ctx context.Context, scope session.MemoryScope, content string) (*session.Memory, error)

Remember writes content as a project or global Markdown memory.

type FileStoreOptions

type FileStoreOptions struct {
	ProjectDir    string
	HomeDir       string
	XDGConfigHome string
	Now           func() time.Time
	Git           gitexec.Runner
}

FileStoreOptions configures file-backed project/global memory storage.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL