This repository contains the public product documentation at
docs.openadapt.ai: authored pages under docs/,
the mkdocs.yml navigation, and the pipeline that validates and publishes the
site. It also contains operations runbooks and a history-scrubbing CLI.
Lifecycle: Support. This repository contains current documentation and operations tooling. It isn't an end-user package. The deployed documentation has a separate, admission-derived Production status.
Source of truth: This repository's
docs/tree andmkdocs.ymlowndocs.openadapt.ai.OpenAdapt/docs,OpenAdapt/mkdocs.yml, andopenadapt-gitbookare noncanonical historical trees and must not deploy to the production docs domain. Seedocs/reference/documentation-governance.md.
OpenAdapt compiles demonstrated GUI workflows into deterministic, locally executable programs. Healthy runs make no generative-model API calls. When interfaces drift, OpenAdapt re-resolves from retained evidence or proposes a governed repair. It halts when verification fails. The local runtime is MIT licensed; managed Cloud is optional. The flagship code lives at github.com/OpenAdaptAI/OpenAdapt.
A Seal is the signed attestation of one program run. Public examples are synthetic. See The Seal.
docs/andmkdocs.yml: the curated MkDocs Material site published to docs.openadapt.ai. Curated product pages own the navigation.scripts/: the documentation pipeline. Mechanical sync steps (sync_readmes.py,aggregate_changelog.py) are deterministic and make no API calls. LLM-enhanced steps (generate_whats_new.py,build_architecture.py) are optional and degrade gracefully without an API key.validate_docs.pygates the site.tidy/: a CLI for scanning and scrubbing sensitive patterns from git history and build artifacts (GitHub Releases, Actions, PyPI, and GHCR). Seetidy/README.md.ops/: production operations and recovery runbooks. Start withops/PRODUCTION_OPERATIONS.md.repos.yml: the list of ecosystem repositories the pipeline reads from.
# Install dependencies
uv sync --extra dev
# Preview the site with live reload
uv run mkdocs serve
# Build the site in strict mode (the same gate CI uses)
uv run mkdocs build --strict
# Validate the docs contract (empty-page check plus an mkdocs build)
uv run python scripts/validate_docs.pyuv sync --extra dev
uv run pytest tests/ -q-
.github/workflows/ci.ymlruns on every pull request and on push tomain. It installs locked dependencies, runs the test suite, validates the documentation contract, and builds the site withmkdocs build --strict. -
.github/workflows/sync.ymlbuilds and deploys the site to GitHub Pages, served atdocs.openadapt.ai. It runs when:- a push to
maintouchesdocs/**,mkdocs.yml, or the workflow itself, which builds and deploys this repository's docs as-is; - a sub-repository's
notify-docs.ymlworkflow dispatches arepo-updatedevent after its public README, changelog, or release changes, so those pages re-sync here; - the weekly schedule or a manual run performs a full cross-repo rebuild.
Every path validates and builds in strict mode before deploying, so a failing gate blocks publication.
- a push to
Add an entry to repos.yml. No code changes are needed.
- Live documentation: docs.openadapt.ai
- Flagship repository: github.com/OpenAdaptAI/OpenAdapt
- Documentation governance:
docs/reference/documentation-governance.md

