Agent skill

Image Inpaint Region

by godot-fun in godot-fun/gai

Local circular region inpainting with LaMa (IOPaint). An agent skill from godot-fun/gai.

MITAuto-check passedMedia & Creative

Install Image Inpaint Region

skills CLI
$ npx skills add godot-fun/gai --skill image-inpaint-region -a claude-code

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

GitHub CLI
$ gh skill install godot-fun/gai image-inpaint-region --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/godot-fun/gai.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/image-inpaint-region .claude/skills/image-inpaint-region && 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
image-inpaint-region
GitHub stars
183
Token cost
~1.6k tokens
SKILL.md length
665 words
Files
1
Skills in repo
36
Repo updated
First seen
Licence
MIT

At a glance

Local circular region inpainting with LaMa (IOPaint). An agent skill from godot-fun/gai.

  • Works in 5 steps: Open the image as RGB (same as iopaint… → Draw a filled circle mask from --region… → Binarize mask at 127 (same as… → …
  • Local region inpaint / local region repair / inpaint when circle center and radius cx
  • SKILL.md covers Rules, Setup (first run), Quick Start and How it works, plus 7 more sections
  • Calls python, pip and git; reaches download.pytorch.org

What it does

Image Inpaint Region is an agent skill from godot-fun/gai. Local circular region inpainting with LaMa (IOPaint). Uses IOPaint default InpaintRequest and mask handling. Use for local region inpaint / local region repair / inpaint when circle center and radius cx,cy,r are known.

Its SKILL.md is about 1.6k 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 Media & Creative. It works with Python. The repository describes itself as: A lightweight AI agent and skill workflow framework built with Godot. The licence is MIT.

When your agent uses it

  • Local region inpaint / local region repair / inpaint when circle center and radius cx

Example prompts

  • “/image-inpaint-region”

Requirements

  • Python 3

Workflow steps

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

  1. Open the image as RGB (same as iopaint batch processing).
  2. Draw a filled circle mask from --region cx,cy,r.
  3. Binarize mask at 127 (same as iopaint.batch_processing / API).
  4. Call ModelManager with InpaintRequest() defaults.
  5. Write PNG via pil_to_bytes(..., "png", 100, ...).

What it can do on your machine

Read from SKILL.md and the folder at commit 6394686. 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

    Shell commands in SKILL.md call:

    • python
    • pip
    • git

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

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • download.pytorch.org

    Also links to:

    • github.com

    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

Image Inpaint Region loads about 1.6k tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 665 words of instructions outside code blocks.

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

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 godot-fun/gai at commit 6394686, republished under its MIT licence (© godot-fun). 665 words, ~1,619 tokens.

Download SKILL.mdSave it as .claude/skills/image-inpaint-region/SKILL.md (or your agent's skills folder).
name
image-inpaint-region
description
Local circular region inpainting with LaMa (IOPaint). Uses IOPaint default InpaintRequest and mask handling. Use for local region inpaint / local region repair / inpaint when circle center and radius cx,cy,r are known.

Image Inpaint Region (LaMa)

Local circular region inpainting with IOPaint LaMa. Builds a circular mask from --region cx,cy,r, then runs the same inference path as iopaint run / the IOPaint API.

Both --image and --region cx,cy,r are required.

Rules

When this skill applies, read and follow skill-dependency-manager — run scripts as documented, install missing tools into .dependency/.

  • Run inpaint.py through the iopaint manifest entry (.dependency/iopaint/.venv/). Never use host python, py, python3, or any interpreter outside .dependency/.
  • Do not hand-write equivalent inpaint commands — use the bundled script.
  • Single file only. Pass one image with --image; directories are not supported.
  • Require region first. If --region cx,cy,r is missing, inspect the image (or ask the user) before running.
  • Use IOPaint defaults for inference config unless the user explicitly asks otherwise — do not invent custom mask blur, compositing, or hd_strategy overrides in the script.
  • Pass the input path as-is. Output goes to <image-dir>/image-inpaint-region/ by default — no path rewriting.
  • Never overwrite source files. Output lands in image-inpaint-region/ or --output.

Setup (first run)

IOPaint needs Python 3.11 and PyTorch. From project root:

bash
.dependency/python-3.11/python.exe -m venv .dependency/iopaint/.venv
.dependency/iopaint/.venv/Scripts/python.exe -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118
.dependency/iopaint/.venv/Scripts/python.exe -m pip install iopaint

CPU-only: skip the CUDA torch line and pip install iopaint (pulls CPU torch). Use bin/python on Unix.

Register in .dependency/manifest.json:

json
"iopaint": {
  "populated": true,
  "bin": ".dependency/iopaint/.venv/Scripts/python.exe"
}

LaMa weights (big-lama.pt) download on first run.

Quick Start

Both --image and --region are required:

bash
# image/foo.png → image/image-inpaint-region/foo.png
# center (148, 248), radius 48
.dependency/iopaint/.venv/Scripts/python.exe .ai/image-inpaint-region/inpaint.py --image image/foo.png --region 148,248,48

GPU inference:

bash
.dependency/iopaint/.venv/Scripts/python.exe .ai/image-inpaint-region/inpaint.py --image image/foo.png --region 148,248,48 --device cuda

Custom output path:

bash
.dependency/iopaint/.venv/Scripts/python.exe .ai/image-inpaint-region/inpaint.py --image image/foo.png --region 148,248,48 -o image/foo_inpainted

How it works

  1. Open the image as RGB (same as iopaint batch processing).
  2. Draw a filled circle mask from --region cx,cy,r.
  3. Binarize mask at 127 (same as iopaint.batch_processing / API).
  4. Call ModelManager with InpaintRequest() defaults.
  5. Write PNG via pil_to_bytes(..., "png", 100, ...).

IOPaint defaults used

These come from InpaintRequest() and iopaint run — the script does not override them:

SettingDefaultNotes
--modellamaSame as iopaint run
--devicecpuSame as iopaint run / start; use --device cuda when GPU is available
hd_strategyCropLaMa erase-model preprocessing
hd_strategy_crop_trigger_size800Crop when long side > 800 px
hd_strategy_crop_margin128Margin around mask for crop strategy
Mask threshold127>= 127 → 255, else 0

The skill only adds --region cx,cy,r so you do not need a separate mask file.

Options

OptionDefaultNotes
--imageRequiredSingle supported image file
--regionRequiredcx,cy,r — center x, center y, radius in pixels
Output<image-dir>/image-inpaint-region/<name>.pngUse -o / --output for custom file or directory
--modellamaIOPaint model name
--devicecpucpu or cuda (falls back via IOPaint check_device)

Supported inputs: .png, .jpg, .jpeg, .webp, .gif, .bmp, .tif, .tiff, .avif, .ico.

Show full SKILL.md (267 more words)Show less

Agent Workflow

  1. Confirm source — user path only; do not copy into image/ or use chat attachment cache.
  2. Confirm region — inspect the image and determine circle center (cx, cy) and radius r before running.
  3. One file per run — process one image, verify the result, then repeat for additional files if needed.
  4. Inspect — check the inpainted area; leftover content → larger r; nearby art eaten → smaller r or move center.
  5. Revert — delete the output file or git restore; sources are never modified.

Agent Notes

  1. Use the bundled script, not hand-written IOPaint CLI with separate mask files unless the user already has a mask image.
  2. Missing iopaint venv → populate .dependency/ per skill-dependency-manager, retry same command.
  3. Do not copy, move, or replace the source with inpainted output — tell the user where the output file is.
  4. For full IOPaint UI / brush mask editing, use the upstream iopaint start workflow instead.

Troubleshooting

IssueFix
iopaint missing / not populatedFollow Setup; update manifest
Missing --regionInspect image; both --image and --region cx,cy,r are required
Invalid --regionMust be three numbers: center x, center y, radius (> 0)
Directory passed to --imageRun once per file; this skill accepts image files only
Output already existsDelete the existing output or choose a different -o path
CUDA not availableIOPaint falls back to cpu via check_device
Target still visibleIncrease radius r in --region
Nearby art eatenDecrease radius r; adjust center (cx, cy)
Wrong interpreterMust use .dependency/iopaint/.venv/Scripts/python.exe

CLI

Copy-paste commands: cli/image-inpaint-region.md

  • Engine: Sanster/IOPaint (LaMa)
  • Upstream batch CLI: iopaint run --model lama --device cpu --image ... --mask ... --output ...

© godot-fun, MIT. 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 .agents/skills/image-inpaint-region of godot-fun/gai.

Open the folder on GitHubat commit 6394686

Compare with similar skills

Image Inpaint Region 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.

Image Inpaint Region compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Image Inpaint Region this skillgodot-fun/gai183—~1.6kAutomated safety check: PassMIT
Cap Cinematic Demo GeneratorCapSoftware/Cap23k—~2.4kAutomated safety check: PassCustom licence
Edu Math Videowy51ai/edulab1.4k—~2.5kAutomated safety check: NotesApache-2.0
Book Video Factorybytec-ai/book-video-factory321—~1.4kAutomated safety check: NotesNone
Jianying EditorisYangs/jianying-editor-skill214—~1.9kAutomated safety check: PassMIT
Srt Vox Directorgeeklee/srt-vox-director105—~1.8kAutomated safety check: PassNone

Similar skills

  • Turns any URL into a short cinematic product-demo video on macOS, scouting the page, recording it with virtual input, then treating the clip with Cap's 3D camera and music.

    23k GitHub stars~2.4k tokensUpdated today
    Media & CreativeAuto-check passed
  • Edu Math Video

    wy51ai/edulab

    A skill your agent uses when asked to make an explainer / walkthrough video (讲解视频、解题视频、例题精讲、微课) for a math problem (数学题, geometry, algebra, functions, motion/行程 problems), from a problem screenshot…

    1.4k GitHub stars~2.5k tokensUpdated yesterday
    Media & CreativeAuto-check: notes
  • Book Video Factory

    bytec-ai/book-video-factory

    通用的多账号图书短视频生产工作流。用于用户希望建立图书号项目目录、配置账号级片头/声音/BGM/视觉规范,或只提供一本书后依次完成资料研究、口播稿、分镜、图片、配音、字幕、预览与成片导出。适用于新建工作区、批量管理多个账号、继续已有单书任务和检查生产状态;不绑定特定研究、图片、TTS、转录或视频渲染供应商。

    321 GitHub stars~1.4k tokensUpdated 2 mo ago
    Media & CreativeAuto-check: notes
  • Jianying Editor

    isYangs/jianying-editor-skill

    剪映 (JianYing) AI自动化剪辑的高级封装 API。支持录屏、素材导入、字幕生成、Web 动效合成及项目导出。

    214 GitHub stars~1.9k tokensUpdated 6 mo ago
    Media & CreativeAuto-check passed
  • Srt Vox Director

    geeklee/srt-vox-director

    把已经写好的字幕(SRT / 配音稿 / 解说词 / 旁白稿)变成 Vox 风格解释视频的分镜与提示词包——参考图提示词、图生视频提示词、分镜表、关键词台账、视觉圣经、风格选择。只交付文本提示词,不生成任何图片或视频。适用于用户已有成片旁白、想做成分镜或配画面、需要切分镜头与处理时长差值、选定视觉风格,或出图/出片失败后诊断修复(字错了、画面没动、风格跑偏等)。

    105 GitHub stars~1.8k tokensUpdated 2 mo ago
    Media & CreativeAuto-check passed
  • Dreamina CLI

    yuyou-dev/dreamina-cli-skill

    A skill your agent uses when an agent needs Dreamina(即梦) generation, task querying, account checks, or login/session operations through the packaged Python wrapper scripts around the dreamina CLI.

    129 GitHub stars~1.1k tokensUpdated 2 mo ago
    Media & CreativeAuto-check passed

More from godot-fun/gai

All 36 skills in this repo
  • AI Text To Speech

    godot-fun/gai

    Zero-shot text-to-speech with voice cloning via IndexTTS2 (index-tts).

    184 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Audio Denoise

    godot-fun/gai

    Reduces background noise in a single audio file using FFmpeg afftdn.

    184 GitHub stars~465 tokensUpdated today
    Auto-check passed
  • Audio Fade

    godot-fun/gai

    Applies fade-in and fade-out at the start and end of a single audio file using FFmpeg.

    184 GitHub stars~652 tokensUpdated today
    Auto-check passed
  • Normalizes a single audio file to consistent LUFS loudness with true-peak limiting using FFmpeg.

    184 GitHub stars~684 tokensUpdated today
    Auto-check passed
  • Standardizes a single audio file to 44100 or 48000 Hz and exports 16-bit PCM WAV using FFmpeg.

    184 GitHub stars~638 tokensUpdated today
    Auto-check passed
  • Audio Split

    godot-fun/gai

    Splits a single audio file into two segments (part 1 before the split point, part 2 after) using FFmpeg.

    184 GitHub stars~554 tokensUpdated today
    Auto-check passed

Works with

Questions about Image Inpaint Region

What does Image Inpaint Region do?

Local circular region inpainting with LaMa (IOPaint). An agent skill from godot-fun/gai. Image Inpaint Region is an agent skill from godot-fun/gai. Local circular region inpainting with LaMa (IOPaint).

When should I use Image Inpaint Region?

Image Inpaint Region fits situations like: local region inpaint / local region repair / inpaint when circle center and radius cx.

How do I install Image Inpaint Region in Claude Code?

Run `npx skills add godot-fun/gai --skill image-inpaint-region -a claude-code`. Or copy the skill folder (.agents/skills/image-inpaint-region in godot-fun/gai) into .claude/skills/image-inpaint-region in your project. Claude Code loads it when a task matches its description.

How do I install Image Inpaint Region in Codex?

Run `npx skills add godot-fun/gai --skill image-inpaint-region -a codex`. Or copy the skill folder (.agents/skills/image-inpaint-region in godot-fun/gai) into .agents/skills/image-inpaint-region in your project. Codex loads it when a task matches its description.

Can I use Image Inpaint Region 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 godot-fun/gai --skill image-inpaint-region -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/image-inpaint-region, .gemini/skills/image-inpaint-region, .github/skills/image-inpaint-region and .opencode/skills/image-inpaint-region in your project.

What does Image Inpaint Region need to run?

Going by SKILL.md and its folder, Image Inpaint Region needs the command-line tools its instructions call (python, pip and git). Our summary lists: Python 3.

Does Image Inpaint Region access the network?

SKILL.md names 2 domains. In commands or code: download.pytorch.org; the agent is likely to contact it when it follows the instructions. As links in the text: github.com. This is read from the text; nothing was executed.

Is Image Inpaint Region 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 Image Inpaint Region use?

Image Inpaint Region is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Image Inpaint Region use?

About 1.6k tokens (SKILL.md is roughly 6.5k 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 Image Inpaint Region?

Skills that share tags, products or a category with Image Inpaint Region: Cap Cinematic Demo Generator (CapSoftware/Cap, 23k stars), Edu Math Video (wy51ai/edulab, 1.4k stars), Book Video Factory (bytec-ai/book-video-factory, 321 stars) and Jianying Editor (isYangs/jianying-editor-skill, 214 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Image Inpaint Region?

godot-fun (a GitHub organization) maintains it in godot-fun/gai, which has 183 GitHub stars. The repository holds 36 skills in this directory. The repository was last updated on October 10, 2026.

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