MemoryConfig
public final class MemoryConfig
io/agentscope/harness/agent/memory/MemoryConfig.java:52–365记忆配置,保存相关配置项。位于 io.agentscope.harness.agent.memory 包。核心成员包括 model、flushPrompt、consolidationPrompt、consolidationMaxTokens、consolidationMinGap、dailyFileRetentionDays。
Unified configuration for the long-term memory pipeline (flush + consolidation +
maintenance). Pair with CompactionConfig for the in-context summarization pipeline.
The harness has three LLM-driven memory operations, each with its own prompt and triggering rules:
-
Flush — extracts long-term memories from a conversation window into today's daily ledger (
memory/YYYY-MM-DD.md). Prompt:#flushPrompt(), defaults toMemoryFlushManager#DEFAULT_FLUSH_PROMPT. Trigger:#flushTrigger(). -
Consolidation — periodically merges daily ledgers into the curated
MEMORY.md. Prompt:#consolidationPrompt(), defaults toMemoryConsolidator#DEFAULT_CONSOLIDATION_PROMPT. Run cadence:#consolidationMinGap(). -
Compaction summary — distills the conversation prefix into one summary message before reasoning. Prompt lives on
CompactionConfig#getSummaryPrompt(); configure via.compaction(CompactionConfig...)rather than here.
Flush and consolidation use independent throttle windows. A throttled policy allows the
first eligible call immediately; its minimum gap applies only between subsequent runs and is
not an initial delay. FlushTrigger#never() disables only the per-call flush.
All fields have sensible defaults; #defaults() returns a config equivalent
to the harness's historical behavior so adopting this class is a no-op upgrade.
嵌套类摘要Nested Class Summary
| 类Class | 类型Kind | 说明Description |
|---|---|---|
FlushMode | 枚举enum | 定义刷新模式相关取值的枚举。 Strategy for the per-call flush hook. |
FlushTrigger | 类class | 刷新 Trigger,在多次调用之间保存和恢复会话与记忆数据。 Trigger policy for `io.agentscope.harness.agent.middleware.MemoryFlushMiddleware`. |
Builder | 类class | 构建器,用于构建并配置目标实例。 A class in io.agentscope.harness.agent.memory that persists and restores session and memory data across calls. |
字段摘要Field Summary
| 字段Field | 类型Type | 说明Description |
|---|---|---|
DEFAULT_CONSOLIDATION_MAX_TOKENSstaticfinal | int | 默认 CONSOLIDATION 最大令牌数字段。 Default `consolidationMaxTokens`. |
DEFAULT_CONSOLIDATION_MIN_GAPstaticfinal | Duration | 默认 CONSOLIDATION 最小 GAP字段。 Default `consolidationMinGap` — matches `MemoryMaintenanceMiddleware`. |
DEFAULT_DAILY_FILE_RETENTION_DAYSstaticfinal | int | 默认 DAILY 文件 RETENTION DAYS字段。 Default retention before a daily ledger is archived. |
DEFAULT_SESSION_RETENTION_DAYSstaticfinal | int | 默认会话 RETENTION DAYS字段。 Default retention before a session JSONL log is pruned. |
方法摘要Method Summary
| 方法Method | 说明Description |
|---|---|
public Model model() | 返回模型。 Optional model override for memory operations (flush + consolidation). |
public String flushPrompt() | 返回刷新提示词。 Override for the flush prompt. |
public String consolidationPrompt() | 返回 `consolidationPrompt` 结果。 Override for the consolidation prompt. |
public int consolidationMaxTokens() | 返回 `consolidationMaxTokens` 结果。 Returns the consolidation max tokens. |
public Duration consolidationMinGap() | 返回 `consolidationMinGap` 结果。 Minimum gap between consolidation/maintenance runs. |
public int dailyFileRetentionDays() | 返回 `dailyFileRetentionDays` 结果。 Returns the daily file retention days. |
public int sessionRetentionDays() | 返回 `sessionRetentionDays` 结果。 Returns the session retention days. |
public FlushTrigger flushTrigger() | 返回 `flushTrigger` 结果。 Returns the flush trigger. |
public static MemoryConfig defaults()static | 返回 `defaults` 结果。 Returns a config equivalent to the harness's historical defaults. |
public static Builder builder()static | 返回构建器实例。 Returns the builder. |
字段详情Field Detail
DEFAULT_CONSOLIDATION_MAX_TOKENS
public static final int DEFAULT_CONSOLIDATION_MAX_TOKENS
默认 CONSOLIDATION 最大令牌数字段。声明为 public static final int DEFAULT_CONSOLIDATION_MAX_TOKENS。
Default consolidationMaxTokens.
io/agentscope/harness/agent/memory/MemoryConfig.java:55DEFAULT_CONSOLIDATION_MIN_GAP
public static final Duration DEFAULT_CONSOLIDATION_MIN_GAP
默认 CONSOLIDATION 最小 GAP字段。声明为 public static final Duration DEFAULT_CONSOLIDATION_MIN_GAP。
Default consolidationMinGap — matches MemoryMaintenanceMiddleware.
io/agentscope/harness/agent/memory/MemoryConfig.java:58DEFAULT_DAILY_FILE_RETENTION_DAYS
public static final int DEFAULT_DAILY_FILE_RETENTION_DAYS
默认 DAILY 文件 RETENTION DAYS字段。声明为 public static final int DEFAULT_DAILY_FILE_RETENTION_DAYS。
Default retention before a daily ledger is archived.
io/agentscope/harness/agent/memory/MemoryConfig.java:61DEFAULT_SESSION_RETENTION_DAYS
public static final int DEFAULT_SESSION_RETENTION_DAYS
默认会话 RETENTION DAYS字段。声明为 public static final int DEFAULT_SESSION_RETENTION_DAYS。
Default retention before a session JSONL log is pruned.
io/agentscope/harness/agent/memory/MemoryConfig.java:64方法详情Method Detail
model
public Model model()
返回模型。
Optional model override for memory operations (flush + consolidation).
Modelio/agentscope/harness/agent/memory/MemoryConfig.java:174–176flushPrompt
public String flushPrompt()
返回刷新提示词。
Override for the flush prompt.
Stringio/agentscope/harness/agent/memory/MemoryConfig.java:182–184consolidationPrompt
public String consolidationPrompt()
返回 consolidationPrompt 结果。
Override for the consolidation prompt.
Stringio/agentscope/harness/agent/memory/MemoryConfig.java:193–195consolidationMaxTokens
public int consolidationMaxTokens()
返回 consolidationMaxTokens 结果。
Returns the consolidation max tokens.
intio/agentscope/harness/agent/memory/MemoryConfig.java:197–199consolidationMinGap
public Duration consolidationMinGap()
返回 consolidationMinGap 结果。
Minimum gap between consolidation/maintenance runs.
Durationio/agentscope/harness/agent/memory/MemoryConfig.java:206–208dailyFileRetentionDays
public int dailyFileRetentionDays()
返回 dailyFileRetentionDays 结果。
Returns the daily file retention days.
intio/agentscope/harness/agent/memory/MemoryConfig.java:210–212sessionRetentionDays
public int sessionRetentionDays()
返回 sessionRetentionDays 结果。
Returns the session retention days.
intio/agentscope/harness/agent/memory/MemoryConfig.java:214–216flushTrigger
public FlushTrigger flushTrigger()
返回 flushTrigger 结果。
Returns the flush trigger.
FlushTriggerio/agentscope/harness/agent/memory/MemoryConfig.java:218–220defaults
public static MemoryConfig defaults()
返回 defaults 结果。
Returns a config equivalent to the harness's historical defaults.
MemoryConfigio/agentscope/harness/agent/memory/MemoryConfig.java:223–225builder
public static Builder builder()
返回构建器实例。
Returns the builder.
Builderio/agentscope/harness/agent/memory/MemoryConfig.java:227–229嵌套类详情Nested Class Detail
FlushMode
public enum FlushMode定义刷新模式相关取值的枚举。位于 io.agentscope.harness.agent.memory 包。核心成员包括 ALWAYS、NEVER、THROTTLED。
Strategy for the per-call flush hook. See FlushTrigger.
FlushTrigger
public static final class FlushTrigger刷新 Trigger,在多次调用之间保存和恢复会话与记忆数据。位于 io.agentscope.harness.agent.memory 包。核心成员包括 always、never、throttled、mode、minGap、equals。
Trigger policy for io.agentscope.harness.agent.middleware.MemoryFlushMiddleware.
A throttled trigger allows the first eligible call immediately. Its minimum gap is
measured between subsequent per-call flushes, independently of consolidation maintenance.
#never() disables only this per-call flush path.
throttled(Duration.ZERO) normalises to #always() so callers do not
need a special branch for the degenerate case.
Builder
public static final class Builder构建器,用于构建并配置目标实例。位于 io.agentscope.harness.agent.memory 包。核心成员包括 model、flushPrompt、consolidationPrompt、consolidationMaxTokens、consolidationMinGap、dailyFileRetentionDays。
A class in io.agentscope.harness.agent.memory that persists and restores session and memory data across calls. Declared in io.agentscope.harness.agent.memory.