← Commit history

Add optional AI picker preference to shared newbie panel

John Lauer ·7c54eebf9d ·1mo ago ·parent 38cd7b3
4 files changed +11−7
assets/module/newbie-panel.js+4−4
@@ -257,7 +257,7 @@       })       .catch(function () { return { ok: true, version: null, open: true }; });   }-  function send(base, phrase, appName, slug, onProgress) {+  function send(base, phrase, appName, slug, onProgress, ai) {     return gate(base).then(function (g) {       if (!g.ok) throw new Error('Adom needs updating to send prompts (found ' + g.version + ', needs 1.0.142). Run: adom update');       var ctl = new AbortController(), timer = setTimeout(function () { ctl.abort(); }, 120000);@@ -267,7 +267,7 @@         method: 'POST', signal: ctl.signal,         headers: { 'content-type': 'application/json' },         body: JSON.stringify({-          "new": true, prompt: phrase, submit: true,+          "new": true, prompt: phrase, submit: true, prefer: ai || undefined,           name: appName + ' - say it', tags: ['dock:' + slug]         })       }).then(function (r) { return r.json().then(function (j) { return { status: r.status, j: j }; }); })@@ -409,7 +409,7 @@         send(base, phrase, appName, slug, function (state, job) {           if (PHASE[state]) pending.setText(PHASE[state]);           if (typeof cfg.onProgress === 'function') { try { cfg.onProgress(state, job); } catch (e) {} }-        }).then(function (r) {+        }, cfg.ai).then(function (r) {           pending.remove();           if (r.state === 'delivered') toast('Sent. Your AI thread has the prompt.', 'ok');           else toast('Thread opened, delivery not confirmed. Check your AI threads before sending again.', 'info', 8000);@@ -733,6 +733,6 @@   }    root.AdomNewbiePanel = { mount: mount, toast: toast, selfCheck: selfCheck, copyText: copyText,-                           checkSend: checkSend, version: '2.23.0',+                           checkSend: checkSend, version: '2.24.0',                            TWO_COL_MIN: TWO_COL_MIN, PHRASE_BUDGET: PHRASE_BUDGET }; })(typeof window !== 'undefined' ? window : this);
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-ui-design",-  "version": "3.2.0",+  "version": "3.3.0",   "type": "skill",   "description": "The Adom UI Design System plus a bundle of focused UI skills (tooltips, floating-windows, toasts, responsive-ui, app-shell, ai-driven-apps, clickable-paths, dark-default, input-feedback, settings-layout). One install drops the whole set of skill files onto your container, plus shared icon assets (the settings cog) so every Adom app draws the same glyph.",   "dependencies": {},
page.json+2−2
@@ -1,6 +1,6 @@ {   "slug": "adom-ui-design",-  "version": "3.2.0",+  "version": "3.3.0",   "type": "skill",   "description": "The Adom UI Design System plus a bundle of focused UI skills (tooltips, floating-windows, toasts, responsive-ui, app-shell, ai-driven-apps, clickable-paths, dark-default, input-feedback, settings-layout). One install drops the whole set of skill files onto your container, plus shared icon assets (the settings cog) so every Adom app draws the same glyph.",   "dependencies": {},@@ -122,4 +122,4 @@   ],   "visibility": "public",   "org": "adom"-}\ No newline at end of file+}
skills/newbie-panel/SKILL.md+4
@@ -67,6 +67,10 @@ column. Every one of those apps had read this skill. **A written spec is not a m </script> ``` +### Prefer an AI while keeping the picker — module 2.24.0++Pass `ai: 'codex'` in `AdomNewbiePanel.mount(...)` when your dashboard recommends Codex. The module sends `prefer: 'codex'` in the run-prompt body, not `type`. On Hydrogen 1.0.233+, the picker remains visible and Codex becomes the Enter/countdown default, ahead of the user default and remembered app choice. The person can still choose another AI. Omit `ai` to retain the normal picker preference behavior. Older Hydrogen builds ignore `prefer`; apps that depend on the corrected Codex delivery must gate at 1.0.233. A provider preference does not select a model such as Astra.+ ### Inline video — module 2.23.0  Pass `demo.video` to opt into the responsive player layout. Do not append a video into `.anp-left`: the legacy button column is fixed at 220px and switches to a horizontal row on narrow panes. That squeezes a player and can overflow its controls.