| name | clawpage |
| description | Share AI agent conversations as public web pages. Use when the user wants to share a conversation externally, export conversation history for documentation, or publish a chat session to a public URL. |
| license | Apache-2.0 |
| metadata | {"openclaw":{"emoji":"💬","homepage":"https://github.com/imyelo/clawpage"}} |
clawpage
Share AI agent conversations as public web pages.
Supported Agents
Core Workflow
1. Setup Check
- Detect agent type; load project dir + site URL using the agent profile
- If project not configured locally, ask the user:
2. Locate Session
- List sessions using agent profile discovery
- Default to the most recent (current) session; offer to pick any historical session by ID or keyword
- Show candidates → user confirms selection
3. Extract & Convert
Follow the Conversion section in the platform profile detected in Step 1.
Save the result to {projectDir}/chats/.tmp/{timestamp}.yaml.
4. Populate Metadata
The CLI auto-fills structural fields. The Skill's job is to fill in the human-facing metadata:
| Field | CLI default | Action |
|---|
date, sessionId, model, totalMessages, totalTokens, defaultShowProcess | Auto-filled | Review only |
visibility | private | Update to public |
participants | Generic role names (user, assistant) | Ask user for display names → rename keys; if no name is provided, use Human / Agent for single-speaker or Human 1 / Human 2 … for multi-speaker |
title | 'Session Export' (generic) | Skim generated YAML → suggest → confirm |
description | (absent) | Write one-sentence summary → confirm |
channel | (absent) | Ask user — set to platform name (e.g. discord) if applicable; omit otherwise |
cover | (absent) | Skip (user adds custom OG image URL manually later) |
tags | (absent) | Skip (user adds manually later) |
5. Redact
Review the generated YAML and replace sensitive information with [REDACTED]:
- API keys, tokens, passwords →
[REDACTED]
- File paths with usernames (
/Users/xxx → ~)
- Email addresses, phone numbers →
[REDACTED]
- Internal URLs and private IPs →
[REDACTED]
Do not silently remove content — always substitute [REDACTED] so the reader can see that content was present but withheld.
6. Confirm & Save
Why create a branch here? Saving on the default branch risks mixing unrelated changes into a future PR. Always commit each chat file on its own dedicated branch.
Optional: Publish
Push the branch created in step 6 and open a PR.
See references/publish.md. Only proceed after explicit user request.
Edge Cases