[BREAKGLASS] OpenClaw docs + translation
https://docs.openclaw.ai
| .github/workflows | ||
| .openclaw-sync | ||
| docs | ||
| scripts/docs-site | ||
| workers | ||
| .gitignore | ||
| AGENTS.md | ||
| CLAUDE.md | ||
| CLOUDFLARE.md | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| wrangler.toml | ||
openclaw-docs
Mirror repo for the published OpenClaw docs site.
Source of truth lives in openclaw/openclaw, under docs/.
How it works
- English docs are authored in
openclaw/openclaw. openclaw/openclaw/.github/workflows/docs-sync-publish.ymlmirrors the docs tree into this repo.- This repo stores the published docs tree plus generated locale output.
openclaw/docs/.github/workflows/translate-all.ymldebounces docs changes, runs locale translation in parallel, and commits one aggregate locale refresh..github/workflows/pages.ymlbuildsdist/docs-sitefrom the mirrored docs and deploys it to Cloudflare Workers Static Assets.
Translation behavior
- Locale pages under
docs/<locale>/**are generated output. - Each translated page stores
x-i18n.source_hash. - The translate workflow computes a pending file list before calling the model.
- If no English source hashes changed, the workflow skips the expensive translation step entirely.
- If files changed, only the pending files are translated.
- The workflow retries transient model-format failures.
- Locale outputs are uploaded as artifacts first, then committed together by the finalizer.
- The weekly scheduled run uses full reconciliation mode to repair missed or flaky locale updates.
Editing rules
- Do not treat this repo as the primary place for English doc edits.
- Make English doc changes in
openclaw/openclaw, then let sync copy them here. - Locale pages under
docs/<locale>/**are generated output. .openclaw-sync/source.jsonrecords whichopenclaw/openclawcommit this mirror was synced from.
Static site build
npm run docs:buildrenders the mirrored Mintlify-flavored docs intodist/docs-site.npm run docs:build:cloudflareprunes deploy-only duplicates so the Worker asset manifest stays below Cloudflare Free's 20,000-file limit.npm run docs:smokechecks representative English and locale pages plus the Pagefind search bundle.npm run docs:checkruns both steps.- The generated site includes the language picker and static full-text search via Pagefind.
- Cloudflare deploys
workers/docs-router.ts, which serves slashless page URLs and English markdown responses for.mdpaths orAccept: text/markdown. - Cloudflare hosting details and limitations are documented in
CLOUDFLARE.md.
Secrets
OPENCLAW_DOCS_SYNC_TOKENlives inopenclaw/openclawand lets the source repo push into this repo.OPENCLAW_DOCS_I18N_OPENAI_API_KEYlives in this repo and powers locale translation refreshes.CLOUDFLARE_API_TOKENlives in this repo and deploysdocumentation.openclaw.ai.