Mmcp.market

paint skill

by Razshy·Razshy/Wiggle·91 stars

Paint an original image in a watercolor style by writing code, not by calling an image model. Use when the user asks you to draw, paint, sketch, or make a picture of something and there is no image-generation tool available, or when they ask for a painting, watercolor, or illustration you can iterate on. Do not use for charts, diagrams, UI mockups, or requests to edit an existing photograph.

A100/100content scan

Is the paint skill safe?

Clean: nothing in its files matched our rules. We read 7 files in the folder on 2026-09-28.

No findings.

Install the paint skill

A skill is a folder. Copy it into your agent's skills folder and the agent loads it when the task matches its description.

git clone --depth 1 https://github.com/Razshy/Wiggle.git /tmp/Wiggle
mkdir -p ~/.claude/skills
cp -r /tmp/Wiggle/mnt-skills/examples/paint ~/.claude/skills/paint
available in every project

In the Claude apps, zip the folder and upload it from the Skills settings. The folder on GitHub

The instructions your agent would load

SKILL.md as published, without the frontmatter. Read it on GitHub

Code-drawn watercolor

You paint by writing a short Python function against paintkit.Canvas, an OpenCV watercolor toolkit bundled with this skill. Geometry is seeded, so you can look at the output, fix the two worst things, and re-render the same painting with only your edit changed.

Read reference.md in this skill directory once before your first scene. It documents every primitive. examples/full_scene.py is a worked 18-element scene that uses every primitive; skim it for patterns before starting. Do not paste either into the conversation.

Workflow

Run each step with bash_tool. This skill is mounted read-only at /mnt/skills/examples/paint; write outputs to your working directory.

  1. Write the scene to a file in your working directory:
cat > scene.py <<'EOF'
   from paintkit import Canvas, hex_rgb

   def paint(cv: Canvas):
       cv.paper_texture(0.05)
       cv.wash(0, int(cv.h * 0.55), hex_rgb("#a7c4d8"), hex_rgb("#e8d7b8"),
               alpha=0.8, mottling=0.4)
       # ... more primitives, back to front
   EOF
  1. Render a quick preview:
python /mnt/skills/examples/paint/render.py scene.py -o preview.png --scale 0.5 --seed 1

only stdout, so without this step you never see what you drew.

  1. Look at it. Call the view tool on preview.png. bash_tool returns

that fights the light, a shape that sits in the wrong plane, an edge that should be lost) and edit only those lines in scene.py. Re-render and look again. Two or three rounds is usually enough.

  1. Critique and revise. Name the two things that read worst (a colour
  1. Render full size and deliver:
python /mnt/skills/examples/paint/render.py scene.py -o out.png --width 1600 --height 900 --seed 1

Then call present_files on out.png and scene.py. The scene file is the editable source; keep it so "make the sky darker" is an edit, not a new painting.

Keeping the transcript clean

Write and edit scene.py through bash_tool (heredoc, or a short Python -c that rewrites the file). Do not paste scene source into the chat as prose; a collapsed tool call is a few lines in the transcript.

Painting well

Work back to front and light to dark. Reserve whites by leaving paper unpainted or with a white outline; there is no white pigment. Two thin watercolorblob layers read better than one heavy flatshape. Distance is cool, low-contrast, wet, soft; foreground is warm, dark, dry, hard-edged. Use cv.rng for any procedural placement so the scene stays seeded.

Budget

The container has one CPU and a 300 s wall clock per call. A full 18-element scene renders in about a second at 1600×900. Use --scale 0.5 while iterating.

More skills from Razshy/Wiggle

  • Aalgorithmic-artCreating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
  • Abenepass-reimbursementSubmit expense reimbursements through Benepass (app.getbenepass.com). For users whose employer uses Benepass as their benefits platform. Handles login, benefit selection, form filling, receipt upload, and submission. Requires browser/computer-use capabilities.
  • Abrand-guidelinesApplies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
  • Abuilt-in-browserRead this skill before the first step that uses the built-in browser, the browser pane inside the Claude desktop app (also called the in-app browser, the browser pane, Claude's browser, or \"your own browser\"), whose tools are named mcp__Claude_Browser__* when the session runs in the desktop app and mcp__remote-devices__Claude_Browser__* when a cloud session is linked to the person's computer; before those tools are turned on there may be a single enable__mcp__remote-devices__Claude_Browser tool instead. It covers the pane's persistent sign-ins, tabs and preview_start, reading pages as text, site approvals, what the pane cannot open, and what to do when it cannot be reached. It is not for Claude in Chrome (mcp__claude-in-chrome__* tools), which has its own skill, and it does not decide which browser to use.
  • Acall-to-bookMake a phone call to book an appointment or reservation. Checks calendar first, gets explicit consent before dialing, discloses AI identity on the call, and adds the booking to calendar when done.
  • Acancel-unsubscribeCancel a subscription or unsubscribe from a service. Works from a description, a pasted charge line, a URL, or a photo/screenshot. Can also audit a full statement for recurring charges and cancel several at once. Finds the right contact method and handles the cancellation — including phone calls.
  • Acanvas-designCreate beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
  • Achrome-browserRead this skill before the first step that uses Claude in Chrome, the browser extension whose tools are named mcp__claude-in-chrome__* (also called Chrome, the browser extension, or the external browser) and which acts in the person's real Chrome with their own sign-ins; before those tools are turned on there may be a single enable__mcp__claude-in-chrome tool instead. It covers loading the tools in one ToolSearch call, checking the person's open tabs and working in a new tab, site permissions, GIF recordings, console logs, dialogs to avoid, and when to stop and ask. It is not for the built-in browser (mcp__Claude_Browser__* or mcp__remote-devices__Claude_Browser__* tools), which has its own skill, and it does not decide which browser to use.
  • Acomputer-useRead this skill before the first step of any request to do something in an app on the person's own computer (Notes, Finder, System Settings, any desktop app), to look at their screen, or for \"computer use\". Computer use (desktop control) lets Claude take screenshots of the person's desktop and control it with clicks, typing and scrolling through the Claude desktop app; its tools are named mcp__computer-use__* when the session runs in the desktop app and mcp__remote-devices__computer_* when a cloud session is linked to the person's computer; before a conversation is linked there may be no such tools, only an enable__mcp__remote-devices__Claude_Browser tool, which links it. It covers getting linked, picking the right tool, the access flow, and what to do when computer use is off or out of reach. It is not for websites, which go through Claude in Chrome or the built-in browser and their own skills.
  • Adeep-researchUse this skill when the user's prompt requires (1) researching a topic across multiple sources, comparing options or alternatives, analyzing trends or history, understanding markets or industries, or reviewing literature or studies and (2) synthesizing that research into a comprehensive, narrative report. If you're planning to search the web or internal knowledge bases, consider using this skill. This skill coordinates research subagents, so use it only when you have a tool for spawning subagents (the Agent or Task tool); otherwise, research the question directly.
  • Adoc-coauthoringGuide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.
  • AdocxUse this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx) or Word templates (.dotx). Triggers include: any mention of 'Word doc', 'word document', '.docx', '.dotx', or requests to produce professional documents with formatting like tables of contents, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx or .dotx files, inserting or replacing images in documents, find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a 'report', 'memo', 'letter', 'template', or similar deliverable as a Word or .docx file (to download, email or print), use this skill. However, if they ask for a document, page, report, memo, or notes WITHOUT naming a file format and the session offers a dedicated document or page skill or connector, use that instead. Do NOT use for PDFs, spreadsheets, Google Docs, or coding unrelated to document generation.

All agent skills → · MCP servers