|
| 1 | +The settings line for the bridge browser: where the daemon's own browser stands, and the one thing only a person can do for it — sign in to claude.ai, once, in its window. |
| 2 | + |
| 3 | +## User story |
| 4 | + |
| 5 | +- The user switches the bridge browser on and wants to know what is happening while its first launch downloads a browser. |
| 6 | +- The user has to sign in to claude.ai in the bridge browser once, and needs the window brought up for that. |
| 7 | +- The user quit the bridge browser, or it crashed, and wants it back. |
| 8 | + |
| 9 | +## Business logic — TL;DR |
| 10 | + |
| 11 | +- **The line follows the daemon** - it is re-read every few seconds while the switch is on, and shows nothing while it is off. |
| 12 | +- **A launch names its step** - so a minutes-long download does not read as a hang. |
| 13 | +- **A running browser can be shown and hidden** - shown for the sign-in, hidden again after; the button offered is the one that applies. |
| 14 | +- **The sign-in is asked for by name** - when the browser's Driver tab reports claude.ai's sign-in page, the line says to show the window and sign in once. |
| 15 | +- **A stopped browser says why, and offers a restart** - the reason the daemon recorded, and a Restart button. |
| 16 | + |
| 17 | +## Business logic |
| 18 | + |
| 19 | +### The line follows the daemon |
| 20 | + |
| 21 | +#### User story |
| 22 | + |
| 23 | +See `## User story`: everything about the bridge browser happens out of sight. |
| 24 | + |
| 25 | +#### Business logic |
| 26 | + |
| 27 | +While the bridge browser switch is on, the line reads the bridge browser's status from the daemon every few seconds. While the switch is off nothing is shown and nothing is read. |
| 28 | + |
| 29 | +### A launch names its step |
| 30 | + |
| 31 | +#### User story |
| 32 | + |
| 33 | +The user switches the bridge browser on for the first time; a browser is being downloaded. |
| 34 | + |
| 35 | +#### Business logic |
| 36 | + |
| 37 | +While the daemon reports the browser as starting, the line says so and quotes the step the daemon is on — the lookup, the download and its percentage, the extension's install, the token hand-over. |
| 38 | + |
| 39 | +### A running browser can be shown and hidden |
| 40 | + |
| 41 | +#### User story |
| 42 | + |
| 43 | +The user needs the window, then wants it gone. |
| 44 | + |
| 45 | +#### Business logic |
| 46 | + |
| 47 | +While the browser runs, the line says so and whether its window is shown or minimized. A minimized browser offers to show the window; a shown one offers to hide it. Either way a Restart is offered. Each button asks the daemon for that action. |
| 48 | + |
| 49 | +### The sign-in is asked for by name |
| 50 | + |
| 51 | +#### User story |
| 52 | + |
| 53 | +The bridge browser is running but signed out, so nothing it does reaches a session. |
| 54 | + |
| 55 | +#### Business logic |
| 56 | + |
| 57 | +When the daemon reports the browser running and its claude.ai tab on the sign-in page, the line says so and to show the window, sign in once, then hide it again; the show button is worded for the sign-in. Once the tab is on any other page, the prompt is gone. The daemon reads that page from its own browser, so the user's own Chrome reporting to the bridge at the same time cannot mask it. |
| 58 | + |
| 59 | +### A stopped browser says why, and offers a restart |
| 60 | + |
| 61 | +#### User story |
| 62 | + |
| 63 | +See `## User story`: the browser was quit, or could not start. |
| 64 | + |
| 65 | +#### Business logic |
| 66 | + |
| 67 | +When the daemon reports the browser as stopped, the line quotes the reason — the exit signal, or the launch step that failed — and offers a Restart, which asks the daemon to launch it again. |
| 68 | + |
| 69 | +## Before modifying/creating SPEC.md files |
| 70 | + |
| 71 | +You must always read and respect https://raw.githubusercontent.com/brillout/sdd/refs/heads/main/sdd.md |
0 commit comments