Research and reporting
A planner breaks a question into sub-tasks, several researchers work in parallel, and a writer assembles the result from shared memory.
Planner, researcher and writer agents that hand off work through a durable task stream, share results and memory, and never lose a task.
The planner splits the job and adds a task to the stream.
An animated walkthrough with real HotKV commands and example replies. Click any step to jump to it.
Teams of agents need a way to pass work to each other, share what they have found, and recover when one of them crashes mid-task. Gluing that together with ad hoc HTTP calls loses tasks, duplicates tool calls and leaves no record of who did what.
A stream with a consumer group is the task board. Each agent reads its own tasks, acknowledges them when done, and anything a crashed agent left pending can be claimed by another. Findings go into shared working memory, tool results are cached for every agent, and each action is logged.
The planner splits the job and adds a task to the stream.
XADD tasks * type research topic "EU AI Act obligations"The consumer group was made once with XGROUP CREATE. The researcher reads as a member of it, and the task stays pending until acknowledged.
XREADGROUP GROUP agents researcher COUNT 1 BLOCK 5000 STREAMS tasks >Another agent already ran this search today. The shared tool cache returns it.
TOOL.CACHE.GET web "search:EU AI Act obligations"Results go into working memory for the project, where every agent can read them.
AMEM.WORK.SET project:9 findings "Providers of high-risk systems must ..."The task is done and leaves the pending list. Had the researcher crashed, XAUTOCLAIM would hand it to another agent.
XACK tasks agents 1790985600123-0The writer reads the shared findings, drafts the report and logs the action.
AMEM.WORK.GET project:9 findingsA planner breaks a question into sub-tasks, several researchers work in parallel, and a writer assembles the result from shared memory.
Coding, testing and review agents pass work through a stream, and every change they make is in the episodic log.
Invoice extraction, validation and posting agents hand documents along a pipeline that survives restarts.
Streams with consumer groups, acknowledgements and claiming of abandoned tasks.
XADDXREADGROUPXACKXAUTOCLAIMProject state that every agent can read and update.
AMEM.WORK.SETAMEM.WORK.GETDeterministic tool results are reused across agents.
TOOL.CACHE.GETTOOL.CACHE.SETAn episodic log per agent for audit and debugging.
AMEM.EPIS.LOGThe task stays in the consumer group's pending list. Another agent can take it over with XAUTOCLAIM once it has been idle long enough.
Yes. They only need a connection to HotKV. Any client that speaks the Redis protocol works.
Streams work on every plan. Agent memory and the tool cache are part of the Performance and Scale plans.
HotKV speaks the Redis protocol, so you can point an existing client at it and run these same commands.