Skip to content

[Bug]: [Bug]: Hermes v0.13.0 sends unsupported include parameter causing "Encrypted content is not supported with this model" error with OpenAI GPT-4o #23450

@ghost

Description

Bug Description

Environment

  • OpenAI SDK: 2.36.0
  • Provider: custom (OpenAI API)
  • Model: gpt-4o, gpt-4o-mini (both affected)

Description

Hermes sends an unsupported include parameter with reasoning.encrypted_content to OpenAI API, causing all requests to fail with HTTP 400 error.

Configuration

model:
  default: gpt-4o
  provider: custom
  base_url: https://api.openai.com/v1
  api_key_env: OPENAI_API_KEY

agent:
  reasoning_effort: null

compression:
  enabled: false

encryption:
  enabled: false

Steps to Reproduce

  1. Fresh install Hermes v0.13.0
  2. Configure custom provider with OpenAI endpoint
  3. Set model to gpt-4o or gpt-4o-mini
  4. Run hermes and send any prompt
  5. Request fails with encrypted content error

Expected Behavior

Hermes should send standard OpenAI API requests without include parameter for models that don't support encrypted content.

Actual Behavior

Hermes automatically adds include parameter to requests, causing all interactions to fail.

Affected Component

Configuration (config.yaml, .env, hermes setup)

Messaging Platform (if gateway-related)

No response

Debug Report

## Workarounds Attempted
- ✗ Changed `reasoning_effort` to `null`
- ✗ Disabled `compression`
- ✗ Disabled `encryption`
- ✗ Added `extra_body: {include: []}`
- ✗ Multiple reinstalls and config resets

OpenAI API reference confirms `encrypted_content` is only supported via Responses API for specific models/use cases, not for standard Chat Completions with GPT-4o.

Operating System

macOS Taho

Python Version

3.11.15

Hermes Version

v0.13.0 (2026.5.7)

Additional Logs / Traceback (optional)

Similar issues reported in other projects:
- pydantic/pydantic-ai#3326
- pydantic/pydantic-ai#2865
- RooCodeInc/Roo-Code#9225

Root Cause Analysis (optional)

No response

Proposed Fix (optional)

Add model capability check before including reasoning.encrypted_content parameter in API requests. Only append include parameter when model explicitly supports it (e.g., o1/o3 series via Responses API). For standard models like GPT-4o using Chat Completions endpoint, omit the parameter entirely.

Are you willing to submit a PR for this?

  • I'd like to fix this myself and submit a PR

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1High — major feature broken, no workaroundcomp/agentCore agent loop, run_agent.py, prompt builderprovider/openaiOpenAI / Codex Responses APItype/bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions