Skip to content
Agent Orchestration
Skill

/spawn-ux-worker

Spawn a repo-scoped UX-fixes worker session that drains only one repo's UX-fixes queue, via the CCC API.

BOOST
From plugin
claude-command-center
19721 skills1 command12 hooks
Install
$ npx -y skills add amirfish1/claude-command-center --skill spawn-ux-worker --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/spawn-ux-worker

Context preview

The summary Claude sees to decide when to auto-load this skill.

Spawn a repo-scoped UX-fixes worker session that drains only one repo's UX-fixes queue, via the CCC API.

SKILL.md

spawn-ux-worker.SKILL.md
name: spawn-ux-worker
description: Spawn a repo-scoped UX-fixes worker session that drains only one repo's UX-fixes queue, via the CCC API.
allowed-tools: Bash

Spawn a persistent UX-fixes WORKER session for a single repo. The worker drains **only that repo's project queue** (one ticket at a time, forever, via idle self-wakeups) — it claims, applies the fix, then closes and advances. Use this when the user wants a repo to "start working its UX-fixes queue" or "spawn a UX worker for <repo>".

For one-shot subtasks use the built-in `Task` tool instead — this skill is for a long-running peer that shows on the kanban.

1. Setup

Port / URL discovery

Do NOT try to start CCC yourself. Find the URL:

CCC_URL="$(cat ~/.claude/command-center/port.txt 2>/dev/null || echo "${CCC_URL:-http://127.0.0.1:8090}")"

Network sandbox constraint

**CRITICAL:** The Bash sandbox blocks loopback connections. Run the CCC curl with the network sandbox **disabled** (localhost IPC), or it will fail spuriously even when CCC is up.

Resolve the target repo

Take the repo from `$ARGUMENTS` (an absolute path, or a repo name to resolve). If it is a name, resolve it to an absolute path (e.g. under `~/Apps/<name>` or the user's known repo roots). The path must be an existing directory.

**URL/JSON-encode `repo_path`:** when it contains `+` or spaces, those must be preserved exactly in the JSON body (do not pre-decode `+` to a space).

2. Spawn the worker

curl -s -X POST "$CCC_URL/api/ux-fixes/spawn-worker" \
  -H 'Content-Type: application/json' \
  -d '{"repo_path": "/abs/path/to/repo"}'

Optional fields:

  • `"project"`: override the project code (default is derived from the repo

basename, so you rarely need this).

  • `"model"`: model for the spawned session (omit to use CCC's spawn default).
  • `"reasoning_effort"`: reasoning effort for the spawned session, `low` through

`max` (omit to use CCC's spawn default). Alias: `"effort"`. Worth setting on a long-running worker: dial it down to keep a big backlog cheap, or up for a queue of hard tickets. The ladder is per engine (Codex has no `max`), and a value the engine does not accept is dropped rather than rejected, so check the spawned row under `GET /api/sessions/spawned` if it matters.

  • `"name"`: session name (default `UX worker · <PROJECT>`).
  • `"message"`: extra context appended to the worker's starting prompt (e.g.

`"dev server runs on :3001"`, `"prioritise mobile tickets"`). It is added as its own section and does not change how the worker claims/closes tickets. Aliases: `"note"`, `"extra"`.

The response is the standard spawn shape plus the resolved project: `{"ok": true, "session_id": "...", "spawn_id": "123", "engine": "claude", "repo_path": "...", "cwd": "...", "session_id_pending": false, "project": "CCC"}`.

If `session_id_pending` is true, the session is launching — its id will appear shortly under `GET /api/sessions/spawned` keyed by `spawn_id`.

3. Report back

Tell the user: which repo + project the worker is draining, its `session_id` (or that it's pending), and that it will keep claiming this project's tickets via idle wakeups until the queue is empty. The worker scopes every `/api/ux-fixes/claim` and `/api/ux-fixes/next` call to its project, so it never touches other repos' tickets.

Read more
Ships withclaude-command-center

Your coding agents outgrew your terminal. CCC puts every session on one local board and tells you which one needs you. Not affiliated with Anthropic. Start the next while Claude builds the first. A real share card from one of the maintainer's machines.

Get the whole plugin

Other skills on claude-command-center.