AgentSea.Surf (agentsea_surf v0.1.0)

Copy Markdown

Browser automation / computer use via a Node sidecar (AgentSea.Surf.Sidecar), plus an adapter that exposes browsing as agent tools.

Example

{:ok, surf} = AgentSea.Surf.start_link()   # spawns the priv Playwright server
{:ok, _} = AgentSea.Surf.navigate(surf, "https://example.com")
{:ok, text} = AgentSea.Surf.text(surf)

# or expose it to an agent:
tools = AgentSea.Surf.tool_specs(surf)

Summary

Functions

Path to the bundled Playwright-backed Node server.

Start a sidecar. Defaults to running the bundled Playwright server with node (requires playwright installed on the Node side); pass :command to run a different script or executable.

Build AgentSea.Tool.Spec browser tools bound to a running sidecar.

Functions

click(server, selector)

default_server()

Path to the bundled Playwright-backed Node server.

eval(server, script)

screenshot(server)

start_link(opts \\ [])

Start a sidecar. Defaults to running the bundled Playwright server with node (requires playwright installed on the Node side); pass :command to run a different script or executable.

text(server)

tool_specs(server)

@spec tool_specs(GenServer.server()) :: [AgentSea.Tool.Spec.t()]

Build AgentSea.Tool.Spec browser tools bound to a running sidecar.