Codiatech Blog

Kitesurf is open source: how to assess it for business automation

Kitesurf offers another option for browser agents. We examine a controlled pilot through compatibility tests, action permissions, access protection and operating-cost limits.

Representative overhead photo of browser form test stages across several devices

For a company building browser automation, an open-source engine is a new option to assess, not a reason to migrate every workflow. Cloudflare announced the release of Kitesurf's source code on November 12, 2026. The development is relevant to AI agents that retrieve information from websites or prepare actions. The practical question is whether an engine completes a business task accurately and under control, rather than whether it can open a demonstration page.

What Kitesurf is, and what it is not

The official repository describes an experimental Workers-based browser engine with a CDP endpoint, rather than a complete Chrome implementation. The project uses Apache 2.0; dependencies retain separate licences. The Browser Run documentation describes limitations around pixel-perfect rendering and persistent authenticated sessions.

Our assessment is that connecting an existing automation client does not establish equivalent business behaviour. Start with an acceptance scenario instead of treating protocol compatibility as sufficient. Reading a report and sending a customer an email have different consequences. These are hypothetical examples, not claims that any Codiatech customer currently uses Kitesurf.

Test compatibility against the required outcome

We recommend choosing a bounded task in a test environment without real customer data. Record the input, expected output and completion condition before running it. If the task extracts rows from a management screen, check row counts, date formats, Turkish characters and empty results together. A screenshot existing does not establish that its fields were extracted correctly.

Run the same scenario in the established browser environment and the candidate engine, then record differences. When a field is missing, a redirect changes the page or loading takes longer than expected, the agent should stop with an explicit failure rather than invent a value. The result applies to the application and version tested; one successful scenario does not establish support for every enterprise website.

Separate page access from permission to act

Representative photo of a human confirmation control and browser dialog illustrating approval before automation acts

Reading a page as a user and changing records are different permissions. Give a pilot account only the access its task needs. An instruction found inside a page should not replace the organisation's operating policy: retrieved content has no authority to decide which customer receives a message or which record may be removed.

Design reading, preparation and final execution as separate stages. An agent might prepare a response, while an authorised person reviews the exact recipient, text and attachments before sending. If the content changes after approval, bind a fresh approval to the new revision. This is our automation design advice, not a claim about a built-in Kitesurf approval feature.

Protect an engine before exposing it

The repository warns that the engine has no authentication of its own and requires an access layer in front of a deployment. An obscure test URL therefore should not be treated as a private environment.

Our recommendation is to restrict access before a pilot begins and document its test identity, permitted destinations and session duration. Include failed authentication, expired sessions and unexpected destination addresses in the test plan. Logs should identify the task and failure reason without recording passwords, session cookies or customer documents. Decide how connections and temporary outputs are closed when the task ends.

Distinguish open source from operating cost

According to the repository, running your Kitesurf deployment on Cloudflare requires Dynamic Workers and a Workers Paid plan. The beta terms described for Browser Run are not proof that deploying your own engine costs nothing.

A pilot budget should include more than successful tasks. Track retries, timeouts, failed page loads and retained output. Set execution-time and concurrent-task limits in advance. Record who intervenes when usage rises unexpectedly, which condition stops the pilot and how the established workflow is restored. A claim of savings needs measurements from the actual workload.

Define a useful pilot and a clear exit

A narrow, predominantly read-only task with measurable success is a more practical starting point than an open-ended agent with broad account access. Build evidence before introducing actions that are difficult to undo. The decision record should name the tested version, excluded workflows, unacceptable differences and rollback path.

It should also distinguish a product limitation from an application error. Keep the input and expected outcome when investigating a failure; do not repeatedly retry a consequential action simply because the screen did not visibly change. A successful retry could otherwise repeat an operation that already completed. Where the outcome is uncertain, pause and reconcile it with the system of record.

At Codiatech, AI-powered systems and business automation are assessed around the workflow as well as the tool. Custom software development and cloud management require integration, access and operating responsibilities to be defined for the project. We can help specify a verifiable acceptance scenario before a browser-based task is automated.

Sources

Primary source: developers.cloudflare.com