Skip to content

Commit 341edb0

Browse files
authored
Merge pull request #99 from browser-use/sync/upstream-v1.17.8
sync: upstream v1.17.8 (8716c43 on dev)
2 parents c26f48c + 7675d76 commit 341edb0

582 files changed

Lines changed: 27785 additions & 58346 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.opencode/agent/triage.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
mode: primary
33
hidden: true
4-
model: opencode/gpt-5.4-nano
4+
model: opencode/gpt-5.4-mini
55
color: "#44BA81"
66
tools:
77
"*": false

.opencode/opencode.jsonc

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,15 @@
22
"$schema": "https://opencode.ai/config.json",
33
"provider": {},
44
"permission": {},
5-
"reference": {
6-
"effect": "github.com/Effect-TS/effect-smol",
5+
"references": {
6+
"effect": {
7+
"repository": "github.com/Effect-TS/effect-smol",
8+
"description": "Use for Effect v4 and effect-smol implementation details",
9+
},
10+
"opencode-local": {
11+
"path": "~/.local/share/opencode",
12+
"description": "Contains opencode logs and data",
13+
},
714
},
815
"mcp": {},
916
"tools": {

AGENTS.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,12 @@
33
- Prefer automation: execute requested actions without confirmation unless blocked by missing info or safety/irreversibility.
44
- The default branch in this fork is `main`; upstream's default branch is `dev`.
55

6+
## Branch Names
7+
8+
Use a short branch name of at most three words, separated by hyphens. Do not use slashes or type prefixes such as `feat/` or `fix/`.
9+
10+
Examples: `session-recovery`, `fix-scroll-state`, `regenerate-sdk`.
11+
612
## Commits and PR Titles
713

814
Use conventional commit-style messages and PR titles: `type(scope): summary`.

CONTEXT.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,9 @@ _Avoid_: Request body, wire options
5252
**Generation Controls**:
5353
Provider-neutral sampling and output controls, partitioned from provider semantics and compatibility wire fields when model metadata enters the Catalog.
5454

55+
**PTY Environment**:
56+
The host-supplied environment overlay applied by the server when creating a PTY, observed for the request Location and resolved PTY working directory.
57+
5558
## Relationships
5659

5760
- A **System Context** is an opaque carrier composed from zero or more **Context Sources**.
@@ -99,6 +102,8 @@ Provider-neutral sampling and output controls, partitioned from provider semanti
99102
- A model/provider switch always starts a new **Context Epoch** while preserving chronological conversation history.
100103
- **Model Request Options** remain provider-semantic through Catalog resolution. The Session runner maps them into the LLM package's provider-option namespace; the selected protocol adapter alone owns provider wire encoding.
101104
- **Generation Controls**, protocol-semantic **Model Request Options**, and compatibility request body fields are separate Catalog domains. A shared ingestion adapter partitions legacy and models.dev AI-SDK-shaped options before routing.
105+
- The **PTY Environment** is a server concern rather than a Core PTY concern. PTY creation merges caller values, then the host overlay, then Core-forced terminal invariants such as `TERM` and `OPENCODE_TERMINAL`.
106+
- A **PTY Environment** adapter observes plugins in the request Location while passing the resolved PTY working directory to the hook; standalone servers use an empty adapter.
102107
- A **Mid-Conversation System Message** lowers to the provider's native chronological instruction role when supported and to a wrapped chronological fallback otherwise.
103108
- When the effective aggregate instruction set changes, its **Mid-Conversation System Message** includes the complete current ordered set and supersedes the prior aggregate value; when no ambient instructions remain, the message states that previously loaded instructions no longer apply.
104109
- Ambient project instruction discovery honors `OPENCODE_DISABLE_PROJECT_CONFIG`; global instructions remain eligible.

UPSTREAM.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ Each upstream has its own append-only table. Add a row every time you pull.
8585

8686
| 2026-05-31 | `c43edc5b7` | `74ce1a1ed` | bcode | Merged upstream release point for v1.15.13 (`sync release versions for v1.15.13` on `dev`). 650 upstream commits across v1.15.1-v1.15.13. Major upstream changes pulled in: ACP service rewrite, LLM request-prep/native-runtime extraction, default-agent/reference/scout followups, provider/model/catalog updates, and large UI/stats/docs churn. Conflicts: `.github/workflows/{close-prs,deploy,publish}.yml` re-deleted (`close-prs.yml` is new upstream moderation automation), README translations re-deleted, `AGENTS.md` kept BrowserCode fork guidance while adopting upstream commit/PR-title guidance, `README.md` kept BrowserCode product copy, `bun.lock` regenerated, `packages/opencode/package.json` kept `@browser-use/browsercode-core` and took version 1.15.13, source conflicts resolved in `acp/{agent,service}.ts`, `config/{agent,command,config}.ts`, `installation/index.ts`, `plugin/index.ts`, `session/{llm,processor}.ts`, `session/llm/request.ts`, and `test/tool/registry.test.ts`. Yellow-zone audit touched `AGENTS.md`, `README.md`, `packages/opencode/package.json`, `script/build.ts`, ACP, config, installation, plugin, provider, session, storage, and tool-registry files; BrowserCode customizations preserved/re-applied (bcode package/config names, `bcode.sh` URLs, BrowserCode ACP identity, Laminar plugin, FetchUse config/test wiring, split opencode/browsercode LLM User-Agent behavior, provider attribution headers, `bcode.db`, typed omitted-image messages). Verification: `bun install` clean; filtered `bun run typecheck` passed 9/9 packages. |
8787
| 2026-06-15 | `74ce1a1ed` | `6c6ed68b5` | bcode | Merged upstream release point for v1.17.0 (`sync release versions for v1.17.0` on `dev`). 412 upstream commits across v1.16.x-v1.17.0. Major upstream changes pulled in: TUI extracted to `@opencode-ai/tui`, v2 API/server package extraction to `@opencode-ai/server`, storage/schema moves into core, repository/reference core rewrites, model/provider/catalog updates, and broad generated SDK/API updates. Conflicts: `.github/workflows/{nix-hashes,publish,test}.yml` re-deleted per PR #14; `bun.lock` took upstream then regenerated; `AGENTS.md` kept BrowserCode fork guidance and upstream V2 Session Core notes; `packages/opencode/package.json` kept `@browser-use/browsercode-core` and BrowserCode deps while taking version 1.17.0/upstream deps; `packages/core/src/plugin/skill/customize-opencode.md` re-deleted; `packages/opencode/script/build.ts` kept Laminar embed key and took upstream `OPENTUI_LIBC`; `packages/opencode/src/{cli/logo.ts,config/config.ts,config/tui-migrate.ts,index.ts,installation/index.ts,plugin/index.ts,server/shared/ui.ts,session/processor.ts,skill/index.ts,tool/registry.ts}` resolved by preserving BrowserCode branding/install URL/FetchUse/Laminar/skills/typed image omission while adopting upstream structure; deleted upstream-removed `file/ripgrep.ts`, `storage/db.ts`, `tool/repo_clone.txt`, and storage tests; `packages/tui/src/{app.tsx,context/theme.tsx,routes/session/index.tsx,theme/index.ts}` resolved for extracted TUI with BrowserCode terminal titles, `.bcode` theme discovery, and browser_execute display. Yellow-zone audit touched expected files (`AGENTS.md`, package/build files, `core/src/{global.ts,v1/config/config.ts}`, config/install/plugin/session/tool files, server UI, TUI extraction paths, and webfetch); BrowserCode customizations preserved/re-applied. Verification: `bun install` clean; filtered `bun run typecheck` passed 13/13 packages. |
88+
| 2026-06-19 | `6c6ed68b5` | `8716c4309` | bcode | Merged upstream release point for v1.17.8 (`sync release versions for v1.17.8` on `dev`). 157 upstream commits across v1.17.1-v1.17.8 — patch-level, no sweeping directory-rename refactors. Main upstream themes pulled in: MCP hardening (client roots support #32230, structured output #32074, OAuth callback lifecycle/idle-shutdown #32245, tool-error result typing #32244, catalog/prompt/resource timeouts, session recovery #32088), v2 session API endpoints #31822, project-copies refactor for v2 #31943, integration-credentials simplification #31968/#30aec, `build server from layer nodes` #32086 + raw-filesystem content serving #31911, and broad stats/app/web/tui + generated-SDK churn. Conflicts (7): `bun.lock` took upstream then regenerated via `bun install`; `packages/opencode/package.json` kept `@browser-use/browsercode-core`, took version 1.17.8; `packages/core/src/plugin/skill/customize-opencode.md` re-deleted (modify/delete); `packages/opencode/src/agent/agent.ts` kept BrowserCode whitelist globs (browser-sessions, agent-workspace, browser-skills) and adopted upstream's new `referenceDirs` whitelist (both feed `whitelistedDirs`); `packages/opencode/src/mcp/index.ts` adopted upstream's new `createClient(directory)` helper at both call sites and moved the BrowserCode `name: "bcode"` client identity into that single helper (reduces divergence from two `new Client` calls to one line, gains upstream client-roots capability); `packages/opencode/test/session/snapshot-tool-race.test.ts` + `packages/opencode/test/tool/registry.test.ts` took upstream's new `LayerNode` graph wiring (our manual `makeHttp`/`registryLayer` helpers were the old upstream wiring style; FetchUse is satisfied by `ToolRegistry.node`'s own layer, not test wiring). Step 3a no-op: no upstream-only workflows reintroduced this window (no modify/delete on `.github/workflows`). Yellow-zone audit (9 files touched by upstream: `AGENTS.md`, `core/src/v1/config/config.ts`, `agent.ts`, `config/config.ts`, `mcp/index.ts`, `plugin/index.ts`, `provider/provider.ts`, `tui/app.tsx`, `tui/routes/session/index.tsx`): customizations preserved/re-applied — bcode config filenames + `bcode.sh` schema URL, `fetch_use` config option (alongside upstream's new `references`/deprecated-`reference` fields), Laminar plugin + `pluginShutdownHooks`, bcode provider attribution headers (X-BILLING-INVOKE-ORIGIN stays removed per fork policy), BrowserCode terminal titles + `docs.open` browsercode link, `browser_execute` TUI display, bcode MCP client name. Verification: `bun install` clean; filtered `bun run typecheck` passed 13/13 packages; ran `test/tool/registry.test.ts` locally (12/12 pass) to confirm FetchUse resolves through `ToolRegistry.node` under upstream's LayerNode wiring. Note: `test/session/snapshot-tool-race.test.ts` fails on a local Windows shell/path artifact (upstream test uses Unix `echo 'x' > <path>` with a backslash Windows path); not a sync regression — agent CI is Linux. |
8889

8990
### browser-use/browser-harness → `packages/bcode-browser/harness/`
9091

0 commit comments

Comments
 (0)