Versioned contracts
Every document is semver-versioned and immutable per version. “Which version did we build against?” finally has an answer, with a changelog on every one.
Publish an OpenAPI spec, a PRD or a runbook once. Every repo, app and AI coding agent reads the current version from one place — scoped per project, versioned with semver, and never copied again.
Free for one product. Teams from $8 per member a month. Self-hosting is free forever.
backend publishes
flutter app consumes
Why not a wiki
A wiki stores pages. Docxoft stores contracts — and knows who depends on them.
Every document is semver-versioned and immutable per version. “Which version did we build against?” finally has an answer, with a changelog on every one.
A project declares what it consumes and at what range. The graph knows the Flutter app reads the API spec — and tells you when that breaks.
OpenAPI documents are diffed structurally. Removing an endpoint implies a major bump, and a lower one is refused with the change named.
Full-text search returns the section — the operation, the heading — with a snippet and an anchor, not a 200 KB file to scroll.
Workspace → Project → Document, with roles at every level. Out of scope is indistinguishable from nonexistent. Restricted documents go further, to named readers only.
Markdown, YAML, JSON, text — exactly the bytes you wrote, rendered at read time. Agents get the source; people get a clean reader.
For coding agents
An MCP server over streamable HTTP, authenticated with a scoped service token. Point Claude Code, Codex or Gemini CLI at it and they search, read, diff and draft — with exactly the reach the token’s owner has, re-checked on every call.
publish..mcp.json in any consumer repository
{
"mcpServers": {
"docxoft": {
"type": "http",
"url": "https://docxoft.playxoft.com/mcp",
"headers": {
"Authorization": "Bearer ${DOCXOFT_TOKEN}"
}
}
}
}Open source
The same code Playxoft runs deploys to your own Cloudflare Workers, Neon Postgres and R2 bucket, with your own WorkOS environment for sign-in. No service of ours in the loop: secrets are plain bindings, billing has a no-op provider, and search is Postgres rather than a hosted cluster.
Cloudflare Workers
One deploy, global.
Neon + R2
Metadata and search in Postgres; bodies in object storage.
WorkOS AuthKit
Email, social and enterprise SSO, verified with public keys only.
Apache-2.0
Patent grant included. Fork it, run it, keep it.
FAQ
Docxoft is a private, versioned document system for product teams. You publish OpenAPI specs, product requirements, runbooks and engineering standards once, and every repository, app and coding agent reads the current version from one place, scoped to the projects it is allowed to see.
Through an MCP server over streamable HTTP and a REST API, both authenticated with a scoped service token. An agent searches for a section, reads just that section, checks what changed since the version it holds, and writes back a draft if its token allows writing.
Every document is versioned with semver. A version is immutable, carries a required changelog entry, and for an OpenAPI document the bump is inferred from a structural diff — removing an endpoint cannot be published as a patch.
No. Every read is authenticated and scoped to a workspace and project. A document outside your scope is indistinguishable from one that does not exist.
Yes. The same code Playxoft runs deploys to your own Cloudflare Workers, Neon Postgres and R2 bucket with your own WorkOS environment, with every plan limit unbounded.
Ready to stop copying specs between repos?
Create a workspace in under a minute. No card needed.