Security

clawvision

Try it

ClawVision 1.0.7 — explicit permission disclosure for security audit.

What it does

ClawVision 1.0.7 — explicit permission disclosure for security audit.

The skill document

ClawVision 1.0.7

Turn an OpenClaw chat session into a clean, tabbed HTML infographic — like a Codex $visualize card, but local. Also exports to Markdown and a redesigned, visual PowerPoint deck. Now with aesthetic presets and a Summary Design Specification step.

What's new in 1.0.7

  • Even clearer install-facing description explicitly states that the skill reads session history and writes persistent export files to disk.
  • Same permission transparency, CSS-variable fix, Summary Design Specification, and 5 aesthetic presets as 1.0.6.

What's new in 1.0.6

  • Improved skill description and permission transparency for ClawHub security review.
  • Removed unused skill_workshop tool permission.
  • Same CSS-variable fix, Summary Design Specification, and 5 aesthetic presets as 1.0.5.

What's new in 1.0.5

  • CSS variable fix: the generated HTML now correctly includes :root color variables for every preset, so tabs, cards, export buttons, and theme switching render as intended.
  • Same Summary Design Specification and 5 aesthetic presets from 1.0.4.

What's new in 1.0.4

  • Summary Design Specification — before rendering, lock in language, preset, accent color, font family, layout strategy, and export formats.
  • Aesthetic presetsminimal, editorial, retro, luxury, playful. Each preset changes colors, typography, rounding, shadows, and visual density for both HTML and PowerPoint.
  • Same reliable exports: self-contained HTML (EN/RU/ZH + light/dark), PNG tabs, Markdown, branded PPTX.

Only run ClawVision when the user explicitly asks for a visual/exportable summary of an OpenClaw session. Acceptable triggers include:

  • "Create a ClawVision summary card for this conversation."
  • "Export the current OpenClaw session to HTML/PNG/Markdown/PowerPoint."
  • "Build a visual one-pager from the chat we just had."
  • "Summarize session `` with ClawVision."

If the request is vague, ask the user to confirm intent and scope before proceeding.

When NOT to use

  • Do not activate on generic "summarize" or "make a note" requests.
  • Do not run on sessions that may contain secrets, credentials, personal data, or internal identifiers unless the user explicitly confirms it is safe to summarize and export.

Workflow

  1. Confirm the user's intent. If the request is vague or the session may contain sensitive content, ask for explicit confirmation before continuing.
  2. Pick a session. Use the current session only when the user explicitly refers to "this conversation" or the current context. Use sessions_list if the user names another session by ID or label.
  3. Fetch history with sessions_history(includeTools=false, limit=200).
  4. Build a plain-text transcript: \n\n: for each message.
  5. Run the Summary Design Specification step (below). Ask the user if any choices should change, otherwise default to: preset minimal, accent #2a9df4, font Inter, layout card-based, language from the conversation.
  6. Send the transcript to a local model via node_inference with the summary prompt below. Parse the JSON output.
  7. Run scripts/generate_visual.py --summary --output --png --md --pptx --lang --preset to render:
    • self-contained HTML with EN/RU/ZH language switcher and light/dark theme toggle,
    • one PNG per tab,
    • a Markdown summary,
    • a redesigned visual PowerPoint deck using the chosen preset.
  8. Show the user the output paths. Offer to open the HTML in canvas if a node is connected.

Summary Design Specification

Before generating, output a compact specification and ask the user to confirm or override. Default to inference from the session language and topic.

SUMMARY SPECIFICATION
====================
1. Session language: [en | ru | zh]
2. Aesthetic preset: [minimal | editorial | retro | luxury | playful]
3. Dominant accent color: #HEX
4. Font family: [Inter | Georgia | Space Grotesk | Playfair Display | Nunito | etc.]
5. Layout strategy: [card-based | editorial-column | retro-grid | luxury-spaced | playful-stacked]
6. Export formats: [html | png | md | pptx | all]

Preset guide

PresetBest forAccent examplesRoundingShadowFont
minimalClean technical summariesblue/greymediumsubtleInter / system
editorialLong-form insights, articlesburgundy/navysmallflatGeorgia / serif
retroNostalgia, games, old-weborange/brownlargehardSpace Grotesk
luxuryFinance, premium productsgold/blacktinysoftPlayfair Display
playfulEducation, social, onboardingpurple/greenhugebouncyNunito

Summary prompt (send via node_inference)

You are a conversation summarizer. Read the OpenClaw transcript below and return ONLY a JSON object with no markdown:

{
  "title": "Short title in the conversation language",
  "subtitle": "One-line context",
  "main_takeaway": "The single most important conclusion",
  "format_takeaway": "How the discussion was structured",
  "next_takeaway": "What the next move should be",
  "flow": [
    {"label": "Step 1", "sub": "what happened"},
    {"label": "→", "sub": ""},
    {"label": "Step 2", "sub": "what happened"}
  ],
  "metrics": [
    {"title": "Goal", "text": "..."},
    {"title": "Approach", "text": "..."},
    {"title": "Output", "text": "..."}
  ],
  "dos": ["good practice 1", "good practice 2"],
  "donts": ["risk 1", "risk 2"],
  "checklist": [
    {"text": "Item name", "status": "ready|pending|blocked"}
  ],
  "next_steps": ["action 1", "action 2"]
}

Transcript:
{{transcript}}

Output rules

  • HTML must be self-contained: inline CSS and JS, no external assets. Preset font should be requested from a web-safe fallback stack.
  • Include an EN/RU/ZH language switcher and light/dark theme toggle.
  • Match the conversation language in the generated content.
  • PowerPoint export uses the same brand colors, preset, and card layout as the HTML card.
  • Default output directory is workspace/visualized/; fall back to the user's preferred directory if that path is not writable.
  • Never include secrets, passwords, tokens, or private identifiers from the session.

Safety

  • Confirm intent and scope before accessing session history or writing output files.
  • If the conversation may contain sensitive content, ask the user first; if they decline, stop or summarize generically without exporting files.
  • Do not call external APIs with the transcript.
  • Review generated files before sharing them.

Roadmap

  • ClawVision 1.0.7 — current stable version: explicit disk/export disclosure + permission transparency + CSS variable fix + Summary Design Specification + 5 aesthetic presets for HTML/PPTX.
  • ClawVision 2.0 — planned: session analytics (message stats, tool usage, topic/entity extraction, insights, CSS-only charts).

Related skills

ClawVision 1.0.13 — honest data-export description, offline-only analytics, explicit permissions table.

ClawVision 1.0.9 — explicit permission disclosure for security audit.

1 installs

ClawVision 1.0.6 — improve ClawHub security review transparency by rewriting description and removing unused skill_workshop permission.

ClawVision 中文版 1.0.7 — 本地导出工具。读取你选择的 OpenClaw 会话历史,使用本地 LLM 总结,并写入 HTML、Markdown、PowerPoint 和 PNG 导出文件到本地磁盘。需要权限:读取会话历史、列出会话、本地文件读写、执行本地 Python/Playwright 脚本、本地 LLM 推理。数据不会发送到外部 API。

Companion plugin for ClawVision: add PDF, OG images, and Telegram sharing.

ClawVision East Edition 1.0.7 (中文版) — 本地导出工具。读取你选择的 OpenClaw 会话历史,使用本地 LLM 总结,并写入 HTML、Markdown、PowerPoint 和 PNG 导出文件到本地磁盘。需要权限:读取会话历史、列出会话、本地文件读写、执行本地 Python/Playwright 脚本、本地 LLM 推理。数据不会发送到外部 API。