gc_peer_conversation
Manage persistent chat sessions with external A2A peers for dialogue, clarification, and coordination. Create, send turns, list, fetch, or delete conversations.
Instructions
Persistent chat-style sessions with external A2A peers such as Pluto. Use this for dialogue, clarification, synthesis, and back-and-forth coordination. Do NOT use gc_dispatch for conversational turns; gc_dispatch is for job assignments.
Actions:
create: open a new peer conversation session and bind it to a registered A2A peer
turn: send one user message into an existing session and get the peer's reply
get: fetch the full current state of one session, including transcript and remote threading metadata
list: list all peer conversation sessions
delete: destroy one peer conversation session
Important semantics:
Sessions are persistent and conversation-oriented, not job-oriented.
Turns create no dispatch jobs and no dispatch audit rows.
The daemon preserves transcript locally and reuses remote A2A context/threading under the hood.
peer_agent must be the name of a registered A2A peer (for example: "pluto").
Typical flow:
action="create", peer_agent="pluto"
action="turn", session_id="", message="..."
action="get" or action="list" to inspect session state later
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| agent | No | Alias for peer_agent on action="create". Prefer peer_agent for clarity. | |
| action | Yes | Conversation action: create a session, send a turn, fetch one session, list sessions, or delete a session | |
| config | No | Optional session config stored with the conversation at creation time (e.g. purpose, project, strategy context) | |
| message | No | User message to send into the peer session, required for action="turn" | |
| peer_agent | No | Registered A2A peer name for action="create" (for example: "pluto") | |
| session_id | No | Existing peer conversation session ID, required for turn/get/delete |