Commit graph

418 commits

Author SHA1 Message Date
opencode-agent[bot]
771b29a857 chore: generate 2026-03-08 00:31:35 +00:00
Dax Raad
e6d1aae33a test: lock in process, ripgrep, and installation helpers 2026-03-07 19:30:32 -05:00
Dax Raad
523f792b48 core: update database path test to verify correct channel-based filename
The test now validates that the database file is named according to the current installation channel (latest/beta get 'opencode.db', others get sanitized names). This ensures users' data is stored in the correct location based on their update channel.
2026-03-07 18:53:29 -05:00
Quan Ran
be9b4d1bcd
fix(opencode): preserve original line endings in 'edit' tool (#9443)
Co-authored-by: LukeParkerDev <10430890+Hona@users.noreply.github.com>
2026-03-07 07:42:54 +00:00
Luke Parker
8a95be492d
fix(windows): git path resolution for modified files across Git Bash, MSYS2, and Cygwin (#16422) 2026-03-07 15:42:14 +10:00
kikuchan
b2c2478d9d
fix(pty): pty session handle leak (#15599) 2026-03-07 14:53:11 +10:00
Luke Parker
4c7fe60493
fix(opencode): sanitize preview database filenames (#16430) 2026-03-07 04:34:29 +00:00
Adam
7a071eff5c
chore: fix test 2026-03-06 15:27:49 -06:00
Shoubhit Dash
d6e0f47361
feat: add project git init api (#16383) 2026-03-06 13:39:50 -06:00
Dax Raad
5e699c9426 chore(storage): update drizzle and channel db handling 2026-03-06 10:58:19 -05:00
Luke Parker
aec6ca71fa
fix(git): stop leaking fsmonitor daemons e.g. 60GB+ of commited memory after running tests (#16249) 2026-03-06 15:42:08 +10:00
Dax
74effa8eec
refactor(opencode): replace Bun.which with npm which (#15012) 2026-03-06 05:18:29 +00:00
Dax
3ebba02d04
refactor: replace Bun.sleep with node timers (#15013) 2026-03-05 21:54:06 -05:00
James Long
7f37acdaaa
feat(core): rework workspace integration and adaptor interface (#15895) 2026-03-03 21:35:38 -05:00
Matt Silverlock
74ebb4147f
fix(auth): normalize trailing slashes in auth login URLs (#15874) 2026-03-03 13:35:49 -05:00
Shoubhit Dash
7e3e85ba59
fix(opencode): avoid gemini combiner schema sibling injection (#15318) 2026-03-03 10:11:05 +05:30
opencode-agent[bot]
e41b53504f chore: generate 2026-03-03 03:53:50 +00:00
Ryan Skidmore
96d6fb78da
fix(provider): forward metadata options to cloudflare-ai-gateway provider (#15619) 2026-03-02 22:53:03 -05:00
Ryan Skidmore
fd6f7133c5
fix(opencode): clone part data in Bus event to preserve token values (#15780) 2026-03-02 22:52:43 -05:00
James Long
c12ce2ffff
feat(core): basic implementation of remote workspace support (#15120) 2026-02-27 15:36:39 -05:00
Adam
37d42595cf
fix: test 2026-02-26 18:11:05 -06:00
Sebastian
9d29d692c6
split tui/server config (#13968) 2026-02-25 23:53:09 +01:00
Dax Raad
3c6c74457d sync 2026-02-25 01:48:10 -05:00
Noam Bressler
2cee947671
fix: ACP both live and load share synthetic pending status preceeding… (#14916) 2026-02-24 23:54:10 +10:00
Luke Parker
32417774c4
fix(test): replace structuredClone with spread for process.env (#14908) 2026-02-24 23:16:24 +10:00
Luke Parker
3d379c20c4
fix(test): replace Unix-only assumptions with cross-platform alternatives (#14906) 2026-02-24 23:03:18 +10:00
Luke Parker
06f25c78f6
fix(test): use path.sep in discovery test for cross-platform path matching (#14905) 2026-02-24 22:51:56 +10:00
Luke Parker
1af3e9e557
fix(win32): fix plugin resolution with createRequire fallback (#14898) 2026-02-24 22:20:57 +10:00
Luke Parker
a292eddeb5
fix(test): harden preload cleanup against Windows EBUSY (#14895) 2026-02-24 21:59:14 +10:00
Luke Parker
79254c1020
fix(test): normalize git excludesFile path for Windows (#14893) 2026-02-24 21:40:38 +10:00
opencode-agent[bot]
ef7f222d80 chore: generate 2026-02-24 11:15:39 +00:00
Noam Bressler
888b123387
feat: ACP - stream bash output and synthetic pending events (#14079)
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2026-02-24 21:14:47 +10:00
Luke Parker
13cabae29f
fix(win32): add git flags for snapshot operations and fix tests for cross-platform (#14890) 2026-02-24 21:14:16 +10:00
Luke Parker
659068942e
fix(win32): handle CRLF line endings in markdown frontmatter parsing (#14886) 2026-02-24 20:33:22 +10:00
Luke Parker
de796d9a00
fix(test): use path.join for cross-platform glob test assertions (#14837) 2026-02-24 20:07:56 +10:00
adamelmore
9f4fc5b72a
Revert "fix(app): terminal issues"
This reverts commit e70d2b27de.
2026-02-22 21:27:25 -06:00
Luke Parker
ee754c46f9
fix(win32): normalize paths at permission boundaries (#14738) 2026-02-23 12:05:21 +10:00
Erik Demaine
0042a07052
fix: Windows path support and canonicalization (#13671)
Co-authored-by: LukeParkerDev <10430890+Hona@users.noreply.github.com>
2026-02-23 10:10:27 +10:00
Erik Demaine
a74fedd23b
fix(desktop): change detection on Windows, especially Cygwin (#13659)
Co-authored-by: LukeParkerDev <10430890+Hona@users.noreply.github.com>
2026-02-23 09:49:05 +10:00
Adam
e70d2b27de
fix(app): terminal issues 2026-02-22 06:17:59 -06:00
Ryan Vogel
7419ebc872
feat: add list sessions for all sessions (experimental) (#14038) 2026-02-20 08:45:12 -05:00
Adam
4e9ef3ecc1
fix(app): terminal issues (#14435) 2026-02-20 07:34:36 -06:00
Shoubhit Dash
ac0b37a7b7
fix(snapshot): respect info exclude in snapshot staging (#13495) 2026-02-20 07:02:25 -06:00
Aiden Cline
04a634a80d
test: merge test files into a single file (#14366) 2026-02-19 20:32:01 -06:00
Dax Raad
cb5a0de42f core: remove User-Agent header assertion from LLM test to fix failing test 2026-02-19 18:37:55 -06:00
tctev
193013a44d
feat(opencode): support adaptive thinking for claude sonnet 4.6 (#14283)
Co-authored-by: tctev <224793535+tctev@users.noreply.github.com>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2026-02-19 16:17:57 -06:00
Adam
f8dad0ae17
fix(app): terminal issues (#14329) 2026-02-19 14:54:09 -06:00
opencode-agent[bot]
1867f1acaa chore: generate 2026-02-19 20:12:16 +00:00
Aiden Cline
00c079868a
test: fix discovery test to boot up server instead of relying on 3rd party (#14327) 2026-02-19 14:11:23 -06:00
Dax
cb8b74d3f1
refactor: migrate from Bun.Glob to npm glob package (#14317) 2026-02-19 13:40:09 -05:00
Aiden Cline
7e35d0c610
core: bump ai sdk packages for google, google vertex, anthropic, bedrock, and provider utils (#14318) 2026-02-19 12:35:51 -06:00
Dax Raad
af72010e9f Revert "refactor: migrate from Bun.Glob to npm glob package"
This reverts commit 3c21735b35.
2026-02-19 12:48:43 -05:00
Dax Raad
3c21735b35 refactor: migrate from Bun.Glob to npm glob package
Replace Bun.Glob usage with a new Glob utility wrapper around the npm 'glob' package.
This moves us off Bun-specific APIs toward standard Node.js compatible solutions.

Changes:
- Add new src/util/glob.ts utility module with scan(), scanSync(), and match()
- Default include option is 'file' (only returns files, not directories)
- Add symlink option (default: false) to control symlink following
- Migrate all 12 files using Bun.Glob to use the new Glob utility
- Add comprehensive tests for the glob utility

Breaking changes:
- Removed support for include: 'dir' option (use include: 'all' and filter manually)
- symlink now defaults to false (was true in most Bun.Glob usages)

Files migrated:
- src/util/log.ts
- src/util/filesystem.ts
- src/tool/truncation.ts
- src/session/instruction.ts
- src/storage/json-migration.ts
- src/storage/storage.ts
- src/project/project.ts
- src/cli/cmd/tui/context/theme.tsx
- src/config/config.ts
- src/tool/registry.ts
- src/skill/skill.ts
- src/file/ignore.ts
2026-02-19 12:34:18 -05:00
Dax
02a9495063
Remove use of Bun.file (#14215) 2026-02-19 11:32:32 -05:00
Adam
8ebdbe0ea2
fix(core): text files missclassified as binary 2026-02-19 07:32:58 -06:00
Adam
d07f09925f
fix(app): terminal rework (#14217) 2026-02-19 06:35:14 -06:00
Ariane Emory
1893473148
fix: token substitution in OPENCODE_CONFIG_CONTENT (alternate take) (#14047) 2026-02-18 23:18:24 -06:00
Dax Raad
568eccb4c6 Revert: all refactor commits migrating from Bun.file() to Filesystem module 2026-02-18 19:41:14 -05:00
Dax
d366a1430f
refactor: migrate src/lsp/server.ts from Bun.file()/Bun.write() to Filesystem module (#14138) 2026-02-18 21:41:07 +00:00
Adam
de25703e9d
fix(app): terminal cross-talk (#14184) 2026-02-18 13:56:05 -06:00
Matt Silverlock
d447b7694a
fix(github): emit PROMPT_TOO_LARGE error on context overflow (#14166) 2026-02-18 11:45:27 -06:00
Dax
6b29896a35
feat: Add centralized filesystem module for Bun.file migration (#14117) 2026-02-18 15:30:52 +00:00
Aiden Cline
25f3eef957
fix: ensure explore subagent has external_directory perm set to ask instead of auto denying (#14060) 2026-02-17 20:16:55 -06:00
Aiden Cline
0ca75544ab
fix: dont autoload kilo (#14052) 2026-02-17 18:42:18 -06:00
opencode-agent[bot]
572a037e5d chore: generate 2026-02-17 23:53:22 +00:00
RAMA
ad92181fa7
feat: add Kilo as a native provider (#13765) 2026-02-17 17:52:21 -06:00
Aiden Cline
c1b03b728a
fix: make read tool more mem efficient (#14009) 2026-02-17 15:36:45 -06:00
Nathan Anderson
4ccb82e81a
feat: surface plugin auth providers in the login picker (#13921)
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2026-02-17 15:21:49 -06:00
Aiden Cline
e35a4131d0
core: keep message part order stable when files resolve asynchronously (#13915) 2026-02-16 18:45:11 -06:00
Aiden Cline
a580fb47d2
tweak: drop ids from attachments in tools, assign them in prompt.ts instead (#13890) 2026-02-16 14:59:57 -06:00
opencode-agent[bot]
089ab9defa chore: generate 2026-02-16 08:32:34 +00:00
Jhin Lee
f7708efa5b
feat: add openai-compatible endpoint support for google-vertex provider (#10303)
Co-authored-by: BlueT - Matthew Lien - 練喆明 <BlueT@BlueT.org>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2026-02-16 02:31:48 -06:00
Dax Raad
b5c8bd3421 test: add tests for path-derived IDs in json migration
Tests verify that file paths are used for IDs even when JSON contains
different values - ensuring robustness against stale JSON content.
2026-02-14 20:37:17 -05:00
Aiden Cline
933a491ade
fix: ensure vercel variants pass amazon models under bedrock key (#13631) 2026-02-14 13:18:52 -06:00
Dax Raad
8631d6c01d core: add comprehensive test coverage for Session.list() filters
Adds test cases for filtering sessions by directory, root sessions only,

start time, search terms, and result limits to ensure the listing

functionality works correctly for all filter combinations.
2026-02-14 13:43:41 -05:00
Aiden Cline
759ec104b6
fix vercel gateway variants (#13541)
Co-authored-by: Benjamin Woodruff <github@benjam.info>"
2026-02-14 12:32:29 -06:00
opencode-agent[bot]
afb04ed5d4 chore: generate 2026-02-14 04:19:48 +00:00
Dax
6d95f0d14c
sqlite again (#10597)
Co-authored-by: Github Action <action@github.com>
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: Brendan Allan <git@brendonovich.dev>
2026-02-14 04:19:02 +00:00
Aiden Cline
1fb6c0b5b3
Revert "fix: token substitution in OPENCODE_CONFIG_CONTENT" (#13429) 2026-02-12 23:24:31 -06:00
Adam
8da5fd0a66
fix(app): worktree delete 2026-02-12 19:38:13 -06:00
projectArtur
991496a753
fix: resolve ACP hanging indefinitely in thinking state on Windows (#13222)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: LukeParkerDev <10430890+Hona@users.noreply.github.com>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2026-02-12 18:20:00 -06:00
Ariane Emory
29671c1397
fix: token substitution in OPENCODE_CONFIG_CONTENT (#13384) 2026-02-12 16:59:44 -06:00
Adam
548608b7ad
fix(app): terminal pty isolation 2026-02-12 15:15:34 -06:00
Aiden Cline
d1ee4c8dca test: add more test cases for project.test.ts (#13355) 2026-02-12 18:46:44 +00:00
Dax Raad
789705ea96 ignore: document test fixtures for agents 2026-02-12 12:10:21 -05:00
Ryan Vogel
ba54cee55e
feat(tool): return image attachments from webfetch (#13331) 2026-02-12 12:09:29 -05:00
Kyle Mistele
e269788a8f
feat: support claude agent SDK-style structured outputs in the OpenCode SDK (#8161)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Dax Raad <d@ironbay.co>
2026-02-12 04:54:05 +00:00
Aiden Cline
006d673ed2
tweak: make read tool offset 1 indexed instead of 0 to avoid confusion that could be caused by line #s being 1 based (#13198) 2026-02-11 14:02:30 -06:00
Aiden Cline
6b4d617df0
feat: adjust read tool so that it can handle dirs too (#13090) 2026-02-11 13:23:00 -06:00
Aiden Cline
0fd6f365be
fix(core): ensure compaction is more reliable, add reserve token buffer to ensure that input window has enough room to compact (#12924)
Co-authored-by: James Lal <james@littlebearlabs.io>
2026-02-10 19:55:22 -06:00
Aiden Cline
f74c0339cc
test: fix failing prompt test (#12847) 2026-02-09 11:25:22 -06:00
Aiden Cline
99ea1351ce
tweak: add new ContextOverflowError type (#12777) 2026-02-08 23:54:01 -06:00
Aiden Cline
62f38087b8
fix: parse mid stream openai responses style errors to prevent infinite retries for errors that should STOP execution (#12768) 2026-02-08 20:55:41 -06:00
Dax
7249b87bf6
feat(skill): add skill discovery from URLs via well-known RFC (#12423)
Co-authored-by: Frank <frank@anoma.ly>
2026-02-06 17:31:40 -05:00
Khang Ha (Kelvin)
fde0b39b7c
fix: properly encode file URLs with special characters (#12424) 2026-02-06 16:16:56 -06:00
Matt Silverlock
24dbc46548
fix(github): handle step-start/step-finish parts in extractResponseText (#12470) 2026-02-06 10:20:33 -06:00
Yuvraj Virk
c07077f96c
fix: correct /data API usage and data format for importing share URLs (#7381) 2026-02-06 15:29:10 +00:00
Hank Stoever
229cdafcc4
fix(config): handle $ character with {file:} pattern (#12390)
Co-authored-by: Hank Stoever <1109058+hstove@users.noreply.github.com>
2026-02-05 20:10:35 -06:00
Dax Raad
9adcf524e2 core: bundle GitLab auth plugin directly instead of dynamic install
Remove dynamic installation of built-in plugins. GitLab auth is now imported

directly as an internal plugin, eliminating network requests during startup

and simplifying the plugin loading logic.

Removes the need for test mocks since plugins are no longer

dynamically installed at runtime.
2026-02-05 11:29:00 -05:00
Dax Raad
531b1941a0 ci: ensure config test waits for dependencies to complete installation 2026-02-05 10:13:52 -05:00