Skill Recorder
Playground  /  Category F
← All scenarios

F2 · Linear-style issue tracker

Keyboard-first issue tracker: Cmd+K command palette, status/priority/assignee comboboxes, list and Kanban views, drag between columns.

Live fixture · interact with it while the recorder is runningOpen in new tab ↗

Try this

  1. Press Cmd+K (or Ctrl+K) — the command palette opens. Arrow-down to "Switch to Board view", press Enter.
  2. Drag any card from "In Progress" to "Done".
  3. Switch back to List view via the tab.
  4. Type something in the filter — wait 400ms for results to update.
  5. Click any row to open the side panel (mounts after 200ms).
  6. Click the issue title → it's contenteditable, edit it.
  7. Click the Status combobox → pick a different status.
  8. Click the Priority combobox → pick "Urgent".
  9. Click the Assignee combobox → pick Carlos Reyes.
  10. In the comment composer, paste a URL like https://example.com — it auto-linkifies.
  11. Press Cmd-Enter to post the comment.
  12. Close the panel. Press Cmd+Shift+I to open the new-issue modal. Fill in the title, press Create.

Why this is hard

Every interaction is one or two keystrokes away. The recorder has to keep up: Cmd+K opens the palette (D3 + D6), Cmd+Shift+I lazy-mounts the new-issue modal (D3 + B3), each list row gets a fresh `css-${hash}` class on every render (A2), and three of the rows are literally titled "Subscribe" — only fingerprintIndex distinguishes them (A3). Drag a card between Kanban columns (D1). Open an issue → side panel mounts 200ms later (B3) → click the status, priority, or assignee combobox (D6 × 4 including the palette) → paste a URL into the comment composer (D5 auto-linkify) → the URL changes to `/issue/LIN-1234` (B1 + E2 URL params). The filter input debounces by 400ms before re-rendering (B2).

Difficulty points covered

Each tag below links to the isolated demo for that single difficulty point — useful if the composite breaks somewhere and you want to bisect.

Replay log · claude code · stdoutsimulated · not live data
▸ Reading ~/.claude/skills/linear-triage-issue/SKILL.md
  ✓ 12 steps · 4 params · 1 precondition

▸ Step 1/12 · Cmd-K palette → "Switch to Board view"
  ✓ chord + comboboxContext resolved
▸ Step 2/12 · drag card "In Progress" → "Done"
  ✓ dataTransfer captured · drop on column[data-status=done]
▸ Step 3/12 · filter input (debounce 400ms)
  ✓ awaited 412ms · 7 rows
▸ Step 4/12 · open row → side panel (lazy 200ms)
  ✓ panel mounted · resumed
▸ Step 5/12 · edit title (contenteditable)
  ✓ debounced 300ms · final innerText captured
▸ Steps 6-9 · status / priority / assignee combobox
  ✓ 4 typeahead picks · all by optionText fallback
▸ Step 10/12 · paste URL → auto-linkify
  ✓ ClipboardEvent · text/plain → <a> wrap
▸ Step 11/12 · Cmd-Enter to post
▸ Step 12/12 · Cmd-Shift-I new-issue modal
  ✓ done in 11.8s · 0 retries