cli-anything-gimp — Claude Code skill: what it does, how to install
Provides a stateful image editing CLI built on Pillow and GIMP for AI agents. It handles layers, drawing, and headless rendering without a GUI.
npx skills add HKUDS/CLI-Anything --skill cli-anything-gimp -a claude-codeWhat cli-anything-gimp does
This skill equips the agent with a command-line interface for multi-layer image editing. Projects persist as JSON files that store layer hierarchies, canvas settings, color modes, and DPI. The tool supports layer transformations, transparency adjustments, and filter effects. Drawing operations like text and rectangles stay in the project structure and execute when the file renders.
Setup requires Python 3.10 or newer along with the cli-anything-gimp package from pip. While native GIMP batch rendering is recommended, compositions still render fine via Pillow when GIMP is absent. The CLI provides interactive REPL navigation and an undo history of up to 50 steps. Passing the --json flag formats terminal output for programmatic consumption by AI agents.
Always inspect the exported output image directly rather than trusting the saved project JSON. Deferred text and rectangle operations only show their visual layout during rendering, so automated verification requires looking at the generated file.
What it helps with
- manipulate multi-layer graphic compositions without opening a GUI
- add text and shapes onto specific layers with coordinate offsets
- batch render image projects through headless CLI commands
- inspect image histograms and verify referenced media assets
Example prompts for the agent
- Create a new image project with cli-anything-gimp and import a background layer from file.
- Adjust the offset of layer 0 and render the composition to output.png.
- Add a text overlay on layer 0 and export the final image using the Pillow path.
How to install cli-anything-gimp
1Skills CLI (Vercel)
npx skills add HKUDS/CLI-Anything --skill cli-anything-gimp -a claude-code2Manually: put the files in place
~/.claude/skills/cli-anything-gimp/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/cli-anything-gimp/
1Skills CLI (Vercel)
npx skills add HKUDS/CLI-Anything --skill cli-anything-gimp -a codex2Manually: put the files in place
.agents/skills/cli-anything-gimp/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add HKUDS/CLI-Anything --skill cli-anything-gimp -a cursor2Manually: put the files in place
.cursor/skills/cli-anything-gimp/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install HKUDS/CLI-Anything cli-anything-gimp2Manually: put the files in place
.github/skills/cli-anything-gimp/SKILL.md1Skills CLI (Vercel)
npx skills add HKUDS/CLI-Anything --skill cli-anything-gimp -a gemini-cli2Platform CLI
gemini skills install https://github.com/HKUDS/CLI-Anything --path skills/cli-anything-gimpManually: put the files in place
.devin/skills/cli-anything-gimp/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add HKUDS/CLI-Anything --skill cli-anything-gimp -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set18
The whole set →Similar
Questions about cli-anything-gimp
How to install cli-anything-gimp in Claude Code?
Run npx skills add HKUDS/CLI-Anything --skill cli-anything-gimp -a claude-code to add the skill. You also need to install the CLI package by running pip install cli-anything-gimp.
What does cli-anything-gimp do?
It provides a stateful CLI for image manipulation built on Pillow with optional GIMP batch rendering. Agents can manage layers, alter canvas properties, and render compositions without a GUI.
Is a local GIMP installation required?
No, GIMP is not strictly required. It is recommended for native batch rendering, but the tool falls back to built-in Pillow rendering whenever GIMP is missing.
Source text
SKILL.md · Apache-2.0
--- name: "cli-anything-gimp" description: >- Command-line interface for Gimp - A stateful command-line interface for image editing, built on Pillow. Designed for AI agents and pow... --- # cli-anything-gimp A stateful command-line interface for image editing, built on Pillow. Designed for AI agents and power users who need to create and manipulate images without a GUI. ## Installation This CLI is installed as part of the cli-anything-gimp package: ```bash pip install cli-anything-gimp ``` **Prerequisites:** - Python 3.10+ - gimp is recommended for native batch rendering, but layered compositions can still render through the built-in Pillow path when GIMP is unavailable or when deferred `draw` operations are present ## Usage ### Basic Commands ```bash # Show help cli-anything-gimp --help # Start interactive REPL mode cli-anything-gimp # Create a new project cli-anything-gimp project new -o project.json # Run with JSON output (for agent consumption) cli-anything-gimp --json project info -p project.json ``` ### REPL Mode When invoked without a subcommand, the CLI enters an interactive REPL session: ```bash cli-anything-gimp # Enter commands interactively with tab-completion and history ``` ## Command Groups ### Project Project management commands. | Command | Description | |---------|-------------| | `new` | Create a new project | | `open` | Open an existing project | | `save` | Save the current project | | `info` | Show project information | | `profiles` | List available canvas profiles | | `json` | Print raw project JSON | ### Layer Layer management commands. | Command | Description | |---------|-------------| | `new` | Create a new blank layer | | `add-from-file` | Add a layer from an image file | | `list` | List all layers | | `remove` | Remove a layer by index | | `duplicate` | Duplicate a layer | | `move` | Move a layer to a new position | | `set` | Set a layer property (name, opacity, visible, mode, offset_x, offset_y); negative offsets are accepted naturally | | `flatten` | Flatten all visible layers | | `merge-down` | Merge a layer with the one below it | ### Canvas Canvas operations. | Command | Description | |---------|-------------| | `info` | Show canvas information | | `resize` | Resize the canvas (without scaling content) | | `scale` | Scale the canvas and all content proportionally | | `crop` | Crop the canvas to a rectangle | | `mode` | Set the canvas color mode | | `dpi` | Set the canvas DPI | ### Filter Group Filter management commands. | Command | Description | |---------|-------------| | `list-available` | List all available filters | | `info` | Show details about a filter | | `add` | Add a filter to a layer | | `remove` | Remove a filter by index | | `set` | Set a filter parameter | | `list` | List filters on a layer | ### Media Media file operations. | Command | Description | |---------|-------------| | `probe` | Analyze an image file | | `list` | List media files referenced in the project | | `check` | Check that all referenced media files exist | | `histogram` | Show histogram analysis of an image | ### Export Group Export/render commands. | Command | Description | |---------|-------------| | `presets` | List export presets | | `preset-info` | Show preset details | | `render` | Render the project to an image file; deferred draw ops are applied at render time | ### Session Session management commands. | Command | Description | |---------|-------------| | `status` | Show session status | | `undo` | Undo the last operation | | `redo` | Redo the last undone operation | | `history` | Show undo history | ### Draw Drawing operations (applied at render time). | Command | Description | |---------|-------------| | `text` | Draw text on a layer (by converting it to a text layer) | | `rect` | Draw a rectangle (stored as drawing operation) | ## Examples ### Create a New Project Create a new gimp project file. ```bash cli-anything-gimp project new -o myproject.json # Or with JSON output for programmatic use cli-anything-gimp --json project new -o myproject.json ``` ### Interactive REPL Session Start an interactive session with undo/redo support. ```bash cli-anything-gimp # Enter commands interactively # Use 'help' to see available commands # Use 'undo' and 'redo' for history navigation ``` ### Export Project Export the project to a final output format. ```bash cli-anything-gimp --project myproject.json export render output.png --overwrite ``` ### Layered Composition Workflow For overlay-heavy compositions: ```bash cli-anything-gimp --project poster.gimp-cli.json layer set 0 offset_x -48 cli-anything-gimp --project poster.gimp-cli.json layer set 0 offset_y 24 cli-anything-gimp --project poster.gimp-cli.json draw text --layer 0 --text "Launch Night" --x 96 --y 120 --size 72 --color "#f6f1e8" cli-anything-gimp --project poster.gimp-cli.json export render output.png --overwrite ``` Notes: - `layer set` now accepts negative `offset_x` and `offset_y` values in both command mode and REPL mode. - `draw text` and `draw rect` are render-time operations. Treat the exported image, not only the project JSON, as the thing to review. - For projects with deferred draw ops, expect the Pillow render path to be the stable default even if GIMP is installed. ## State Management The CLI maintains session state with: - **Undo/Redo**: Up to 50 levels of history - **Project persistence**: Save/load project state as JSON - **Session tracking**: Track modifications and changes ## Output Formats All commands support dual output modes: - **Human-readable** (default): Tables, colors, formatted text - **Machine-readable** (`--json` flag): Structured JSON for agent consumption ```bash # Human output cli-anything-gimp project info -p project.json # JSON output for agents cli-anything-gimp --json project info -p project.json ``` ## For AI Agents When using this CLI programmatically: 1. **Always use `--json` flag** for parseable output 2. **Check return codes** - 0 for success, non-zero for errors 3. **Parse stderr** for error messages on failure 4. **Use absolute paths** for all file operations 5. **Verify outputs exist** after export operations 6. **Review rendered outputs** after offset, draw, blend-mode, or filter changes instead of trusting saved project state alone ## More Information - Full documentation: See README.md in the package - Test coverage: See TEST.md in the package - Methodology: See HARNESS.md in the cli-anything-plugin ## Version 1.0.0
© HKUDS · Apache-2.0 · HKUDS/CLI-Anything