RepoOpenAIOpenAIpublished May 31, 2025seen 6d

openai/openai-agents-js

TypeScript

Open original ↗

Captured source

source ↗
published May 31, 2025seen 6dcaptured 10hhttp 200method plain

openai/openai-agents-js

Description: A lightweight, powerful framework for multi-agent workflows and voice agents

Language: TypeScript

License: MIT

Stars: 3194

Forks: 809

Open issues: 61

Created: 2025-05-31T00:08:49Z

Pushed: 2026-06-09T03:29:22Z

Default branch: main

Fork: no

Archived: no

README:

OpenAI Agents SDK (JavaScript/TypeScript)

![npm version](https://badge.fury.io/js/@openai%2Fagents) ![CI](https://github.com/openai/openai-agents-js/actions/workflows/test.yml)

The OpenAI Agents SDK is a lightweight yet powerful framework for building multi-agent workflows in JavaScript/TypeScript. It is provider-agnostic, supporting OpenAI APIs and more.

> [!NOTE] > Looking for the Python version? Check out OpenAI Agents SDK Python.

Core concepts

1. **Agents**: LLMs configured with instructions, tools, guardrails, and handoffs 1. **Sandbox Agents**: Agents paired with a filesystem workspace and sandbox environment for longer-running work 1. [Agents as tools](https://openai.github.io/openai-agents-js/guides/tools/#4-agents-as-tools) / [Handoffs](https://openai.github.io/openai-agents-js/guides/handoffs/): Delegating to other agents for specific tasks 1. **Tools**: Various Tools let agents take actions (functions, MCP, hosted tools) 1. **Guardrails**: Configurable safety checks for input and output validation 1. **Human in the loop**: Built-in mechanisms for involving humans across agent runs 1. **Sessions**: Automatic conversation history management across agent runs 1. **Tracing**: Built-in tracking of agent runs, allowing you to view, debug and optimize your workflows 1. **Realtime Agents**: Build powerful voice agents with full features

Explore the `examples/` directory to see the SDK in action.

Get started

Supported environments

  • Node.js 22 or later
  • Deno
  • Bun

Experimental support:

  • Cloudflare Workers with nodejs_compat enabled

Check out the documentation for more detailed information.

Installation

npm install @openai/agents zod

Run your first Sandbox Agent

Sandbox Agents are in beta. A sandbox agent can inspect files, run commands, apply patches, and carry workspace state across longer tasks.

import { run } from '@openai/agents';
import { gitRepo, SandboxAgent } from '@openai/agents/sandbox';
import { UnixLocalSandboxClient } from '@openai/agents/sandbox/local';

const agent = new SandboxAgent({
name: 'Workspace Assistant',
instructions: 'Inspect the sandbox workspace before answering.',
defaultManifest: {
entries: {
repo: gitRepo({
repo: 'openai/openai-agents-js',
ref: 'main',
}),
},
},
});

const result = await run(
agent,
'Inspect repo/README.md and summarize what this project does.',
{
sandbox: {
client: new UnixLocalSandboxClient(),
},
},
);

console.log(result.finalOutput);
// This project provides a JavaScript/TypeScript SDK for building agent workflows.

(_If running this, ensure you set the OPENAI_API_KEY environment variable_)

Run an agent without a sandbox

You can still use a regular Agent when your workflow does not need a filesystem workspace or sandbox lifecycle.

import { Agent, run } from '@openai/agents';

const agent = new Agent({
name: 'Assistant',
instructions: 'You are a helpful assistant',
});

const result = await run(
agent,
'Write a haiku about recursion in programming.',
);
console.log(result.finalOutput);
// Code within the code,
// Functions calling themselves,
// Infinite loop's dance.

Explore the `examples/` directory to see the SDK in action.

Acknowledgements

We'd like to acknowledge the excellent work of the open-source community, especially:

We're committed to building the Agents SDK as an open source framework so others in the community can expand on our approach.

For more details, see the documentation or explore the `examples/` directory.

Notability

notability 8.0/10

High-star OpenAI JS SDK release