Crawler Summary

clean-slides answer-first brief

Inspect, edit, and generate PowerPoint slides. Progressive drill-down inspection, text editing with formatting preservation, table generation from YAML, and PNG rendering for verification. --- name: clean-slides description: Inspect, edit, and generate PowerPoint slides. Progressive drill-down inspection, text editing with formatting preservation, table generation from YAML, and PNG rendering for verification. --- PowerPoint Skill Use the pptx CLI for all PowerPoint operations. When to use - **Inspect** slide contents, shapes, formatting, charts - **Edit** text while preserving formatting - **Generate* Capability contract not published. No trust telemetry is available yet. 12 GitHub stars reported by the source. Last updated 4/15/2026.

Freshness

Last checked 4/15/2026

Best For

clean-slides is best for markdown workflows where OpenClaw compatibility matters.

Not Ideal For

Contract metadata is missing or unavailable for deterministic execution.

Evidence Sources Checked

editorial-content, GITHUB OPENCLEW, runtime-metrics, public facts pack

Claim this agent
Agent DossierGitHubSafety: 100/100

clean-slides

Inspect, edit, and generate PowerPoint slides. Progressive drill-down inspection, text editing with formatting preservation, table generation from YAML, and PNG rendering for verification. --- name: clean-slides description: Inspect, edit, and generate PowerPoint slides. Progressive drill-down inspection, text editing with formatting preservation, table generation from YAML, and PNG rendering for verification. --- PowerPoint Skill Use the pptx CLI for all PowerPoint operations. When to use - **Inspect** slide contents, shapes, formatting, charts - **Edit** text while preserving formatting - **Generate*

OpenClawself-declared

Public facts

5

Change events

1

Artifacts

0

Freshness

Apr 15, 2026

Verifiededitorial-contentNo verified compatibility signals12 GitHub stars

Capability contract not published. No trust telemetry is available yet. 12 GitHub stars reported by the source. Last updated 4/15/2026.

12 GitHub starsTrust evidence available

Trust score

Unknown

Compatibility

OpenClaw

Freshness

Apr 15, 2026

Vendor

Tmustier

Artifacts

0

Benchmarks

0

Last release

Unpublished

Executive Summary

Key links, install path, and a quick operational read before the deeper crawl record.

Verifiededitorial-content

Summary

Capability contract not published. No trust telemetry is available yet. 12 GitHub stars reported by the source. Last updated 4/15/2026.

Setup snapshot

git clone https://github.com/tmustier/clean-slides.git
  1. 1

    Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.

  2. 2

    Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.

Evidence Ledger

Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.

Verifiededitorial-content
Vendor (1)

Vendor

Tmustier

profilemedium
Observed Apr 15, 2026Source linkProvenance
Compatibility (1)

Protocol compatibility

OpenClaw

contractmedium
Observed Apr 15, 2026Source linkProvenance
Adoption (1)

Adoption signal

12 GitHub stars

profilemedium
Observed Apr 15, 2026Source linkProvenance
Security (1)

Handshake status

UNKNOWN

trustmedium
Observed unknownSource linkProvenance
Integration (1)

Crawlable docs

6 indexed pages on the official domain

search_documentmedium
Observed Apr 15, 2026Source linkProvenance

Release & Crawl Timeline

Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.

Self-declaredagent-index

Artifacts Archive

Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.

Self-declaredGITHUB OPENCLEW

Extracted files

0

Examples

6

Snippets

0

Languages

typescript

Parameters

Executable Examples

bash

# Quick start — uses the bundled example template
pptx init

# With a custom/corporate template
pptx init -t path/to/corporate-template.pptx

bash

# Override template and config for a single run
pptx generate spec.yaml -t other.pptx -c other-config.yaml -o output.pptx

bash

# 1. Inspect — progressive drill-down
pptx show deck.pptx                    # slide list
pptx show deck.pptx 3                  # shapes on slide 3
pptx show deck.pptx 3 5                # full detail for shape [5]

# 2. Edit — shape identified by index or name
pptx edit deck.pptx 3 5 "New text" --out edited.pptx

# 3. Verify — render to PNG
pptx render edited.pptx 3 --out images/

bash

pptx show <file>                       # slides with layout, shape count, word count
pptx show <file> <slide>               # all shapes sorted top→bottom, left→right
pptx show <file> <slide> <shape>       # full JSON: text runs, formatting, chart data

pptx layouts <file>                    # available slide layouts with placeholders & content areas
pptx theme <file>                      # color scheme (accent1, accent2, etc.)
pptx xml <file> <slide> <shape>        # raw OOXML for debugging

bash

pptx edit <file> <slide> <shape> <text> [--out PATH]
pptx batch <file> <edits.json> [--out PATH]

json

{"paragraphs": [
  {"runs": [
    {"text": "Bold ", "bold": true},
    {"text": "normal"}
  ], "level": 0}
]}

Docs & README

Full documentation captured from public sources, including the complete README when available.

Self-declaredGITHUB OPENCLEW

Docs source

GITHUB OPENCLEW

Editorial quality

ready

Inspect, edit, and generate PowerPoint slides. Progressive drill-down inspection, text editing with formatting preservation, table generation from YAML, and PNG rendering for verification. --- name: clean-slides description: Inspect, edit, and generate PowerPoint slides. Progressive drill-down inspection, text editing with formatting preservation, table generation from YAML, and PNG rendering for verification. --- PowerPoint Skill Use the pptx CLI for all PowerPoint operations. When to use - **Inspect** slide contents, shapes, formatting, charts - **Edit** text while preserving formatting - **Generate*

Full README

name: clean-slides description: Inspect, edit, and generate PowerPoint slides. Progressive drill-down inspection, text editing with formatting preservation, table generation from YAML, and PNG rendering for verification.

PowerPoint Skill

Use the pptx CLI for all PowerPoint operations.

When to use

  • Inspect slide contents, shapes, formatting, charts
  • Edit text while preserving formatting
  • Generate table slides from YAML specs
  • Render slides to PNG for visual verification

Setup

Before generating slides, ensure the project has a .clean-slides/ directory. The CLI auto-discovers template.pptx and config.yaml from there — no flags needed.

# Quick start — uses the bundled example template
pptx init

# With a custom/corporate template
pptx init -t path/to/corporate-template.pptx

This creates .clean-slides/template.pptx and .clean-slides/config.yaml. All pptx generate commands in that directory tree will use them automatically.

If no .clean-slides/ directory exists, the CLI prints a hint suggesting pptx init.

Overriding auto-discovery

Explicit flags always win:

# Override template and config for a single run
pptx generate spec.yaml -t other.pptx -c other-config.yaml -o output.pptx

See examples/custom-template/README.md for a full walkthrough of custom template setup.

Core workflow: inspect → edit → verify

# 1. Inspect — progressive drill-down
pptx show deck.pptx                    # slide list
pptx show deck.pptx 3                  # shapes on slide 3
pptx show deck.pptx 3 5                # full detail for shape [5]

# 2. Edit — shape identified by index or name
pptx edit deck.pptx 3 5 "New text" --out edited.pptx

# 3. Verify — render to PNG
pptx render edited.pptx 3 --out images/

Inspect commands

pptx show <file>                       # slides with layout, shape count, word count
pptx show <file> <slide>               # all shapes sorted top→bottom, left→right
pptx show <file> <slide> <shape>       # full JSON: text runs, formatting, chart data

pptx layouts <file>                    # available slide layouts with placeholders & content areas
pptx theme <file>                      # color scheme (accent1, accent2, etc.)
pptx xml <file> <slide> <shape>        # raw OOXML for debugging

Run pptx layouts on your template before generating — it shows each layout's fillable placeholders (title, subtitle, tracker, logo, etc.) and content areas with dimensions. Layouts with a secondary content area (e.g. 2/3, 3/4) have a sidebar for supporting content like key takeaways, charts, or images.

Shape types in output: ph0 (placeholder), text, chart, image, group, line, shape

Edit commands

pptx edit <file> <slide> <shape> <text> [--out PATH]
pptx batch <file> <edits.json> [--out PATH]

Text formats — inspect output = edit input:

{"paragraphs": [
  {"runs": [
    {"text": "Bold ", "bold": true},
    {"text": "normal"}
  ], "level": 0}
]}

Run fields: text, font, size, bold, italic, underline, color, superscript, subscript

  • "bold": true → explicitly bold
  • "bold": false → explicitly not bold (overrides inherited)
  • (omit field) → inherit from parent

Slide management

pptx add-slide <file> <layout> [--at N] [--out PATH]
pptx delete-slide <file> <slide> --confirm [--out PATH]
pptx delete-shape <file> <slide> <shape> [--out PATH]
pptx insert <deck.pptx> <source.pptx> [--at N] [--slides 1,3-5] [--out PATH]

Replace a slide with a generated table

# 1. Generate the table slide (title/subtitle are set in the YAML)
pptx generate spec.yaml -t template.pptx -o /tmp/table.pptx

# 2. Insert at position 8, pushing old slide 8 → 9
pptx insert deck.pptx /tmp/table.pptx --at 8 --out deck.pptx

# 3. Delete the old slide (now at position 9)
pptx delete-slide deck.pptx 9 --confirm --out deck.pptx

# 4. Verify
pptx render deck.pptx 8 --out renders/

Render

pptx render <file> <slides> [--out DIR] [--dpi N]
pptx crop <png> <L> <T> <R> <B> [--out PATH]

<slides> accepts single (3), list (1,8,16), or ranges (1,3-5,8). Multiple slides share one PDF conversion.

Coordinates for crop are in inches (matches shape positions from show).

Generate tables from YAML

Context: pptx generate accepts multiple YAML files and produces one deck with one slide per YAML, in input order.

pptx generate spec.yaml -o output.pptx
pptx generate slide1.yaml slide2.yaml slide3.yaml -o output.pptx
pptx generate spec.yaml -t template.pptx -o output.pptx
pptx generate spec.yaml -t template.pptx -c config.yaml -o output.pptx
pptx validate spec.yaml
pptx verify spec.yaml --detail

Top-level YAML keys (all optional, set before table:):

  • titlerequired — fills the title placeholder
  • subtitle — fills the subtitle placeholder
  • tracker — fills the on-page tracker (supports \n for line breaks)
  • slide_layout — template layout name (e.g. "Default", "2/3", "3/4")
  • content_layout — content area policy: default (below header) or full (near top)
  • sidebar — formatted paragraphs for the secondary content area in split layouts (2/3, 3/4, 1/2)

See INPUT-SCHEMA.md for the complete schema.

Inline formatting

Text strings in cells, headers, and sidebar support markdown-style inline formatting:

  • **bold text** → bold
  • *italic text* → italic
  • [link text](https://example.com) → clickable hyperlink (blue, underlined)

Column widths

By default, columns are sized automatically based on content (wider for cells that need more wrapping room). Override with column_widths:

table:
  column_widths: equal          # equal body columns — best when columns are items being compared
  column_widths: [1, 2, 1, 1]  # manual proportions

Custom templates

The tool ships with a built-in template config, but supports any PowerPoint template. The workflow is: inspect the template, generate a config, review/adjust, then generate slides.

Step 1: Inspect the template

pptx layouts template.pptx             # see all layouts, placeholders, content areas
pptx theme template.pptx               # see theme color scheme (dk1, lt1, accent1, etc.)
pptx show template.pptx 1              # inspect shapes on a sample slide
pptx xml template.pptx 1 <shape>       # raw XML for bullet lstStyle details

What to look for:

  • Layouts: which layout names exist, which have content areas
  • Placeholders: what index is title (usually 0), subtitle (usually 1), any tracker/breadcrumb
  • Theme colors: what dk1, dk2, accent1 map to — these determine text and accent colors
  • Fonts: what headline vs body fonts the template uses (check actual slide text, not just theme — templates often override theme fonts at the slide level)
  • Bullet hierarchy: if the template has custom bullet styles, inspect the lstStyle XML on a content placeholder

Step 2: Generate a starter config

pptx init-config template.pptx -o template-config.yaml

This auto-extracts:

  • Theme colors → mapped to semantic names (midnight, electric_blue, etc.)
  • Theme fonts → headline/body
  • Slide dimensions and estimated layout geometry
  • Placeholder indices (title, subtitle, tracker if detected)
  • Available layout names (listed as comments)

The output is a complete, valid config with sensible defaults for everything — but some values will need adjustment.

Step 3: Review and adjust the config

Key areas to verify and adjust:

  1. colors: The auto-extracted electric_blue and cyan may not map correctly to your template's accent colors. Compare with pptx theme output and adjust.

  2. fonts: The theme's major/minor fonts may differ from what the template actually uses on slides. Inspect a content slide (pptx show template.pptx 2 <shape>) and check the actual font in use.

  3. font_sizes: Defaults are conservative (12pt body). Check your template's actual type scale and adjust title, body, table sizes.

  4. placeholders: Verify title (usually 0) and subtitle (usually 1) are correct. If your template has a tracker/breadcrumb placeholder, set its index. Remove tracker if there isn't one.

  5. default_colors: These control what theme color names are used for body text (tx1), headers (tx1 or accent1), dividers, and links. Adjust to match your template's design language.

  6. bullets: The hardest to auto-detect. If your template has custom bullet styles with specific chars (•, –, ›) and indentation, inspect the slide master lstStyle:

    pptx xml template.pptx 1 <content-placeholder>
    # Look for <a:lstStyle> with <a:lvl1pPr>, <a:lvl2pPr>, etc.
    

    Update bullet chars, mar_l_emu, indent_emu, and spacing to match.

  7. layout: The auto-detected margins and Y positions are estimates. If slides look misaligned, measure positions from pptx show template.pptx <slide> output and adjust content_start_y_emu, footer_line_y_emu, etc.

Step 4: Generate with custom config

# Generate
pptx generate spec.yaml -t template.pptx -c template-config.yaml -o output.pptx

# Validate / verify also accept --config
pptx validate spec.yaml -c template-config.yaml
pptx verify spec.yaml -c template-config.yaml --detail

Tips for custom templates

  • Start simple: generate a basic 2×2 table first and render it to check alignment
  • Iterate: render after each config adjustment to see the effect
  • Content areas from layout: when using -t template.pptx, the generator reads content area dimensions from the actual slide layout placeholders, so layout geometry often works even with approximate config values
  • Bullet levels: if your template doesn't use custom bullets, the defaults (•, –, ›) work for most templates
  • The config doesn't need to be perfect: the generator adapts to the template's actual placeholder positions at runtime; the config mainly controls styling (fonts, colors, spacing)

Backup policy

Before editing, save a backup:

cp deck.pptx deck.backup.pptx
pptx edit deck.pptx ... --out deck.edited.pptx

Always use --out to write to a new file unless explicitly asked to overwrite.

Tips

  • Placeholders (ph0, ph1, etc.) are structural — edit text only, don't delete or resize
  • Inspect before editing — use show to find the right shape index
  • Render after editing — visual verification catches formatting issues
  • Copy formatting from inspect — the JSON output works directly as edit input

Contract & API

Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.

MissingGITHUB OPENCLEW

Contract coverage

Status

missing

Auth

None

Streaming

No

Data region

Unspecified

Protocol support

OpenClaw: self-declared

Requires: none

Forbidden: none

Guardrails

Operational confidence: low

No positive guardrails captured.
Invocation examples
curl -s "https://xpersona.co/api/v1/agents/tmustier-clean-slides/snapshot"
curl -s "https://xpersona.co/api/v1/agents/tmustier-clean-slides/contract"
curl -s "https://xpersona.co/api/v1/agents/tmustier-clean-slides/trust"

Reliability & Benchmarks

Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.

Missingruntime-metrics

Trust signals

Handshake

UNKNOWN

Confidence

unknown

Attempts 30d

unknown

Fallback rate

unknown

Runtime metrics

Observed P50

unknown

Observed P95

unknown

Rate limit

unknown

Estimated cost

unknown

Do not use if

Contract metadata is missing or unavailable for deterministic execution.
No benchmark suites or observed failure patterns are available.

Media & Demo

Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.

Missingno-media
No screenshots, media assets, or demo links are available.

Related Agents

Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.

Self-declaredprotocol-neighbors
GITHUB_REPOSactivepieces

Rank

70

AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents

Traction

No public download signal

Freshness

Updated 2d ago

OPENCLAW
GITHUB_REPOScherry-studio

Rank

70

AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs

Traction

No public download signal

Freshness

Updated 5d ago

MCPOPENCLAW
GITHUB_REPOSAionUi

Rank

70

Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!

Traction

No public download signal

Freshness

Updated 6d ago

MCPOPENCLAW
GITHUB_REPOSCopilotKit

Rank

70

The Frontend for Agents & Generative UI. React + Angular

Traction

No public download signal

Freshness

Updated 23d ago

OPENCLAW
Machine Appendix

Contract JSON

{
  "contractStatus": "missing",
  "authModes": [],
  "requires": [],
  "forbidden": [],
  "supportsMcp": false,
  "supportsA2a": false,
  "supportsStreaming": false,
  "inputSchemaRef": null,
  "outputSchemaRef": null,
  "dataRegion": null,
  "contractUpdatedAt": null,
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Invocation Guide

{
  "preferredApi": {
    "snapshotUrl": "https://xpersona.co/api/v1/agents/tmustier-clean-slides/snapshot",
    "contractUrl": "https://xpersona.co/api/v1/agents/tmustier-clean-slides/contract",
    "trustUrl": "https://xpersona.co/api/v1/agents/tmustier-clean-slides/trust"
  },
  "curlExamples": [
    "curl -s \"https://xpersona.co/api/v1/agents/tmustier-clean-slides/snapshot\"",
    "curl -s \"https://xpersona.co/api/v1/agents/tmustier-clean-slides/contract\"",
    "curl -s \"https://xpersona.co/api/v1/agents/tmustier-clean-slides/trust\""
  ],
  "jsonRequestTemplate": {
    "query": "summarize this repo",
    "constraints": {
      "maxLatencyMs": 2000,
      "protocolPreference": [
        "OPENCLEW"
      ]
    }
  },
  "jsonResponseTemplate": {
    "ok": true,
    "result": {
      "summary": "...",
      "confidence": 0.9
    },
    "meta": {
      "source": "GITHUB_OPENCLEW",
      "generatedAt": "2026-04-16T23:32:51.623Z"
    }
  },
  "retryPolicy": {
    "maxAttempts": 3,
    "backoffMs": [
      500,
      1500,
      3500
    ],
    "retryableConditions": [
      "HTTP_429",
      "HTTP_503",
      "NETWORK_TIMEOUT"
    ]
  }
}

Trust JSON

{
  "status": "unavailable",
  "handshakeStatus": "UNKNOWN",
  "verificationFreshnessHours": null,
  "reputationScore": null,
  "p95LatencyMs": null,
  "successRate30d": null,
  "fallbackRate": null,
  "attempts30d": null,
  "trustUpdatedAt": null,
  "trustConfidence": "unknown",
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Capability Matrix

{
  "rows": [
    {
      "key": "OPENCLEW",
      "type": "protocol",
      "support": "unknown",
      "confidenceSource": "profile",
      "notes": "Listed on profile"
    },
    {
      "key": "markdown",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    }
  ],
  "flattenedTokens": "protocol:OPENCLEW|unknown|profile capability:markdown|supported|profile"
}

Facts JSON

[
  {
    "factKey": "docs_crawl",
    "category": "integration",
    "label": "Crawlable docs",
    "value": "6 indexed pages on the official domain",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  },
  {
    "factKey": "vendor",
    "category": "vendor",
    "label": "Vendor",
    "value": "Tmustier",
    "href": "https://github.com/tmustier/clean-slides",
    "sourceUrl": "https://github.com/tmustier/clean-slides",
    "sourceType": "profile",
    "confidence": "medium",
    "observedAt": "2026-04-15T02:12:29.781Z",
    "isPublic": true
  },
  {
    "factKey": "protocols",
    "category": "compatibility",
    "label": "Protocol compatibility",
    "value": "OpenClaw",
    "href": "https://xpersona.co/api/v1/agents/tmustier-clean-slides/contract",
    "sourceUrl": "https://xpersona.co/api/v1/agents/tmustier-clean-slides/contract",
    "sourceType": "contract",
    "confidence": "medium",
    "observedAt": "2026-04-15T02:12:29.781Z",
    "isPublic": true
  },
  {
    "factKey": "traction",
    "category": "adoption",
    "label": "Adoption signal",
    "value": "12 GitHub stars",
    "href": "https://github.com/tmustier/clean-slides",
    "sourceUrl": "https://github.com/tmustier/clean-slides",
    "sourceType": "profile",
    "confidence": "medium",
    "observedAt": "2026-04-15T02:12:29.781Z",
    "isPublic": true
  },
  {
    "factKey": "handshake_status",
    "category": "security",
    "label": "Handshake status",
    "value": "UNKNOWN",
    "href": "https://xpersona.co/api/v1/agents/tmustier-clean-slides/trust",
    "sourceUrl": "https://xpersona.co/api/v1/agents/tmustier-clean-slides/trust",
    "sourceType": "trust",
    "confidence": "medium",
    "observedAt": null,
    "isPublic": true
  }
]

Change Events JSON

[
  {
    "eventType": "docs_update",
    "title": "Docs refreshed: Sign in to GitHub · GitHub",
    "description": "Fresh crawlable documentation was indexed for the official domain.",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  }
]

Sponsored

Ads related to clean-slides and adjacent AI workflows.