Eko (pronounced like ‘echo’) is a production-ready JavaScript framework that enables developers to create reliable agents, from simple commands to complex workflows. It provides a unified interface for running agents in both computer and browser environments.
Feature | Eko | Langchain | Browser-use | Dify.ai | Coze |
---|---|---|---|---|---|
Supported Platform | All platform | Server side | Browser | Web | Web |
One sentence to multi-step workflow | ✅ | ❌ | ✅ | ❌ | ❌ |
Intervenability | ✅ | ✅ | ❌ | ❌ | ❌ |
Development Efficiency | High | Low | Middle | Middle | Low |
Task Complexity | High | High | Low | Middle | Middle |
Open-source | ✅ | ✅ | ✅ | ✅ | ❌ |
Access to private web resources | ✅ | ❌ | ❌ | ❌ | ❌ |
- Pure JavaScript: Built for browsers and Node.js.🚀
- Multi-Agent: Unleash power with multiple Agents in one task.📈
- Agent/Tool Flexibility: Customize new Agents and Tools in just one line.🎉
- Native MCP: Connects seamlessly with Awesome MCP Servers.🔗
- Dynamic LLM: Balance speed and performance with flexible model choices.⚙️
- Human-in-the-loop: Intervene when it matters most.🤝
- Stream Planning: Dynamic rendering made easy.🎨
- Loop & Listener Tasks: Automate any repetitive task.🤖
- Observable Chain: Coming soon
- Native A2A: Coming soon
Note: Please refer to the Eko Quickstart guide guide for full instructions on how to run it.
Security Warning
DO NOT use API Keys in browser/frontend code!
This will expose your credentials and may lead to unauthorized usage.
Best Practices: Configure backend API proxy request through baseURL and request headers.
Please refer to the link: https://eko.fellou.ai/docs/getting-started/configuration#web-environment
// quickstart.ts
const llms: LLMs = {
default: {
provider: "anthropic",
model: "claude-3-5-sonnet-20241022",
apiKey: claudeApiKey || "your-api-key",
config: { baseURL: claudeBaseURL },
},
openai: {
provider: "openai",
model: "gpt-4o-mini",
apiKey: openaiApiKey || "your-api-key",
config: { baseURL: openaiBaseURL },
},
};
let agents: Agent[] = [new ChatAgent(), new BrowserAgent()];
let eko = new Eko({ llms, agents });
let result = await eko.run("Search for the latest news about Musk");
$ pnpm install @eko-ai/eko
$ npx ts-node quickstart.ts
- Browser automation and web scraping
- System file and process management
- Workflow automation
- Data processing and organization
- GUI automation
- Multi-step task orchestration
Visit our documentation site for:
- Getting started guide
- API reference
- Usage examples
- Best practices
- Configuration options
Eko can be used in multiple environments:
- Browser Extension
- Web Applications
- Node.js Applications
- Report issues on GitHub Issues
- Join our slack community discussions
- Join our Discard:
- Contribute tools and improvements
- Share your use cases and feedback
Eko is released under the MIT License. See the LICENSE file for details.