NousResearch/hermes-agent · error · RuntimeError

op read timed out after {_OP_RUN_TIMEOUT}s for {reference!r}

Error message

op read timed out after {_OP_RUN_TIMEOUT}s for {reference!r}

What it means

Error "op read timed out after {_OP_RUN_TIMEOUT}s for {reference!r}" thrown in NousResearch/hermes-agent.

Source

Thrown at agent/secret_sources/onepassword.py:292

    cmd: List[str] = [str(op), "read"]
    if account:
        cmd += ["--account", account]
    # `--` terminates option parsing so a reference can never be mis-parsed as
    # an `op` flag even if validation is ever loosened.
    cmd += ["--", reference]

    try:
        proc = subprocess.run(  # noqa: S603 — op path is user-trusted, argv list
            cmd,
            env=_op_child_env(token_value),
            capture_output=True,
            text=True,
            encoding="utf-8",
            errors="replace",
            timeout=_OP_RUN_TIMEOUT,
        )
    except subprocess.TimeoutExpired as exc:
        raise RuntimeError(
            f"op read timed out after {_OP_RUN_TIMEOUT}s for {reference!r}"
        ) from exc
    except OSError as exc:
        raise RuntimeError(f"failed to invoke op: {exc}") from exc

    if proc.returncode != 0:
        err = _scrub(proc.stderr or "")[:200]
        if err:
            raise RuntimeError(f"op read failed for {reference!r}: {err}")
        raise RuntimeError(
            f"op read exited {proc.returncode} for {reference!r}"
        )

    # `op` appends a trailing newline; strip only that so a value with
    # intentional internal/edge spaces survives.  But a value that is empty or
    # whitespace-only is treated as empty: applying it would silently clobber a
    # good .env/shell credential with effectively nothing.
    value = (proc.stdout or "").rstrip("\r\n")

View on GitHub (pinned to c896c09c42)

Solutions

  1. Retry the op read; the CLI timed out (1Password service or network slowness).
  2. Unlock the 1Password CLI/session before retrying.

When it happens

Trigger: Thrown at agent/secret_sources/onepassword.py:292 when the library encounters an invalid state.

Common situations: See trigger scenarios.

Understand the failure class


AI-assisted analysis of NousResearch/hermes-agent@c896c09c42 (2026-08-14). Data as JSON: /api/errors/4b819cdb0c684776. Report an issue: GitHub.