Evally
Agents

Memory gate

Decide which messages in an agent's chat are worth remembering next session, and which change what it already knows.

Run it on each message in a coding or support agent's conversation. Jev decides whether the message holds something a later session needs (a decision, a standing rule, a bug and its fix, an approach that failed, a preference, agreed future work), whether it will still hold next week, and whether memory already has it or it replaces an old line. Your agent's memory file stays short and current, without asking an LLM to summarize every turn.

Try it live

Real calls to Jev. Pick an example or paste your own.

Examples
97
104
No verdict yet

Pick an example or paste your own input, then run it.

Under the hood

Every question and rule, in the open. Fork it to change any of them.

What it asks

Reads message and memory, then asks 4 questions in one call.

  1. Q1Worth keepingPick one

    What does the message contain that a later session would need?

    A decisionA ruleA bugA dead endA preferenceLater workNothing
  2. Q2Still true next weekYes / no

    Will what the message says still be true and useful next week, beyond the task at hand?

  3. Q3Already savedYes / no

    Does the memory already say the same thing as the message? With no memory, answer no.

  4. Q4Changes a saved lineYes / no

    Does the message change or reverse something the memory says? With no memory, answer no.

How it decides

Rules run in code, top to bottom. The first one that matches gives the verdict.

  1. 1
    If Worth keeping is NothingSkip
  2. 2
    If Changes a saved line ≥ 0.6Replace a line
  3. 3
    If Already saved ≥ 0.6Skip
  4. 4
    If Still true next week ≥ 0.5Save it
  5. ·
    DefaultSkip

Call it from your code

Every template runs as-is with an API key, no setup: POST /api/v1/judges/memory-gate/run.

curl -X POST https://tryevally.com/api/v1/judges/memory-gate/run \  -H "Authorization: Bearer $EVALLY_API_KEY" \  -H "Content-Type: application/json" \  -d '{  "input": {    "message": "Let'\''s move the primary store from SQLite to Postgres 16. The sync worker needs concurrent writes.",    "memory": "- [decision] Use SQLite as the primary store for now.\n- [rule] Node 20 is the minimum supported version."  }}'

Seen in the wild

Community builds on Jev that use this pattern. Not affiliated with Evally.

More in Agents