Code Pluginsource linked

Openclaw Draw Thingsv1.1.13

OpenClaw tool for Draw Things CLI - local AI image generation on Apple Silicon

openclaw-draw-things·runtime draw-things·by @acwilan
Community code plugin. Review compatibility and verification before install.
openclaw plugins install clawhub:openclaw-draw-things
Latest release: v1.1.13Download zip

Capabilities

configSchema
Yes
Executes code
Yes
HTTP routes
0
Providers
draw-things
Runtime ID
draw-things

Compatibility

Built With Open Claw Version
2026.4.5
Min Gateway Version
2026.4.0
Plugin Api Range
>=2026.4.0
Plugin Sdk Version
2026.4.5
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
The name/description, SKILL.md, and source code all consistently implement a Draw Things-based local image-generation provider for Apple Silicon. However, registry metadata lists "Required binaries: none" even though the README/SKILL.md and the code clearly expect a draw-things-cli binary (configurable via cliPath). This is an informational inconsistency (missing required-binary declaration) rather than a functional mismatch with the plugin's purpose.
Instruction Scope
Runtime instructions are narrowly scoped to installing Draw Things/its CLI, configuring the plugin, and generating images. The code executes a local CLI, creates an output directory under the user's home by default, and reads generated image files into memory. It does not call external web endpoints or request unrelated system data. One minor concern: the changelog claims path/output validation and restrictions to home or /tmp, but the visible code replaces ~ with homedir() and writes to the configured outputDir without an explicit validation step in the shown portion — so verify the installed plugin enforces outputDir constraints if you need strict directory restrictions.
Install Mechanism
There is no packaged installer spec in the registry (instruction-only for Homebrew/ClawHub) and the project contains source and dist files. Installation instructions ask you to install Draw Things CLI via Homebrew or to build the plugin locally with npm — both are standard. No remote, arbitrary archive downloads or unexpected install hosts are used in the instructions or code.
Credentials
The skill does not request environment variables, secrets, or unrelated credentials. It only needs access to a local CLI binary (configurable) and to write/read image files in an output directory; those privileges are proportional to its purpose. The package-lock contains many transitive packages (some are peer/dev deps) but there is no evidence those bring extra credential requirements into runtime.
Persistence & Privilege
The plugin is not marked always:true and registers itself as a provider via the OpenClaw plugin API, which is expected. It does not modify other plugins' configs or request system-wide persistent credentials. It performs normal provider registration and file I/O limited to the configured output directory.
Scan Findings in Context
[child_process_execfile] expected: The code uses node:child_process.execFile (promisified) to invoke the draw-things-cli binary. This is expected because the plugin wraps the Draw Things CLI for local image generation.
[filesystem_io_read_write] expected: The plugin creates an output directory, writes generated files, and reads them back into buffers. This is expected for returning generated images to OpenClaw.
Assessment
This plugin appears to do what it claims: call your local Draw Things CLI to generate images and return them to OpenClaw. Before installing: (1) verify you really have draw-things-cli installed from a trusted source (the SKILL.md recommends the official Homebrew tap), and set cliPath if the binary is not on PATH; (2) set outputDir to a directory you control (default is ~/Downloads/draw-things-output) — review permissions and contents after running; (3) if you require strict filesystem confinement, inspect the installed plugin code to confirm outputDir validation (the changelog mentions validation but the shown code does not visibly enforce it); (4) run the plugin in an isolated user account or with limited filesystem access if you want extra safety. The main inconsistency is that the registry metadata omits the required draw-things-cli binary — treat that as a documentation gap rather than a functional red flag.

Verification

Tier
source linked
Scope
artifact only
Summary
Validated package structure and linked the release to source metadata.
Commit
fa32c222ecc8
Tag
fa32c222ecc8b171dc1adc44db1d684a05041479
Provenance
No
Scan status
clean

Tags

latest
1.1.13

OpenClaw Draw Things

Local AI image generation for OpenClaw using Draw Things CLI on Apple Silicon. Generate images with Stable Diffusion, FLUX, and other models without API costs.

Features

  • 🖼️ Local image generation - No API keys needed
  • 🍎 Apple Silicon optimized - Uses Core ML for fast inference
  • 🤖 Multiple models - SD, FLUX, and more
  • OpenClaw integration - Native tool support

Prerequisites

  • macOS with Apple Silicon (M1/M2/M3/M4)
  • Draw Things app installed from Mac App Store
  • Draw Things CLI installed via Homebrew:
    brew tap drawthingsai/draw-things
    brew install draw-things-cli
    
  • OpenClaw 2026.4.0 or later
  • AI Models downloaded in Draw Things app (see Models section below)

Installation

From ClawHub (Recommended)

openclaw plugins install openclaw-draw-things

Manual Installation

git clone https://github.com/acwilan/openclaw-draw-things.git
cd openclaw-draw-things
npm install
npm run build
openclaw plugins install "$(pwd)"

Configuration

Add to your ~/.openclaw/openclaw.json:

{
  "plugins": {
    "entries": {
      "draw-things": {
        "enabled": true,
        "config": {
          "cliPath": "draw-things-cli",
          "outputDir": "~/Downloads/draw-things-output",
          "defaultModel": "realistic_vision_v5.1_f16.ckpt",
          "defaultWidth": 1024,
          "defaultHeight": 1024,
          "defaultSteps": 20,
          "defaultCfg": 7
        }
      }
    }
  },
  "agents": {
    "defaults": {
      "imageGenerationModel": {
        "primary": "draw-things/realistic_vision_v5.1_f16.ckpt"
      }
    }
  }
}

Config Options

OptionTypeDefaultDescription
cliPathstringdraw-things-cliPath to Draw Things CLI binary
modelsDirstring-Optional override for models directory
outputDirstring~/Downloads/draw-things-outputWhere to save generated images
defaultModelstring-Default model file (e.g., flux_2_klein_4b_q6p.ckpt)
defaultWidthnumber1024Default output width (multiple of 64)
defaultHeightnumber1024Default output height (multiple of 64)
defaultStepsnumber20Sampling steps (higher = better quality, slower)
defaultCfgnumber7CFG guidance scale (higher = stricter prompt adherence)

Models

Download models from the Draw Things model browser (open Draw Things app → Models → Download Models):

ModelDescription
realistic_vision_v5.1_f16.ckptPhotorealistic images (recommended default)
flux_2_klein_4b_q6p.ckptFLUX.2 Klein 4-bit quantized (fast, good quality)
flux_1_schnell_4b_q8p.ckptFLUX.1 Schnell for fast generation
sd_xl_base_1.0_f16.ckptStable Diffusion XL

Models are stored in:
~/Library/Containers/com.liuliu.draw-things/Data/Documents/Models/

Or specify a custom modelsDir in the plugin config.

Usage

Once installed and configured, OpenClaw can generate images:

Generate an image of a sunset over mountains

Or use explicit tool calls:

Use image_generate to create a cartoon cat

Troubleshooting

"No image-generation provider registered"

Make sure the imageGenerationModel.primary is set correctly:

"imageGenerationModel": {
  "primary": "draw-things/your-model.ckpt"
}

"Model not found"

  • Verify the model file exists in Draw Things
  • Check the exact filename in the Models directory
  • Ensure modelsDir config matches your setup if using custom location

"draw-things-cli command not found"

Install the CLI via Homebrew:

brew tap drawthingsai/draw-things
brew install draw-things-cli

Plugin not loading

Check the plugin is enabled:

openclaw plugins list

If needed, restart the gateway:

openclaw gateway restart

Development

# Install dependencies
npm install

# Build
npm run build

# Watch mode
npm run dev

# Run tests
npm test

Releasing

# Patch version (1.0.0 → 1.0.1)
npm run release:patch

# Minor version (1.0.0 → 1.1.0)
npm run release:minor

# Major version (1.0.0 → 2.0.0)
npm run release:major

This handles version bump, manifest sync, changelog, commit, tag, and push automatically.

License

MIT © Andres Rovira

Links