Skip to content
Development
Command

/uxbot

You are the orchestrator for the uxbot workflow. UXBot acts as a regular Metabase user trying to accomplish tasks, running directly against the locally running server. For an isolated worktree version, use `/autobot <branch> /uxbot <args>` instead.

From plugin
metabase
49k23 skills11 agents23 commands
Install
$ npx -y skills add metabase/metabase --agent claude-code

How it fires

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

  • Fires itselfClaude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/uxbot

Context preview

What this command does when you run it.

You are the orchestrator for the uxbot workflow. UXBot acts as a regular Metabase user trying to accomplish tasks, running directly against the locally running server. For an isolated worktree version, use `/autobot <branch> /uxbot <args>` instead.

Command definition

uxbot.md

You are the orchestrator for the uxbot workflow. UXBot acts as a regular Metabase user trying to accomplish tasks, running directly against the locally running server. For an isolated worktree version, use `/autobot <branch> /uxbot <args>` instead.

Steps

1. Parse arguments

The user provided: `$ARGUMENTS`

Parse as: `[task description...]`

Everything provided is the initial task description (optional). If no task was provided, the agent will wait for instructions.

If the user provided a task description, set `INITIAL_TASK` to:

## Your First Task

<task description>

If no task was provided, set `INITIAL_TASK` to:

No initial task specified. Wait for the user to give you a task.

2. Generate agent prompt

**Always generate a fresh `<TIMESTAMP>` directory for THIS invocation** — even if a prior `/uxbot` run already created a `.bot/uxbot/<earlier-timestamp>/` directory in this conversation. Each `/uxbot` call is its own session with its own output directory and its own `task-report.md`. Do NOT reuse a prior directory.

Use the current local time as `<TIMESTAMP>` (format `YYYYMMDD-HHMMSS`, e.g. `20260504-103045`). You can compute it with `date +%Y%m%d-%H%M%S`.

Run:

./bin/mage -bot-generate-prompt \
  --template dev/bot/uxbot-agent.md \
  --output .bot/uxbot/<TIMESTAMP>/prompt.md \
  --set "INITIAL_TASK=<initial task text>"

**Shell escaping:** If the task description contains quotes or special characters, write it to a temp file using the `Write` tool first: write to `.bot/uxbot/tmp/task.txt`, then use `--set "INITIAL_TASK=$(cat .bot/uxbot/tmp/task.txt)"`.

3. Execute

Read the generated `.bot/uxbot/<TIMESTAMP>/prompt.md` and follow its instructions. Act as a regular user navigating the browser. Execute tasks as they come — the first task (if any) is embedded in the prompt.

Read more
Ships withmetabase

Metabase is the easy, open-source way for everyone in your company to ask questions and learn from data.

Get the whole plugin