openai-agents-sdk

v2026.09.24

OpenAI Agents SDK (Python) development. Use when building AI agents, multi-agent handoffs, function tools, guardrails, sessions, streaming, or tracing with the `openai-agents` / `agents` Python package — including Azure OpenAI via LiteLLM. Triggers on imports from `agents`, uses of `Runner.run_sync`/`Runner.run_streamed`, `@function_tool`, `AgentOutputSchema`, `SQLiteSession`, or questions about the openai-agents-python SDK. Python only — not the TypeScript `@openai/agents` SDK.

GitHub
安装命令
npx skhub add laguagu/openai-agents-sdk
Markdown
SKILL.md

OpenAI Agents SDK (Python)

Use this skill when developing AI agents using OpenAI Agents SDK (openai-agents package).

Quick Reference

Installation

uv add openai-agents        # or `pip install openai-agents` outside a uv project

Environment Variables

Set both in the process environment before running the example; replace the placeholders:

export OPENAI_API_KEY="sk-..."
export OPENAI_MODEL="your-verified-model-id"

Using Azure or another provider instead? See agents.md — don't hardcode provider env vars here, they vary and go stale.

Basic Agent

import os
from agents import Agent, Runner

agent = Agent(
    name="Assistant",
    instructions="You are a helpful assistant.",
    model=os.environ["OPENAI_MODEL"],  # configure a verified model ID
)

# Synchronous
result = Runner.run_sync(agent, "Tell me a joke")
print(result.final_output)

# Asynchronous
result = await Runner.run(agent, "Tell me a joke")

Omitting model= uses the installed SDK's default. Configure it explicitly in production and verify available IDs against the provider's model catalog.

Key Patterns

PatternPurpose
Basic AgentSimple Q&A with instructions
Azure/LiteLLMAzure OpenAI integration
AgentOutputSchemaStrict JSON validation with Pydantic
Function ToolsExternal actions (@function_tool)
StreamingReal-time UI (Runner.run_streamed)
HandoffsSpecialized agents, delegation
Agents as ToolsOrchestration (agent.as_tool)
LLM as JudgeIterative improvement loop
GuardrailsInput/output validation
SessionsAutomatic conversation history
Multi-Agent PipelineMulti-step workflows
SandboxingSandboxAgent — filesystem, shell and skills inside a local/Docker sandbox (beta)
TracingBuilt-in spans for runs, tools, handoffs and guardrails; pluggable processors

The SDK has no separate Subagent class: express delegation with handoffs or agent.as_tool(). For model-written tool orchestration, use ProgrammaticToolCallingTool and verify its Responses-only constraints.

Preferred: Live Docs via MCP

Model names and API details change frequently. When available, consult the OpenAI Developer Docs MCP server (openaiDeveloperDocs) before relying on the static references below.

Setup (Codex CLI):

codex mcp add openaiDeveloperDocs --url https://developers.openai.com/mcp

Setup (Claude Code):

claude mcp add --transport http openaiDeveloperDocs https://developers.openai.com/mcp

Or in Codex ~/.codex/config.toml (VS Code and Cursor use different JSON schemas):

[mcp_servers.openaiDeveloperDocs]
url = "https://developers.openai.com/mcp"

Key tools: mcp__openaiDeveloperDocs__search_openai_docs, fetch_openai_doc, list_api_endpoints, get_openapi_spec.

Rules: Cite fetched docs. Never speculate on field names, defaults, or current model IDs — fetch first. Keep quotes under 125 chars.

Fallback when MCP is unavailable: https://developers.openai.com/api/docs/llms.txt (plain-text index of all API docs; each entry has a .md twin at /api/docs/<slug>.md).

Reference Documentation

Offline/quick-lookup snippets. Verify model names and API signatures against the MCP or docs when accuracy matters.

  • agents.md - read when choosing or wiring a model: default-model caveat, LiteLLM, native Azure client
  • tools.md - read when adding function tools, hosted tools, or agents-as-tools
  • structured-output.md - read when the output must be a Pydantic/dataclass shape (AgentOutputSchema, strict vs non-strict)
  • streaming.md - read when streaming to a UI (event types, SSE with FastAPI)
  • handoffs.md - read when one agent delegates to another (handoff vs as_tool, input filters)
  • guardrails.md - read when validating input/output or gating tool calls
  • sessions.md - read when conversation history must persist across requests (SQLite, SQLAlchemy, Redis, OpenAI Conversations)
  • patterns.md - read for multi-agent pipelines, LLM-as-judge loops, tracing controls, max_turns, parallelization
  • sandbox.md - read when the agent must edit files or run commands in an isolated workspace (SandboxAgent, beta)

Official Documentation

发现
标签

此技能尚未发布标签。

版本
最新版本元数据

版本

v2026.09.24

发布时间

2026年9月24日

分类

未分类

许可证

MIT

源路径

skills/openai-agents-sdk

默认分支

main

最新提交

024a224

Tree SHA

4eb54d7