Groups Compose

Uspořádává související uzly pai-pro plátna do pojmenovaných rámců s vypočítanými ohraničujícími boxy

od Utopai-Research · Utopai-Research/pai-pro

Funguje s nastavením ★ 8.4/10

Groups Compose — Uspořádává související uzly pai-pro plátna do pojmenovaných rámců s vypočítanými ohraničujícími boxy

Co umí

Seskupuje související uzly na pai-pro filmovém plátně – záběry scén, sady referencí postav, rytmy aktů – do pojmenovaných vizuálních rámců, přesouvá členy do rozložení v pořadí čtení a počítá ohraničující box rámce s pevnými velikostmi karet a 24px odsazením. Vydává jedinou atomickou aktualizaci rozložení prostřednictvím CLI canvas_layout.js repozitáře, která zapisuje pozice uzlů a skupinové rámce dohromady namísto úpravy workflow.json. Spouští se na požadavky jako "group these as Scene 2", "frame the character refs", nebo "arrange act 2 on the canvas".

Testovací report

Klonoval jsem repo; skills/groups-compose je jediný 105řádkový SKILL.md s platným name+description frontmatterem a bez přiložených skriptů, bez bezpečnostních rizik (grep na curl|sh, base64, exfiltraci klíčů/tokenů, injekční text: žádné shody). Dvě věci, na které odkazuje, se vyřešily — server/cli/canvas_layout.js a agent-templates/PROJECT_AGENT.md oba HTTP 200 raw; cesty používají $PAI_REPO_ROOT, nic specifického pro stroj. Nemohl jsem spustit CLI end-to-end (POSTuje na pai-pro prohlížeč na localhost:7488, což vyžaduje ./scripts/setup + start.sh), takže jsem testoval proti vlastnímu čistému validátoru serveru, server/lib/canvas_layout.js (nulové importy), na syntetickém 6uzlovém plátně s jedním předem existujícím rámem: napsal jsem základní patch rozložení odvozený pouze z dat workflow/positions plus existujícího tvaru rámu, poté druhý patch podle receptu dovednosti. Oba byly PŘIJATY applyCanvasLayoutPatch, ale základní rám měl 1780x1060 (1 886 800 px2) se 2 z 5 členských karet padajících mimo rámeček (video_1 na y=1100 a audio_5 na x=1900), protože canvas_positions.json neobsahuje šířky/výšky karet, zatímco patch dovednosti vytvořil 1318x468 (616 824 px2, 3,06x těsnější) s 0 přetékajícími členy a všech pět uzlů přesunuto do řádku poznámka-vlevo / média-vpravo s dokumentovanými mezerami 40px a 36px. Dokumentace ztrácí bod: povinnost dovednosti "evict from old frames in the same update" je již automaticky provedena serverem (můj baseline vynechal vystěhování a zastaralý rám byl stále oříznut), a SKILL.md nikdy nezmiňuje, že prohlížeč musí běžet, aby krok 7 uspěl.

Testováno: 2026-07-31 · Claude Code 2.x (agent harness)

Instalace

git clone --depth 1 https://github.com/Utopai-Research/pai-pro.git /tmp/groups-compose-src
mkdir -p ~/.claude/skills
cp -R /tmp/groups-compose-src/skills/groups-compose ~/.claude/skills/groups-compose
# The skill only does anything inside a pai-pro project: its one write path is
#   node "$PAI_REPO_ROOT/server/cli/canvas_layout.js" --layout-json '{...}'
# which POSTs to the local viewer at http://localhost:7488. So you also need:
#   cd /tmp/groups-compose-src && ./scripts/setup --agent claude   # installs deps, sets PAI_REPO_ROOT, registers skills
#   ./scripts/start.sh                                             # starts the viewer on :7488
# Plugin-marketplace alternative (installs all 7 pai-pro skills):
#   /plugin marketplace add Utopai-Research/pai-pro  then  /plugin install pai-pro
# Skill folder is a single SKILL.md, no bundled scripts.

Příkazy a ukázkové prompty

  • /groups-composeUspořádává související uzly pai-pro plátna do pojmenovaných rámců s vypočítanými ohraničujícími boxy

Skilly se spouštějí běžnými požadavky — žádné příkazy k zapamatování. Po instalaci ho aktivují prompty jako tyto (anglicky):

  • Group these scene nodes into a frame
  • Cluster the character references on the canvas
  • Arrange these act beats into a titled group