surf  by e2b-dev

AI agent for virtual desktop interaction via natural language

Created 7 months ago
600 stars

Top 54.6% on SourcePulse

GitHubView on GitHub
Project Summary

Surf is an AI-powered computer use agent that allows users to interact with a virtual desktop environment through natural language. It targets developers and power users who want to automate tasks or explore AI capabilities on a simulated computer. The primary benefit is enabling complex, multi-step computer operations via simple chat commands.

How It Works

Surf leverages a Next.js frontend to provide a chat interface and a view of a virtual desktop. It integrates with E2B's cloud-based sandbox environment to create isolated Linux desktops. User instructions are processed by OpenAI's API, which translates natural language into executable actions (e.g., clicks, typing) within the sandbox. Actions and AI responses are streamed back to the user in real-time via Server-Sent Events for a dynamic experience.

Quick Start & Requirements

  • Install dependencies: npm install
  • Environment variables: Requires E2B_API_KEY and OPENAI_API_KEY in .env.local.
  • Start server: npm run dev
  • Access: http://localhost:3000
  • Prerequisites: Node.js, npm, E2B API key, OpenAI API key.
  • Documentation: E2B Documentation
  • Community: E2B Discord

Highlighted Details

  • Real-time streaming of AI actions and responses.
  • Utilizes OpenAI API for natural language understanding and action generation.
  • Provides a virtual Linux desktop environment via E2B sandboxes.
  • Includes example prompts and a chat interface for interaction.

Maintenance & Community

The project is maintained by e2b-dev. Support is available via their Discord server.

Licensing & Compatibility

  • License: Apache License 2.0.
  • Compatibility: Permissive license suitable for commercial use and integration with closed-source projects.

Limitations & Caveats

The application relies on external API keys for E2B and OpenAI, incurring costs. Sandbox instances have a limited timeout, though they can be extended.

Health Check
Last Commit

3 days ago

Responsiveness

1+ week

Pull Requests (30d)
0
Issues (30d)
1
Star History
21 stars in the last 30 days

Explore Similar Projects

Starred by Guillermo Rauch Guillermo Rauch(Founder of Vercel), Jared Palmer Jared Palmer(SVP at GitHub; Founder of Turborepo; Author of Formik, TSDX), and
18 more.

ai by vercel

1.2%
18k
AI SDK for building AI-powered applications and agents
Created 2 years ago
Updated 4 hours ago
Starred by Michael Han Michael Han(Cofounder of Unsloth), Kevin Hou Kevin Hou(Head of Product Engineering at Windsurf), and
31 more.

browser-use by browser-use

0.5%
71k
SDK for AI agent browser control
Created 11 months ago
Updated 7 hours ago
Feedback? Help us improve.