Bevy ECS skill for 2D sprite animation. Keywords: Bevy, sprite, animation, AnimationPlayer, AnimationClip, 2D.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Agentic eyes for Godot work: cross-platform screenshot CLI (asset/region/window/screen) to budgeted WebP, TEMP editor viewport bridge under .gdskills/, and Taste Receptor Atlas v2 (~237 micro-receptors × 0–2: hierarchy, contrast, typography×41, affordance, space, color, icon, composition, light/FX, motion-tells, anti-slop, originality, identity). Use when agents must see UI, assets, or the editor — not for in-game screenshot Autoloads. Keywords: agent vision, screenshot, WebP, visual QA, taste receptors, typography, UI review, asset sheet, editor viewport, anti-slop.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치 방법 보기설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Host-side eyes for coding agents building Godot projects: capture → budgeted WebP → scored visual review. Not a game Autoload, not an exportable screenshot API.
Do NOT Load every reference for one task. Load the MANDATORY file for the active mode, then only the rubric axes you are scoring.
addons/_gdskills_agent_vision/ committed — stage, capture, teardown.--keep-bridge on after debugging — skips teardown and dirties the consumer project.--detail only when pixels fail (especially type).SLOP-STACK / TYPE-DISPLAY-HUD-SPLIT).TYPE-DISPLAY-HUD-SPLIT ship blocker; data type is boring on purpose.grim, X11, or editor bridge..gdskills/vision/** — ensure .gdskills/ is gitignored first.| Need | Mode | MANDATORY loads |
|---|---|---|
| Asset files / sheets | asset | capture-modes.md, webp-budgets.md, rubric V6–V8 + originality-sight.md |
| Desktop rectangle | region | capture-modes + budgets + rubric axes in frame |
| Godot/editor/game window | window --title | capture-modes (OS limits!) |
| Full monitor | screen | last resort (secret chrome) |
| Editor 2D/3D pixels | editor | editor-bridge-lifecycle.md |
After capture: Read WebP(s) → score Taste Receptor Atlas (not vibes) → zero-list + ordered fixes keyed to receptor IDs. If any TYPE-* / micro-seam ≤1 for illegibility at 512 short-edge, re-capture --detail or text crop before locking.
pip install -r skills/godot-agent-vision/requirements-vision.txt
# optional macOS window titles:
# pip install pyobjc-framework-Quartz
Requires a display session. Use repo/project venv Python.
Do NOT Load every script. Call only what the mode needs.
Main CLI: doctor, list-windows, screen, region, window, asset, editor. Prints wrote=, bytes=, budget=short-edge:N|long-edge:N.
Default fit short-edge 512; --detail / --max-edge switches to long-edge cap (1568). Never upscales. Soft re-encode if >1MB.
Single asset or ≤2×2 contact sheet with labels; res:// resolution against --project-root.
Appends .gdskills/ so vision scratch never stages.
Stages TEMP addon, optional --godot launch, handshake wait, WebP encode, teardown + project.godot plugin strip.
@tool EditorPlugin polls request → raw/*.png → doneget_global_rect → Image.get_region)python skills/godot-agent-vision/scripts/capture.py doctor
python skills/godot-agent-vision/scripts/capture.py window --project-root . --title Godot
python skills/godot-agent-vision/scripts/capture.py asset --project-root . --paths res://ui/icons --sheet
python skills/godot-agent-vision/scripts/capture.py editor --project-root . --editor-mode 3d --godot "%GODOT_PATH%"
# typography / OCR / dense layout only:
python skills/godot-agent-vision/scripts/capture.py window --project-root . --title Godot --detail
Default out: {project}/.gdskills/vision/YYYYMMDD-HHMMSS-<mode>[-label].webp
MANDATORY platform landmines: capture-modes.md. MANDATORY budgets: webp-budgets.md.
Stages templates → addons/_gdskills_agent_vision/ → .gdskills/vision/{request,raw,done} → WebP → delete addon + restore enabled=.
MANDATORY: editor-bridge-lifecycle.md. Prefer EditorPlugin over EditorScript (await across RefCounted is unsafe).
MANDATORY primary: taste-receptors.md — 237 micro-receptors across 13 families (HIER, CTRST, TYPE×41, AFF, SPACE, COLOR, ICON, COMP, LIGHT, MOT, SLOP, ORIG, ID), each 0/1/2, grade by % of applicable, hard gates. Routing + V-rollup: vision-review-rubric.md.
| When scoring… | Load |
|---|---|
| Any review | MANDATORY taste-receptors.md |
| TYPE-* / HUD numerals / menus | MANDATORY typography-sight.md |
| HIER-* / CTRST-* | hier-contrast-receptors.md |
| SPACE-* / AFF-* | space-affordance-receptors.md |
| COLOR-* / ICON-* | color-icon-receptors.md |
| COMP-* / LIGHT-* / MOT-* | composition-fx-receptors.md |
| SLOP-* / UI cross-check | anti-slop-sight.md, ui-taste-sight.md |
| ORIG-* | originality-sight.md |
| ID-* | identity-sight.md |
mss before DPI-clobbering imports; monitors[0] virtual union can be negative-origin; longest title match for Godot’s path-in-title windows.screencapture CLI attribution breaks under agents — prefer in-process Quartz/mss.grim on wlroots; no silent title grab; portal paths are interactive.res:// resolves against --project-root; missing paths must error loudly — never invent files.await RenderingServer.frame_post_draw safely; EditorScript is RefCounted and can free mid-await.EditorInterface.get_editor_viewport_2d/3d → get_texture().get_image() after ≥1–2 frame waits; set main screen 2D/3D first or texture is stale/empty.get_image() ⇒ missing await or wrong main screen — not proof the GPU is fine.raw/, then done flag; Python waits for size-stable PNG.res://addons/_gdskills_agent_vision/plugin.cfg from [editor_plugins] enabled= and delete the addon — underscore name signals private/temp.get_global_rect → Image.get_region, clamped to bounds.HIER-WEIGHT-MATH); peripheral HUD must read as shape (HIER-PERIPH-READ); contrast is worst-case on plates (CTRST-GRAD-WORST, CTRST-BODY-45).SLOP-STACK=0 / overall F.TYPE-DISPLAY-HUD-SPLIT, TYPE-OPSZ-MATCH, TYPE-NUM-TABULAR/TIMER-STABLE, TYPE-GLYPH-INTEGRITY, TYPE-FACE-CAP — display cuts at HUD size and tabular wobble are zeroes, not “style.”COLOR-ONLY / ICON-SIL).COMP-POWER-CONFLICT); bloom/particles must not replace hierarchy or occlude UI; freeze-frames leak shake/tween artifacts (MOT-*) — sequence capture when peak ambiguous.asset (± sheet) → Read → score COLOR/ICON/ORIG/ID/SLOP (+ TYPE if labels) → fixes.window (else region) → Read → score all applicable atlas families → fixes.editor → teardown → score → fixes.screen (last resort).--detail or text crop → re-score those receptors.Progressive disclosure: open Official Documentation only for a specific API; load Related Skills when routing to a peer domain — do not preload the whole lattice.
get_editor_viewport_2d/3d, main screen switch before grab.Image captures.save_png, get_region for Control crops.frame_post_draw wait before texture readback..gitignore hygiene before vision scratch.GODOT_PATH patterns when launching editor for bridge captures.아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Bevy ECS skill for 2D sprite animation. Keywords: Bevy, sprite, animation, AnimationPlayer, AnimationClip, 2D.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Bevy ECS skill for 3D lights. Keywords: Bevy, lighting, directional, point, spot, bevy_light, PBR.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Bevy ECS skill for PBR materials. Keywords: Bevy, StandardMaterial, PBR, material, ExtendedMaterial.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Bevy ECS skill for 3D level assembly. Keywords: Bevy, level, scene, mesh, world, ECS.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Bevy ECS skill for abilities. Keywords: Bevy, ability, cooldown, ECS, gameplay.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Bevy ECS skill for moving a Bevy game from 2D to 3D. Keywords: Bevy, 2D, 3D, adapt, camera, sprite.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.