Technical documentation
The technical section is auto-populated from
opsclaw-product/tools/api-inventory/.
Each service has a dedicated page under Services with:
- A Swagger-UI-like endpoints table (method + path + summary + side-effects chips)
- The per-service event-flow diagram (Mermaid, server-rendered to SVG)
- The full OpenAPI 3.1 YAML for the service, downloadable
Cross-cutting diagrams
System map
mmdc render failed: Command failed: npx --no-install mmdc -i "/home/runner/_work/opstech-site/opstech-site/docs-site/.mermaid-cache/9a94ab4c2ee7ac35.mmd" -o "/home/runner/_work/opstech-site/opstech-site/docs-site/.mermaid-cache/9a94ab4c2ee7ac35.svg" -b transparent 2>&1
External-systems matrix
mmdc render failed: Command failed: npx --no-install mmdc -i "/home/runner/_work/opstech-site/opstech-site/docs-site/.mermaid-cache/05c3fbbba4540d2b.mmd" -o "/home/runner/_work/opstech-site/opstech-site/docs-site/.mermaid-cache/05c3fbbba4540d2b.svg" -b transparent 2>&1
How auto-sync works
- A PR in
opsclaw-productadds/changes a route. Theapi-driftCI gate forces the author to update the OpenAPI fragment + Mermaid diagram in the same PR. - On merge to
opsclaw-product:main, thedocs-propagate.ymlworkflow regenerates everything and opens an auto-PR here underautomation/openapi-sync-<sha>. - A human reviews the preview deploy URL
(
pr-<n>.opstech-docs.pages.dev) and merges. deploy-prod.ymlrebuilds the livedocs.opstech.dev.
Trust signals
- The list of services and operations comes from the same scanner that
runs in
opsclaw-productCI. No drift is possible: any mismatch fails theapi-driftstep. - Every operation has an
x-opstech-statusfield:verified-from-code(the scanner agrees),declared-only(forward-looking, no code yet), orlegacy-untracked(deprecated). The endpoints table surfaces this.