Commit Graph
3124 Commits
Author SHA1 Message Date
ciregenz 076c47617a [eric] gemini: prefer connected Antigravity over AI Studio key + fail-fast read timeout 2026-06-15 12:36:29 -07:00
ciregenz 235fa47d15 [eric] providers: openai own-key keeps cp-openai/ prefix so 9router can route it 2026-06-15 11:59:11 -07:00
ciregenz f93d6e02d1 [eric] 9router: port the 0.4.x /api auth gate (x-9r-cli-token) to unblock a version bump 2026-06-14 20:27:39 -07:00
ciregenz 124b128ed1 [eric] proxy: fix non-Anthropic first-msg 400s (Gemini allowlist + gpt-5 sampling strip) 2026-06-14 16:58:26 -07:00
ciregenz 9086ef5af2 Merge remote-tracking branch 'origin/eric/dev' into eric/dev 2026-06-14 08:59:19 -07:00
cireandGitHub e47ac3bf67 Revert "[aidan] bug: dashboard not renaming during first run" (#83)
This reverts commit 2d7be0e8ac.
2026-06-14 08:58:49 -07:00
ciregenz 7eeb864a29 [eric] swarm: archive checksum (reject tampered) + transactional rollback on import 2026-06-14 08:07:17 -07:00
AidanandGitHub fd10171ac1 [aidan] ui/ux: canvas navigation (#85)
* dashboard: pan canvas via middle-drag and horizontal scroll over browser/chat

- Middle-mouse drag inside a browser webview is forwarded as canvas pan
  (previously eaten silently by the guest compositor).
- Horizontal-dominant wheel inside a browser webview pans the canvas
  when no ancestor in the guest page can absorb horizontal scroll;
  otherwise the page handles it.
- Horizontal-dominant wheel over a chat panel pans the canvas (chat has
  no horizontal scroller). Vertical scroll is unchanged.

Plain vertical scroll and ctrl/meta+wheel zoom over a browser stay with
chromium's defaults.

* browser: drop in-guest zoom locks so pinch and cmd+wheel zoom the page

setVisualZoomLevelLimits(1, 1) blocked pinch-to-zoom inside the webview, and
setZoomFactor(1) on every dom-ready reset any user page zoom. Both were added
back when canvas zoom was supposed to take over for ctrl+wheel; with that
reverted, chromium's native zoom handlers should run unimpeded.

* [aidan] fix: prev. commit fix. restore ctrl+wheel canvas zoom over webview cards

* [aidan] ui/ux: app navigation

* [aidan] ui/ux: gate webview preload forwarding on app interactive mode

When a view card is "interactive" (user clicked into the app), the preload stops forwarding ctrl+wheel, middle-mouse-drag, and horizontal-scroll-pan gestures so the embedded app gets every event. A mousedown notifier reports in-guest clicks to the host so it can flip the card into interactive mode without intercepting the click itself.
2026-06-14 07:55:34 -07:00
AidanandGitHub f08f71313f [aidan] ui/ux: auth flow fixes (#84)
* aidan] bug: fixed 2 auth claude login issue

* [aidan] bug: claude login w email+pw

* [aidan] ui: edited message for cases where anthropic redirects to enter email code even after login'

* [aidan] ui/ux: fix connecting status accuracy
2026-06-14 07:55:24 -07:00
SirKentut f90975f006 feat(webapp-template): ship agent bridge (window.OPENSWARM_APP) as a hook, not a doc
Add agentBridge.ts and import it FIRST in index.tsx so the bridge is
installed on the window before any app code runs.

The visitor / door / doorbell analogy:

- The visitor is the agent. It shows up wanting to operate the app:
  read the rules, see the controls, take an action, check what happened.
- The door is window.OPENSWARM_APP. A single, always-present surface the
  visitor can knock on: describe() to learn the app, getState() to read a
  snapshot, invoke(name, args) to act.
- The doorbell is register({ rules, controls, getState, invoke }). The app
  presses it on mount to say "I'm home, here's how to talk to me." Until it
  does, describe()/getState() answer { __ready: false } so the visitor
  knows the app is still booting and waits, instead of concluding nobody
  lives here.

Why a hook and not just an .md:

A markdown instruction ("please expose your controls on window.X") is a
request the app can forget, half-implement, or drift from, and nothing
fails when it does. The bridge ships WITH the template and is imported
before app code, so the door exists from first paint whether or not the
author thought about agents. The app's only job is to press the doorbell
once; it never wires the plumbing, so it cannot get the plumbing wrong.
The contract is executable, not aspirational, which is the difference
between every generated app being agent-operable by default and hoping
each one remembered to be.
2026-06-14 07:49:13 -07:00
ciregenz 4e1df63b7c Merge remote-tracking branch 'origin/eric/dev' into eric/dev 2026-06-14 07:44:15 -07:00
ciregenz e15edc702e [eric] chat: unify thinking labels into one shared list, add quirkier verbs 2026-06-14 07:27:00 -07:00
ciregenz 8246f03b27 [eric] dashboard: title-derived header glyph (curated icon + monogram fallback) 2026-06-14 07:26:50 -07:00
ciregenz e2f2dfdc4d [eric] swarm: drop-to-import with GPU-safe pixel digest; modal only for code/action bundles 2026-06-14 07:22:12 -07:00
ciregenz cff334a02b [eric] swarm: Share button on the dashboard header 2026-06-14 06:44:16 -07:00
ciregenz 6899ea5bd1 [eric] swarm: dashboard export/import (closure of agents+apps+modes, two-class deps) 2026-06-14 06:44:16 -07:00
ciregenz 9b80d0417a [eric] swarm: workflow export/import entity (lazy store, schedule-off + PII-strip on import) 2026-06-14 06:27:52 -07:00
ciregenz c179d20c16 [eric] swarm: Share button on app card + editor, import review/trust warning 2026-06-14 06:11:22 -07:00
ciregenz d2a7b79eaf [eric] swarm: app export/import (workspace tree, .env regen) + code-safety review 2026-06-14 06:11:16 -07:00
ciregenz 7ea461fc52 [eric] swarm: .swarm import flow (drag-drop + file picker, preflight/commit modal) 2026-06-14 06:00:12 -07:00
ciregenz 9b6e0f818f [eric] swarm: Share button + modal, wired into Skills detail header 2026-06-14 05:55:33 -07:00
ciregenz d7b2dfce7b [eric] swarm: backend tests for redaction, zip-slip/bomb, skill round-trip 2026-06-14 05:55:33 -07:00
ciregenz ace783f4ef [eric] swarm: .swarm bundle engine + skill export/import endpoints 2026-06-14 05:55:28 -07:00
ciregenz 78fbbebccd [eric] release: bump version to 1.2.84 (off-window crash fix + #81 rename + onboarding revamp) v1.2.84 2026-06-14 04:59:03 -07:00
ciregenz 3b5432b75a Merge branch 'eric/dev' into HEAD 2026-06-14 04:59:03 -07:00
ciregenz c2c43be9a0 [eric] frontend: normalize package-lock (npm dropped stale peer markers) 2026-06-14 04:44:47 -07:00
ciregenz bd8e5d93cc [eric] onboarding: recovery popup auto-dismisses the moment its step completes, no stale 'Tap Show me' after a transient throw 2026-06-14 04:35:22 -07:00
ciregenz aff75261f1 [eric] onboarding: mark launch_agent done after the first chat (was stuck to-do); a draft no longer counts as a launched agent 2026-06-14 04:14:41 -07:00
ciregenz 5d01bd5ebf [eric] onboarding: cursor pop spark, fewer spokes (6) but thicker + glow + longer (0.62s) so each reads clearly 2026-06-14 04:06:45 -07:00
ciregenz 2e3ce84572 [eric] build: gate mouse-clamp extraResources to macOS so the Windows build can't trip 2026-06-14 03:59:57 -07:00
ciregenz 8c7afa2bd8 [eric] onboarding: gate the tour like a game, hide the Finish setup pill until the first agent completes; drop the X/5 count 2026-06-14 03:49:40 -07:00
ciregenz b20673d552 [eric] onboarding: pin the welcome chat to exact viewport center (placeCard grid-snap was shoving it off-center) 2026-06-14 03:44:32 -07:00
ciregenz 5945dc91dc [eric] onboarding: welcome greeting is now a real streamed assistant bubble (rides the streaming slice + smooth-reveal), chips sit below it 2026-06-14 03:29:51 -07:00
ciregenz 80b40dc2b7 [eric] agents: forward draft dashboard_id into launch so the card survives send (fixes welcome chat quitting when you pick an option) 2026-06-14 03:20:38 -07:00
ciregenz fbbc57c810 [eric] onboarding: per-popup dwell override so the welcome cursor holds ~3s then clicks (not the tour's 6s floor) 2026-06-14 03:20:38 -07:00
ciregenz e9c8774ad7 [eric] onboarding: welcome reads as a real chat + cursor opens it + model in header 2026-06-14 02:41:28 -07:00
SirKentutandClaude Opus 4.8 eb6278ff5c fix(webapp-template): self-heal half-installed vite warm cache
An npm install killed mid-warm leaves node_modules/ populated but no
.bin/, so _ensure_warm_cache (which only checked the dir exists) trusted
the half-tree forever and every app symlinked to it died with
`vite: command not found`. Gate the cache on .bin/vite existing, and
harden the app's frontend/run.sh skip-install guard the same way.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-14 02:35:19 -07:00
ciregenz 82907b4601 [eric] onboarding polish: exaggerated cursor pop + longer wait then prompt click; faster greeting, no caret; chips slide in smoothly (no instant pop); title 'First chat with OpenSwarm', no draft label 2026-06-14 02:18:53 -07:00
ciregenz 89a1193f32 [eric] onboarding: welcome_open cursor shows a quick readable popup then clicks New Agent promptly (snappier) 2026-06-14 01:59:49 -07:00
ciregenz 8863d58c20 [eric] onboarding: cursor pops in then clicks New Agent to spawn the welcome chat (not auto), with delays; much slower title/greeting stream; manual click is the fail-safe 2026-06-14 01:53:12 -07:00
ciregenz ba850e5fdc [eric] onboarding: slower sequential welcome reveal (title -> greeting -> chips) + cursor bursts in with radiating orange spark lines 2026-06-14 01:43:13 -07:00
ciregenz 58b4774620 [eric] onboarding: personal, computer-aware starter chips (resume->site, my-spreadsheet->dashboard, recap my work, Minecraft, slideshow) , the stuff a sandboxed chatbot can't touch 2026-06-14 01:33:44 -07:00
ciregenz d0848f868d [eric] onboarding: Build chips lead with live-app wow only OpenSwarm gives instantly (Minecraft, beat-maker, live data dashboard, persistent tracker), drop Snake/expense-tracker 2026-06-14 01:28:42 -07:00
ciregenz 24dd47b1a2 [eric] onboarding: livelier Research chips (parallel-agent weekend plan, black-holes cheat sheet, strangest world record) over the flat ones 2026-06-14 01:23:32 -07:00
AidanandGitHub 2d7be0e8ac [aidan] bug: dashboard not renaming during first run 2026-06-14 01:22:13 -07:00
ciregenz 294354d867 [eric] onboarding: Build chip says 'mini Minecraft' (clearer + more exciting than '3D block world') 2026-06-14 01:17:33 -07:00
ciregenz 7eff2b1a88 [eric] onboarding: revamp starter chips to showcase the differentiators (App Builder apps, browser agent, MCPs, file/PDF harness, parallel agents) 2026-06-14 01:15:49 -07:00
ciregenz e5f9f2df62 [eric] onboarding: first-run welcome agent is exploratory (narrow down an open-ended ask before doing); concrete chips still just run 2026-06-14 01:12:00 -07:00
ciregenz b2fabec4a4 [eric] onboarding: stream the welcome greeting + stagger-pop the chips (greeting moves into the component, no seeded message) 2026-06-14 01:06:49 -07:00
ciregenz 665dec63e2 [eric] onboarding: first-run proactive welcome chat (seeded greeting + in-chat chips, zero run) + cursor pop-nudge at Continue 2026-06-14 00:56:48 -07:00