Agent skill

Clay Sketch

by chadbyte in chadbyte/clay

Draw and revise UI wireframes directly in Clay chat with the built-in clay-sketch renderer.

AGPL-3.0Auto-check passedFrontend & Design

Install Clay Sketch

skills CLI
$ npx skills add chadbyte/clay --skill clay-sketch -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install chadbyte/clay clay-sketch --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/chadbyte/clay.git skills-src && mkdir -p .claude/skills && cp -r skills-src/lib/bundled-skills/clay-sketch .claude/skills/clay-sketch && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
clay-sketch
GitHub stars
399
Token cost
~2.5k tokens
SKILL.md length
1,117 words
Files
1
Skills in repo
2
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Draw and revise UI wireframes directly in Clay chat with the built-in clay-sketch renderer.

  • Works in 4 steps: Use the user's requirements and existing… → Show a complete sketch in a fenced… → For a whole page, use the screen-layout… → …
  • Requests to see a wireframe
  • SKILL.md covers Draw in chat, Revise together, Supported notation and Compact layout example, plus 1 more section
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Clay Sketch is an agent skill from chadbyte/clay. Draw and revise UI wireframes directly in Clay chat with the built-in clay-sketch renderer. Automatically use for requests to see a wireframe, sketch a screen, visualize a page layout or UI plan, or revise an existing sketch, including entire webpages and the current project. The user does not need to name clay-sketch. Also use for /clay-sketch or $clay-sketch. Do not substitute this for implementing a working website, generating artwork, or drawing architecture and sequence diagrams.

Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Frontend & Design, covering UI design and Diagrams. It works with Claude Agent SDK. The repository describes itself as: A self-hosted workspace where people and coding agents work together across projects, sessions, and providers. The licence is AGPL-3.0.

When your agent uses it

  • Requests to see a wireframe
  • Sketch a screen
  • Visualize a page layout
  • Revise an existing sketch

Example prompts

  • “/clay-sketch”

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Use the user's requirements and existing conversation to choose a sensible
  2. Show a complete sketch in a fenced clay-sketch block. Include @startsalt
  3. For a whole page, use the screen-layout mode below with an explicit canvas
  4. Briefly explain the important layout decisions. The controls are drawings,

What it can do on your machine

Read from SKILL.md and the folder at commit 014d63b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are clay-sketch).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Clay Sketch loads about 2.5k tokens when it runs. Until then it costs about 125 tokens; SKILL.md has 1,117 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~125
When it runs · the whole SKILL.md, loaded when a task matches
~2.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from chadbyte/clay at commit 014d63b, republished under its AGPL-3.0 licence (© chadbyte). 1,117 words, ~2,485 tokens.

Download SKILL.mdSave it as .claude/skills/clay-sketch/SKILL.md (or your agent's skills folder).
name
clay-sketch
description
Draw and revise UI wireframes directly in Clay chat with the built-in clay-sketch renderer. Automatically use for requests to see a wireframe, sketch a screen, visualize a page layout or UI plan, or revise an existing sketch, including entire webpages and the current project. The user does not need to name clay-sketch. Also use for /clay-sketch or $clay-sketch. Do not substitute this for implementing a working website, generating artwork, or drawing architecture and sequence diagrams.

clay-sketch

Use clay-sketch to make UI ideas visible while keeping design changes in the conversation. It ships with Clay: no installation, browser automation, external renderer, or generated image is needed. Its markup is a supported subset of PlantUML Salt with optional Clay screen-layout extensions, not the full PlantUML language.

Treat ordinary requests such as "show me a wireframe of our work", "sketch this screen", or "what would this page look like?" in a UI planning conversation as requests for clay-sketch. Do not require the feature name or ask the user to choose a rendering format. Use the current project and conversation as context. Default to a rendered sketch; use ASCII wireframes only when explicitly requested.

Draw in chat

  1. Use the user's requirements and existing conversation to choose a sensible first layout. Ask a structured question only when a missing decision would materially change the design. Avoid setup questions or requiring a file.
  2. Show a complete sketch in a fenced clay-sketch block. Include @startsalt and @endsalt. Clay renders the block inline and retains its source.
  3. For a whole page, use the screen-layout mode below with an explicit canvas and region tracks. Default to 1440 × 900 for desktop unless context suggests another size. Do not simulate a screen by increasing scale, font sizes or padding labels with spaces. Use realistic labels and a clear primary action.
  4. Briefly explain the important layout decisions. The controls are drawings, not interactive application controls. Keep the sketch focused on structure.

Use one sketch per block. Existing plantuml, puml, and salt fences also work. Prefer clay-sketch for new responses. Don't replace a rendered sketch with a screenshot or unsolicited ASCII art.

Revise together

When the user requests changes or wants to work together on a sketch, call present_wireframe (or its available clay-documents qualified equivalent) with the complete revised Salt source, a short title, and a stable design id such as account-settings. Reuse that id for revisions of the same design. This opens or updates clay-sketch in Sketch viewer, the right-side viewer. It only presents the sketch; it does not save a file.

Include the same complete revised source in a clay-sketch response block so the revision remains in chat history. Preserve requirements from earlier turns. Do not send a patch or a fragment as the diagram source.

All editing happens through conversation. The user can choose Save to project to create a .puml file, or Download to save the source to their device. Do not create files automatically. If explicitly asked to save through your file tools, use the requested path and normal file permissions. Do not silently overwrite existing work.

If the presentation tool is unavailable, provide the inline sketch and explain that Open sketch opens the viewer. Do not claim you opened it.

Use clean lines for new sketches. Do not add handwritten directives or suggest a handwritten mode. The viewer credits PlantUML Salt and links to its documentation.

Supported notation

  • { ... }: layout container; newlines separate rows and | separates columns. Nest containers to build a whole page. Put a space or newline after {.
  • {+ ... }: outer border; {# ... }: grid; {! ... }: column lines; {- ... }: row lines.
  • {^"Account" ... }: titled group. Put its rows on following lines.
  • {/ <b>Overview | Settings }: tabs. Newline-separated tabs form a vertical list.
  • {* File | Edit | Help }: a menu bar; following rows such as File | Open | - | Exit show an open menu.
  • Plain label, **Bold label**, <b>Bold label, <i>Italic label.
  • [Continue]: button; "Email address ": text field. Spaces inside quotes reserve width; keep labels short enough to remain readable.
  • [] Remember me, [X] Enabled: checkboxes.
  • () Option, (X) Selected: radio controls.
  • ^Choose a team^: closed dropdown; ^Choose^^One^^Two^: open dropdown.
  • .: empty cell or vertical spacer; .., --, ==, ~~: separators.
  • * following a cell spans the preceding cell across that column.
  • {T with + Root, ++ Child rows: tree; T!, T#, T+, T- add grid lines.
  • {S, {SI, {S-: both, vertical-only, horizontal-only scrollbars.
  • //italic//, ""monospace"", --strike--, __underline__, ~~wave~~; <color:blue>, <back:orange>, <size:20> and <&folder> icons.
  • * Bullet and # Numbered item: list labels; repeat the marker for nesting.
  • title, header, footer, caption before the layout; multiline legend / end legend; scale 2, skinparam dpi 200, background colors.
  • Lines beginning with an apostrophe are comments.
Show full SKILL.md (437 more words)Show less

Use . explicitly for empty cells. Avoid gratuitous spacers or very long fields; wide diagrams shrink in chat, though the viewer offers Fit, 100% reset and zoom up to 400%. The renderer limits source to 100 KB, nesting to 24 levels, cells to 2000, columns to 64, and layout dimensions to 8192 pixels.

Use bundled icons for ordinary wireframes. When an image is needed and its URL is supplied or authorized for the design, <img:https://…> embeds a public PNG. This requires network access, allows no redirects or private addresses, and is limited to four images of 1 MiB and 2048 × 2048 pixels each. Do not invent image URLs. Local files and SVG images are not supported. Salt's inline ./X pseudo-sprites also work without networking.

Supported font sizes are 10, 12, 13, 14, 16, 18 and 20, with sans-serif or monospace text. Avoid arbitrary fonts, includes, macros, external themes, general PlantUML sprites, links and other UML types. On a syntax error, simplify the sketch using the notation above; never suggest installing Java or sending source to a hosted renderer. For architecture, flowcharts, or sequence diagrams, use the existing Mermaid support instead.

Compact layout example

clay-sketch
@startsalt
{+
  { **Workspace** | Project: Website | [Settings] }
  {
    {^"Navigation"
      **Overview**
      Projects
      Team
      [New project]
    } |
    {^"Projects"
      {/ <b>Active | Archived }
      { "Search projects...          " | [Create project] }
      ..
      {# **Project** | **Status** | **Owner**
        Website | In progress | Alex
        Mobile app | Planning | Sam
      }
      ..
      [View all projects]
    }
  }
}
@endsalt

Whole-screen layout (Clay extension)

For full-page UI plans, start with the example below. The apostrophe directives are Clay extensions: standard PlantUML treats them as comments and renders its usual compact layout. Plain Salt without these directives retains reference behavior. Do not claim the extended layout is standard PlantUML Salt.

  • ' @clay-canvas 1440 900 sets logical screen dimensions (240–4096 per axis).
  • ' @clay-layout root ... configures the outer container. A path such as root.1.0 selects row 1, column 0, zero-based. Append row/column pairs for nested containers. Update paths when moving content.
  • columns=240,* fixes the sidebar width and gives remaining width to content. rows=64,* fixes the header and lets the body fill the remaining height. Tracks accept pixel integers, auto (content size), and * (share free space). Supply exactly one track per row/column. Without tracks, rows/columns use auto.
  • padding=24 gap=16 sets container insets and spacing, without scaling text. Defaults are 16 and 12. Set padding/gap to 0 for the outer screen shell.
  • Containers fill allocated regions. Text/buttons retain their natural dimensions; inputs expand to their column width. Use a . in a flexible row to reserve deliberate empty space or push a footer down, not repeated blank rows.
  • Rules target regular containers, not trees, tabs, menus or scrollbar containers. Those widgets can still appear inside a screen using their natural dimensions.
  • Overflow is reported, not silently shrunk. Increase the relevant track/canvas or simplify the content. Keep titles inside the layout; do not combine screen mode with scale/DPI changes or outside title/header/footer/legend directives.
clay-sketch
@startsalt
' @clay-canvas 1440 900
' @clay-layout root padding=0 gap=0 columns=240,* rows=64,*
' @clay-layout root.0.0 padding=20 gap=24 columns=*,auto
' @clay-layout root.1.0 padding=24 gap=20 columns=* rows=auto,auto,auto,auto,auto,auto,*
' @clay-layout root.1.1 padding=32 gap=24 columns=* rows=auto,auto,auto,auto,*,auto
' @clay-layout root.1.1.0.0 padding=0 gap=24 columns=*,auto
' @clay-layout root.1.1.2.0 padding=0 gap=16 columns=*,auto
' @clay-layout root.1.1.3.0 padding=16 gap=16 columns=*,140,180,140 rows=40,48,48,48
{+
  { **Clay Settings** | [My account] } | *
  {
    [Back to project]
    Profile
    Appearance
    Models
    **MCP connections**
    Notifications
    .
  } |
  {
    { <size:20>**MCP connections** | [Add connection] }
    Connect tools and services for your conversations.
    { "Search connections..." | ^All statuses^ }
    {-
      **Connection** | **Type** | **Status** | **Action**
      Team knowledge | Remote URL | Connected | [Manage]
      Support tools | Remote URL | Sign-in required | [Sign in]
      My computer | Extension | Offline | [Manage]
    }
    .
    Connections are personal to your account.
  }
}
@endsalt

© chadbyte, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in lib/bundled-skills/clay-sketch of chadbyte/clay.

Open the folder on GitHubat commit 014d63b

Compare with similar skills

Clay Sketch next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Clay Sketch compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Clay Sketch this skillchadbyte/clay399—~2.5kAutomated safety check: PassAGPL-3.0
Tesseract Designmirage-hq/Tesseract128—~986Automated safety check: PassCustom licence
SVG Precision Skilldkyazzentwatwa/chatgpt-skills115—~223Automated safety check: PassNone
CLI Hub Matrix Image DesignHKUDS/CLI-Anything52k—~2.4kAutomated safety check: PassApache-2.0
Visualizevellum-ai/vellum-assistant1.4k—~3.6kAutomated safety check: PassMIT
Draft Flowjeremylongshore/tons-of-skills-marketplace2.8k—~898Automated safety check: NotesMIT

Similar skills

  • Tesseract Design

    mirage-hq/Tesseract

    Create and revise static visual designs as editable Tesseract compositions and rendered PNGs, including posters, social graphics, slide layouts, diagrams, and web/UI mockups.

    128 GitHub stars~986 tokensUpdated 7 days ago
    Frontend & DesignAuto-check passed
  • SVG Precision Skill

    dkyazzentwatwa/chatgpt-skills

    Generate deterministic SVGs from structured specs with validation and rendering.

    115 GitHub stars~223 tokensUpdated 6 mo ago
    Frontend & DesignAuto-check passed
  • CLI Hub Matrix Image Design

    HKUDS/CLI-Anything

    Capability-based multi-tool matrix for image and graphic design: AI generation, raster/vector editing, UI mockups, diagrams, upscaling, photo library, and publishing.

    52k GitHub stars~2.4k tokensUpdated 17 days ago
    Frontend & DesignAuto-check passed
  • Visualize

    vellum-ai/vellum-assistant

    Render a polished visual inline in the chat as part of your answer — a diagram, a chart, an interactive explainer, or a UI mockup.

    1.4k GitHub stars~3.6k tokensUpdated today
    Frontend & DesignAuto-check passed
  • Draft Flow

    jeremylongshore/tons-of-skills-marketplace

    A skill your agent uses when asked to design a user flow, map how a user moves through a feature, create a wireframe or flow diagram, or document interaction design for a product brief.

    2.8k GitHub stars~898 tokensUpdated today
    Frontend & DesignAuto-check: notes
  • Fin Generative UI

    criptogus/agent-evolve-network

    Design system and guidelines for Claude's built-in showwidget tool to render high-quality interactive HTML/SVG widgets, charts, diagrams, and explainers inline.

    288 GitHub stars~972 tokensUpdated today
    Frontend & DesignAuto-check passed

More from chadbyte/clay

  • Clay Agent Browser

    chadbyte/clay

    Test websites and browse together with the user in Clay's live Browser panel.

    399 GitHub stars~1.1k tokensUpdated today
    Auto-check passed

Questions about Clay Sketch

What does Clay Sketch do?

Draw and revise UI wireframes directly in Clay chat with the built-in clay-sketch renderer. Clay Sketch is an agent skill from chadbyte/clay. Draw and revise UI wireframes directly in Clay chat with the built-in clay-sketch renderer.

When should I use Clay Sketch?

Clay Sketch fits situations like: requests to see a wireframe; sketch a screen; visualize a page layout; revise an existing sketch.

How do I install Clay Sketch in Claude Code?

Run `npx skills add chadbyte/clay --skill clay-sketch -a claude-code`. Or copy the skill folder (lib/bundled-skills/clay-sketch in chadbyte/clay) into .claude/skills/clay-sketch in your project. Claude Code loads it when a task matches its description.

How do I install Clay Sketch in Codex?

Run `npx skills add chadbyte/clay --skill clay-sketch -a codex`. Or copy the skill folder (lib/bundled-skills/clay-sketch in chadbyte/clay) into .agents/skills/clay-sketch in your project. Codex loads it when a task matches its description.

Can I use Clay Sketch in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add chadbyte/clay --skill clay-sketch -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/clay-sketch, .gemini/skills/clay-sketch, .github/skills/clay-sketch and .opencode/skills/clay-sketch in your project.

What does Clay Sketch need to run?

SKILL.md names no scripts, command-line tools or credentials: Clay Sketch is instructions for the agent only.

Does Clay Sketch access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Clay Sketch safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Clay Sketch use?

Clay Sketch is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Clay Sketch use?

About 2.5k tokens (SKILL.md is roughly 9.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Clay Sketch?

Skills that share tags, products or a category with Clay Sketch: Tesseract Design (mirage-hq/Tesseract, 128 stars), SVG Precision Skill (dkyazzentwatwa/chatgpt-skills, 115 stars), CLI Hub Matrix Image Design (HKUDS/CLI-Anything, 52k stars) and Visualize (vellum-ai/vellum-assistant, 1.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Clay Sketch?

chadbyte (a GitHub user) maintains it in chadbyte/clay, which has 399 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 9, 2026.

Source: chadbyte/clay on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.