Commit Graph
141 Commits
Author SHA1 Message Date
ciregenz 0ba7d86fef agent: block claude.ai partner MCPs in prompt + at SDK layer
claude_code preset auto-attaches the user's claude.ai-connected partner
MCPs (mcp__claude_ai_*). They bypass MCPActivate, don't share OAuth
state with OpenSwarm's Gmail/Drive/Calendar connectors, and confuse
the model into picking the partner shim instead of our vetted server.
Hard-block via disallowed_tools + add a system-prompt rule.
2026-05-20 02:03:22 -07:00
ciregenz 178a6060eb gmail: route OAuth refresh through cloud rotation-pool proxy
google-workspace-mcp's gauth.py hardcodes token_uri to oauth2.googleapis.com
and uses local CLIENT_ID/SECRET on every refresh. OAuth runs through a
rotation pool on the cloud side, so the refresh_token is bound to the
pool slot that minted it, not the single client baked into the DMG, and
direct refreshes return unauthorized_client. Redirect spawn through a
shim that monkey-patches get_credentials to point token_uri at a local
proxy (/api/tools/google-oauth-token), which forwards the refresh to
api.openswarm.com/api/oauth/google/refresh (pool-aware). Unblocks every
Gmail/Drive/Calendar query for users on the cloud OAuth pool.
2026-05-20 01:58:59 -07:00
ciregenz a1fefa0ae8 [eric] approvals: trust patterns for action approvals + smarter sensitive-file gating 2026-05-20 01:56:38 -07:00
ciregenz 49e0ed3d2f experimental updates: opt-in prerelease channel via settings toggle + semver-suffix auto-detect in publish 2026-05-19 22:10:22 -07:00
ciregenz e840b1b7f0 [eric] sub bug fix 2026-05-13 19:05:04 -07:00
ciregenz ae54680635 [eric] WIP polish — app builder runtime + react-vite template tweaks, dashboard toolbar/card refinements, PixelBlast accent, runtime-preview hook,
sign-in gate + settings updates
2026-05-13 18:30:55 -07:00
ciregenz ea55dbe53a [eric] App Builder skill: duplicate-React crash fix recipe 2026-05-13 14:12:51 -07:00
ciregenz db38311a8d [eric] fix prod regressions: __import__ scrub broke imports + Windows path gate 2026-05-13 13:20:19 -07:00
ciregenz ccec204bc7 [eric] security: gate Write/Edit on sensitive paths + restore HOME/PATH for force-mode Outputs 2026-05-13 11:49:33 -07:00
ciregenz afe11b6f37 [eric] outputs: HITL preview for risky backend.py + workspace path-traversal hardening 2026-05-13 10:50:15 -07:00
ciregenz 1b0e6c35eb [eric] App Builder polish + onboarding fix 2026-05-13 00:24:51 -07:00
ciregenz 91508c87b1 [eric] onboarding bug fix and ux op 2026-05-12 22:36:22 -07:00
ciregenz c0c52e33d6 [eric] App Builder saves to sidebar on seed + onboarding fallbacks (auto-skip rules, fallback prompts, retry popup) 2026-05-12 13:11:56 -07:00
ciregenz a84aec257b [eric] App Builder uses real React/Vite scaffold + onboarding polish (auto sidebar expand, bigger pill, video crop), onboarding bugs / edgecases 2026-05-11 23:23:59 -07:00
ciregenz 2e2e8c7728 [eric] webapp-template standardization (React + Vite + FastAPI new-app starter) + swarm-debug built-in skill + stale-session recovery 2026-05-11 18:40:27 -07:00
ciregenz 573f4a1ed4 [eric] App Builder skill as editable built-in (Skills page, undeletable) + onboarding step 1 unsticks after Claude Max / ChatGPT Pro / Gemini /
custom-provider connect (subscription state moved to Redux)
2026-05-11 14:54:07 -07:00
ciregenz b4b7042af2 [eric] persistent app-backend runtime + Terminal tab (replaces one-shot execute + Console panel) 2026-05-11 13:47:55 -07:00
ciregenz d20ff7d16c [eric] app builder cleanup — remove Auto Run, Test Input, RenderOutput tool + Outputs activation gate 2026-05-11 09:05:45 -07:00
ciregenz 294a16ada0 [eric] system prompt: direct mcp__openswarm-web__WebSearch/WebFetch hint when web MCP is active (fixes 2-minute ToolSearch thrash on small Ollama
models)
2026-05-10 19:09:49 -07:00
ciregenz 54be1e8ba1 [eric] onboarding 1.0.31 + Settings draft persistence + LM Studio fix 2026-05-10 17:57:01 -07:00
ciregenz 89cbfe9749 [eric] onboarding polish + perf — humanized AC popups, batched /submit (1 POST/sec vs 100s), group-meta dedup,
sidebar auto-expand, cursor offset fixes
2026-05-09 23:34:40 -07:00
ciregenz fa693452d4 [eric] gpt-5.x api keys 2026-05-09 09:06:01 -07:00
ciregenz 0c841bdad4 [eric] onboarding revamp — agentic cursor walks users through 8 setup steps, WIP fixes: Gemini schema scrub, OpenAI GPT-5 routing, websearch cascade, gpt-5 is still a bit flaky... 2026-05-09 01:40:37 -07:00
ciregenz b3428a736b [eric] custom OpenAI-compatible provider support, youtube bug fix (windows) 2026-05-07 21:22:40 -07:00
ciregenz 5bac52266c [eric] sign-in flow polish, account UI, port-targeting fix 2026-05-07 16:48:22 -07:00
ciregenz 577501c19f [eric] sign-in flow polish: localhost activate + auto-refresh + clean signout 2026-05-07 12:44:45 -07:00
ciregenz fb78f013f3 [eric] account UI + proxy URL fix 2026-05-07 11:17:01 -07:00
ciregenz 7a6a49655c [eric] account flow + settings tweaks 2026-05-07 09:57:49 -07:00
ciregenz acd179d20e [eric] gitleaks org-license fix; picker filter footer; trim+cache MCP gate prompt; losses compression caching on llm response (20% improvement avg) 2026-05-07 00:28:57 -07:00
ciregenz fae2806124 [eric] make non-Anthropic API keys actually work end-to-end, fix the wildly wrong cost numbers, multi model ux/ui improvements 2026-05-06 21:05:57 -07:00
ciregenz 11487456b5 eric] Google OAuth via cloud-proxy + gitleaks CI 2026-05-06 13:28:35 -07:00
ciregenz d8a1e333be [eric] service layer touchups 2026-05-06 00:03:15 -07:00
ciregenz c64bf65c66 [eric] session state additions + ui hook refinements 2026-05-05 17:05:54 -07:00
ciregenz 415ab70b53 [eric] unify telemetry surface, install_method, frontend trackEvent 2026-05-05 14:35:43 -07:00
ciregenz 49c649e3d9 [eric] single sync function for all state syncing 2026-05-05 12:11:07 -07:00
ciregenz b2015caca7 [eric] batch heartbeats locally before sending 2026-05-05 00:21:52 -07:00
ciregenz 59e20e11ea [eric] clean up remaining non-opaque references 2026-05-04 22:25:48 -07:00
ciregenz 3c42d8738f [eric] refactor internal service layer 2026-05-04 19:39:19 -07:00
ciregenz b7a1faee38 [eric] delete miscelaneous scrapped code 2026-05-04 19:15:42 -07:00
ciregenz 5df979a59a analytics: fix completion-rate, mock-cost, and tool-count accuracy bugs 2026-05-04 17:50:11 -07:00
ciregenz 8286cc1a5c [eric] delete ~3.6k lines of dead code (old unused agent runtime, ghost fields, orphan scripts). all 660 tests still pass, no functional
change.
2026-05-03 22:39:17 -07:00
ciregenz 5f5b932c53 [eric] tiny dead-code sweep — drop unused langchain pins from requirements.txt (saves ~5MB on packaged build) plus a few orphan exports left
over from past iterations (temp_state slice fields, clipboard timestamp getter, three never-imported lastSeq helpers).
2026-05-03 21:31:13 -07:00
ciregenz d14cc89300 [eric] tool labels read like a person — Plugged into Gmail, Saved a snapshot, varied phrasings per call; session/turn labels
in sentence case; activating an MCP mid-chat now actually works instead of the model guessing at made-up tool names. Also a bunch miscelaneous ui/ux tweaks, I cant be bothered :)
2026-05-03 20:44:32 -07:00
ciregenz ade79315a9 [eric] thinking pill shows full turn cost (input + output + subagent + tool work) with click-to-see input/output breakdown; reopening
completed chats no longer replays the typewriter (per-session lastSeq survives AgentChat remount so resume protocol stays at the high-water
  mark instead of last_seq=0)
2026-05-03 11:21:02 -07:00
ciregenz d310f9e031 [eric] thinking pill works on GPT/Gemini (clickable bubble with duration + token count + honest "provider does not expose
reasoning text" note instead of vanishing); friendlier MCP tool names (Gmail/Slack/etc with verb-derived actions); auto-collapse Anthropic
  thinking pill on turn end so the answer comes first; header timer matches per-turn pill (sums in ms, rounds once); thinking pill rolls 251s
  to 4m 11s; parallel tool count chips do not jitter as N grows; drop Gemini 2.5 from picker (Gemini 3 family only); aux-LLM calls route
  per-model so cheap-tier auxiliary calls do not 401 on cc/ subscription routes
2026-05-02 23:46:13 -07:00
ciregenz 691a92c2a1 [eric] dynamic turn labels in the thinking pill via cheap-tier aux LLM + cache pre-warm on dashboard mount for faster turn-1
TTFT
2026-04-30 12:31:48 -04:00
ciregenz 98349df9f1 [eric] faster replies + smarter chat: optimistic message bubbles, live thinking... pill, friendlier tool-call labels (Reading → Read),
compaction chip, native completion notifications, prompt-cache flip for ~70% cheaper/faster
2026-04-29 14:07:18 -04:00
ciregenz b7c93e2251 [eric] global ⌘K search + ⌘L clear chat + sticky notes on canvas + merge Chat into Ask + chat composer/dock sizing + spellcheck 2026-04-29 02:41:01 -04:00
ciregenz f755548b93 [eric] drop (Pro/Max) suffix from cc/ model labels — group header already disambiguates from OpenSwarm Pro proxy;
.gitattributes: split mcp-bundles vendored pattern into two
2026-04-29 00:46:17 -04:00
ciregenz 9be2d87f73 [eric] WS resilience: per-session seq + ring buffer + resume protocol so agent runs survive transient disconnects (wifi flap, sleep, NAT
drop) instead of flipping to completed. Adds heartbeat (25s ping/10s pong), reconnect with infinite jittered backoff, outbound queue gated
   on resume_ack, gap_detected fallback for long offlines, on-disk persistence of terminal events for post-restart recovery, and a
  reconnecting connection state decoupled from session.status. 1089 backend tests covering 500 randomized disconnect scenarios + concurrent
  broadcast races. Backend/WS handler does not cancel agent task on disconnect
2026-04-28 23:47:59 -04:00