Repository navigation
feat: add direct browser tool and drop worker - #191
Conversation
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7220b61dc6
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
- Add agent_browser tool for the session sandbox - Remove task worker, instructions, and feature flag - Use the Chromium/agent-browser sandbox image - Remove the separate agent_browser skill - Update browser boundary and sandbox docs
7220b61 to
71f767a
Compare
|
@codex review |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
What
Add a dedicated
agent_browser(args)tool and remove the delegatedtask_worker. The root agent performs browser work directly in its current session sandbox, using the shared Chromium/agent-browser sandbox image.Why
Browser calls should have an explicit argument-based interface, as Athena does. Removing the task worker keeps a single execution path and avoids building a second model and toolset for delegation. The browser boundary is now explicit: Chromium runs in the isolated OpenSandbox, never on the Blacki host.
How
agent_browser(args), validate the argument list, shell-quote each argument, pin the current conversation's browser session, add content boundaries, and enforce a 90-second timeout.SANDBOX_IMAGEtoghcr.io/queryplanner/athena-sandbox:latest, which provides Chromium, a pinned agent-browser, and its bundled usage guides.1Giso Chromium has headroom.agent_browserskill. The tool directs the model toagent_browser(args=["skills", "get", "core"])oragent_browser(args=["--help"]).AGENTS.mdand the architecture/environment docs to describe the sandbox browser boundary.Tests
uv run ruff formatanduv run ruff checkuv run mypy .(218 source files)uv run pytest --cov=src(2,086 passed, 1 skipped, 100% line and branch coverage)uv run --no-sync mkdocs build --strictuv run pytest tests/test_deployment_contract.py(29 passed, 1 skipped)bash -n setup.sh entrypoint.shdocker compose -f compose.yaml -f compose.prod.yaml config --quietagent-browser 0.38.1,Chromium 154.0.8037.92, and the bundledskills get coreguideBreaking Changes
TASK_WORKER_ENABLEDno longer enables delegation. Blacki no longer registers a task worker; existing conversation history is retained.ghcr.io/queryplanner/athena-sandbox:latest(linux/amd64), and the default sandbox memory is1Gi. Override withSANDBOX_IMAGEorSANDBOX_MEMORY_LIMIT; on arm64, build an arm64 image.agent_browserskill is removed. The tool exposes the same CLI, and the image's bundled usage guide is available throughagent_browser(args=["skills", "get", "core"]).Related Issues