opper-sdks
Installation
SKILL.md
Sub-skill of
opper— start there for discovery and setup guidance. Source: https://github.com/opper-ai/opper-skills/blob/main/opper-sdks/SKILL.md
Opper SDKs
The Python and TypeScript SDKs for Opper live in a single monorepo: github.com/opper-ai/opper-sdks. Both publish as opperai (PyPI / npm). Agents are part of the SDK — there is no separate opperai-agents package.
The upstream READMEs (python/README.md, typescript/README.md) and the numbered example files are the source of truth. This skill points at them; it does not duplicate them.
Pick your primitive
The unified opperai package exposes a few different shapes. Pick by what you're building:
- One-shot structured task (input → typed output): the recommended path is a compat chat endpoint with
response_format, called through the provider SDK you already know — point the OpenAI SDK'sbase_urlathttps://api.opper.ai/v3/compatand pass your Pydantic / Zod model viachat.completions.parse(...). Seeds below; full shape in theopper-apiskill. - Streaming:
stream: trueon the same compat call — standard OpenAI SSE semantics. - Multi-turn chat or message-thread style: the compat chat endpoints are message-native — carry the
messagesarray forward. - Tool-using agent, multi-step reasoning, multi-agent, MCP: the Agent SDK (
Agent,tool,Conversation,Hooks,mcp) is recommended for any "model decides what to do next" flow. Useagent.run(...)for a single shot oragent.stream(...)for live progress. - Knowledge bases / RAG:
opper.knowledge.*—create,query,add, etc. opper.call(...)/opper.stream(...)are legacy. They ride Opper's/callsurface, which is being sunset — don't start new work on them, and don't use them in examples. TheopperaiSDK itself is being reworked to no longer use/call; a future release drops it. Existing code migrates to compat +response_format; the field-by-field mapping (name→X-Opper-Nameheader,output_schema→response_format,result.data→ parsed message content) is in theopper-apiskill'sreferences/migration.md.