feat(chrome): let the IDE agent use the user's Chrome and beta.42
Server CI and Windows package / verify (push) Successful in 3m33s
Server CI and Windows package / windows-package (push) Successful in 7m36s

The AITURK Chrome extension now registers the user's Chrome as the desktop
backend's browser controller, the way the ChatGPT extension lets its agent
work in the user's browser. The agent's existing browser tools (navigate,
snapshot, click, type, scroll, back, press, get_images, vision) run in its
own background tabs grouped as "AITURK", or a tab the user hands over.

Backend: a local desktop lane in the browser-control broker. One controller
registered from the loopback desktop transport is offered to every desktop
session as a lane template; each session still gets its own exact scope on
first use. The lane has its own switch (browser.extension_control.local_desktop,
on by default); with no extension registered, or after it disconnects, the
normal browser backend runs unchanged. browser_vision turns the extension's
capture into the usual native/auxiliary vision result.

Bridge: forwards controller commands only to a connection that registered,
refuses unknown or oversized commands, relays results.

Extension: service-worker controller with its own native connection,
trusted chrome.debugger input (press/release only: a hover move waits 5 s on
background tabs), refusal of password and payment-card fields and of
browser, extension, file and Web Store pages, panel switch, Stop, tab
hand-over, recent actions, Alt+Shift+A and right-click "send to AITURK".
Cancelling Chrome's debugging bar stops the agent. Existing panel flows and
privacy rules are unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
yilsemandClaude Opus 5.5 committed 2026-10-15 08:38:52 +03:00
1 parent 5c76c24c9c
commit 86a6621936
32 files changed
+2755 -195

No files matched your search

+16 -1
View File
@@ -1,7 +1,7 @@
# AITURK Chrome beta
Windows / Chrome MV3 side panel for existing local AITURK IDE conversations.
Requires AITURK IDE 1.0.0-beta.9 or later; see `KURULUM.txt` for Turkish setup.
Requires AITURK IDE 1.0.0-beta.9 or later (agent browser control: 1.0.0-beta.42); see `KURULUM.txt` for Turkish setup.
The extension talks only to `online.turkservis.aiturk` using Chrome native
messaging. The per-user .NET Framework host authenticates to Electron's random
@@ -19,6 +19,20 @@ context is not truncated by this display policy. Approvals and clarifications
remain in the IDE. A backend event is stamped once and delivered to every
attached viewer so the desktop can still show and answer these requests.
## Agent browser control
The service worker keeps its own native connection and registers this Chrome
with the IDE backend as the local desktop browser controller
(`browser.controller.local.*`, see the API server docs). The IDE agent's
existing `browser_*` tools (navigate, snapshot, click, type, scroll, back,
press, get_images, vision) then run here, in agent tabs grouped as "AITURK"
or a tab the user hands over; when the switch is off or Chrome is closed the
agent keeps its normal browser. Clicks and key presses use trusted
`chrome.debugger` input; password and payment-card fields are refused;
chrome://, extension, file and Web Store pages are refused. Cancelling
Chrome's debugging bar, the panel's Stop button or the switch turns control
off and cancels pending commands.
## Build and verification
From the repository root, on Windows:
@@ -39,6 +53,7 @@ UI tests require the existing desktop workspace's jsdom dependency:
```powershell
npm ci --workspace apps/desktop --include-workspace-root
node --test apps/chrome/tests/panel.test.mjs
node --test apps/chrome/tests/agent.test.mjs
```
Exercise the production FastAPI session router and real temporary SQLite stores