Large language model agents increasingly undertake complex, long-horizon tasks that benefit from sustained personalized support through long-term memory. Existing memory-augmented methods retrieve and use memory primarily from the initial request, with limited awareness of ongoing execution and emerging personalization needs. Agents may therefore overlook user preferences and project constraints during multistep tasks. We propose Pulse, a streaming personalization method for long-horizon tasks. An independent, lightweight memory agent continuously monitors execution, identifies emerging personalization needs and potential preference conflicts, and uses user and project memories to provide targeted interventions at appropriate stages. Reinforcement learning optimizes when and how the memory agent intervenes, improving the timeliness and accuracy of personalized support. Pulse scores 71.9% on π-Bench and 46.4% on MCP-Persona, achieving the highest overall scores among the compared methods on both datasets while improving task execution efficiency.
Figures & tables
Figure 1. Hotel booking with request-level memory recall (top) and Pulse (bottom). The traditional workflow relies on a user reminder; Pulse prompts wake-up service verification or hotel reselection before submission. Vertically stacked hotel-booking workflows with the shared query and memories combined in one input panel above. The upper workflow selects a hotel with wake-up calls unconfirmed and revises it after a user reminder. The lower Pulse workflow prompts verification or reselection before submission.
Figure 2. Overview of Pulse. Left: historical interactions and task traces form a user Topic graph and project memory containing workflows W and current information S . Center: Pulse augments the request with initial evidence E0 , incrementally observes messages, candidate calls, and tool results, gates retrieval, and selects silence, supplementation, or pre-commit intervention. Right: GRPO optimizes the execution-time policy using action correctness and an incorrect-intervention penalty. Three-part Pulse architecture. Historical conversations and task traces populate user Topic graphs and project workflows and state. One Pulse agent first personalizes the request, then listens to exposed execution events. A retrieval gate either reuses valid context or queries memory and selects evidence. Behavior selection yields Silent, Supplement for the next model call, or Intervene before a candidate tool call executes. GRPO trains the execution-time policy from a base model using group samples, a reward of plus one for a correct action, minus one for an incorrect intervention, and zero for other errors, with a frozen reference policy for KL regularization.
Group
Method
User Domain
Overall
Token Usage
Researcher
Marketer
Pharmacist
Law Trainee
Financier
COMP
Store Token (k)
Retrieve Token (k)
Time (s)
Memory
Mem0
51.3
53.0
53.6
46.6
50.9
50.5
5.6
3.7
242.1
LightMem
50.6
40.9
61.8
47.7
53.8
51.6
4.8
3.1
277.3
A-MEM
45.5
48.5
48.2
48.3
53.8
49.0
8.3
6.1
243.2
Harness
OpenClaw
56.4
42.4
88.2
60.9
63.9
63.3
5.5
5.0
275.9
dsh
46.8
47.0
67.3
70.1
56.8
58.7
6.4
5.9
264.0
Table 1. π -Bench results. COMP is reported as a percentage; Store and Retrieve are thousands of tokens per task. Red and blue mark the best and second-best values, respectively. Time is seconds per task.
Group
Method
Single-Server
Cross-Server
Overall
Token Usage
CP
CM
SM
EM
Lark
Rednote
Hodgepodge
Acc
Store Token (k)
Retrieve Token (k)
Time (s)
Memory
Mem0
32.6
18.0
33.1
43.1
28.6
25.5
6.3
29.5
8.0
3.4
181.1
LightMem
35.2
20.7
35.5
45.1
31.6
27.7
18.8
32.2
3.8
1.9
139.8
A-MEM
27.9
14.7
28.5
39.2
23.6
21.2
6.3
25.0
5.3
4.1
164.6
Harness
OpenClaw
37.8
19.3
37.8
47.1
34.3
30.4
18.8
34.3
4.9
3.1
157.8
dsh
40.4
21.3
40.1
46.1
37.0
32.6
18.8
36.5
5.3
3.7
147.3
Table 2. MCP-Persona results. Acc is reported as a percentage; Store and Retrieve are thousands of tokens per task. Red and blue mark the best and second-best values, respectively. Time is seconds per task.
Group
Variant
π -Bench
MCP-Persona
COMP (%)
Store (k)
Retrieve (k)
Time (s)
Acc (%)
Store (k)
Retrieve (k)
Time (s)
Memory
Flat Memory
49.9
7.4
4.3
228.4
27.9
7.3
3.1
143.2
Flat + User
53.6 +3.7
6.7 −0.7
4.2 −0.1
248.5 +20.1
30.2 +2.3
6.8 −0.6
2.9 −0.2
158.6 +15.4
Flat + Project
54.4 +4.4
6.5 −0.9
4.1 −0.2
245.7 +17.3
30.2 +2.3
6.6 −0.7
2.8 −0.3
154.3 +11.1
Flat Memory + Pulse w/o RL
61.2 +11.3
7.4
4.6 +0.3
202.7 −25.7
35.9 +8.0
7.3
3.2 +0.1
124.4 −18.8
Retrieval
Start-only
56.4
5.3
3.5
215.7
33.1
5.3
2.2
110.4
Table 3. Component ablations. Store and Retrieve are k tokens per task; Time is seconds per task.
Figure 3. Effects of the incorrect-intervention reward. The −1 penalty achieves higher interruption success, π -Bench COMP, and MCP-Persona Acc than reward 0 . The first three groups use the left axis (%); the last two use the right axis (s/task). Grouped bar chart comparing No RL, RL with reward zero for an incorrect interruption, and RL with reward minus one. Interruption success is 75.1, 68.4, and 81.2 percent, with 494, 557, and 346 total interruptions, respectively; pi-Bench COMP is 66.5, 69.2, and 71.9 percent; MCP-Persona accuracy is 41.1, 43.8, and 46.4 percent. The first three groups use the left axis from 0 to 100 percent. The last two show time on the right axis from 0 to 300 seconds per task: No RL, pi-Bench 233.9 and MCP-Persona 128.7; reward 0, 247.1 and 137.4; reward minus one, 203.8 and 118.3.
Figure 4. MCP-Persona accuracy across early, middle, and late stages divided by execution step. Pulse (Full) leads at every stage and retains 44.2% accuracy in the late stage. Line chart of MCP-Persona accuracy in early, middle, and late stages divided by execution step. Mem0: 35.8, 29.2, 23.6 percent. ZCode: 38.2, 35.4, 33.8 percent. Pulse without RL: 43.3, 41.2, 38.7 percent. Full Pulse: 48.0, 46.9, 44.2 percent. The vertical axis spans 20 to 50 percent.
Figure 5. Policy choices in MCP-Persona 109. A habitual Notion preference triggers an unnecessary pause on the left. The right branch selects Silent and continues preparing the requested Obsidian note. Six interactions compare two decisions at the same proposed Obsidian append. The left branch treats a frequent-use preference for Notion as an exclusive constraint and pauses a valid write. The right branch recognizes that the memory does not conflict with the task, selects Silent, and continues attendee retrieval, calendar lookup, route calculation, and note updates.
Appendix figures & tables4 assets
Supplementary material from the paper’s appendix.
Appendix
Checkpoint completeness (%)
Overall
Cost per task
Group
Variant
Researcher
Marketer
Pharmacist
Law Trainee
Financier
COMP
Store (k)
Retrieve (k)
Time (s)
Memory
Flat Memory
50.0% [1pt] 78/156
48.5% [1pt] 32/66
51.8% [1pt] 57/110
47.7% [1pt] 83/174
51.5% [1pt] 87/169
49.9% [1pt] 337/675
7.4
4.3
228.4
Flat + User
52.6% [1pt] 82/156
51.5% [1pt] 34/66
58.2% [1pt] 64/110
50.6% [1pt] 88/174
55.6% [1pt] 94/169
53.6% [1pt] 362/675
6.7
4.2
248.5
Flat + Project
53.2% [1pt] 83/156
51.5% [1pt] 34/66
60.9% [1pt] 67/110
52.3% [1pt] 91/174
54.4% [1pt] 92/169
54.4% [1pt] 367/675
6.5
4.1
245.7
Flat Memory + Pulse w/o RL
57.1% [1pt] 89/156
53.0% [1pt] 35/66
66.4% [1pt] 73/110
63.8% [1pt] 111/174
62.1% [1pt] 105/169
61.2% [1pt] 413/675
7.4
4.6
202.7
Retrieval
Start-only
54.5% [1pt] 85/156
53.0% [1pt] 35/66
62.7% [1pt] 69/110
54.0% [1pt] 94/174
58.0% [1pt] 98/169
56.4% [1pt] 381/675
5.3
3.5
215.7
Appendix
Table B1. π -Bench per-category ablations. Percentages appear above completed/total checkpoints; Store and Retrieve are thousands of tokens per task. Time is seconds per task.
Checkpoint accuracy (%)
Overall
Cost per task
Group
Variant
CP
CM
SM
EM
Lark
Rednote
Hodge- podge
Acc
Store (k)
Retrieve (k)
Time (s)
Memory
Flat Memory
31.5% [1pt] 60.5/192
15.3% [1pt] 11.5/75
30.2% [1pt] 26/86
39.2% [1pt] 20/51
27.5% [1pt] 60.5/220
25.0% [1pt] 23/92
6.3% [1pt] 0.5/8
27.9% [1pt] 202/724
7.3
3.1
143.2
Flat + User
33.9% [1pt] 65/192
18.0% [1pt] 13.5/75
33.7% [1pt] 29/86
43.1% [1pt] 22/51
29.1% [1pt] 64/220
26.1% [1pt] 24/92
12.5% [1pt] 1/8
30.2% [1pt] 218.5/724
6.8
2.9
158.6
Flat + Project
32.8% [1pt] 63/192
19.3% [1pt] 14.5/75
32.0% [1pt] 27.5/86
44.1% [1pt] 22.5/51
30.0% [1pt] 66/220
25.5% [1pt] 23.5/92
18.8% [1pt] 1.5/8
30.2% [1pt] 218.5/724
6.6
2.8
154.3
Flat Memory + Pulse w/o RL
38.5% [1pt] 74/192
22.0% [1pt] 16.5/75
38.4% [1pt] 33/86
50.0% [1pt] 25.5/51
36.1% [1pt] 79.5/220
32.1% [1pt] 29.5/92
25.0% [1pt] 2/8
35.9% [1pt] 260/724
7.3
3.2
124.4
Retrieval
Start-only
37.8% [1pt] 72.5/192
20.7% [1pt] 15.5/75
33.7% [1pt] 29/86
49.0% [1pt] 25/51
32.5% [1pt] 71.5/220
26.6% [1pt] 24.5/92
18.8% [1pt] 1.5/8
33.1% [1pt] 239.5/724
5.3
2.2
110.4
Appendix
Table B2. MCP-Persona per-category ablations. Percentages appear above completed/total checkpoints; Store and Retrieve are thousands of tokens per task. Time is seconds per task.
Method
Performance (%)
Cost per task
Web EM
Pref R
Store (k)
Retrieve (k)
Time (s)
Memory systems
Mem0
59.6
69.6
3.9
2.9
69.3
LightMem
34.7
54.2
1.7
1.8
62.1
A-MEM
40.4
54.2
6.3
3.7
72.9
Agent harnesses
Appendix
Table B3. Persona2Web supplementary results. Web EM and Pref R are percentages; Store and Retrieve are thousands of tokens per task. Time is seconds per task.
Method
Performance
Cost per task
(%)
Retrieve (k)
Time (s)
π -Bench: COMP
Mem0
56.4
4.7
257.0
dsh
63.7
4.5
229.2
Pulse w/o RL
66.5
3.6
233.9
Pulse
71.9
3.9
203.8
Appendix
Table B4. Shared Pulse memory backend. Performance is in percent; Retrieve is k tokens per task, and Time is seconds per task.