Commit Graph

  • 52487c3e31 [shawn] chore: add triage-deadcode.py to filter false positives from dead-code report TheAchiever6823 2026-05-19 14:46:05 -07:00
  • 618d2d82a0 [eric] experimental updates: opt-in prerelease channel via settings toggle + semver-suffix auto-detect in publish ciregenz 2026-05-19 13:56:39 -07:00
  • fdf80816e2 [eric] ci: skip gitleaks scan when new-branch push has no commits ahead of main ciregenz 2026-05-19 11:21:54 -07:00
  • e19846fc5f [eric] workflow card: fix can't-type-in-edit-view + edit button + ai descriptions v1.0.36 ciregenz 2026-05-19 01:32:28 -07:00
  • 20a3ae8506 [eric] 1.0.36 production push ciregenz 2026-05-18 17:35:36 -07:00
  • 177a585eaf [eric] test schedule suite ciregenz 2026-05-18 17:27:19 -07:00
  • 1f1fa220fe [eric] small bug fixes ciregenz 2026-05-18 17:18:44 -07:00
  • 13218b9c24 [eric] scheduled tasks: target-image visual pass, inline-edit in preview, AI descriptions, agent blocks claude.ai MCP shims, fixes hooks-order crash and ghost-card on relaunch ciregenz 2026-05-18 15:46:32 -07:00
  • ed6576b0f0 [shawn] chore: gitignore DEAD_CODE_REPORT.md + ship diagnose-spotify.py from earlier TheAchiever6823 2026-05-18 15:37:13 -07:00
  • 66b395ef61 [shawn] feat: audit-deadcode.py — generic dead-code scanner with decorator awareness TheAchiever6823 2026-05-18 15:36:27 -07:00
  • f53146af3e [shawn] fix: refuse Spotify token if scopes missing — show exact missing list inline TheAchiever6823 2026-05-18 15:04:08 -07:00
  • 3b26971c6c [shawn] fix: log Spotify scopes at MCP startup + clear credentials on disconnect TheAchiever6823 2026-05-18 14:58:21 -07:00
  • d712aa408f [shawn] fix: force Spotify consent screen + log granted scopes (catches scope drift) TheAchiever6823 2026-05-18 14:03:32 -07:00
  • 082f74deb6 [shawn] fix: exempt Spotify OAuth callback from bearer-token auth middleware TheAchiever6823 2026-05-18 13:55:15 -07:00
  • 35bdc4d6b7 [shawn] feat: add Spotify MCP — vendored, OAuth via OpenSwarm app credentials, 14 tools TheAchiever6823 2026-05-18 13:44:48 -07:00
  • 21effa80e3 [shawn] perf: per-chat session reuse — drops cold-start tax, agent remembers context TheAchiever6823 2026-05-18 11:29:44 -07:00
  • fdbff54cec [shawn] perf: Telegram bot — Sonnet model + 250ms poll interval (saves ~1-15s per task) TheAchiever6823 2026-05-18 11:26:31 -07:00
  • 09d5f82d8e [shawn] feat: BotFather setup wizard — 4-step guided flow for non-dev Telegram users TheAchiever6823 2026-05-18 11:05:06 -07:00
  • d51ff66552 [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 ciregenz 2026-05-18 04:28:13 -07:00
  • 05f6897b40 [eric] scheduled tasks: agent can now manage workflows itself + tons of safety, cross-platform polish, and edge-case fixes ciregenz 2026-05-18 03:14:24 -07:00
  • 1470defbf6 [shawn] feat: Telegram-aware system prompt + post-processor — replies look like texts, not reports TheAchiever6823 2026-05-18 01:36:59 -07:00
  • 44ca14dc6f [shawn] feat: native typing indicator instead of status banner — feels like real texting TheAchiever6823 2026-05-18 01:29:15 -07:00
  • 14737d8d38 [shawn] feat: Saved Messages — plain text becomes a task, no slash needed TheAchiever6823 2026-05-18 01:16:33 -07:00
  • a30a05f1cd [shawn] feat: official Telegram bot mode — DM your @BotFather bot with plain text, no slash TheAchiever6823 2026-05-18 01:06:15 -07:00
  • 92801b9156 [shawn] fix: load backend/.env at startup so Telegram listener gets API creds in dev TheAchiever6823 2026-05-18 00:55:29 -07:00
  • eb561d7187 [eric] workflows: fix mid-run PATCH/DELETE clobber, optimistic-concurrency PATCH, X-out ghost confirm, custom-draft no-orphan, skipped-run toast, dup-schedule guard, honest on_missed + Q/R warnings + clearer pause-all + Killed-by-restart copy ciregenz 2026-05-18 00:04:07 -07:00
  • 0829ed8e41 [shawn] fix: Telegram MCP event loop conflict — convert all tools to async TheAchiever6823 2026-05-17 23:37:34 -07:00
  • be0e3b7ff4 [shawn] feat: Telegram-as-control-plane — DM yourself /task <prompt> to drive an agent TheAchiever6823 2026-05-17 23:04:24 -07:00
  • f97af593cc [eric] scheduled tasks: tz-safe scheduler, tray + updater veto, schedule UX ciregenz 2026-05-17 22:55:00 -07:00
  • e0c560c648 [shawn] feat: add Telegram MCP — phone+OTP SSO, rate limits, scheduled-task ready TheAchiever6823 2026-05-17 22:47:21 -07:00
  • 5077fb2ff0 [shawn] fix: anti-loop guidance for Instagram and LinkedIn rate-limit hits TheAchiever6823 2026-05-17 19:45:00 -07:00
  • b1555e1359 [shawn] feat: OpenSwarm-side rate limiting for LinkedIn MCP via pre_tool_hook TheAchiever6823 2026-05-17 19:40:12 -07:00
  • b247ed7b7c [shawn] fix: set PYTHONPATH and absolute python for vendored Instagram MCP spawn TheAchiever6823 2026-05-17 19:30:25 -07:00
  • a9f6338227 [shawn] refactor: vendor Instagram MCP into backend/apps/instagram_mcp, drop external setup TheAchiever6823 2026-05-17 18:43:43 -07:00
  • 7729d5957e [arnav] twitter: add DM support — 1:1, groups, reactions arnav/twitter-mcp Arnav Naval 2026-05-17 20:28:32 -05:00
  • 789fb5e088 [shawn] feat: make Instagram MCP account-agnostic — setup script + portable paths TheAchiever6823 2026-05-17 18:28:20 -07:00
  • 93e5581436 [shawn] fix: write cookies.json and source-state.json so LinkedIn auth check passes TheAchiever6823 2026-05-17 17:57:51 -07:00
  • e189ee98e1 [eric] workflows as canvas-resident cards + hub + schedule UX pass, unstable version ciregenz 2026-05-17 11:54:19 -07:00
  • 1b6507631f [arnav] add in-app "Sign in with X" flow — Electron popup → cookie import route Arnav Naval 2026-05-17 10:55:35 -05:00
  • 55516fc4d7 [shawn] feat: add GitHub MCP integration TheAchiever6823 2026-05-16 23:14:59 -07:00
  • af63029ebd [shawn] feat: add LinkedIn MCP with in-app sign-in TheAchiever6823 2026-05-16 22:26:20 -07:00
  • e50c6afaed [shawn] stable release instagram mcp (dm) TheAchiever6823 2026-05-16 00:46:22 -07:00
  • 499eb16bad fix(mcp): wildcard allowlist when _tool_descriptions is unset TheAchiever6823 2026-05-15 22:15:20 -07:00
  • 490a3047cf [eric] production push 1.0.35 v1.0.35 ciregenz 2026-05-15 22:13:20 -07:00
  • 51a4b5dcaa [eric] frontend perf: instant collapses, lazy app editor, stale-id reap ciregenz 2026-05-15 21:43:55 -07:00
  • 9078326268 [eric] smooth bits-anim placeholder + retry on Vite cold-start + restore dashboard right-click ciregenz 2026-05-15 17:04:58 -07:00
  • 058cb0c52f [eric] frontend perf: streaming slice + canvas coalescing + lazy paths ciregenz 2026-05-15 16:11:58 -07:00
  • 1c3aab08dd [eric] trackpad navigation optimizaton for ux ciregenz 2026-05-15 10:13:22 -07:00
  • 09e0174139 [eric] canvas lag optimizations ciregenz 2026-05-14 22:27:45 -07:00
  • abf4f9ba0b [eric] production push 1.0.34 v1.0.34 ciregenz 2026-05-14 18:37:45 -07:00
  • b7ada2f3c3 feat(tools): desktop Instagram OAuth via MCP CLI bridge TheAchiever6823 2026-05-14 16:54:17 -07:00
  • 5c67c0927e [arnav] add Twitter MCP — twikit-backed SubApp + stdio shim New backend/apps/twitter SubApp wraps twikit behind /api/twitter routes: account pool with cookie persistence, rate-limit gate with TTL cache, and 429 → {retry_after_s} responses the shim relays as structured MCP errors. backend/apps/twitter_mcp_shim is a stdlib- only stdio MCP server that forwards each tool call to the local backend over HTTP using the per-install auth token (re-read on 401 so token rotation can't strand the subprocess). - tools_lib: wire OPENSWARM_BASE_URL / AUTH_TOKEN(_FILE) / PYTHONPATH for the twitter shim (mirrors the Discord shim setup) - paths: add TWITTER_DIR under DATA_ROOT for cookie + state storage - main: register the twitter SubApp - requirements: pin twikit==2.3.3 (X rotates query IDs frequently), add curl-cffi + httpx-curl-cffi for Chrome TLS-fingerprint bypass (stock httpx JA3 → 403 on x.com since late 2025); see twikit#396 - tests: persistence, pool, ratelimit, routes, shim, twikit patches Arnav Naval 2026-05-14 18:24:56 -05:00
  • 1455ccef11 [eric] desktop carries a tag now ciregenz 2026-05-14 11:55:48 -07:00
  • 5d3cfcec2d [eric] Mac publish fixes: NODE_OPTIONS heap + rsync excludes for user-state and template_cache v1.0.33 ciregenz 2026-05-14 01:42:31 -07:00
  • 531e3df28f [eric] retag 1.0.33 ciregenz 2026-05-13 19:41:47 -07:00
  • e840b1b7f0 [eric] sub bug fix ciregenz 2026-05-13 19:05:04 -07:00
  • 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 ciregenz 2026-05-13 18:30:55 -07:00
  • ea55dbe53a [eric] App Builder skill: duplicate-React crash fix recipe ciregenz 2026-05-13 14:12:51 -07:00
  • db38311a8d [eric] fix prod regressions: __import__ scrub broke imports + Windows path gate ciregenz 2026-05-13 13:20:19 -07:00
  • ccec204bc7 [eric] security: gate Write/Edit on sensitive paths + restore HOME/PATH for force-mode Outputs ciregenz 2026-05-13 11:49:33 -07:00
  • afe11b6f37 [eric] outputs: HITL preview for risky backend.py + workspace path-traversal hardening ciregenz 2026-05-13 10:50:15 -07:00
  • 1b0e6c35eb [eric] App Builder polish + onboarding fix ciregenz 2026-05-13 00:24:51 -07:00
  • 91508c87b1 [eric] onboarding bug fix and ux op ciregenz 2026-05-12 22:36:22 -07:00
  • c0c52e33d6 [eric] App Builder saves to sidebar on seed + onboarding fallbacks (auto-skip rules, fallback prompts, retry popup) ciregenz 2026-05-12 13:11:56 -07:00
  • a84aec257b [eric] App Builder uses real React/Vite scaffold + onboarding polish (auto sidebar expand, bigger pill, video crop), onboarding bugs / edgecases ciregenz 2026-05-11 23:23:59 -07:00
  • 2e2e8c7728 [eric] webapp-template standardization (React + Vite + FastAPI new-app starter) + swarm-debug built-in skill + stale-session recovery ciregenz 2026-05-11 18:40:27 -07:00
  • dfdd11a271 [eric] onboarding — auto-detect collapsed sidebar and walk user through expanding it before targeting sidebar items; AC popup/cursor polish + step 3-6 fixes ciregenz 2026-05-11 15:31:57 -07:00
  • 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) ciregenz 2026-05-11 14:54:07 -07:00
  • 3417a2f7fb [eric] runtime: fix missing asyncio import in main.py + right-click Hard Reload on the App Builder reload button ciregenz 2026-05-11 13:56:08 -07:00
  • 1988435466 [eric] fix runtime-logs WS — missing top-level asyncio import in main.py ciregenz 2026-05-11 13:51:41 -07:00
  • b4b7042af2 [eric] persistent app-backend runtime + Terminal tab (replaces one-shot execute + Console panel) ciregenz 2026-05-11 13:47:55 -07:00
  • c670033238 eric] fix app builder cross-agent chat leak via draftLaunchMap (drop activeSessionId fallback) ciregenz 2026-05-11 11:28:48 -07:00
  • 741fea5c89 [eric] reset history button (replaces dead View Changes) + thumbnail capture path fix ciregenz 2026-05-11 10:19:36 -07:00
  • 3342c71ed1 [eric] app builder — drop manual Save button (auto-save stays) ciregenz 2026-05-11 09:28:44 -07:00
  • d20ff7d16c [eric] app builder cleanup — remove Auto Run, Test Input, RenderOutput tool + Outputs activation gate ciregenz 2026-05-11 09:05:45 -07:00
  • 3ff586db52 [eric] 1.0.32 production push ciregenz 2026-05-11 00:34:24 -07:00
  • 2cc7e0f080 [eric] 1.0.32 — fix blank onboarding videos (./ instead of / under file://) v1.0.32 ciregenz 2026-05-11 00:03:08 -07:00
  • 56d99be9cc [eric] 1.0.31 production push ciregenz 2026-05-10 23:32:07 -07:00
  • 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) v1.0.31 ciregenz 2026-05-10 19:09:49 -07:00
  • 54be1e8ba1 [eric] onboarding 1.0.31 + Settings draft persistence + LM Studio fix ciregenz 2026-05-10 17:57:01 -07:00
  • 38c6717fb7 [arnav] feat: enable SDK skill auto-discovery via directory layout migration Skills previously lived as flat <slug>.md files injected directly into the user prompt, which bypassed Claude Code CLI's native discovery entirely. Switch to the CLI's expected <slug>/SKILL.md layout so the SDK can surface each skill's frontmatter to the model and let it call Skill(slug) lazily on its own — without having to eagerly inject every skill body every turn. Key changes: - One-shot startup migration moves existing flat files into the directory layout (idempotent, crash-safe, preserves existing dir if already migrated) - get_installed_slugs() with module-level cache (keyed by SKILLS_DIR) so the per-turn allowlist query is effectively free on the hot path - _ensure_frontmatter() stamps a valid YAML block on every write so the CLI listing never silently drops a skill with missing frontmatter - _resolve_sdk_skill_allowlist() replaces the old skills=[] kill-switch: passes only user-installed slugs to the SDK, filtering out bundled Claude Code skills (/init, /review, etc.) by not including them, and dropping manually-attached skills that are already injected into the user message - CRUD endpoints and tests updated to the new directory layout throughout arnav/tests Arnav Naval 2026-05-10 17:56:23 -05:00
  • 443327d4bd [eric] onboarding fixes — auto fit-to-view before drag select, scroll-aware move_to, robust celebration timer, no-flash app preview, openrouter / custom model integration bug fixes (windows) ciregenz 2026-05-10 11:06:04 -07:00
  • 89cbfe9749 [eric] onboarding polish + perf — humanized AC popups, batched /submit (1 POST/sec vs 100s), group-meta dedup, sidebar auto-expand, cursor offset fixes ciregenz 2026-05-09 23:34:40 -07:00
  • fa693452d4 [eric] gpt-5.x api keys ciregenz 2026-05-09 09:06:01 -07:00
  • 84d5e1fa60 [arnav] disable Claude Code's bundled plugin skills in agent sessions Pass skills=[] to ClaudeAgentOptions so the SDK's built-in plugin skills (/init, /review, /security-review, /simplify, /loop, /schedule, /update-config, /keybindings-help, /fewer-permission-prompts, /claude-api) are hidden from the model and rejected by the Skill tool. These skills are inappropriate in OpenSwarm: half mutate ~/.claude config files (settings.json, keybindings.json) that OpenSwarm doesn't read, and the rest expose slash commands the backend never intercepts — causing the model to falsely claim capabilities it can't actually use. OpenSwarm's own skills system injects skill content directly into the user prompt via _resolve_attached_skills, bypassing the Skill tool entirely, so user-attached skills are unaffected. Also adds a regression test that pins the skills=[] assignment so it can't be silently dropped in a future refactor. arnav/skills-cleanup Arnav Naval 2026-05-09 10:36:15 -05:00
  • 41812c5ca2 [eric] tune onboarding popup streaming speed and revert popup hold-time gating ciregenz 2026-05-09 02:08:24 -07:00
  • 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... ciregenz 2026-05-09 01:40:37 -07:00
  • c539bf8115 [eric] 1.0.30 production push v1.0.30 ciregenz 2026-05-08 00:15:03 -07:00
  • a0dc8dce11 [eric] 1.0.30 production push ciregenz 2026-05-07 23:41:43 -07:00
  • b3428a736b [eric] custom OpenAI-compatible provider support, youtube bug fix (windows) ciregenz 2026-05-07 21:22:40 -07:00
  • 947b8f9155 [eric] v1.0.29 production push v1.0.29 ciregenz 2026-05-07 16:49:23 -07:00
  • 5bac52266c [eric] sign-in flow polish, account UI, port-targeting fix ciregenz 2026-05-07 16:48:22 -07:00
  • 577501c19f [eric] sign-in flow polish: localhost activate + auto-refresh + clean signout ciregenz 2026-05-07 12:44:45 -07:00
  • fb78f013f3 [eric] account UI + proxy URL fix ciregenz 2026-05-07 11:17:01 -07:00
  • 7a6a49655c [eric] account flow + settings tweaks ciregenz 2026-05-07 09:57:49 -07:00
  • acd179d20e [eric] gitleaks org-license fix; picker filter footer; trim+cache MCP gate prompt; losses compression caching on llm response (20% improvement avg) ciregenz 2026-05-07 00:28:57 -07:00
  • fae2806124 [eric] make non-Anthropic API keys actually work end-to-end, fix the wildly wrong cost numbers, multi model ux/ui improvements ciregenz 2026-05-06 21:05:57 -07:00
  • 8e8696b858 [arnav] remove dead service-client and credentials helpers arnav/backend-cleanup Arnav NavalandCursor 2026-05-06 19:09:56 -05:00
  • 64dfd50d12 [arnav] remove dead code identified by audit Arnav NavalandCursor 2026-05-06 18:49:30 -05:00
  • 9100e91652 [arnav] clean up unused imports and dead local variables Arnav NavalandCursor 2026-05-06 18:30:34 -05:00