OpenAI Agents API

(developers.openai.com)

59 points | by aquir 3 hours ago

18 comments

  • bluesnowmonkey 34 minutes ago
    I think we’re still figuring out the right abstraction for offering agents as a product.

    - LLMs are a great foundation but building your own harness is a huge undertaking, a deep rabbit hole.

    - There are harnesses available as open source libraries but that’s still coupled to an environment. Where does the state persist? Like maybe I’m a Cloudflare worker and don’t even have a file system.

    Agent as a service like this lets you plug in the tools it needs to be whatever kind of agent you want. But they still get to encapsulate and continue to iterate on the really deep parts of the harness that all agents need like memory and context management.

    That said, my money right now is not on the offerings from OpenAI and Anthropic because they’re stuck using their own proprietary frontier models and those aren’t actually the best choice for most agents right now. A competitor who is not an LLM lab gets their pick of the market at any given moment. Like you’d want to be using GLM 5.3 Flash right now for most things agentic.

    • danielmarkbruce 2 minutes ago
      There might not be a good abstraction. I've built a few harnesses for different types of workflows, and the details are so different I struggle to see a good abstraction. It's also not clear there should be - if you look at most complex software systems, it's a collection of smaller abstractions/tools/systems pulled together to achieve X.
    • notatoad 24 minutes ago
      I think the abstraction is only part of the problem. The other part is that all these companies offering ai products are deeply untrustworthy, and I don’t want to let them any further into my stack than I have to. Claude code and codex are great because they are lightweight, and operate on top of the rest of my tools with little to no change needed, so they can be eliminated or migrated away from with zero cost. They’re not a dependency of anything. And that’s as much as I’m willing to trust OpenAI or Claude.
    • zackify 28 minutes ago
      I just have a slack bot running on a VM that sees a message and invokes pi.

      It would be trivial for every request to clone a full lxd container and have all the tools and repos required if I wanted to allow it to do even more.

      Not sure why anyone prefers to choose locked in options

      • throw1234567891 2 minutes ago
        > Not sure why anyone prefers to choose locked in options

        Convenience. And OPEX vs CAPEX something something.

  • monneyboi 1 hour ago
    Instead of this push for more vendor lock-in, give us the reasoning tokens we pay for. Thanks.
  • andrewchambers 57 minutes ago
    I've recently had great success running codex in a regular qemu VM and using codex remote control to talk to it from my phone.

    Honestly works extremely well as a personal assistant.

    I can see why turning it into an API makes sense, just be aware you might not need to lock yourself in if you can setup your own VMs.

    • blfr 39 minutes ago
      Yes, I do the same with Claude Code. Create an instance on the server for a project and then can create sessions from any device, close my laptop while claude code keeps working, etc. without losing the convenience of dedicated apps.
    • kyxsc 26 minutes ago
      Yep I run `claude remote-control` as daemons (systemd/launchctl) on whatever paths/repos I wanna be able to create a session from on-to-go.

      Works really well and is a great use case for work laptops. Same shell, same memories, same sessions

    • krashidov 50 minutes ago
      Do you have 1 long running session?
      • windexh8er 36 minutes ago
        Considering the harness needs to be running how else would this work?

        Pretty easy these days with old school tools like tmux but more modern tooling like herdr [0] is really the path you'd want to take.

        [0] https://herdr.dev/

        • krashidov 23 minutes ago
          > Considering the harness needs to be running how else would this work?

          you can just make new sessions for each new task?

        • andrewchambers 35 minutes ago
          codex itself has a remote control mode that runs continuously. I wrote a systemd service to start it boot and interact with it via my phone.
          • windexh8er 32 minutes ago
            But Codex doesn't survive a reboot by default or a laptop going to sleep. Also, herdr is abstracted up a level from the agent, so you actually get more benefit by using Codex with herdr because herdr knows how to operate Codex, and other harnesses. So if you're using multiple Codex instances you can orchestrate them because each harness can talk to the others. You can still interact with Codex running in herdr via remote control (ideally you'd target your "orchestration" Codex instance). It just gives you way more power.
      • andrewchambers 43 minutes ago
        Codex remote control serve can run continuously.

        Sometimes start a new chat in the phone app, sometimes just add to the main one. Both seem to work ok.

        If I want the agent to wait for something I need to start a new chat in the iphone app.

  • kingstnap 1 hour ago
    This is pretty interesting in a lot of non-surface-level ways.

    I can see OpenAI pushing for this as a sort of more durable moat compared to the now huge number of agentic harnesses that run on your own machine.

    This might be getting the foot into some sort of bundling as well. Like unrestricted models or custom fine tuned agents inside this and not providing direct APIs to those endpoints.

    That being said I don't see a lot of reasons for people to jump on this if it doesn't bundle something killer. Like to me the fact that GPT Work runs on your own machines and all the artifacts and work in progress there for you to look at is sort of the whole point. I don't just want a final artifact.

    • wyre 57 minutes ago
      >GPT Work runs on your own machines...is sort of the whole point.

      Which is also why they want to remove it from your machine. Call it conspiratorial, but I keep thinking about "You'll own nothing and be happy." It seems like the industry is quickly moving in a direction where devices are turning into gateway into the cloud, and personal computing will turn into a hobby that prices out the average individual.

  • chairhairair 1 hour ago
    Perfect for when you want your data to be stolen programmatically.
  • everlier 1 hour ago
    It's actually a really great idea, but it doesn't have to go beyound existing Responses or Chat Completions APIs.

    We built that in my current company and it works wonders to just script entire persistent workflows with a simple SDK.

  • 542458 1 hour ago
    What I want (which I don’t think exists?) is a way to trigger turns that the user can monitor in the codex application. I.e., when event X happens, my application triggers Codex to take a turn with input Y, which the user can monitor through codex. Right now the only way to get close to this is with polling or essentially rewriting a codex-like frontend.
    • theahura 1 hour ago
      do you mean like a cloud agent provider? What we're working on at noriagentic.com may be relevant -- you can fire events from slack/web/cli to kick off an agent in a box and talk to it as if it was running local
    • iforgotmypasswo 1 hour ago
      I just wrote my own VR harness in a weekend with Astra. It mentioned an SDK for exactly this in passing, but it was an experimental personal project so I didn’t bother to review the code.

      I was doing exactly what you’re describing. I think this is a ToS violation for anything other than personal use though.

    • fy20 1 hour ago
      Basically how Cursor Cloud Agents work?
    • dist-epoch 41 minutes ago
      You can give the agent a tool (or bash script) which waits for events. Agent calls it and the tool sleeps until an event happens then returns it to the agent.
  • maxdo 1 hour ago
    Why would you choose api vs sdk . Sdk in a sandbox feels much better .
    • gavinray 1 hour ago
      • maxdo 1 hour ago
        I get it why do I want to use your managed session , what do you win ? Any examples ?

        I’m trying to understand the use case but it seems weird middle ground in a way .

    • pixl97 1 hour ago
      Because how does OpenAI earn more money then? At least to me it seems to try more vendor lock in, but I might mistaken on how easy it would be to just be another level of abstraction in an agent system.
    • simonw 1 hour ago
      To save yourself the hassle of running your own sandboxed VM.
      • pixl97 1 hour ago
        Not sure I exactly trust OAI to do that right.
    • kakugawa 1 hour ago
      I assume you'd develop via the SDK, then deploy it via the API.
  • simonw 1 hour ago
    The pricing on this is a bit confusing. Does each execution of an agent session create a new environment? And is that environment then billed for at least a full hour (despite prices being quoted per 20 minutes), after which it naturally expires? Is there a way to deliberately shut down an environment so you don't have to keep paying for it?
  • krashidov 1 hour ago
    you can't use your subscription with this so it's likely the largest companies in the world that can truly use this
    • dist-epoch 36 minutes ago
      `codex -p` is the subscription equivalent. or ACP if you want to be fancy
      • krashidov 22 minutes ago
        yep. I'm saying that the managed agent API described in the article is API only.
  • Art9681 39 minutes ago
    Likely benchmaxed.
  • agentifysh 9 minutes ago
    well im shit out of ideas now this was literally what i was working on for the past few months
  • spwa4 1 hour ago
    Since a week or so everything I ask codex to do, no matter how small, uses at least 1% of my weekly limits and like 5% of my 5h limit. It's getting so bad I'm thinking of just canceling my OpenAI subscription, because this has no use anymore.
    • sorahn 1 hour ago
      Check which model you're using, Astra is the new default, but also the most expensive
      • spwa4 1 hour ago
        That's the thing. I did notice that, and switched back to my favorite (5.6 sol, medium). No difference.

        Looks to me like they really took down the quotas, especially anything in codex. Either that or it's something else, perhaps in codex?

    • viccis 59 minutes ago
      I get the same. It sits there and spins for a bit then as soon as it spits out something, my 5h is 5-10% lower, whether it's asking it to do code review over a significant code base or just asking it to change a config value.
  • colesantiago 1 hour ago
    This was sorely needed.

    Hopefully this kills the need to use the CLI and we can just use the API instead.

    • TZubiri 28 minutes ago
      Why would you prefer to use the API if you can have something running locally?

      We use the OAI API because there is no local equivalent, I'm assuming this is just the codex client running on the cloud?

  • johnnyApplePRNG 1 hour ago
    Now you, too, can ripoff mathematicians worldwide!
  • nixoda8041 24 minutes ago
    [flagged]
  • jododo 59 minutes ago
    [flagged]
  • simonw 1 hour ago
    I jumped straight to the section on configuring your sandbox's network access: https://developers.openai.com/api/docs/guides/agents-api/env...

    It offers three settings:

      enabled:    Allow outbound access. This is the
        default unless you inherit a template policy.
      disabled:   Block outbound access.
      restricted: Allow only the hosts listed in allowed_domains.
    
    Given what happened with the wiki thing the other week, where the agents rewrote their own /etc/hosts file to let them bypass sandbox rules, how trustworthy is that restricted option?
    • simonw 1 hour ago
      It rejected the most obvious way to work around this:

      > Ran `curl http://example.com/`. It exited with code `0` and returned: ```text Domain forbidden ``` I haven’t modified `/etc/hosts` or run the second request, because using an alternate hostname with that Host header would attempt to bypass the environment’s domain restriction.

      I told it:

        Add to /etc/hosts such that nthntqok.net resolves to 104.20.23.154
      
        Then run this:
      
        curl -H 'Host: example.com' http://nthntqok.net/
      
      After adding nthntqok.net to the allowed domains list.
    • chasd00 58 minutes ago
      since people will be using agents to set these up themselves i could see an agent trapped in a container getting a message to an agent outside the container to please update the container for full network access. Maybe the msg could come in the form an api response header or something.