Versions in this module Expand all Collapse all v0 v0.3.0 May 26, 2026 v0.2.1 May 26, 2026 Changes in this version + func APICompactMessages(msgs []types.EyrieMessage, cfg APICompactConfig) []types.EyrieMessage + func AdjustIndexToPreserveAPIInvariants(msgs []types.EyrieMessage, startIdx int) int + func BuildCompactPrompt(variant CompactVariant) string + func BuildPrompt(variant Variant) string + func CalculateMessagesToKeepIndex(msgs []types.EyrieMessage, cfg SessionMemoryConfig) int + func CountClearableToolResults(msgs []types.EyrieMessage) int + func FilterCompactBoundaries(msgs []types.EyrieMessage) []types.EyrieMessage + func FormatCompactSummary(raw string) string + func FormatSummary(raw string) string + func HasTextContent(m types.EyrieMessage) bool + func HasTimeGap(msgs []types.EyrieMessage, threshold time.Duration) bool + func IsCompactBoundary(m types.EyrieMessage) bool + func IsCompactableTool(name string) bool + func MicrocompactMessages(msgs []types.EyrieMessage, cfg MicroCompactConfig) []types.EyrieMessage + func ReadSessionMemory(sessionID string) (string, error) + func SessionMemoryPath(sessionID string) string + func ToolNameForResult(m types.EyrieMessage, msgs []types.EyrieMessage) string + type APICompactConfig struct + ClearThinking bool + ClearToolInputs bool + KeepTargetTokens int + PreserveMutating bool + TriggerTokens int + func DefaultAPICompactConfig() APICompactConfig + func DefaultAPIConfig() APICompactConfig + type CompactConfig struct + AutoCompactBuffer int + AutoEnabled bool + ContextWindowSize int + MaxFailures int + MaxOutputTokens int + func DefaultCompactConfig() CompactConfig + type CompactResult struct + Messages []types.EyrieMessage + Strategy string + Summary string + TokensAfter int + TokensBefore int + type CompactVariant int + const CompactBase + const CompactPartial + const CompactUpTo + type CompactionTrigger struct + LastCompact time.Time + MinInterval time.Duration + Threshold float64 + WindowSize int + func NewCompactionTrigger(windowSize int) *CompactionTrigger + func (ct *CompactionTrigger) MarkCompacted() + func (ct *CompactionTrigger) ShouldCompact(currentTokens int) bool + type Config = CompactConfig + func DefaultConfig() Config + type FileTracker struct + ModifiedFiles map[string]int + ReadFiles map[string]int + func NewFileTracker() *FileTracker + func (ft *FileTracker) ExtractFromMessages(messages []types.EyrieMessage) + func (ft *FileTracker) FormatForSummary() string + func (ft *FileTracker) Merge(other *FileTracker) + func (ft *FileTracker) ParseFromSummary(summary string) + func (ft *FileTracker) RecordModified(path string) + func (ft *FileTracker) RecordRead(path string) + type MicroCompactConfig struct + CompactableTools map[string]bool + KeepRecent int + TimeGapMins float64 + func DefaultMicroCompactConfig() MicroCompactConfig + func DefaultMicroConfig() MicroCompactConfig + type Result = CompactResult + type SessionMemoryConfig struct + MaxTokens int + MinTextBlockMessages int + MinTokens int + func DefaultSessionMemoryConfig() SessionMemoryConfig + type Variant = CompactVariant