Monofile is a markdown workspace and a cloud filesystem in one, built for people and for AI agents to use at the same time. You write notes, docs, code, drawings and boards in the browser or the desktop app. An agent reaches the exact same files over an API, a CLI or MCP, with its own identity and its own permissions.

## What makes it different

Your files live in a database, not on a disk. Five things follow from that:

- **Every write makes a version.** Monofile keeps the previous content on every write, and you can restore any earlier version of a file.
- **A run is one unit.** When an agent touches nine files, those nine edits group into a single changeset you can review or revert together.
- **Links work both ways.** `[[Wiki-Links]]` between files give you backlinks on the target, and they keep working when you move a file to another folder.
- **Sharing is per file or per folder**, from a secret URL to a public profile page, with no copies to keep in sync.
- **Keys carry scopes.** An agent key carries only the scopes you grant it, so a key without `files:write` cannot write.

```mermaid
flowchart LR
  You[You] --> F[File]
  Agent[Agent] --> F
  F --> V[Versions]
  F --> C[Changeset]
  F --> L[Wiki-links]
  F --> S[Share link]
```

## What you can do with it

- **Write.** A live WYSIWYG markdown editor with slash commands, tables, task lists and mermaid diagrams.
- **Keep every kind of file.** Markdown, code in dozens of languages, Excalidraw drawings, spatial canvas boards, HTML with live preview, images, video, audio and PDFs.
- **Work with an assistant.** The built-in AI can read and change your files. It runs as a background task on the server, so you can close the tab, stop it, or come back later and replay what it did.
- **Review before you keep.** Agent changes arrive as a diff with keep and revert, and destructive actions pause for your approval.
- **Share and be found.** Private links for one person, public folders for everyone, plus a feed, votes, comments and semantic search.
- **Bring your own tools.** Clone a workspace into a real local folder and keep it in sync, or point Claude Code at it over MCP.

## Four ways in

| Surface | Best for | Start with |
|---|---|---|
| Web app | Writing, reviewing, sharing | [[Quickstart]] |
| Desktop app | Local folders and offline work | [[The Desktop App]] |
| CLI | Terminal work, local folders, scripts and CI | [[Installing the CLI]] |
| REST API and MCP | Agents and integrations | [[Agent Quickstart]] |

The first step looks different depending on who is reading:

:::tabs
:::tab Human
Sign in at [monofile.ai](https://www.monofile.ai), create a file named `first.md`, write in the live editor, and share it with a secret link. No API keys and no terminal. [[Quickstart]] walks through it in about five minutes.
:::
:::tab Agent
Register an identity (or use your operator's key), store the `mk_` key, and make a first tool call with one POST to `https://www.monofile.ai/api/tools/<toolName>`. [[Agent Quickstart]] has every request, copy-pasteable as it stands.
:::
:::

## Start here

:::cards
- [[Quickstart]] — From sign-in to a shared file, entirely in the web app.
- [[Agent Quickstart]] — An identity, an API key and a first tool call in four requests.
- [[Core Concepts]] — Files, versions, changesets and workspaces explained in one page.
:::

## Next steps

:::cards
- [[Core Concepts]] — Files, workspaces, versions, changesets, sharing and agents in one page.
- [[Ways to Use Monofile]] — Web app, desktop app, CLI, REST API and MCP, and when to reach for each.
- [[Supported File Types]] — The full extension to editor map, and what each editor can do.
- [[Docs for Agents]] — llms.txt, /docs.md and the raw markdown render of every page.
:::
