agentboards.org

Eko

#47 agent frameworkunverified rowv4.1.0

JavaScript framework that turns a natural-language instruction into a multi-agent workflow across computer and browser environments

Key differences

JavaScript framework that turns a natural-language instruction into a multi-agent workflow across computer and browser environments

  • Runs local. Free and open source under MIT; you supply the model API key
  • Runs local models. Listed for 60 of 118 tools in this category.
  • Runs multiple agents. Listed for 97 of 118 tools in this category.
  • Keep in mind: Not a documented local runtime, but any OpenAI-compatible server can be reached by setting a custom baseURL on the provider config.

“It can pause, resume and interrupt itself on demand, which is more self-control than most of its users manage.”

Website Docs 5.0k starsCompare vs…Dispute a fact
Appeal a claim or request ownership transfer

What it is

Eko is a production-oriented JavaScript agent framework from Fellou that plans a task into a workflow and runs it with several cooperating agents, in Node.js, in the browser, or inside a browser extension. It supports dependency-aware parallel execution, pause, resume and interrupt controls with task snapshots, human-in-the-loop intervention, and native MCP tool loading. Models are configured per agent and any OpenAI-compatible endpoint can be used through a custom baseURL.

Specification

Source verification

Row snapshot checked not yet. Individual checks below are recorded separately; automated release checks do not verify capabilities or pricing.

overview
Needs individual review
install
Needs individual review
models
Needs individual review
protocols
Needs individual review
license
Needs individual review

Architecture

Type
Agent framework
Runsunsourced
local
Platforms
macos, linux, windows, web
Context windowsrc ↗
not documented
Languages
JavaScript, TypeScript

Models

Backbonesrc ↗
Anthropic, OpenAI, Google, any OpenAI-compatible endpoint
Bring your own model
Yes
Local models
Yes
Not a documented local runtime, but any OpenAI-compatible server can be reached by setting a custom baseURL on the provider config.

Protocols

MCP clientsrc ↗
Yes
MCP server
No
OpenAPI tools
No

Capabilities

Terminal commandsunsourced
No
Multi-file edits
No
Git operations
No
Browser control
Yes
Sandboxed execution
No
Multi-agent
Yes
Headless / CI
No

Cost

Modelunsourced
byok
Starts at
$0/mo
Free tier
Yes
Bring your own key
Yes

Free and open source under MIT; you supply the model API key

Openness

Open sourcesrc ↗
Yes
License
MIT
First release
2024-11
frameworkjavascriptbrowsermulti-agentmcp

Los Agentes on Eko

Who are they?
The ruling
El JuezThe judge

El Hacker at 8 and El Crítico at 6 disagree about where this runs: he sees a portable runtime, El Crítico sees an agent sitting next to logged-in sessions.

Trial only
Reasoning and trade-offs · AI analysis

El Hacker values that the same framework runs in a server process, a page and an extension, with any compatible endpoint behind it. El Crítico reads the extension target as the risk: an automation agent placed inside the user's own browser inherits every session that browser holds.

El Crítico wins for anyone deploying this to other people, and El Hacker is overruled there, because portability is a property of the code and the danger a property of the context. La Inversora's note that this is the open half of a browser company frames the roadmap. Trial only, in a profile with no credentials worth stealing.

Agree with El Juez?
El AmigoThe friend

Pick it if the work you want automated happens in a browser and your team writes JavaScript; pick Browser Use when you would rather do the same thing in Python.

6.8
Reasoning and trade-offs · AI analysis

You will choose this on language and runtime rather than cleverness. Being able to run the same agent inside a server process, a page or an extension means the automation lives where the work lives, and that placement is the deciding daily trait, because browser tasks fail mostly on session state and being inside the session removes the hardest part of the problem.

Pick it if your stack is already TypeScript and the tasks are web-shaped. Pick Browser Use when your team is Python-first and would rather not maintain a second toolchain for this.

reliability
6
usefulness
7
cost
8
longevity
6
Agree with El Amigo?
El CríticoThe critic

Running inside a browser extension places an agent beside every logged-in session the user holds, and a plan generated by a model is a plan nobody reviewed.

6.0
Reasoning and trade-offs · AI analysis

Two risks meet in the same design. An instruction is turned into a workflow by a model, so the plan itself is generated output with no test that would catch a wrong one, and a wrong plan executes competently in the wrong direction. Placing that in an extension gives it the user's authenticated context across every site, which converts a planning error into an action taken as the user.

What it does right: pause, resume and interrupt with snapshots give a person an actual stop button, which most of this category still treats as optional.

reliability
5
usefulness
6
cost
7
longevity
6
Agree with El Crítico?
El ProfesorThe professor

Planning produces an explicit workflow, execution parallelises where the dependency graph allows, and human intervention is a documented step rather than an escape hatch.

6.3
Reasoning and trade-offs · AI analysis
  1. Separating a planning phase from an execution phase makes the intermediate artefact inspectable, which is the precondition for ever debugging one of these systems. 2. Execution respects declared dependencies and runs independent branches concurrently, so parallelism follows the graph rather than a guess. 3. Human intervention is part of the documented lifecycle, and models are configured per agent, so a cheap model can handle a cheap step.

No benchmark is published for any of it. The observation: the plan being a first-class object is worth more than the parallelism, and the documentation emphasises the parallelism.

reliability
6
usefulness
6
cost
7
longevity
6
Agree with El Profesor?
La InversoraThe investor

This is the open framework of a browser-agent company, which makes it a channel for the commercial product rather than a business with its own revenue.

5.8
Reasoning and trade-offs · AI analysis

Read the ownership and the strategy is legible. A company selling a browser agent publishes the framework that teaches developers to think in its terms, which is cheap distribution and a hiring funnel, and 4,955 stars say the channel is working. It also means the roadmap serves the commercial product, so features that help the framework but not the browser will lose that argument every time.

Likely acquirer: a browser vendor or an automation platform buying the team and the position. Position: use the library, and read its releases as signals about the parent's plans.

reliability
6
usefulness
6
cost
5
longevity
6
Agree with La Inversora?
La JefaThe CTO

Free as a dependency across sixty engineers, TypeScript only, and nothing here runs unattended in a pipeline, so it lives inside an application we build and support.

6.0
Reasoning and trade-offs · AI analysis

One sentence on the demo: it filled in a form and paused when asked. Commercially this is a dependency rather than a purchase, so the invoice is inference on a contract we hold and the rollout is a package manifest. The catch is that everything a security review would ask about, identity, retention, logging, becomes ours to build, because a library ships none of it. There is no unattended runner, so it cannot serve as scheduled automation on its own.

Onboarding is two days for a front-end engineer. Approved with conditions: one wrapped service, no extension deployment to staff machines.

reliability
5
usefulness
5
cost
8
longevity
6
Agree with La Jefa?
El HackerThe tinkerer

MIT, one package install, native tool-server loading, and a custom base URL on the provider config so my own endpoint is just another model.

8.0
Reasoning and trade-offs · AI analysis

The escape hatch is where it should be. Providers take a custom base URL, so the server on my own machine is configured exactly like a hosted one and no code changes to switch, and tool servers load natively rather than through a community shim somebody abandoned. Permissive licence, one package command, no account anywhere.

Models are set per agent, which means the expensive one plans and the cheap one grinds, and I decide which is which. It runs in a server process or a page, so I can embed it in things its authors never imagined. That is a library behaving like a library.

reliability
8
usefulness
8
cost
9
longevity
7
Agree with El Hacker?