fix: browser integration for AI research agent
Deploy Research Workbench / deploy (push) Failing after 10m12s

- Dockerfile: Install Google Chrome stable instead of Playwright npm package
  (playwright-cli defaults to /opt/google/chrome/chrome path). Removed unused
  Playwright npm package, kept Playwright Python for page automation.

- bundle/bundle.md: Fix orchestrator config override with correct key path
  (session.orchestrator.config.extended_thinking: false) to properly override
  foundation's extended_thinking: true default, which was causing empty
  AI text responses.

- bundle/agents/researcher.md: Add strong pre-installed environment guardrail
  telling agent NOT to install packages. Add explicit bash() tool call examples
  showing correct playwright-cli syntax. Fix snapshot command (removed non-existent
  -ic flag), change 'type' to 'fill' for form field syntax.

- bundle/context/researcher-instructions.md: Enrich from thin pointer to
  concrete examples with correct bash() wrapping and actual playwright-cli
  commands. Add 'do NOT install' guardrail.

Validated: Agent now opens Chrome browser during research queries, noVNC panel
shows live browser activity, AI generates text responses properly.

Generated with Amplifier

Co-Authored-By: Amplifier <240397093+microsoft-amplifier@users.noreply.github.com>
This commit is contained in:
Ken
2026-05-27 05:11:42 +00:00
parent 11b3bc2bbf
commit c21e4e7f7b
4 changed files with 72 additions and 24 deletions
+18 -5
View File
@@ -97,11 +97,24 @@ extract current data, and synthesize findings into clear, actionable results. Th
browser runs persistently — tabs stay open between commands, and the user can watch
and take over at any time via the noVNC view.
## IMPORTANT: Pre-installed Environment
`playwright-cli` is **already installed** in this container. Do NOT install anything.
Do NOT run `npm install`, `pip install`, or any package manager. Just use the commands
below directly via the bash tool.
## Browser Control (playwright-cli)
You control the browser using `playwright-cli` with a persistent named session
(`-s=research`). All commands operate on the same browser session, preserving tabs
and state across the entire conversation.
You control the browser using `playwright-cli` via the bash tool. All commands use
a persistent named session (`-s=research`), preserving tabs and state across the
entire conversation.
**How to invoke:** Every playwright-cli command runs through the bash tool:
```
bash("playwright-cli -s=research open https://example.com")
bash("playwright-cli -s=research snapshot")
bash("playwright-cli -s=research click @e5")
```
### Commands
@@ -109,9 +122,9 @@ and state across the entire conversation.
|--------|---------|
| Open a URL | `playwright-cli -s=research open https://example.com` |
| Take a snapshot | `playwright-cli -s=research snapshot` |
| Compact snapshot | `playwright-cli -s=research snapshot -ic` |
| Click an element | `playwright-cli -s=research click @e5` |
| Type text | `playwright-cli -s=research type @e3 "search query"` |
| Type text | `playwright-cli -s=research type "search query"` |
| Fill a field | `playwright-cli -s=research fill @e3 "search query"` |
| Press a key | `playwright-cli -s=research press Enter` |
| Scroll down | `playwright-cli -s=research scroll down` |
| Go back | `playwright-cli -s=research back` |