Commit Graph
492 Commits
Author SHA1 Message Date
ciregenz 3748f23666 [eric] onboarding: partition the tour, reveal one feature at a time, quiet pill on launch, gentle post-win reveal, fewer popups 2026-06-13 22:25:07 -07:00
ciregenz ba30822b5a [eric] chat: swallow the raw 'Command failed / check stderr' system line, the friendly card already covers it 2026-06-13 20:21:55 -07:00
ciregenz 7f13cdbdf0 [eric] free-trial: hide model picker + thinking selector only during trial (return on connect) 2026-06-13 17:32:19 -07:00
ciregenz 9f1c738ab2 [eric] free-trial: refetch settings after mint unconditionally (arms even if the response is unreadable) 2026-06-13 17:08:27 -07:00
ciregenz c7fb57ef0e [eric] free-trial: friendly busy message for upstream 429s + no raw API-error dumps 2026-06-13 15:22:31 -07:00
ciregenz df2267c15c [eric] free-trial: hide the model picker during the trial (model is fixed server-side) 2026-06-13 15:15:48 -07:00
ciregenz f9de84d5c9 [eric] free-trial: boot settings race no longer wipes the armed trial; no red banner flash 2026-06-13 05:59:36 -07:00
ciregenz 2015a0fcf9 [eric] shell: hide the no-model warning banner during an active free trial, it returns when the trial is spent 2026-06-13 04:08:52 -07:00
ciregenz 512f4550e6 [eric] views: gate per-app seed/init/runtime behind 800ms sustained focus, fix sidebar-spam stall + self-quit 2026-06-13 02:48:50 -07:00
ciregenz 3978f9b03c [eric] views: boot an app runtime only after 800ms sustained focus, fixes sidebar-spam backend OOM 2026-06-13 02:14:49 -07:00
ciregenz 5291a4ae60 [aidan] merge #79: QoL, sidebar ui/ux, titles, text compaction, bug fixes 2026-06-13 02:06:54 -07:00
ciregenz 490bbf4113 [aidan] merge #80: cross-origin iframe perception + spawned card end UX 2026-06-13 01:53:47 -07:00
AidanandGitHub 3f4d91d8b4 [aidan] bug: cross-origin iframe perception + spawned card end UX (#78)
Browser sub-agents can now drive Google Drive’s share-doc flow end to end: same-process cross-origin iframes (the share dialog) are visible through a frame-tree-aware AX walk, and combobox autocomplete fields fill in one click_index call via DOM.focus + Input.insertText. When a spawned browser card’s agent finishes, the card now fades through a “Task done” pill with a Keep button for ~3s instead of snapping out, so the user sees what happened.
2026-06-13 00:58:44 -07:00
Aidan 7b88be7003 [aidan] ui/ux: hide noisy memory/mode from chat title, fix token bug
Drop the inline 'Memory N% full' pill from AgentChat and the mode label from AgentCard so the chat header stays quiet until tools are connected. Backend now emits agent:context_update after compact and clear so the session token counters reflect the trimmed history instead of stale pre-compact totals, with a new _estimate_post_compact_input helper and matching invariants in test_v2_invariants.
2026-06-13 00:40:19 -07:00
AidanandGitHub 08526b6149 [aidan] bug/feat: sidebar reordering, title improvements, openai gen bug (#76)
* [aidan] ui: sidebar reorder

* [aidan] ux: sidebar naming bug fix

* [aidan] ui: title changing improvements

* [aidan] ui/ux: aux title gen streams for cx/ route + agent writes meta.json first

- All aux LLM calls (chat title, turn label, group meta, dashboard name) now stream
  instead of using messages.create; 9router's cx/ subscription response translator
  drops content for GPT-5-family models on the non-streaming path but works per-event.
- aux_max_tokens_for floors GPT-5 budget at 4K so reasoning still leaves headroom for
  a label; non-reasoning models get the base 100.
- App Builder skill: write meta.json FIRST (step 1 of Quick start) so the app's name
  surfaces in the sidebar + ViewEditor header on the agent's first tool call instead
  of waiting until end-of-turn.
- Session-end sync_output_from_meta_json takes a fallback_name (= session.name) so an
  agent that never writes meta.json still leaves the app with the aux-LLM chat title
  rather than "Untitled App".
- Title display: truncateForTitle caps at 4 words / 30 chars; displayChatTitle picks
  the right Phase 1 placeholder by session.mode; normalizeSessionName strips legacy
  Agent-XXXX names at slice intake.
- Typewriter component (char-by-char delete-then-type) drives the chat header,
  dashboard card title, sidebar Apps entry, and ViewEditor TextField + description
  field; honors useReducedMotion.

* [aidan] tune: reduce gpt-5 aux token floor
2026-06-12 23:33:32 -07:00
ciregenz ce1676436d [eric] updater: apply a pending Mac update on window-close + restart so the red button actually updates, not just lingers 2026-06-12 22:13:00 -07:00
AidanandGitHub d1e3c37b27 [aidan] feat: collapsed long text to avoid long input lag 2026-06-12 21:58:56 -07:00
ciregenz 5f2face717 [eric] updater: render the update banner version-less when unknown, kills 'OpenSwarm null' (Windows Squirrel + mid-download reload) 2026-06-12 21:29:26 -07:00
ciregenz 0e557be7b8 [eric] views: gate app runtime/start behind previewSettled so spam-switching doesn't queue a pile of vite boots that stick the landed app on Initializing agent 2026-06-12 18:21:31 -07:00
ciregenz bfa7140907 [eric] views: keep the PixelBlast shader via one persistent WebGL context (reparent the canvas, never loseContext) so it looks the same with zero GPU churn 2026-06-12 17:39:29 -07:00
ciregenz 23d8247778 [eric] views: CSS loading placeholder kills the WebGL-context churn that crashed app-switching (no chat anchoring the GPU); drop the click-swallowing nav throttle 2026-06-12 17:14:59 -07:00
ciregenz b8b65e253d [eric] apps: throttle app-list nav + gate WebGL placeholder, fix rapid-app-switch GPU crash 2026-06-11 15:44:38 -07:00
ciregenz b415a16411 [eric] chat: treat an active stream as 'live' in the fetchSession merge so a mid-stream reopen keeps the user bubble (revert the fetch-skip that added the resume-bubble regression) 2026-06-11 04:11:38 -07:00
ciregenz cdaec3b7c8 [eric] chat: prefill caret parks at end (not pos 0) + skip the background reconcile-fetch while streaming so a mid-stream reopen stops wiping the user bubble 2026-06-11 03:52:42 -07:00
ciregenz 7d5df5f016 [eric] app-builder: seed initialDraftId from the existing session so a warm reopen renders the chat instantly (no Initializing-agent blank frame) 2026-06-11 03:42:57 -07:00
ciregenz 8a76354a6b [eric] chat: fix #65 scroll glitches, top-align messages (drop bottom-anchor), skip windowing under 60 items (kills the shrink-jump), auto-hide scrollbar until hover 2026-06-11 03:30:27 -07:00
abccodesandciregenz c0bc12763f [aidan] ui/ux: removed keyboard shortcuts 2026-06-11 03:13:05 -07:00
ciregenz 775b24d285 Merge PR #68 [aidan] bug: ui/ux fixes (back/forward disabled-state, browser-card dashboard scoping + resize, selection-overlay clipping, dashboard-duplicate carries chats)
AppShell conflict resolved: kept the lucide/redesign + folded in the back/forward disabled-state logic.
2026-06-11 02:59:30 -07:00
ciregenz be678c6573 Merge PR #65 [aidan] chat: virtualize long chat transcripts (windowed rendering) 2026-06-11 02:52:29 -07:00
ciregenz 0a81bfa17a Merge PR #70 [Aidan] appbuilder: inject selected-app context into dashboard agent chat 2026-06-11 02:51:05 -07:00
abccodes eadd6f71a2 [aidan] ui/ux: removed keyboard shortcuts 2026-06-11 02:50:49 -07:00
ciregenz b2d515566b [eric] onboarding: fix Build starters opening in Agent mode (prefill-mode now wins the reset race) + quirky 4th prompt per category (minecraft, world record, fantasy quest, moon) 2026-06-11 02:17:02 -07:00
ciregenz 150d113eb4 [eric] onboarding: Build starters open the dashboard composer in App Builder mode (no Apps-page context switch); drop the seed-prompt routing 2026-06-11 02:01:20 -07:00
ciregenz 351c055794 [eric] onboarding: flip starters back to click-to-open (drop hover preview), click opens the composer prefilled + translucent 2026-06-11 01:49:30 -07:00
ciregenz 6beace94a4 [eric] onboarding: HOVER a starter opens the composer (translucent preview), leave closes it, CLICK locks the query in to send 2026-06-11 01:43:08 -07:00
ciregenz 067061d982 [eric] onboarding: prefilled starter text renders translucent (pending suggestion), solidifies on first keypress/edit 2026-06-11 01:37:37 -07:00
ciregenz f282afb4fb [eric] onboarding: starter prompt opens the composer pre-filled (unsent), user reviews + hits send; replaces the ghost preview 2026-06-11 01:33:52 -07:00
ciregenz 6a5e80fcd9 [eric] onboarding: hovering a starter prompt shows a translucent ghost chat preview with the message as a user bubble 2026-06-11 01:19:27 -07:00
ciregenz d31bbf0af7 [eric] ui: pill the Build-with-AI button + widen sidebar default to 260 (matches claude.ai) 2026-06-11 00:59:35 -07:00
ciregenz b23ae41019 [eric] ui: bump sidebar font sizes, section labels 0.82->0.9rem and sub-items 0.78->0.86rem for readability 2026-06-11 00:43:41 -07:00
ciregenz dd58177c72 [eric] onboarding: panel defaults to expanded on first init (was forced to pill); returning users keep their saved choice 2026-06-11 00:35:54 -07:00
ciregenz 86d994b136 [eric] onboarding: Build starters open App Builder with the prompt auto-sent (seed prompt -> view-builder agent, one-shot send via handleSend) 2026-06-11 00:34:13 -07:00
AidanandGitHub b6db089c21 [aidan] fix: scope browser cards to their origin dashboard so they stop leaking across dashboards (#72)
The backend already broadcasts the originating dashboard_id with every browser_card_added, but the frontend was throwing it away. Browser cards live in a single global Redux dict and the canvas rendered all of them unfiltered, so a browser spawned by an agent on dashboard A would appear in whatever dashboard the user was currently viewing.

Tag every card with its dashboard_id (at WS arrival and at fetchLayout hydration) and filter by it in useDashboardSelectors so render, bounds, layout save, and keyboard nav all see only the local dashboard's cards.
2026-06-11 00:29:08 -07:00
ciregenz 6538f1cd37 [eric] onboarding: setup counter follows unlocked steps (new user sees 0/2 not 0/8), grows after the first win 2026-06-11 00:22:33 -07:00
ciregenz b4f0093112 [eric] onboarding: non-dev starter prompts (no RAG/LLM/REST jargon) + bigger readable fonts 2026-06-11 00:20:12 -07:00
ciregenz d2505bba12 [eric] onboarding: two-level starter prompts, pick a category (research/build/write/learn) then its prompts spawn, one-click launch 2026-06-11 00:08:33 -07:00
ciregenz 1fcaeb0134 [eric] ui: drop the working-status dot on agent cards too (+ remove now-dead STATUS_COLORS) 2026-06-10 23:55:11 -07:00
AidanandGitHub b3f91408fc [aidan] browser-card: top edge / corners now resize the card, the tab bar was eating the inside 3px of the n/nw/ne handles (zIndex 16 vs 10), so a top grab started a card drag and focused the webview (#71) 2026-06-10 23:27:26 -07:00
ciregenz ddd0641cac [eric] merge free-trial + value-first onboarding (flag off, reorder gated so no-trial = today's flow)
# Conflicts:
#	frontend/src/app/pages/AgentChat/bubbles/MessageBubble.tsx
2026-06-10 23:20:18 -07:00
ciregenz 6b5f10e287 [eric] bash defaults to always-allow like other actions (catastrophic/scheduling/sensitive-path guards still prompt); drop the working status dot 2026-06-10 23:13:02 -07:00