rohitg00/ai-engineering-from-scratch · error · EventStreamError
agent.message content must be a list
Error message
agent.message content must be a list
What it means
Error "agent.message content must be a list" thrown in rohitg00/ai-engineering-from-scratch.
Source
Thrown at certifications/claude/lessons/12-claude-agent-sdk-and-hooks/code/main.py:80
if event_type == "event_delta" and isinstance(event.get("text"), str):
preview_parts.append(event["text"])
continue
event_id = event.get("id")
if not isinstance(event_id, str) or not event_id:
raise EventStreamError("persisted events need a non-empty id")
if event_id in seen:
continue
seen.add(event_id)
last_event_id = event_id
if event_type == "session.status_running":
status = "running"
stop_reason = None
elif event_type == "agent.message":
content = event.get("content", [])
if not isinstance(content, list):
raise EventStreamError("agent.message content must be a list")
messages.append(
"".join(
str(block.get("text", ""))
for block in content
if isinstance(block, dict) and block.get("type") == "text"
)
)
elif event_type in {"agent.custom_tool_use", "agent.tool_use", "agent.mcp_tool_use"}:
actionable.add(event_id)
elif event_type in {"user.custom_tool_result", "user.tool_confirmation"}:
reference = event.get("custom_tool_use_id") or event.get("tool_use_id")
if not isinstance(reference, str) or reference not in actionable:
raise EventStreamError("tool result or confirmation must reference a known action")
pending.discard(reference)
elif event_type == "session.status_idle":
status = "idle"
reason = event.get("stop_reason")
if not isinstance(reason, dict) or reason.get("type") not in {"requires_action", "end_turn"}:View on GitHub (pinned to 39ea8a1c6d)
When it happens
Trigger: Thrown at certifications/claude/lessons/12-claude-agent-sdk-and-hooks/code/main.py:80 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of rohitg00/ai-engineering-from-scratch@39ea8a1c6d (2026-08-26).
Data as JSON: /api/errors/d301b479ba8cdece.
Report an issue: GitHub.