Commit Graph
255 Commits
Author SHA1 Message Date
ciregenz fc18519c19 [eric] 1.1.41 production push v1.1.41 2026-05-22 19:21:19 -07:00
ciregenz 94f045a9f9 [eric] tools: rip out dead Apps action group + permission field (UI was never wired to agent dispatch) 2026-05-22 19:15:51 -07:00
ciregenz d8f803b54d [eric] tools: fix Google Workspace pill showing 'Google Workspace account' instead of email 2026-05-22 19:05:14 -07:00
ciregenz 27e75ab713 [eric] app builder: don't wipe in-flight drafts on close + Reset History clears thinking/resume bubble 2026-05-22 18:52:48 -07:00
ciregenz 8ab21c06d9 [eric] dashboard: right-click app card reload for Reset & Hard Reload 2026-05-22 18:34:18 -07:00
ciregenz ce57c00024 [eric] publish: auto-draft experimental releases on GH 2026-05-21 15:50:39 -07:00
ciregenz 80cd3de66d [eric] windows: add author field for Squirrel NuGet manifest validation v1.1.40-exp.2 2026-05-21 15:48:57 -07:00
ciregenz 08986dfb6d [eric] windows: switch installer to squirrel target + split auto-updater (exp.2) 2026-05-21 15:19:52 -07:00
ciregenz ddd82ef239 [eric] windows: lazy backend boot, render in parallel with python cold-start (exp.2) 2026-05-21 13:52:54 -07:00
ciregenz 47c8f8f2a9 [eric] windows: prewarm Defender on install (exp.1) 2026-05-21 11:57:36 -07:00
ciregenz 0b32266be7 [eric] 1.1.40 production push v1.1.40 2026-05-21 01:32:04 -07:00
ciregenz a2495f5899 [eric] updater + custom providers: allowDowngrade for rollback + Ollama bare-host URL /v1 normalization 2026-05-21 01:11:32 -07:00
ciregenz cce668a1e8 bump version to 1.1.39 v1.1.39 2026-05-20 20:48:52 -07:00
ciregenz 1628e09305 fix: seed builtin_permissions.json on startup so Settings toggles persist
Without this the file was missing on first run, load_builtin_permissions()
returned {}, and the agent fell through to _DEFAULTS={Bash:'ask'} even
though the Settings UI showed green 'always_allow' checkmarks (because the
UI defaulted missing entries to always_allow for DISPLAY but the agent
defaults to ask for SAFETY). The mismatch meant users got prompted on
every ls/cd/pwd despite having flipped Bash to always_allow in the UI.

Lifespan now seeds the file with Bash=ask and everything else=always_allow,
matching agent_manager._DEFAULTS. Idempotent: only writes if a tool is
missing; never clobbers a policy the user already set.
2026-05-20 19:37:42 -07:00
ciregenz f59bf0db9b defluff (frontend + backend): strip em-dashes + shorten docstrings + drop dead UI files (cosmetic only, no schedule code) 2026-05-20 05:36:17 -07:00
ciregenz 5b0c6e1df3 defluff: strip em-dashes + shorten docstrings across backend (cosmetic only, no logic change) 2026-05-20 05:25:23 -07:00
ciregenz c138615083 docs: add CONTRIBUTING.md (git/branch conventions) 2026-05-20 03:29:25 -07:00
ciregenz 5db8eeb2ee bump version to 1.1.38 v1.1.38 2026-05-20 02:11:28 -07:00
ciregenz ac99b0090b fixes: MCP auto-continue lists tool names + history doesn't eat chats + WS strip replayed closes
(1) After MCPActivate, the continuation prompt now enumerates the
activated server's callable tool names so the next turn calls them
directly instead of burning a turn on tool-discovery guesses.
(2) Resume no longer deletes the session file from disk; previously
every click on a past chat permanently removed it from history.
(3) WS replay skips agent:closed events; replaying them on a fresh
client destructively deleted the session being opened.
2026-05-20 02:10:12 -07:00
ciregenz 6092fc0966 apps: canvas-chat App Builder seeds + sync meta.json + stale-approval filter
App Builder launched from canvas chat now seeds the React template and
registers an Output row tied to the session id, so the Apps sidebar
lights up immediately. Adds a post-session-complete sync that reads
meta.json from the workspace folder and updates the Output row's name
and description, ending the 'Untitled App' problem. Also adds a stale-
approval filter to the WS replay: resolved approvals no longer
resurrect as dead cards when the user navigates back to a chat.
2026-05-20 02:09:03 -07:00
ciregenz ab0c265d7e chat: dismissable MCP suggestion banner + auto-clear on activate + jump to /actions on unknown_server
Adds an × button to the integration-suggestion banner so it doesn't
linger after the user dismisses it. On successful MCP activate, clears
the banner so the user gets visual confirmation the click did
something. On unknown_server response (not yet connected), navigate to
/actions so the user can finish OAuth there.
2026-05-20 02:06:26 -07:00
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 9001cb8e38 [eric] DMG/EXE slim ~445 MB: drop legacy onboarding videos, per-arch node + lipo-thin uv, electronLanguages=[en], exclude backend/data + uv-bin
from bundle rsync (closes dev auth.token / install_id leak), strip pip + Tcl/Tk + pydoc_data + _pyrepl, both platforms
2026-05-20 01:52:47 -07:00
ciregenz a5277cb732 [eric] ci: skip gitleaks scan when new-branch push has no commits ahead of main
Workflow's new-branch fallback fell through to a full repo scan whenever
merge-base with main equaled HEAD (empty range). That re-flagged every
historical secret a prior PR had already cleared. Now: empty range means
nothing new to scan, log + exit clean. Genuine no-shared-history case
still falls through to full scan.
2026-05-20 01:51:57 -07:00
ciregenz fa6a8f0f1d bump version to 1.1.37 v1.1.37 2026-05-19 22:10:55 -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 03e995b6f0 [eric] 1.0.37 hotfix: roll back to 1.0.35 codebase v1.0.37 2026-05-19 16:10:17 -07:00
ciregenz 490a3047cf [eric] production push 1.0.35 v1.0.35 2026-05-15 22:13:20 -07:00
ciregenz 51a4b5dcaa [eric] frontend perf: instant collapses, lazy app editor, stale-id reap 2026-05-15 21:43:55 -07:00
ciregenz 9078326268 [eric] smooth bits-anim placeholder + retry on Vite cold-start + restore dashboard right-click 2026-05-15 17:04:58 -07:00
ciregenz 058cb0c52f [eric] frontend perf: streaming slice + canvas coalescing + lazy paths 2026-05-15 16:11:58 -07:00
ciregenz 1c3aab08dd [eric] trackpad navigation optimizaton for ux 2026-05-15 10:13:22 -07:00
ciregenz 09e0174139 [eric] canvas lag optimizations 2026-05-14 22:27:45 -07:00
ciregenz abf4f9ba0b [eric] production push 1.0.34 v1.0.34 2026-05-14 18:37:45 -07:00
ciregenz 1455ccef11 [eric] desktop carries a tag now 2026-05-14 11:55:48 -07:00
ciregenz 5d3cfcec2d [eric] Mac publish fixes: NODE_OPTIONS heap + rsync excludes for user-state and template_cache v1.0.33 2026-05-14 01:42:31 -07:00
ciregenz 531e3df28f [eric] retag 1.0.33 2026-05-13 19:41:47 -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