]> git.giacomolli.uk - onechat/blobdiff - README.rst
Deliver messages between parent and child agents
[onechat] / README.rst
index 473d1e53a3ddbf8811cc60664700146af9ed69e4..b60f984379791785347d2cdfea98ad15da77dc0f 100644 (file)
@@ -150,10 +150,20 @@ Each child has its own memory, model client, usage file, subagents,
 schedules, and turn loop. Its prompt limits work to its area, asks for
 only reports that need the parent or the user, and permits an empty
 reply. Children have no WhatsApp tools and draft replies instead of
 schedules, and turn loop. Its prompt limits work to its area, asks for
 only reports that need the parent or the user, and permits an empty
 reply. Children have no WhatsApp tools and draft replies instead of
-sending them. Clients and WhatsApp still address only the root. There
-are no messages or tools between parent and child agents. A child's
-saved schedules and subagents can resume at startup. The ready log line
-lists the child names.
+sending them. Clients and WhatsApp still address only the root. A
+child's saved schedules and subagents can resume at startup. The ready
+log line lists the child names.
+
+A message from a parent to its own child enters the child's log as
+``user`` and wakes it. A child's final reply reaches the parent as
+``work`` with the prefix ``[NAME] `` and wakes it. An empty reply sends
+nothing. A busy recipient takes the message between tool calls or in its
+next turn. ``agent/messages.json``, with mode 0600, keeps messages until
+their recipient finishes its turn. A daemon stop preserves queued
+messages and reports for the next start without a second log entry. An
+interrupted turn can repeat its model calls and tools after restart.
+Backups lock this queue with the agent files. No tools send messages
+between parent and child agents yet.
 
 **************
  User service
 
 **************
  User service