noob-visual-pool — for Claude Code noob-visual-pool, apps-for-testing, community, for Claude Code, ide skills, visual-run claim-next --name "TITLE", MAX_SPAWNS, Visual, Orchestrate, testing

v1.0.0

关于此技能

适用场景: Ideal for AI agents that need step 1 — check and prepare config. 本地化技能摘要: # Visual QA Pool Orchestrate visual testing agents for a ticket with zero race conditions. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

功能特性

Step 1 — Check and Prepare Config
TICKET ID="<TICKET-ID "
MODE="${1:-baseline}" # passed by calling agent: baseline or verification
AGENTS=$(noob-tester qa-pool list --ticket "$TICKET ID" --json)
AGENT COUNT=$(echo "$AGENTS" jq 'length')

# 核心主题

ganeshgaxy ganeshgaxy
[0]
[0]
更新于: 4/28/2026

Killer-Skills Review

Decision support comes first. Repository text comes second.

Reference-Only Page Review Score: 8/11

This page remains useful for teams, but Killer-Skills treats it as reference material instead of a primary organic landing page.

Original recommendation layer Concrete use-case guidance Explicit limitations and caution
Review Score
8/11
Quality Score
43
Canonical Locale
en
Detected Body Locale
en

适用场景: Ideal for AI agents that need step 1 — check and prepare config. 本地化技能摘要: # Visual QA Pool Orchestrate visual testing agents for a ticket with zero race conditions. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

核心价值

推荐说明: noob-visual-pool helps agents step 1 — check and prepare config. Visual QA Pool Orchestrate visual testing agents for a ticket with zero race conditions. This AI agent skill supports Claude Code, Cursor, and

适用 Agent 类型

适用场景: Ideal for AI agents that need step 1 — check and prepare config.

赋予的主要能力 · noob-visual-pool

适用任务: Applying Step 1 — Check and Prepare Config
适用任务: Applying TICKET ID="<TICKET-ID "
适用任务: Applying MODE="${1:-baseline}" # passed by calling agent: baseline or verification

! 使用限制与门槛

  • 限制说明: Filter to pending entries only (exclude running, passed, failed, skipped)
  • 限制说明: Requires repository-specific context from the skill documentation
  • 限制说明: Works best when the underlying tools and dependencies are already configured

Why this page is reference-only

  • - Current locale does not satisfy the locale-governance contract.
  • - The underlying skill quality score is below the review floor.

Source Boundary

The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.

评审后的下一步

先决定动作,再继续看上游仓库材料

Killer-Skills 的主价值不应该停在“帮你打开仓库说明”,而是先帮你判断这项技能是否值得安装、是否应该回到可信集合复核,以及是否已经进入工作流落地阶段。

实验室 Demo

Browser Sandbox Environment

⚡️ Ready to unleash?

Experience this Agent in a zero-setup browser environment powered by WebContainers. No installation required.

Boot Container Sandbox

常见问题与安装步骤

以下问题与步骤与页面结构化数据保持一致,便于搜索引擎理解页面内容。

? FAQ

noob-visual-pool 是什么?

适用场景: Ideal for AI agents that need step 1 — check and prepare config. 本地化技能摘要: # Visual QA Pool Orchestrate visual testing agents for a ticket with zero race conditions. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

如何安装 noob-visual-pool?

运行命令:npx killer-skills add ganeshgaxy/apps-for-testing/noob-visual-pool。支持 Cursor、Windsurf、VS Code、Claude Code 等 19+ IDE/Agent。

noob-visual-pool 适用于哪些场景?

典型场景包括:适用任务: Applying Step 1 — Check and Prepare Config、适用任务: Applying TICKET ID="<TICKET-ID "、适用任务: Applying MODE="${1:-baseline}" # passed by calling agent: baseline or verification。

noob-visual-pool 支持哪些 IDE 或 Agent?

该技能兼容 Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer。可使用 Killer-Skills CLI 一条命令通用安装。

noob-visual-pool 有哪些限制?

限制说明: Filter to pending entries only (exclude running, passed, failed, skipped);限制说明: Requires repository-specific context from the skill documentation;限制说明: Works best when the underlying tools and dependencies are already configured。

安装步骤

  1. 1. 打开终端

    在你的项目目录中打开终端或命令行。

  2. 2. 执行安装命令

    运行:npx killer-skills add ganeshgaxy/apps-for-testing/noob-visual-pool。CLI 会自动识别 IDE 或 AI Agent 并完成配置。

  3. 3. 开始使用技能

    noob-visual-pool 已启用,可立即在当前项目中调用。

! 参考页模式

此页面仍可作为安装与查阅参考,但 Killer-Skills 不再把它视为主要可索引落地页。请优先阅读上方评审结论,再决定是否继续查看上游仓库说明。

Upstream Repository Material

The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.

Upstream Source

noob-visual-pool

# Visual QA Pool Orchestrate visual testing agents for a ticket with zero race conditions. This AI agent skill supports Claude Code, Cursor, and Windsurf

SKILL.md
Readonly
Upstream Repository Material
The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.
Supporting Evidence

Visual QA Pool

Orchestrate visual testing agents for a ticket with zero race conditions. Creates a visual run, populates entries, enumerates pending ones (filtering already-claimed/done), assigns each to a sub-agent by name using round-robin, then fires one claude process per visual test case. Each sub-agent claims its own specific test case via visual-run claim-next --name "TITLE" — no two agents get the same title, so no races.


Step 1 — Check and Prepare Config

bash
1TICKET_ID="<TICKET-ID>" 2MODE="${1:-baseline}" # passed by calling agent: baseline or verification 3 4AGENTS=$(noob-tester qa-pool list --ticket "$TICKET_ID" --json) 5AGENT_COUNT=$(echo "$AGENTS" | jq 'length') 6 7if [ "$AGENT_COUNT" -eq 0 ]; then 8 echo "No QA pool agents configured for $TICKET_ID." 9 exit 1 10fi

If config found and user asked to update something:

bash
1ENTRY_ID=$(echo "$AGENTS" | jq -r '.[] | select(.agent_path | contains("<partial-path>")) | .id' | head -1) 2 3noob-tester qa-pool update "$ENTRY_ID" --target <new-target> # if target changed 4noob-tester qa-pool update "$ENTRY_ID" --role <new-role> # if role changed 5noob-tester qa-pool update "$ENTRY_ID" --agent <new-path> # if agent changed 6noob-tester qa-pool update "$ENTRY_ID" --file <new-file> # if file changed 7noob-tester qa-pool update "$ENTRY_ID" --launch-dir <new-dir> # if launch dir changed 8 9AGENTS=$(noob-tester qa-pool list --ticket "$TICKET_ID" --json) 10AGENT_COUNT=$(echo "$AGENTS" | jq 'length')

If no config found, register it first:

bash
1noob-tester qa-pool add \ 2 --ticket "$TICKET_ID" \ 3 --agent <agent-path> \ 4 --target <target-name> \ 5 --role <role> \ 6 --file <file-path> \ 7 --launch-dir <directory> # optional — defaults to pwd if omitted 8 9AGENTS=$(noob-tester qa-pool list --ticket "$TICKET_ID" --json) 10AGENT_COUNT=$(echo "$AGENTS" | jq 'length')

Step 2 — Get Latest Visual Run (by mode) and Enumerate Pending Entries

MAX_SPAWNS controls how many agents are launched. Default is 5. Override if user specifies a number.

bash
1MAX_SPAWNS=5 # default — override if user specified a number 2 3# Get the latest visual run for this ticket in the specified mode 4ALL_RUNS=$(noob-tester visual-run list --ticket "$TICKET_ID" --json) 5RECENT_RUN=$(echo "$ALL_RUNS" | jq --arg mode "$MODE" '.[] | select(.mode == $mode) | . // empty' | head -1) 6 7if [ -z "$RECENT_RUN" ] || [ "$RECENT_RUN" = "null" ]; then 8 echo "No existing visual run found for $TICKET_ID in mode '$MODE'. Create one first with noob-tester visual-run start." 9 exit 1 10fi 11 12VISUAL_RUN_ID=$(echo "$RECENT_RUN" | jq -r '.id') 13 14echo "Using visual run: $VISUAL_RUN_ID (mode: $MODE)" 15 16# Fetch all entries in the visual run 17RUN_ENTRIES=$(noob-tester visual-run get "$VISUAL_RUN_ID" --entries | jq '.entries // []') 18 19# Filter to pending entries only (exclude running, passed, failed, skipped) 20PENDING=$(echo "$RUN_ENTRIES" | jq ' 21 [.[] | select(.status == "pending")] 22 | .[:'"$MAX_SPAWNS"'] 23') 24 25PENDING_COUNT=$(echo "$PENDING" | jq 'length') 26 27if [ "$PENDING_COUNT" -eq 0 ]; then 28 echo "No pending visual test case entries in run $VISUAL_RUN_ID. Nothing to run." 29 exit 0 30fi 31 32echo "Dispatching $PENDING_COUNT pending visual test case entries (max: $MAX_SPAWNS)."

Step 3 — Assign Pending Entries Round-Robin and Pre-Claim

Distribute pending visual run entries round-robin across agent configs, then pre-claim each one.

bash
1# Build an array of agent configs for round-robin 2AGENT_PATHS=($(echo "$AGENTS" | jq -r '.[].agent_path')) 3AGENT_TARGETS=($(echo "$AGENTS" | jq -r '.[].target // ""')) 4AGENT_ROLES=($(echo "$AGENTS" | jq -r '.[].role // "default"')) 5AGENT_FILES=($(echo "$AGENTS" | jq -r '.[].file // ""')) 6AGENT_DIRS=($(echo "$AGENTS" | jq -r '.[].launch_dir // ""')) 7 8i=0 9LAUNCHES=() 10 11# Assign and pre-claim visual test case entries 12echo "$PENDING" | jq -c '.[]' | while read -r ENTRY; do 13 ENTRY_ID=$(echo "$ENTRY" | jq -r '.id') 14 IDX=$(( i % AGENT_COUNT )) 15 16 AGENT_PATH="${AGENT_PATHS[$IDX]}" 17 TARGET="${AGENT_TARGETS[$IDX]}" 18 ROLE="${AGENT_ROLES[$IDX]}" 19 FILE="${AGENT_FILES[$IDX]}" 20 DIR="${AGENT_DIRS[$IDX]}" 21 22 # ← PRE-CLAIM: Transition entry to claimed status 23 CLAIM_OUTPUT=$(noob-tester visual-run entry-claim --run "$VISUAL_RUN_ID" --entry "$ENTRY_ID" 2>/dev/null) 24 CLAIMED=$(echo "$CLAIM_OUTPUT" | jq -r '.claimed // false') 25 26 if [ "$CLAIMED" != "true" ]; then 27 echo " Warning: Could not claim entry '$ENTRY_ID' — skipping" 28 i=$(( i + 1 )) 29 continue 30 fi 31 32 # Save claimed data to unique file for this agent 33 CLAIM_FILE="/tmp/pool-visual-claim-${i}.json" 34 echo "$CLAIM_OUTPUT" > "$CLAIM_FILE" 35 36 # Build invocation for visual test with claim file 37 INVOCATION="run visual $MODE test for ticket $TICKET_ID, run $VISUAL_RUN_ID entry $ENTRY_ID with agent @${AGENT_PATH}" 38 [ -n "$TARGET" ] && INVOCATION="$INVOCATION with target $TARGET" 39 [ -n "$ROLE" ] && [ "$ROLE" != "default" ] && INVOCATION="$INVOCATION and role $ROLE" 40 [ -n "$FILE" ] && INVOCATION="$INVOCATION and file $FILE" 41 INVOCATION="$INVOCATION and use claimed entry from $CLAIM_FILE" 42 43 echo "$DIR|$AGENT_PATH|$INVOCATION" >> /tmp/pool-visual-launches.txt 44 i=$(( i + 1 )) 45done 46 47# Read all launches 48if [ -f /tmp/pool-visual-launches.txt ]; then 49 mapfile -t LAUNCHES < /tmp/pool-visual-launches.txt 50 rm -f /tmp/pool-visual-launches.txt 51fi 52 53echo "Prepared ${#LAUNCHES[@]} agent invocations (round-robin assigned and pre-claimed)."

Step 4 — Launch Sub-Agents (Fire and Forget)

Each agent entry has its own launch_dir. The cd happens per-spawn in a subshell so agents can launch from different directories. Each spawn is recorded for tracking and management.

bash
1for LAUNCH in "${LAUNCHES[@]}"; do 2 DIR="${LAUNCH%%|*}" 3 REST="${LAUNCH#*|}" 4 AGENT_PATH="${REST%%|*}" 5 INVOCATION="${REST#*|}" 6 7 echo "→ Spawning @${AGENT_PATH} for: $(echo "$INVOCATION" | grep -o 'Test case: "[^"]*"')" 8 9 if [ -n "$DIR" ] && [ -d "$DIR" ]; then 10 (cd "$DIR" && claude -p "$INVOCATION" --agent "@${AGENT_PATH}") & 11 else 12 [ -n "$DIR" ] && echo " Warning: launch_dir '$DIR' not found, using current directory" 13 claude -p "$INVOCATION" --agent "@${AGENT_PATH}" & 14 fi 15 16 # Record the spawn for tracking 17 AGENT_PID=$! 18 noob-tester pool-spawns record --ticket "$TICKET_ID" --agent "@${AGENT_PATH}" --pid $AGENT_PID --type visual-pool > /dev/null 2>&1 19done 20 21echo "All ${#LAUNCHES[@]} visual test agents spawned. Monitor at http://localhost:4040 → Visual Runs" 22echo "Manage spawned agents: noob-tester pool-spawns list --ticket $TICKET_ID --active"

Do not call wait — return to the user immediately after spawning. The agents run in the background and record their results to the database as they finish. Spawned agent tracking allows you to view and kill agents via the pool menu in the dashboard.


Step 5 — Report

Tell the user:

  • Visual run ID and mode (baseline or verification)
  • How many pending visual test case entries were dispatched
  • How many agents were launched (capped at MAX_SPAWNS)
  • Which agent configs were used (round-robin distribution)
  • Whether config was pre-existing or newly registered
  • Whether any fields were updated before running
  • Dashboard URL to monitor: http://localhost:4040 → Visual Runs

Notes

  • Reuse existing visual run — Step 2 retrieves the latest visual run for the ticket in the specified mode (baseline or verification, created via noob-tester visual-run start). If no run exists in that mode, the skill exits and asks the user to create one first.
  • Mode parameter — passed by the calling agent (e.g., --mode baseline or --mode verification). The mode determines which visual run to use and is stored on the visual_runs table.
  • Pending entries only — only entries with status pending are dispatched. Entries with status running, passed, failed, or skipped are skipped.
  • Pre-claim atomic — each agent is assigned one pending entry via round-robin. The entry is atomically claimed (status → claimed) before the agent is launched, preventing race conditions.
  • Claim file format — saved to /tmp/pool-visual-claim-${i}.json and contains the full entry data including visual_run_id, entry_id, test case details, and visual_steps config. Agents read this via the CLAIM_FILE path passed in invocation.
  • Round-robin — distributes pending entries evenly across agent configs. With 2 configs and 6 pending entries: config[0] gets entries 0,2,4 — config[1] gets 1,3,5.
  • Agent path — stored without @ in the DB; prepend @ in the claude invocation.
  • Target — a named reference in the targets table resolved at runtime by the sub-agent (not a raw URL).
  • Role — selects which credential set to inject from the secrets table for the given target.
  • Missing agent file — if a .md file doesn't exist on disk, warn the user and skip that config entry.
  • Mode semanticsbaseline captures reference screenshots; verification captures + diffs against baseline. A baseline run must complete before verification can run.
  • MAX_SPAWNS — caps how many agents are launched. Default 5. Remaining pending entries stay unclaimed for a subsequent /noob-visual-pool invocation.

相关技能

寻找 noob-visual-pool 的替代方案 (Alternative) 或可搭配使用的同类 community Skill?探索以下相关开源技能。

查看全部

openclaw-release-maintainer

Logo of openclaw
openclaw

本地化技能摘要: 🦞 # OpenClaw Release Maintainer Use this skill for release and publish-time workflow. It covers ai, assistant, crustacean workflows. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

333.8k
0
AI

widget-generator

Logo of f
f

本地化技能摘要: Generate customizable widget plugins for the prompts.chat feed system # Widget Generator Skill This skill guides creation of widget plugins for prompts.chat . It covers ai, artificial-intelligence, awesome-list workflows. This AI agent skill supports Claude Code, Cursor, and Windsurf

149.6k
0
AI

flags

Logo of vercel
vercel

本地化技能摘要: The React Framework # Feature Flags Use this skill when adding or changing framework feature flags in Next.js internals. It covers blog, browser, compiler workflows. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

138.4k
0
浏览器

pr-review

Logo of pytorch
pytorch

本地化技能摘要: Usage Modes No Argument If the user invokes /pr-review with no arguments, do not perform a review . It covers autograd, deep-learning, gpu workflows. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

98.6k
0
开发者工具