AI/TLDR

Eko

JavaScript agent framework that turns one sentence into a multi-step workflow, in Node.js or the browser

Agent Frameworks & BuildersOpen source
Language
TypeScript
License
MIT
$pnpm install @eko-ai/eko

Overview

Eko (pronounced like 'echo') is a JavaScript framework for building agents that go from a single natural-language instruction to a multi-step workflow. Its distinguishing choice is the runtime target: rather than being a server-side Python library, Eko is pure JavaScript designed to run in both computer and browser environments — Node.js, a web page, or a Chrome extension — behind one unified interface.

A task is described in a sentence and planned into a workflow the framework executes, with agents composed from built-in pieces such as `BrowserAgent` and `FileAgent` or custom ones you define. Version 3.0 added dependency-aware parallel agent execution so independent branches run at the same time, plus pause, resume and interrupt controls with `task_snapshot` recovery; version 4.0 added chat conversations and reworked the agent logic.

Models are configured per-task as a map, so a workflow can mix providers — Anthropic, Google and any OpenAI-compatible endpoint including Qwen via DashScope or Doubao via Volcengine — and pick different models for different steps. MCP servers connect natively for tools, and human-in-the-loop hooks let a person intervene at the points that matter. The project warns explicitly against putting API keys in browser or front-end code: configure a backend proxy via `baseURL` and request headers instead.

What it does

  • Pure JavaScript, built for both Node.js and browsers — including Chrome-extension deployment
  • One sentence to a multi-step workflow, with stream planning for dynamic rendering as the plan forms
  • Dependency-aware parallel execution of independent agent branches (Eko 3.0)
  • Pause, resume and interrupt controls with `task_snapshot` workflow recovery
  • Multi-agent composition with built-in `BrowserAgent` and `FileAgent`, plus custom agents and tools in a line of code
  • Dynamic LLM selection: a per-task map of providers, so different steps can use different models
  • Native MCP support for connecting external tool servers
  • Human-in-the-loop hooks to intervene mid-workflow

Getting started

Eko installs as a set of npm packages and is driven from TypeScript. The repository ships three workspace examples under `example/` — a browser extension, a Node.js automation demo and a web login demo.

Install the package

Add the core package to your project. The framework is published as `@eko-ai/eko`, with environment packages `@eko-ai/eko-nodejs`, `@eko-ai/eko-web` and `@eko-ai/eko-extension`.

bashbash
pnpm install @eko-ai/eko

Configure models and run a task

Define an `llms` map, pick your agents, and hand Eko a sentence. OpenAI-compatible providers such as Qwen or Doubao are configured through `provider: "openai"` plus a `baseURL`.

tsts
const llms: LLMs = {
  default: {
    provider: "anthropic",
    model: "claude-sonnet-4-5-20250929",
    apiKey: "your-api-key"
  },
  qwen: {
    provider: "openai",
    model: "qwen-plus",
    apiKey: "your-qwen-api-key",
    config: {
      baseURL: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1"
    }
  }
};

let agents: Agent[] = [new BrowserAgent(), new FileAgent()];
let eko = new Eko({ llms, agents });
let result = await eko.run("Search for the latest news about Musk, summarize and save to the desktop as Musk.md");

Keep API keys out of the browser

The project flags this as a security warning: never put API keys in browser or front-end code, since it exposes your credentials. In web environments, route requests through a backend API proxy configured via `baseURL` and request headers.

Run the Node.js example

From the repository root, install and build the core packages first, then run the Playwright-driven automation demo with at least one model key set.

bashbash
pnpm install
pnpm build

cd example/nodejs
pnpm install
pnpm playwright install   # first time only, installs browsers
pnpm run build
OPENAI_API_KEY=... ANTHROPIC_API_KEY=... pnpm run start

Or load it as a browser extension

Build the extension example, then load the generated `dist` directory through Chrome's developer mode. Configure your API key in the extension options before running a task.

bashbash
cd example/extension
pnpm install
pnpm run build
# chrome://extensions → Developer Mode → Load unpacked → select dist/

Commands and code are distilled from the project's own documentation — always check the official repo for the latest.

When to use it

  • Browser automation and web scraping driven by a natural-language instruction rather than a hand-written script
  • Shipping an agent inside a Chrome extension, where a Python framework cannot run
  • Workflows whose independent steps should run in parallel, with the framework resolving the dependency graph
  • Long-running automation that a person needs to pause, inspect and resume rather than watch run to completion

How Eko compares

Eko alongside other open-source agent frameworks & builders tools AI/TLDR tracks, ranked by GitHub stars.

ToolStarsWhat it does
DeepSeek Harness★ 229kDeepSeek AI's open-source agent harness (dsh), built on Cordis, where models, tools, skills, sessions, sandboxes, storage and the UI are all plugins composed through profiles.
AutoGPT★ 187kOne of the earliest autonomous agent projects, now a platform for building and running agents from reusable blocks and workflows.
DeerFlow★ 82.6kByteDance's open-source super agent harness built on LangGraph: skills, sub-agents, sandboxes, a filesystem and long-term memory for long-horizon research, coding and content tasks.
nanobot★ 48.3kLightweight self-hosted personal AI agent framework in Python, with a WebUI, terminal and chat-app channels, tools, long-term memory, MCP and scheduled automations.
Agno★ 42.2kA fast Python framework (formerly Phidata) for building agents with memory, tools, and multimodal inputs, plus a runtime for deploying them in production.
LangGraph★ 41.9kA library from the LangChain team for building stateful, graph-based agent workflows with explicit control over steps, memory, and human-in-the-loop checkpoints.
AgentGPT★ 36.3kAgentGPT lets you name a custom AI, give it a goal, and watch it plan tasks, run them, and learn from the results, all from a web browser.
Eko★ 5kJavaScript agent framework that turns one sentence into a multi-step workflow, in Node.js or the browser