Skip to content

Commit faa9e4c

Browse files
authored
Merge pull request #57 from browser-use/sync/upstream-v1.14.41
sync: upstream v1.14.41 (fe59469 on dev)
2 parents f64e934 + 1e190f4 commit faa9e4c

193 files changed

Lines changed: 4635 additions & 1195 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.

.github/TEAM_MEMBERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,4 @@ R44VC0RP
1313
rekram1-node
1414
thdxr
1515
simonklee
16+
vimtor

CONTRIBUTING.md

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ Replace `<platform>` with your platform (e.g., `darwin-arm64`, `linux-x64`).
7373
- `packages/opencode`: OpenCode core business logic & server.
7474
- `packages/opencode/src/cli/cmd/tui/`: The TUI code, written in SolidJS with [opentui](https://github.com/sst/opentui)
7575
- `packages/app`: The shared web UI components, written in SolidJS
76-
- `packages/desktop`: The native desktop app, built with Tauri (wraps `packages/app`)
76+
- `packages/desktop`: The native desktop app, built with Electron (wraps `packages/app`)
7777
- `packages/plugin`: Source for `@opencode-ai/plugin`
7878

7979
### Understanding bun dev vs opencode
@@ -123,33 +123,21 @@ This starts a local dev server at http://localhost:5173 (or similar port shown i
123123

124124
### Running the Desktop App
125125

126-
The desktop app is a native Tauri application that wraps the web UI.
126+
The desktop app is an Electron application that wraps the web UI.
127127

128-
To run the native desktop app:
129-
130-
```bash
131-
bun run --cwd packages/desktop tauri dev
132-
```
133-
134-
This starts the web dev server on http://localhost:1420 and opens the native window.
135-
136-
If you only want the web dev server (no native shell):
128+
To run the desktop app in development:
137129

138130
```bash
139131
bun run --cwd packages/desktop dev
140132
```
141133

142-
To create a production `dist/` and build the native app bundle:
134+
To create a production build and package the app:
143135

144136
```bash
145-
bun run --cwd packages/desktop tauri build
137+
bun run --cwd packages/desktop build
138+
bun run --cwd packages/desktop package
146139
```
147140

148-
This runs `bun run --cwd packages/desktop build` automatically via Tauri’s `beforeBuildCommand`.
149-
150-
> [!NOTE]
151-
> Running the desktop app requires additional Tauri dependencies (Rust toolchain, platform-specific libraries). See the [Tauri prerequisites](https://v2.tauri.app/start/prerequisites/) for setup instructions.
152-
153141
> [!NOTE]
154142
> If you make changes to the API or SDK (e.g. `packages/opencode/src/server/server.ts`), run `./script/generate.ts` to regenerate the SDK and related files.
155143

UPSTREAM.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,8 @@ Each upstream has its own append-only table. Add a row every time you pull.
7777
| 2026-05-01 | `af3998c8a` | `21f8027ef` | bcode | Merged upstream release point for v1.14.31 (`sync release versions for v1.14.31` on `dev`). 212 upstream commits across v1.14.27–v1.14.31. Conflicts: `.github/workflows/{deploy,publish}.yml` (kept our deletions per PR #14), `bun.lock` (regenerated), `packages/opencode/package.json` (kept name, bumped to 1.14.31), `packages/opencode/src/agent/agent.ts` (kept browser-sessions whitelist + took upstream's new `Global.Path.tmp` whitelist addition — both go in the same `whitelistedDirs` array), `packages/opencode/src/config/config.ts` (kept `bcode.json/bcode.jsonc` filenames + `bcode.sh` config schema URL; adopted upstream's `mergeConfig` helper pattern, retiring `mergeDeep(pipe(...))` chain), `packages/opencode/src/session/session.ts` (kept `.bcode/plans` rename; adopted upstream's new `(input, instance: InstanceContext)` signature using `instance.project`/`instance.worktree`), `packages/opencode/src/installation/index.ts` (substantial restructure — upstream switched from explicit `Service.of({...})` to `result: Interface = {...}` pattern with self-referential method calls; took upstream verbatim as the base, then re-applied 5 BrowserCode divergences: USER_AGENT prefix, `https://bcode.sh/install` URL, `.bcode/bin` execPath check, BCODE_UPGRADE_DISABLED const, early-return guards in `latest`/`upgrade`/`info`). Yellow-zone audit (7 files: `cli/cmd/tui/app.tsx`, `agent.ts`, `config.ts`, `installation/index.ts`, `session.ts`, `index.ts`, `core/src/global.ts`): customizations preserved (`scriptName("bcode")`, banner, USER_AGENT, `bcode.sh`, `.bcode` paths, `app = "bcode"`). Filtered typecheck: 5/5 passed. PR #29 (v1.14.25) supersedes — close in favor of this PR which covers the same window plus three additional release points. |
7878
| 2026-05-06 | `21f8027ef` | `773078e81` | bcode | Merged upstream release point for v1.14.39 (`sync release versions for v1.14.39` on `dev`). 178 upstream commits across v1.14.32–v1.14.39. **Notable upstream change pulled in:** PR #20039 — `tool/bash.{ts,txt}` renamed to `tool/shell.{ts,txt}` with sub-folder `tool/shell/{id,prompt}.ts`; `Match` predicate switched from string literal `"bash"` to `ShellID.ToolID`. Auto-merge handled the rename inside our session/index.tsx; only the import block needed manual resolution (kept our `BrowserExecuteTool` import, took upstream's `ShellTool` + `ShellID` imports). **CLI Effect-ification:** `cli/cmd/{run,serve,web,agent}.ts` switched from `async (args) => {...}` handlers to `Effect.fn("Cli.<name>")(function* (args) {...})` form (also adds new `instance: false` and `directory: ...` fields to delegate context loading to the framework). Resolved by adopting upstream handler shape verbatim and re-applying our `bcode` brand strings in `describe:` fields. `cli/cmd/agent.ts` also dropped a level of indentation (legacy nested-effect block) and switched from `Instance.worktree`/`AppRuntime.runPromise(Agent.Service.use(...))` to `ctx.worktree`/`Effect.runPromise(agentSvc.generate(...))`; took upstream wholesale, flipped post-merge `.opencode` → `.bcode` (one site). Conflicts: `.github/workflows/publish.yml` (re-deleted per PR #14), `bun.lock` (regenerated), `README.md` (kept our concise replacement, dropped upstream's reintroduced FAQ/Discord block), `packages/opencode/package.json` (kept name, bumped to 1.14.39), `cli/cmd/{agent,run,serve,web}.ts` (Effect-ification + brand strings), `cli/cmd/tui/routes/session/index.tsx` (Bash→Shell import block). Yellow-zone audit (9 files touched upstream: `core/src/global.ts`, `script/build.ts`, `cli/cmd/tui/app.tsx`, `cli/cmd/tui/routes/session/index.tsx`, `config/config.ts`, `plugin/index.ts`, `provider/provider.ts`, `session/session.ts`, `storage/db.ts`): customizations preserved (`app = "bcode"`, banner+title BrowserCode, BC-prefixed session title, `bcode.json/bcode.jsonc/.bcode/`, `bcode.sh` schema URLs, `bcode.db`, `.bcode/plans`, `bcode-<target>` asset name, BrowserExecute renderer, attribution headers `https://bcode.sh/`/`X-Title: bcode`). Filtered typecheck: 5/5 passed in 13.8s. |
7979

80+
| 2026-05-11 | `773078e81` | `fe594693a` | bcode | Merged upstream release point for v1.14.41 (`sync release versions for v1.14.41` on `dev`). 70 upstream commits across v1.14.40–v1.14.41. **Targeted v1.14.41 instead of latest (v1.14.48, 289 commits)** because v1.14.42 lands three sweeping refactors that warrant separate review: PR #24712 native LLM core foundation, PR #24149 scout agent for repo research, OPENCODE_EXPERIMENTAL_WORKSPACES routing changes (workspace fence headers, fixed-id routing, claim detached sessions). Splitting keeps each sync mechanical. **Notable upstream change pulled in:** PR #26054 `well-known/opencode` remote config now supports an external `remote_config` URL with substitution + headers, fetched and merged via the new `substituteWellKnownRemoteConfig` + `mergeConfig` helpers in `config/config.ts`; adopted upstream's new fetch-and-merge body verbatim, kept our `bcode.sh/config.json` default `$schema`. **Agent dir rename `agent/` → `agents/`:** upstream renamed `.opencode/agent/` to `.opencode/agents/` (PR #14427); adopted as `.bcode/agents/` for consistency. Updated `cli/cmd/agent.ts` create-target path and `feature-plugins/home/tips-view.tsx` agent-tip string. Note: `config/agent.ts:129` already accepted both `agent/` and `agents/` glob patterns, so existing `.bcode/agent/` setups keep working. Conflicts: 22 README translation files (`README.{ar,bn,br,bs,da,de,es,fr,gr,it,ja,ko,no,pl,ru,th,tr,uk,vi,zh,zht}.md`) modified by upstream + deleted by us — re-deleted, all 21 README translations purged at fork rebrand stay purged. `.github/workflows/deploy.yml` (re-deleted per PR #14). `bun.lock` (regenerated). `README.md` (kept our concise BrowserCode replacement, dropped upstream's reintroduced desktop-download table — we don't ship a desktop). `packages/opencode/package.json` (kept name, bumped to 1.14.41). `cli/cmd/agent.ts` (took upstream's `.opencode/agents` rename, flipped to `.bcode/agents`). `config/config.ts` (adopted new remote_config logic, kept `bcode.sh` schema URL). Yellow-zone audit (11 files touched upstream: `core/src/global.ts`, `agent.ts`, `cli/cmd/{agent,run,serve,web}.ts`, `cli/cmd/tui/{app.tsx,routes/session/index.tsx}`, `config/config.ts`, `provider/provider.ts`, `session/session.ts`): customizations preserved (`app = "bcode"`, banner+title BC, BrowserCode GitHub link, `bcode.sh` HTTP-Referer/X-Title/X-Source across 8 providers, Cerebras `X-Cerebras-3rd-Party-Integration: bcode`, `.bcode/plans`, `Skills` import, BrowserExecute renderer). Filtered typecheck: 6/6 passed in 8.7s. |
81+
8082
### browser-use/browser-harness → `packages/bcode-browser/harness/`
8183

8284
**Upstream:** https://github.com/browser-use/browser-harness

0 commit comments

Comments
 (0)