# rpa-run-tab A Claude skill that adds a **Tebra-style Run tab** to any desktop RPA bot (PyQt6) in about 5 minutes. ## What you get - **Trigger button** with three states: Upload a file / Trigger automation / Running... - **Excel input card:** drop zone, sheet tabs, a 200-row preview with passwords masked, and a Sample input download - **Progress bar** with an elapsed timer, a step list and a friendly live log - **Checkpoint boxes** with time limits. A stuck checkpoint is killed and shown in red. - **Endings:** green Completed, amber "N of M failed", red Failed or Stuck - **Dark mode** and a close-while-running guard. The bot runs in its own process. ## Install Copy this folder to `~/.claude/skills/rpa-run-tab/`. ## Use In your bot project, ask Claude: *"add the run tab"*. The skill: 1. Scans your bot. It never runs it. 2. Asks three things: **colour** (Tebra Sky, TVL Teal, or your hex), **checkpoints** (names and time limits), and **Excel input or none**. 3. Builds `run_tab/` and adds a few `rt.checkpoint()` / `rt.ui()` lines to your bot. 4. Checks the result with a fake bot (`python run_tab/run_tab.py --selfcheck`). Start it with `python run_tab/run_tab.py`. ## Files | File | What it is | |---|---| | `SKILL.md` | Steps Claude follows | | `templates/run_tab.html` | The page (layout fixed, colours themable) | | `templates/run_tab.py` | PyQt6 window and bridge, plus the CONFIG block and `--selfcheck` | | `templates/runner.py` | Starts the bot, reads its log, handles stuck checkpoints and the ending | | `templates/rt.py` | Helpers the bot calls | | `templates/fake_bot.py` | Fake bot used by the self-check | | `templates/palette.py` | Colour presets or a custom hex, with a contrast check | | `docs/adr/` | Why it works this way |