NousResearch/hermes-agent · error · ValueError
Codex Responses input[{idx}] must be an object.
Error message
Codex Responses input[{idx}] must be an object. What it means
Error "Codex Responses input[{idx}] must be an object." thrown in NousResearch/hermes-agent.
Source
Thrown at agent/codex_responses_adapter.py:729
def _preflight_codex_input_items(
raw_items: Any,
*,
is_github_responses: bool = False,
sanitize_harmony_tokens: bool = False,
) -> List[Dict[str, Any]]:
if not isinstance(raw_items, list):
raise ValueError("Codex Responses input must be a list of input items.")
sanitize_text = (
_neutralize_harmony_tokens
if sanitize_harmony_tokens
else lambda text: text
)
normalized: List[Dict[str, Any]] = []
seen_ids: set = set()
for idx, item in enumerate(raw_items):
if not isinstance(item, dict):
raise ValueError(f"Codex Responses input[{idx}] must be an object.")
item_type = item.get("type")
if item_type == "function_call":
call_id = item.get("call_id")
name = item.get("name")
if not isinstance(call_id, str) or not call_id.strip():
raise ValueError(f"Codex Responses input[{idx}] function_call is missing call_id.")
if not isinstance(name, str) or not name.strip():
raise ValueError(f"Codex Responses input[{idx}] function_call is missing name.")
arguments = item.get("arguments", "{}")
if isinstance(arguments, dict):
arguments = json.dumps(arguments, ensure_ascii=False)
elif not isinstance(arguments, str):
arguments = str(arguments)
arguments = sanitize_text(arguments.strip() or "{}")
normalized.append(View on GitHub (pinned to c896c09c42)
Solutions
- Ensure every item in the Responses input list is an object.
- Fix the message conversion that produced a scalar input item.
When it happens
Trigger: Thrown at agent/codex_responses_adapter.py:729 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of NousResearch/hermes-agent@c896c09c42 (2026-08-14).
Data as JSON: /api/errors/581b1d274a0b7056.
Report an issue: GitHub.