Documentation

DressClaw Docs

Everything you need to install, configure, and master the outfit standard for OpenClaw agents.

Getting Started

DressClaw is a CLI tool that sits on top of OpenClaw. It requires Node.js 18+ and a working OpenClaw installation.

Installation

$ npm install -g dressclaw

Verify the installation by checking the version:

$ dressclaw --version

Your First Outfit

Create a new outfit scaffold with the new command. This generates the directory structure and a default outfit.yaml manifest.

$ dressclaw new my-agent
Note: DressClaw does not modify the OpenClaw runtime. All operations are non-invasive and fully reversible via dressclaw strip.

CLI Reference

All commands follow the pattern dressclaw <command> [options].

Command Description
wear <outfit>Apply an outfit to the current agent. Creates a snapshot of the current state before applying.
stripRemove the active outfit and restore the previous snapshot.
swap <outfit>Atomic strip + wear. Switches outfits in a single operation.
wardrobeList all available outfits (official + community + local).
new <name>Scaffold a new outfit directory with default manifest.
lint <path>Validate an outfit manifest against the schema.
diff [a] [b]Compare two outfits or compare active vs. manifest.
doctorDetect configuration drift between the manifest and runtime state.
eject <outfit>Clone an outfit to a local directory for customization.
mix <a> <b>Combine layers from two outfits to create a hybrid.

Outfit Manifest

Every outfit is defined by an outfit.yaml file at the root of its directory. This is the single source of truth for the agent's behavior.

Fields

Field Type Description
namestringUnique identifier for the outfit.
descriptionstringHuman-readable description of the agent role.
soulstringPath to the SOUL.md file (identity/personality).
cronsarrayScheduled automations with name, schedule, and message.
flowsarrayLobster workflow definitions (name + .lobster file path).
skillsobjectSkills policy: allow/deny list for tool access.
modelobjectDefault model configuration (provider/model-id).
extendsstringParent outfit to inherit from (composability).
outfit.yaml
# Example: trader outfit

name: trader
description: Crypto intelligence operator
soul: SOUL.md

crons:
  - name: morning-brief
    schedule: "0 7 * * *"
    message: "Prepare the morning market briefing"

flows:
  - name: whale-alert
    file: whale-alert.lobster

skills:
  allow: ["lobster"]

model:
  default: anthropic/claude-sonnet-4-20250514

Lifecycle

When you run dressclaw wear, the engine performs the following steps in order:

Step Action
1Snapshot the current agent state (soul, crons, flows, skills, model).
2Resolve the outfit manifest (load outfit.yaml, resolve extends, interpolate).
3Apply SOUL.md to the agent identity.
4Register cron jobs via the OpenClaw Bridge.
5Deploy Lobster flows.
6Configure skills policy and model defaults.
7Mark the outfit as active. Done.

Running dressclaw strip reverses this process, restoring the snapshot created in step 1.

Composability

Outfits can extend other outfits using the extends field. The child outfit inherits all layers from the parent and can override any of them selectively.

outfit.yaml
# A specialized trader that extends the base trader

name: defi-trader
extends: trader
description: DeFi-focused trading operator

crons:
  - name: yield-scan
    schedule: "0 */4 * * *"
    message: "Scan top DeFi yields across chains"

skills:
  allow: ["lobster", "defi-toolkit"]

The mix command lets you combine layers from two unrelated outfits. For example, mixing the crons from a trader with the flows from a researcher to create a hybrid role.

$ dressclaw mix trader researcher --name hybrid-analyst

Schema Validation

Every outfit manifest is validated against a formal JSON Schema. Use dressclaw lint to check your manifest before applying it.

$ dressclaw lint ./my-agent/outfit.yaml

Common validation checks include: required fields, valid cron expressions, file path existence, and skills policy format. The doctor command goes further by comparing the manifest against the actual runtime state to detect drift.