# Flats

> Open-source, self-hosted platform for deploying agent-built sites, pages, documents, designs and boards from your own machine.

Flats is an open-source project from the gosuda organization that turns your own machine into a host for things built with AI agents. It ships as a single CGO-free Go binary for macOS and Linux, with a web console, CLI, HTTP API and MCP endpoint, and the README states there is no hosted Flats control plane. Latest release listed is v0.13.0.

## What It Is

Flats is a self-hosted alternative to hosted site/artifact services. You deploy a website, run a small server app, share an HTML page, collaborate on a Markdown document, lay out a design canvas, or brainstorm on a whiteboard. Code, SQLite databases, persistent files and encrypted secrets stay on the local machine. Content starts Private on local loopback, and you then choose which network providers may reach it.

## Content Types and Lifecycle

Flats supports five content types: websites, pages, documents, designs and boards.

- Websites and pages use a version model: save a Private Draft, preview it, approve saving it as a numbered version, then approve deploying that version. Deployed versions support rollback.
- Documents are live collaborative Markdown, with agent saves merged into people's edits.
- Designs are canvases of HTML artboards, with every change kept as a revision that can be pinned or rolled back.
- Boards are infinite-canvas whiteboards with sticky notes, shapes, connectors, pen strokes, images and frames.

Changing visibility in either direction requires approval for every type.

## Agent Integration

Claude Code, Codex and Cursor connect through a Flats plugin that runs `flats mcp`; other MCP clients can register the host's MCP endpoint directly. Agents begin with a read-only `check_client` call and read the server's guide, and the runtime API reference is available through MCP. Humans inspect and approve deployments in the console.

## Server Apps and Sandboxing

Server flats run JavaScript in QuickJS on WebAssembly with SQLite (`env.DB`), persistent string files (`env.FILES`), Web Crypto and WebSocket callbacks, or run WASI preview1 modules. Server code runs in separate worker processes with memory, time and storage limits, and each flat and preview gets its own origin. The README notes the console can approve deployments, so only trusted agents should run on the host.

## Private and Public Access

Private access works through Local, Tailscale or NetBird. Public sharing is a separate approved choice using Portal, Tailscale Funnel, zrok, Cloudflare quick tunnel or NetBird Expose. Providers must be enabled on the host and also allowed per flat. Install is via a shell installer, a Linux container image, or `go install`.

## Features
- Deploy static sites and sandboxed JavaScript or WASI server apps
- Single HTML pages, collaborative Markdown documents, HTML design canvases and whiteboard boards
- Draft, numbered version, approved deploy and rollback workflow
- Console approval for deployments and visibility changes
- Built-in MCP endpoint for agents
- Local SQLite, persistent files and encrypted secrets
- Private by default with optional private and public network providers
- Web console, CLI and HTTP API
- Revision history with pins and rollback for designs and boards

## Integrations
Claude Code, Codex, Cursor, MCP clients, Tailscale, NetBird, Cloudflare quick tunnel, zrok, Docker

## Platforms
WINDOWS, MACOS, LINUX, WEB, API, CLI

## Pricing
Open Source

## Version
v0.13.0

## Links
- Website: https://github.com/gosuda/flats
- Documentation: https://github.com/gosuda/flats/blob/main/docs/README.md
- Repository: https://github.com/gosuda/flats
- EveryDev.ai: https://www.everydev.ai/tools/flats
