app
Adom Hydrogen
Public Made by Adomby adom
The whole Adom experience as one signed native app: your editor, your AI agent, and the full electronics design toolchain, running locally on your own machine.
← Commit history
Dock Bar guide: the Try-it thread lookup recipe (census first, history second, real shapes)
1 file changed
+8
docs/dockbar.md+8@@ -153,6 +153,14 @@ Users drive Adom by talking to their AI, and the single most useful thing a dash The dock shows them at the two moments the user is already looking: on the interstitial while your app starts (click copies the phrase) and in the card's hover preview. Your dashboard should carry the same lesson **at the very top**, above the status cards: a "Say it" strip with the phrases, copy on click, and ideally a "Try it" that stages the phrase into the app's own AI thread (your server can reach the Hydrogen control API, and the thread is findable by its `app:<owner/slug>` tag). Every phrase uses your app's noun exactly as users should say it; include the qualifier words they will need (which browser, which profile, which editor). +#### Finding the app's own thread (for "Try it")++Measured against the live control API. Order matters: the census first (open threads), history second (closed ones), because history deliberately excludes anything open.++1. `GET http://127.0.0.1:47084/ai-threads` returns `{ok, groups:[{threads:[{tid, type, label, sid|null, tags:[]}]}]}`. Find the row whose `tags` includes your `app:<owner>/<slug>`. Stage with `POST /ai-threads/run-prompt {sid, prompt, submit:false}` when the row has a sid; when `sid` is null (a fresh staged thread has none until the human sends) use `{tid}` instead.+2. `GET /ai-threads/history?tag=app:<owner>/<slug>` returns `{ok, items:[{ai, id, title, updated_ms}], open_excluded}`. The id field is `id`. Staging into a closed thread means `POST /ai-threads/resume {ai, id}` first (it reopens the tab), then `run-prompt {sid: id}`; a dashboard may prefer to copy the phrase instead and say why.+3. Neither found: copy the phrase and say so. The control API is reachable from the workspace at `127.0.0.1:47084` under mirrored networking; in a cloud container it is not, and copying is the right fallback there.+ ### The three rules that break every first attempt Each of these was learned from a bundled bridge shipping it wrong: