26 Commits
Author SHA1 Message Date
arc53-machine 54e9e8a335 Keep the In my chats switch and sign in again from cards
Tool tiles keep the caller's own In my chats switch, with the same
visibility and revert-on-failure as before, but without the label text
beside it; screen readers still get its name. A connected tool whose
connection needs signing in again has Sign in again in its menu, and a
paused synced source has Reconnect on its tile, both for the reader's own
connection and in place where the wizard can do it.
2026-09-29 18:56:01 +01:00
arc53-machine c356ad18a9 Drop the In my chats switch and Manage connection from cards
Tool cards no longer carry the In my chats switch; the chat's Tools
picker (and a connection's drawer) still sets it, for the same tools. The
Manage connection item goes from tool and source menus, with the
in-place connection drawer on Tools: connections are managed on the
Connectors page. The owner's connected tool keeps Share and Delete; a
teammate's still opens the tool editor.
2026-09-29 18:33:21 +01:00
arc53-machine 0eb309a592 Keep a connected tool's credentials with its owner in the UI
The server lets only the owner change the secret on a tool's connection,
so an editor no longer gets live credential fields on a connected tool:
the locked-credentials notice shows and no config is sent, so a rename
or action edit still saves. The share dialog drops the "Editors can
change credentials" switch for a connected tool, uses the matching
editor hint, and says a viewer's runs use each member's own account in
member mode.

An editor the owner lets share now sees whose account shares use,
locked, and still has to confirm before sharing a tool that can act.
The owner's Reconnect is decided by the tool's connection id, so it no
longer flashes before the connections load, and the connection panel's
tool switch is labelled "In my chats", which is what it sets.
2026-09-29 14:12:31 +01:00
arc53-machine a1789d2ab4 Merge main (roles and access revamp) into connectors
Main's access model (team editors and viewers, edit_credentials, owner-only
OAuth servers, per-user tool preferences, resource sponsors) now applies to
connection-backed tools and sources. Our migrations are renumbered to
0040_connections and 0041_connection_account_name, after main's
0038_resource_access_settings and 0039_resource_sponsors.

Where the two sides met: MCP tools save and load their connections as the
tool owner, editors may add a key (a new connection on the owner's account)
but never rewrite an existing connection's secret, fixed values stay
owner-only, and a member's own connection is used in member mode.
2026-09-29 14:02:26 +01:00
Pavel 7530e54aec Shared resource use 2026-09-29 11:43:43 +04:00
Pavel 38bfb19739 Frontend fixes 2026-09-29 11:11:33 +04:00
Pavel 98afa5d93c Roles audit and revamp 2026-09-29 10:42:39 +04:00
arc53-machine ca8fb94777 Bring the connectors UI in line with DESIGN.md
From a design review against frontend/DESIGN.md:
- Drawer panels use the subtle surface; ToolPermissions takes the
  surface it sits on (outline in the wizard, subtle in the drawer).
- The OAuth sign-in is the wizard's footer action with a Cancel
  (useConnectorAuth), and sign-in buttons show the service's own glyph
  instead of a hard-coded Drive logo. Add Tool's links moved into its
  ModalActions footer.
- Failed saves, disconnects and connector creates say so in a toast;
  the admin page reports save errors as a toast too.
- Capability badges are neutral; status hues are left for states.
- Row titles use SectionHeader actions, setup settings a DescriptionList,
  empty lists EmptyState, retry and row buttons their pill roles.
- The drawer names its close button and describes itself with
  SheetDescription; counts are formatted for the app language.
- One ConnectorSetupNotice for the drawer and Upload; warning Alerts use
  TriangleAlert; its link keeps the Alert colour (Approved exceptions).
- Tools and Sources tiles show the same "via <service>" meta line; the
  paused badge explains itself in a Tooltip.
- On phones the category filter is a Select, empty categories are not
  offered, and a composer's capability filter says so with Show all.
- The admin page uses PageToolbar and SectionHeader descriptions, and is
  English throughout.
2026-09-28 20:33:34 +01:00
arc53-machine 3e11442a83 Merge remote-tracking branch 'origin/main' into connectors
# Conflicts:
#	frontend/DESIGN.md
#	frontend/src/locale/de.json
#	frontend/src/locale/en.json
#	frontend/src/locale/es.json
#	frontend/src/locale/jp.json
#	frontend/src/locale/ru.json
#	frontend/src/locale/zh-TW.json
#	frontend/src/locale/zh.json
#	frontend/src/upload/Upload.tsx
2026-09-28 18:07:12 +01:00
arc53-machine 6e2ee43944 Connect services from one wizard, with no tokens in the browser
Every entry point (the Connectors page and drawer, Add Source, Add
Tool, the chat) opens one connect wizard: sign in or paste the
credentials, choose what to sync (content services only, skippable),
then a summary with Try it in chat. Tool services create their tools on
sign-in with write actions needing approval, and each action's
permission (Always allow, Needs approval, Off) can be changed in the
wizard or the drawer. The drawer also reconnects, syncs more content,
refreshes an MCP server's tools and removes a connection, keeping or
deleting what it feeds.

The file pickers work from a connection id and fetch a short-lived
picker token when they need one; no session token is kept in
localStorage any more, and any left by an older build is claimed once
and removed. S3 and Reddit reuse the keys stored on a connection.

A tool whose account needs signing in pauses on a Connect card in the
chat; after connecting, Continue resumes the call. A connection whose
sign-in stops working raises a Reconnect toast. The Connectors page is
hidden when the backend does not report connectors_enabled.
2026-09-28 17:21:44 +01:00
Pavel 706a0cb2b2 Big source revamp 2026-09-28 17:35:16 +04:00
Pavel 4070b03053 Workflow revamp 2026-09-27 21:31:01 +04:00
Pavel d4c97a49ce Agent menu in new style 2026-09-27 19:45:05 +04:00
Pavel 20bcd92942 updated drawer 2026-09-27 16:53:18 +04:00
Pavel ed804a14e9 Cards standartization 2026-09-27 16:17:59 +04:00
Pavel 231849c957 Design additions 2026-09-27 13:00:11 +04:00
Pavel 3d5b0cae89 Button bug 2026-09-26 22:31:36 +04:00
Pavel a6abc8cd3c Code block fixes 2026-09-26 21:59:05 +04:00
Pavel 93beca6c02 description polish 2026-09-26 21:48:11 +04:00
Pavel 325c841e3b Fix vertical mobile overflow 2026-09-26 21:25:21 +04:00
Pavel 44b7059075 Mobile modal standartisation 2026-09-26 21:20:24 +04:00
Pavel b54081f9b4 mobile top nav 2026-09-26 20:09:30 +04:00
Pavel c4b1b2767f Real UI fixes 2026-09-26 14:02:19 +04:00
Pavel f66dc50eed Phase 2 2026-09-26 12:18:05 +04:00
Pavel 0dd379c271 phase 3 2026-09-25 12:26:39 +04:00
Pavel d5f1e47593 pre app check 2026-09-24 21:05:39 +04:00