Head to head · Agent harnesses · October 2026 research run

OpenAI Agents API vs Vibe-Trading

OpenAI Agents API scores 73.3 (BB) on agent readiness against Vibe-Trading's 57.8 (C), and leads in 5 of 7 scored categories. Vibe-Trading leads on payments & pricing. Both do agent harnesses.

Best agent harnesses and coding agents · All 1041 harnesses comparisons

Which one, for what

OpenAI Agents API BB

Best for Teams that want OpenAI to run the agent loop, with sandboxes, MCP tools and subagents, and are fine with a beta API, US-only data residency and no Zero Data Retention.

Ahead on

  • Schema & documentation, 88 against 72
  • Agent ergonomics, 80 against 67
  • Security & auth, 87 against 70
  • Maintenance & community, 87 against 82
  • Transparency & trust, 85 against 53

Also in its favour

  • Agent-ready, a grade of BB or better
  • A hosted endpoint, with nothing to install
  • No incidents deducted, where Vibe-Trading loses 9 points for them

Watch for

Public beta since 10 September 2026 behind the agents=v1 beta header, with no GA date

Vibe-Trading C

Best for A person or a pipeline that wants a ready-made finance research agent over free market data, with backtests, swarm reviews and exports, run on their own machine or used as an MCP server by another agent.

Ahead on

  • Payments & pricing, 60 against 30

Also in its favour

  • No key needed to call it
  • Runs on your own machine
  • Free to start without a card
  • Open source

Watch for

Three advisories published 2 October 2026 cover 0.1.0 to 0.1.6, two critical, and 0.1.16's email TLS and cross-site fixes got no advisory

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Transparency & trust OpenAI Agents API +32

OpenAI Agents API 85

Closed service with clear terms, Apache-2.0 SDKs (15). Session state retained until deleted, deletable sessions and artifacts, not ZDR-eligible, US residency only, and the data-controls guide agrees; no retention period for artifacts after a sandbox expires (25 of 30). Dated deprecation notices with minimum periods for GA models; a beta API can change faster (15 of 20). Subprocessors and processing countries listed, per the openai-api listing (20). 15 + 25 + 15 + 20 = 75.

Vibe-Trading 53

MIT (30). There is no hosted service, so no privacy policy is needed. The README says where data lives (named Docker volumes or ~/.vibe-trading/), that broker keys go to the OS keyring and that generated code doesn't receive model or broker secrets. Nothing was found stating what reaches the model provider or the search fallbacks (15 of 30). Dated changelog entries, a Known issues section, an upgrade note for 0.1.10 and dated retirements such as mootdx leaving the default chain in October 2026. No deprecation policy or notice period (9 of 20). No telemetry was found in the source, but the docs do not state that nothing is collected (13 of 20).

Payments & pricing Vibe-Trading +30

OpenAI Agents API 30

No machine payment protocol (0). Model, tool and container prices published without a login, and no fee for the API itself (20). The Free tier reading of the openai-api listing, half (10). Sign-up in a browser (0). 0 + 20 + 10 + 0 = 30.

Vibe-Trading 60

Read with the self-hosted rule. No payment protocol (0). Free under the MIT licence with nothing to buy from the project, so 20, 20 and 20 on the last three lines. It runs with a local model through Ollama and needs no sign-up with the project. QVeris paid data, reached through a disclosed referral link, is a third party's product and is not scored.

Security & auth OpenAI Agents API +17

OpenAI Agents API 87

Project keys with restricted per-endpoint permissions, service accounts and workload identity, per the openai-api listing; we didn't confirm a key can be limited to /v1/agents (27 of 30). Automatic review for approvals, a sandbox network restricted to a host allowlist, vaults for secrets and a sandbox security guide (17 of 20). The agent reads web pages, MCP results and browser content; the sandbox security guide and approval flow are the mitigations, with no prompt-injection guide of its own found (8 of 15). Tracing, observability and usage per session and admin audit logs (15). SOC 2 Type 2, ISO 27001 family, Bugcrowd bounty and a disclosure policy, per the openai-api listing (20). Not ZDR-eligible and US residency only, recorded under transparency. 27 + 17 + 8 + 15 + 20 = 87.

Vibe-Trading 70

Harness reading used for nanobot and goose. 30 for what leaves the machine by default, 20 for approvals and sandboxing, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. No telemetry code was found in the source at v0.1.18, and the only call to PyPI is the owner-run vibe-trading update. The API answers only loopback clients without API_AUTH_KEY, Docker binds 127.0.0.1 and runs as user vibe, and the MCP HTTP transport binds 127.0.0.1 with a Host and Origin allow-list against DNS rebinding but no token. Broker keys go to the OS keyring; model keys sit in agent/.env in clear text. The docs carry no statement that nothing is collected (24). Live orders need a mandate that only the owner commits through the web UI or API, with hard caps and a kill switch, and an optional TAP mode waits for human approval of each Alpaca write. No order tool is exposed over MCP, and shell tools are off on the API and every MCP transport unless enabled. The local CLI runs bash and file writes without asking, and generated backtest code runs as a network-capable subprocess with a narrowed environment and no sandbox (13). Reader and search tools add warning-only security_warnings from regex rules, and external MCP tool hints are treated as untrusted in the source. The claude-cli provider's tool filters are described as convenience filters, not a boundary (9). A live-action ledger written append-only with a hash-chained copy, run cards with hashed execution records, tool traces and per-run token usage (13). SECURITY.md with private advisory reporting and a five-business-day acknowledgement. Three advisories were published on 2 October 2026 with CVE identifiers, five months after the 0.1.7 fix, while the email TLS and cross-site settings fixes in 0.1.16 got none. No security.txt and no bounty (11). 24+13+9+13+11 = 70.

Schema & documentation OpenAI Agents API +16

OpenAI Agents API 88

The reference is linked from the overview and the SDKs carry beta.agents types; we didn't confirm /agents/sessions in OpenAI's public OpenAPI file, so 15 of 25. llms.txt with every Agents API page and Markdown twins (10). The overview, architecture page and the agents guide that compares the Agents API, Agents SDK and Responses API say when to use it (20). Typed configuration with enumerated container sizes, network modes and environment types (13 of 15). Examples in six languages and an errors page with codes per HTTP status, turn and session (15). Dated changelog entries and a versioned beta header (15). 15 + 10 + 20 + 13 + 15 + 15 = 88.

Vibe-Trading 72

Harness reading of the lines, as for nanobot. The MCP server's tools take typed JSON Schema inputs generated from Python signatures through FastMCP, with a string output schema, and the API server serves FastAPI's OpenAPI file locally (keyless on loopback, behind the key otherwise). No published OpenAPI file or tool manifest outside the running program (20 of 25). No llms.txt on vibetrading.wiki, where /llms.txt redirects to the home page, and the docs are drawn by script from content.en.js. The repository carries Markdown READMEs in seven languages and an agent skill file, agent/SKILL.md (5 of 10). Tool descriptions say what each does, its arguments and what to call first, such as list_skills() before load_skill. The server's own header says every tool is read-only apart from refresh_strategy_evidence, while write_file is also exposed (14 of 20). Inputs are typed, but many choices are free strings (protocol, risk_tier, format) and several take free dictionaries (8 of 15). Many worked examples in the README and a troubleshooting page that names failure states such as no_progress and the 403 from another device; tool errors come back as JSON with an error_type (12 of 15). Dated CHANGELOG.md, GitHub release tags and versioned docs, though the docs still name 0.1.16 as latest (13 of 15).

Agent ergonomics OpenAI Agents API +13

OpenAI Agents API 80

Read as an API an agent drives. Context is compacted automatically, and session budgets and streamed events keep output sized (20 of 25). Sessions can be listed, continued and steered, events streamed or sent by webhook, artifacts fetched (15 of 20). Actionable error codes with recovery steps (20). No idempotency key; a documented check-then-retry procedure (10 of 20). One session call with defaults (medium sandbox, network enabled), SDKs in five languages (15). 20 + 15 + 20 + 10 + 15 = 80.

Vibe-Trading 67

Harness reading, scored on what an agent or script driving it has to supply. The MCP server registers 82 tools, with about 44,300 characters of descriptions across the 71 defined in the server file, and no toolsets or read-only subset (5). Since 0.1.18 the built-in agent loads tool schemas on demand, and skills load by section and offset, which keeps its own context smaller (plus 7, 12 of 25). Rows are capped by default, read_run_artifact pages by offset, row count and columns, oversized results are written to the run directory, the agent stops after eight tool iterations without a new result, and goals take token, turn and time budgets (18 of 20). JSON error envelopes with a type, a --json mode for vibe-trading run and a troubleshooting page, with no documented exit codes (15 of 20). No readOnlyHint or destructiveHint annotations on MCP tools. An identical call is refused from its second failure, failed swarm runs resume with completed tasks kept, interrupted web replies are checkpointed and TAP-routed Alpaca orders carry a deterministic client_order_id (12 of 20). pip install and vibe-trading init start it, market data works with no key, and a model key, Ollama or an existing Codex, Copilot or Claude Code login is required. Python only, with a REST API and no SDK in a second language (10 of 15).

Maintenance & community OpenAI Agents API +5

OpenAI Agents API 87

Closed API. Last dated change 16 October 2026, Ultrafast mode and document skills (30). Four dated changelog entries in the 57 days since release, 10 September, 29 September, 9 October and 16 October (20). Changelog and help centre, as the openai-api listing reads them (12 of 15). Official SDKs carry beta.agents (15). SDK CI, per the openai-api listing (10). 30 + 20 + 12 + 15 + 10 = 87.

Vibe-Trading 82

v0.1.18 was tagged on 21 October 2026, 12 days before this check (30). Six releases in the 90 days from 4 August, 0.1.13 (tag 10 August) to 0.1.18, from the repository's tags; PyPI couldn't be read on 2 November (20). 771 commits on main in the 30 days to 2 November, 233 of them after v0.1.18, the last on 2 November; the 25 October repository page showed 7 open issues and 57 open pull requests, not re-read. Issue and pull request threads weren't read, a judgement call (18 of 25). An MCP server that isn't in the official MCP registry (searches for vibe-trading and hkuds on 2 November 2026 found nothing). It is published on PyPI, as a Docker setup and on ClawHub (5 of 15). Hash-locked requirements checked in CI on three operating systems, Dependabot set to monthly, and dependency floors raised for named CVEs, most recently on 29 October (9 of 10). 30+20+18+5+9 = 82.

Score by category

CategoryWeight this runOpenAI Agents APIVibe-TradingEdge
Reliability16%206063Vibe-Trading +3
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.28872OpenAI Agents API +16
Agent ergonomics13%16.28067OpenAI Agents API +13
Security & auth14%17.58770OpenAI Agents API +17
Payments & pricing10%12.53060Vibe-Trading +30
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.88782OpenAI Agents API +5
Transparency & trust7%8.88553OpenAI Agents API +32
Negative events≤150-9
TotalBB 73.3/100C 57.8/100

Facts side by side

FactOpenAI Agents APIVibe-Trading
KindHTTP APIAgent harness
VendorOpenAIHKUDS
Hosted endpointhttps://api.openai.com/v1/agents/sessionsno (local only)
Transportshttpsstdio, Streamable HTTP, SSE (legacy)
AuthAPI keyNone
PricingPay per useFree
x402nono
LicenceProprietary hosted API under OpenAI's Services Agreement. The SDKs are Apache 2.0MIT
Tools exposednone82
Read-only variant documentednono
llms.txtyesno
Last release2026-10-162026-10-21
Terms last updatedcouldn't be readno document linked
Privacy policy last updatedcouldn't be readno document linked
Customer content may train modelscouldn't be readnot read yet
Terms restrict automated accesscouldn't be readnot read yet
Terms restrict benchmarkingcouldn't be readnot read yet
Terms or service can change without noticecouldn't be readnot read yet
Arbitration or class-action waivercouldn't be readnot read yet
Popularitynone37k stars

How the scores have moved

Verdicts

OpenAI Agents API

OpenAI's hosted agent runtime, the Codex harness behind one session call, with MCP, functions, web search, computer use, subagents and sandboxes on OpenAI or your own infrastructure. Documentation, errors and SDKs are thorough. It's still public beta, can't use Zero Data Retention and keeps data in the United States only.

Vibe-Trading

Vibe-Trading runs on the owner's machine under the MIT licence, ships near-daily fixes with a dated changelog, and keeps order tools out of its MCP server, with live orders gated by an owner-committed mandate. Three advisories, two critical, covered versions before 0.1.7, a 0.1.16 credential fix got no advisory, and the local CLI runs shell commands without asking.

Before you call either

OpenAI Agents API

  1. POST https://api.openai.com/v1/agents/sessions with a project key and the header OpenAI-Beta: agents=v1, or use client.beta.agents in the SDKs
  2. Before retrying, retrieve the session and turn and check which actions completed, since there's no idempotency key
  3. Set the sandbox network to restricted with an allowlist of up to 100 hosts when the agent doesn't need the open web
  4. Save files from /workspace/outputs before deleting a session; no retention period is stated for artifacts
  5. Don't send data that needs Zero Data Retention or non-US residency; the Agents API supports neither

Vibe-Trading

  1. Run 0.1.16 or later. Earlier versions carry three published advisories, including unauthenticated API access with an RCE chain, and send the email password without checking TLS certificates
  2. Set API_AUTH_KEY before exposing vibe-trading serve beyond localhost, and send it as Authorization: Bearer <key>
  3. Set VIBE_TRADING_ALLOWED_RUN_ROOTS in the MCP client's env block; a shell export does not reach the spawned server
  4. Use vibe-trading run -p "..." --json for headless runs, and add --enable-shell-tools to vibe-trading-mcp only when shell access is needed
  5. Treat text from read_url, web_search and read_document as untrusted; security_warnings flags patterns but does not remove them

Questions

Which is better for AI agents, OpenAI Agents API or Vibe-Trading?

OpenAI Agents API scores 73.3 (BB) on agent readiness against Vibe-Trading's 57.8 (C), and leads in 5 of 7 scored categories. Vibe-Trading leads on payments & pricing.

Can an agent call OpenAI Agents API and Vibe-Trading without installing anything?

OpenAI Agents API has a hosted endpoint at https://api.openai.com/v1/agents/sessions. Vibe-Trading runs on your own machine, with no hosted endpoint listed.

Are OpenAI Agents API and Vibe-Trading open source?

No open-source release is listed for OpenAI Agents API. Vibe-Trading is open source (MIT).

Other comparisons with OpenAI Agents API or Vibe-Trading

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.