Clawpage

v1.0.1

Share AI agent conversations as public web pages. Use when the user wants to share a conversation externally, export conversation history for documentation,...

1· 302· 3 versions· 0 current· 0 all-time· Updated 19h ago· MIT-0
byyelo@imyelo

Install

openclaw skills install clawpage

clawpage

Share AI agent conversations as public web pages.

Supported Agents

AgentProfile
OpenClawreferences/platforms/openclaw.md
(unknown)references/platforms/unknown.md — generic skill-based fallback
(new platform)Add a file following references/platforms/TEMPLATE.md

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
  • 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:

FieldCLI defaultAction
date, sessionId, model, totalMessages, totalTokens, defaultShowProcessAuto-filledReview only
visibilityprivateUpdate to public
participantsGeneric 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

  • Suggest filename: {YYYYMMDD}-{topic}.yaml
  • Show preview → user confirms or modifies topic/filename
  • Before moving the file, create a dedicated branch (see below — required even if the user does not publish yet):
    cd {projectDir}
    git checkout main
    git pull origin main
    git checkout -b chat/{YYYYMMDD}-{topic}
    
  • Move: {projectDir}/chats/.tmp/{timestamp}.yaml{projectDir}/chats/{YYYYMMDD}-{topic}.yaml
  • Stage and commit immediately so the file is isolated on its own branch:
    git add chats/{YYYYMMDD}-{topic}.yaml
    git commit -m "docs: add {topic}"
    

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

Version tags

latestvk971ppc3eq4aab08ajb24stpe5835cc1

Runtime requirements

💬 Clawdis