Skip to content

Add OpenClaw integration docs#31

Merged
ShawnPana merged 9 commits intomainfrom
docs/openclaw-integration
Mar 18, 2026
Merged

Add OpenClaw integration docs#31
ShawnPana merged 9 commits intomainfrom
docs/openclaw-integration

Conversation

@ShawnPana
Copy link
Contributor

@ShawnPana ShawnPana commented Mar 14, 2026

Summary

  • Add OpenClaw integration page (cloud/tutorials/integrations/openclaw.mdx) covering two setup paths: cloud browser via CDP and Browser Use CLI as a skill
  • Move Integrations group from Resources > Tips to Tutorials section in sidebar nav
  • Rename integration page titles: "Direct Browser (Playwright)" → "Playwright", "n8n Integration" → "n8n"
  • Reorder integrations: OpenClaw, n8n, Playwright
  • Quote browser-use key in JSON5 config example (hyphens are invalid in unquoted JSON5 identifiers)

Test plan

  • Run mintlify dev and verify OpenClaw page renders at /cloud/tutorials/integrations/openclaw
  • Verify Integrations group appears under Tutorials in sidebar
  • Verify n8n and Playwright pages render at new paths
  • Confirm JSON5 config block is copy-paste valid

🤖 Generated with Claude Code


Summary by cubic

Adds OpenClaw integration docs and moves Integrations to a top-level Cloud nav. Also updates redirects, hardens webhook examples with timestamp validation, and refreshes LLM docs and examples.

  • New Features

    • New OpenClaw page at /cloud/tutorials/integrations/openclaw covering CDP and CLI skill setup.
  • Refactors

    • Nav and redirects: added top‑level “Integrations” (OpenClaw, n8n, Playwright), retitled pages, and redirected legacy /tips/integrations/* and /cloud/tips/integrations/* to /cloud/tutorials/integrations/*.
    • Webhooks: documented X-Browser-Use-Signature and X-Browser-Use-Timestamp; verify HMAC over {timestamp}.{sorted-json}; switched payload keys to task_id/session_id; added timestamp parsing validation in Python/Node examples.
    • Examples and docs: n8n now polls GET /api/v2/tasks/{task_id}/status until finished or stopped; Playwright example uses asyncio.run with try/finally; quoted "browser-use" in JSON5; updated llms.txt/llms-full.txt with new Integrations links and $10 free credit notes; fixed escaped $ in open‑source llms-full.txt.

Written for commit 1b81cc1. Summary will update on new commits.

ShawnPana and others added 2 commits March 13, 2026 22:46
- Add OpenClaw integration page (CDP + CLI skill setup)
- Move Integrations from Tips to Tutorials section
- Rename titles: "Direct Browser (Playwright)" → "Playwright", "n8n Integration" → "n8n"
- Reorder: OpenClaw, n8n, Playwright

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Hyphens are invalid in unquoted JSON5 identifiers.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

4 issues found across 4 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="docs/cloud/tutorials/integrations/openclaw.mdx">

<violation number="1" location="docs/cloud/tutorials/integrations/openclaw.mdx:35">
P2: The sample CDP URL includes an unresolved `<PROFILE_ID>` placeholder without telling readers to replace or remove it, so the copy-paste config is incorrect.</violation>
</file>

<file name="docs/cloud/tutorials/integrations/n8n.mdx">

<violation number="1" location="docs/cloud/tutorials/integrations/n8n.mdx:8">
P2: The polling instructions use the wrong endpoint and omit `stopped` as a terminal status.</violation>
</file>

<file name="docs/cloud/tutorials/integrations/playwright.mdx">

<violation number="1" location="docs/cloud/tutorials/integrations/playwright.mdx:14">
P2: Wrap this Python example in an async entrypoint; the current top-level `await`/`async with` syntax is not runnable as shown.</violation>
</file>

<file name="docs/docs.json">

<violation number="1" location="docs/docs.json:90">
P2: Add redirects from the old integration URLs to the new `/cloud/tutorials/integrations/*` routes; the current config still points legacy links at the removed `/cloud/tips/integrations/*` pages.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

ShawnPana and others added 2 commits March 17, 2026 10:56
- Move Integrations out of Tutorials into its own nav group
- Delete old duplicate files at cloud/tips/integrations/
- Add redirects from old paths to new /cloud/tutorials/integrations/ paths
- Regenerate llms.txt, update llms-full.txt with correct URLs and OpenClaw content

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

3 issues found across 6 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="docs/open-source/llms.txt">

<violation number="1" location="docs/open-source/llms.txt:4">
P2: Restore disambiguating labels or section headings here; the flat list now contains multiple unrelated `All Parameters`/`Basics` entries, so index consumers can easily choose the wrong page.</violation>
</file>

<file name="docs/cloud/llms-full.txt">

<violation number="1" location="docs/cloud/llms-full.txt:3028">
P2: Remove the `profileId=<PROFILE_ID>` placeholder from the default `cdpUrl` example, or explicitly tell readers to replace it too. Right now the sample contradicts the instructions and won't work if copied as shown.</violation>

<violation number="2" location="docs/cloud/llms-full.txt:3091">
P3: Update the `llms-full.txt` section headers to match the renamed page titles. The file still exposes the old names `Direct Browser (Playwright)` and `n8n Integration` even though the source pages are now `Playwright` and `n8n`.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

…t headings

- Remove unused <PROFILE_ID> placeholder from OpenClaw CDP URL example
- Fix n8n polling endpoint to /tasks/{task_id}/status, add stopped as terminal status
- Wrap Playwright Python example in async def main() + asyncio.run()
- Update generate-llms-txt.sh to emit section headings, disambiguating duplicate names
- Fix llms-full.txt headers to match renamed page titles (Playwright, n8n)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

5 issues found across 7 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="docs/cloud/tutorials/integrations/playwright.mdx">

<violation number="1" location="docs/cloud/tutorials/integrations/playwright.mdx:20">
P2: Wrap the browser session in `try/finally` so `client.browsers.stop()` still runs when any Playwright step fails.</violation>
</file>

<file name="docs/generate-llms-txt.sh">

<violation number="1" location="docs/generate-llms-txt.sh:60">
P2: This grouping check assumes files from the same parent directory stay contiguous, but `find ... | sort` interleaves parent and nested paths. The generated `llms.txt` will end up with duplicate section headings and root-level pages listed under the previous nested heading.</violation>
</file>

<file name="docs/open-source/llms.txt">

<violation number="1" location="docs/open-source/llms.txt:28">
P3: This heading now misclassifies the top-level `Development` page as a tools doc.</violation>

<violation number="2" location="docs/open-source/llms.txt:59">
P3: This heading also pulls the introduction page into `Examples > Templates`, which makes the index hierarchy inaccurate.</violation>

<violation number="3" location="docs/open-source/llms.txt:81">
P2: This heading now mislabels `Human Quickstart` and `Supported Models` as legacy sandbox docs.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

- Sort by parent directory first in generate-llms-txt.sh so files in the
  same directory are always contiguous (no more misclassified pages)
- Wrap Playwright example in try/finally so browsers.stop() always runs
- Update llms-full.txt to match

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

7 issues found across 5 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="docs/open-source/llms-full.txt">

<violation number="1" location="docs/open-source/llms-full.txt:205">
P3: Remove the escaped dollar signs here; `llms-full.txt` is published as raw text, so `\$10` and `\$1` will show up literally.</violation>
</file>

<file name="docs/cloud/llms.txt">

<violation number="1">
P2: This Integrations block still indexes the old `/tips` URLs and omits the new OpenClaw tutorial, so `llms.txt` no longer matches the new tutorial layout.</violation>
</file>

<file name="docs/generate-llms-txt.sh">

<violation number="1">
P2: This change drops the directory-based headings from generated `llms.txt`, so rerunning the generator will overwrite the grouped docs index with a flat alphabetical list.</violation>
</file>

<file name="docs/cloud/llms-full.txt">

<violation number="1">
P2: This Python snippet now uses `await` at module scope, so the copy-paste example is invalid outside an async runner.</violation>

<violation number="2">
P2: The n8n polling instructions are stale here; they point to the older path/body instead of the current tutorial flow.</violation>

<violation number="3">
P2: Without a `try/finally`, any Playwright error here can leak the cloud browser session instead of stopping it.</violation>

<violation number="4">
P2: `llms-full.txt` is stale here: it omits the new OpenClaw tutorial and keeps the old Playwright metadata instead.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

…anges

Add OpenClaw integration, move integrations to top-level section with
updated URLs, and sync webhook content with updated signature verification.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 2 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="docs/cloud/llms-full.txt">

<violation number="1" location="docs/cloud/llms-full.txt:2025">
P2: Validate the timestamp header before calling `int(timestamp)` in the Python webhook samples to avoid 500s on bad requests.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

…amps

Remove backslash-escaped dollar signs in open-source llms-full.txt and
add try/except around int(timestamp) in Python webhook examples to
prevent 500s on malformed requests.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@ShawnPana ShawnPana merged commit 8a5c0f2 into main Mar 18, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant