# Oxynote

> Open-source, self-hosted workspace for engineering docs that embeds live Prometheus and SQL metric charts in collaboratively edited, reviewable pages.

Oxynote is an open-source, self-hosted workspace for engineering documentation from the Oxynote team (@swithek, @davseby). It combines text, diagrams and live metric charts in one editor, with a draft, diff and approval flow for page changes. It runs as a single Docker container and is licensed under Apache-2.0. The latest release listed is v0.9.3.

## What It Is

Oxynote is a wiki-style workspace for the systems you run. Architecture notes, API references, on-call steps and release checklists live in one page tree, and several people can edit a page at the same time. Pages can query Prometheus, PostgreSQL, MySQL or MariaDB, so live metrics sit next to the text that explains them.

## Charts, Variables and Blocks

A Live Metrics block draws a time series, bar chart or gauge from PromQL or SQL queries, and the editor redraws it as you type, with thresholds and units alongside. Grafana macros such as $__rate_interval and $__timeFilter are supported. SQL sources need a read-only database user. Workspace-wide variables, such as the built-in $metric_range, can be read by any query, and each user's chosen values apply only to them. The slash menu inserts headings, lists, checklists, code, callouts, images, files, Figma embeds, Mermaid diagrams, Stripe-style API docs and live metrics. Search with Cmd+K reaches down to single lines in code blocks and diagram sources.

## Review and Collaboration

When a page is made reviewable, its main branch stops accepting direct edits and changes go into a draft branch. The diff works on blocks, so a renamed API parameter or a moved chart threshold shows in red and green. Reviewers approve on the page, and merging is a separate step. Collaborators appear as named cursors, and comments attach to a word or a block and arrive in an inbox.

## Agents and MCP

MCP clients such as Claude Code and Codex connect once approved, reading pages as structured blocks and changing only the blocks they need. On reviewable pages, agent edits wait in a draft for a person to approve. The built-in assistant, Rubber Duck, can run on Anthropic, OpenAI, Google or OpenRouter models, or a local model through Ollama. It is off until configured, and the rest of the product works without it.

## Current Status

The project documents logs, traces, alerting, uptime monitors, AI evals, a database viewer and admin actions as in development. A cloud version is listed as coming soon; today it is self-hosted.

## Features
- Live metric charts from PromQL and SQL queries
- Grafana macro support
- Workspace-wide per-user variables
- Slash-command block editor with Mermaid diagrams and Stripe-style API docs
- Workspace search down to code lines and diagram sources
- Draft, diff and approval review flow for pages
- Real-time collaboration with named cursors and comments
- MCP server for AI agents
- Built-in Rubber Duck assistant with selectable models
- Freshness hook that reminds maintainers when linked sources change
- Single-container self-hosting

## Integrations
Prometheus, PostgreSQL, MySQL, MariaDB, Supabase, Grafana macros, Mermaid, Figma, MCP, Claude Code, Codex, Anthropic, OpenAI, Google, OpenRouter, Ollama, Docker

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

## Pricing
Open Source

## Version
v0.9.3

## Links
- Website: https://oxynote.io/
- Documentation: https://github.com/oxynote/oxynote/blob/main/docker/prod/README.md
- Repository: https://github.com/oxynote/oxynote
- EveryDev.ai: https://www.everydev.ai/tools/oxynote
