ARTICLEblog.cloudflare.com12 min read

Introducing Artifacts: A Git-Compatible Versioned File System for Agents

By Dillon MulroyMatt CareyMatt Silverlock

Introducing Artifacts: A Git-Compatible Versioned File System for Agents

AI Summary

In the rapidly evolving landscape of software development, agents are transforming how we handle source control and file systems. As developers and agents generate unprecedented volumes of code, traditional source control systems struggle to keep pace. To address this, I introduce Artifacts, a distributed, versioned filesystem designed specifically for agents. Artifacts integrates seamlessly with Git, allowing developers to create repositories programmatically and connect with any Git client.

Artifacts empowers developers to assign repositories to every agent session or sandbox instance, and even create thousands of forks from a stable starting point. It offers a REST API and native Workers API, facilitating repository creation and management in environments where traditional Git clients aren't suitable. Currently in private beta for paid Workers plan users, Artifacts is set to enter public beta soon.

The choice of Git as the underlying protocol is strategic. Agents are well-versed in Git, and its data model is ideal for tracking state and managing small data chunks. By providing agents with authenticated Git remote URLs, we simplify their operations. For non-Git clients, Artifacts offers a REST API and upcoming language-specific SDKs.

Artifacts isn't limited to source control. Its Git API and data model allow for state persistence, enabling functionalities like forking, time-traveling, and diffing across various data types. Internally, Cloudflare uses Artifacts to persist sandbox states and session histories, facilitating seamless collaboration and debugging.

Built on Durable Objects, Artifacts can support millions of Git repositories per namespace. This scalability is achieved through a custom Git implementation in Zig, compiled to WebAssembly. This setup ensures efficient memory usage and performance, crucial for handling large-scale operations.

To address challenges with large repositories, we introduce ArtifactFS, a filesystem driver that mounts large Git repos quickly by hydrating file contents on-demand. This approach significantly reduces startup times for agents and sandboxes, saving substantial compute resources.

As Artifacts progresses through beta, we're enhancing features like metrics exposure, event subscriptions, and native SDKs. Our pricing model aims to be cost-effective at agent scale, charging based on storage and operations. Artifacts will soon be available on the Workers Free plan, with updates provided throughout the beta.

For those interested in exploring Artifacts, we offer comprehensive documentation, API examples, and a changelog to track beta developments. Join us in this journey to redefine source control for the agent-driven future.

Key Concepts

Versioned File System

A versioned file system is a storage system that maintains a history of changes to files, allowing users to track, revert, and manage different versions over time.

Agent-Driven Development

Agent-driven development involves using automated agents to assist in the software development process, increasing productivity by handling repetitive tasks and managing large volumes of code.

Category

Technology
M

Summarized by Mente

Save any article, video, or tweet. AI summarizes it, finds connections, and creates your to-do list.

Start free, no credit card