Skip to content

Agent Openai

Agent OpenAI — mvp.agent_openai

Cluster: Agents & LLM | Type: component | MCP Tools: 34

Overview

Beta, review-pending OpenAI chat completions agent with circuit breaker, retry policy with jitter, structured logging, and Prometheus-style metrics. Wraps the official openai SDK and supports custom base URLs for OpenRouter and other OpenAI-compatible endpoints, with graceful failure when the package is absent or no API key is configured. Block contract verification_method=tier1_review_pending; @component_maturity("beta").

When to use:

  • Calling GPT-4o or any OpenAI-compatible model with automatic retry and circuit-breaker protection
  • Routing to OpenRouter or a self-hosted inference server via base_url
  • Embedding OpenAI completions into the G6 pipeline with full observability and resource guardrails

Example:

from mvp.agent_openai import AgentOpenAIBlock, OpenAIInput, OpenAIMessage

block = AgentOpenAIBlock(name="openai")
result = block.infer(OpenAIInput(
    messages=[OpenAIMessage(role="user", content="What is backpropagation?")],
    model="gpt-4o-mini",
    system_prompt="You are a concise ML tutor.",
))
# result.ok → True; result.value → OpenAIOutput with response, usage, finish_reason

Works well with: agent_langchain, agent_autogen, llm_router

Public API

AgentOpenAIPlanner

Runtime-first facade that falls back to real deterministic gate logic.

Constructor:

Parameter Type Default
runtime AgentOpenAIRuntime \| None None

Methods:

decide(goal: str, context: str = '') -> AgentOpenAIDecision

judge_guardrail(text_preview: str, rule_types: list[str], deterministic_passed: bool, deterministic_reason: str = '') -> GuardrailVerdict

AgentOpenAIBlock(LifecycleMixin, AIBlock[OpenAIInput, OpenAIOutput, None])

Beta, review-pending OpenAI chat completions agent.

Field Type Default
name str 'agent_openai'
resource_bounds ResourceBounds \| None None
usage ResourceUsage field(default_factory=ResourceUsage)
api_key str ''
timeout float 30.0
retry_policy RetryPolicy field(default_factory=lambda: RetryPolicy(max_attempts=3, initial_delay=1.0, jitter=True, retryable_exceptions=(ConnectionError, TimeoutError, OSError)))
agentic_planner 'AgentOpenAIPlanner \| None' None

Methods:

infer(data: OpenAIInput) -> Result[OpenAIOutput]

OpenAIMessage(BaseModel)

Field Type Default
role str required
content str required

OpenAIUsage(BaseModel)

Field Type Default
prompt_tokens int 0
completion_tokens int 0
total_tokens int 0

OpenAIInput(BaseModel)

Field Type Default
messages list[OpenAIMessage] required
system_prompt str ''
model str 'gpt-4o-mini'
max_tokens int 1024
temperature float 0.7
api_key str ''
base_url str ''
allow_paid_api bool False
run_mode str 'beta'
reviewer_signature str ''

OpenAIOutput(BaseModel)

Field Type Default
response str required
finish_reason str 'stop'
usage OpenAIUsage Field(default_factory=OpenAIUsage)
model str ''
degraded bool False
degradation_reason str ''
agentic_evidence dict[str, Any] Field(default_factory=dict)
completion_state str 'qualified-draft'
warning_card dict[str, Any] Field(default_factory=dict)
evidence dict[str, Any] Field(default_factory=dict)

Functions

build_agent_openai_planner(default_enabled: bool = True, llm_backend: str | None = None) -> AgentOpenAIPlanner | None

Single shared factory for the agentic admission planner (ON-BY-DEFAULT).

MCP Tools

Operation Source
agent_create openai_mcp
agent_get openai_mcp
agent_update openai_mcp
agent_list openai_mcp
agent_delete openai_mcp
session_create openai_mcp
session_turn openai_mcp
session_get openai_mcp
session_list openai_mcp
session_delete openai_mcp
run_chat openai_mcp
run_handoff openai_mcp
run_structured openai_mcp
run_as_tool openai_mcp
run_guarded openai_mcp
stream_chat openai_mcp
stream_handoff openai_mcp
stream_session openai_mcp
guardrail_create openai_mcp
guardrail_update openai_mcp
guardrail_check openai_mcp
guardrail_list openai_mcp
search openai_mcp
openai_info openai_mcp
openai_status openai_mcp
ops openai_mcp
help openai_mcp
get_info openai_mcp
list_strategies openai_mcp
list_patterns openai_mcp
explain_admission_policy openai_mcp
explain_guardrail_policy openai_mcp
source_health openai_mcp
run_chat openai_mcp