Commit graph

1859 commits

Author SHA1 Message Date
Stephen Collings
0e1a8a1839
fix: Claude w/bedrock custom inference profile - caching support (#9838)
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2026-01-21 10:42:13 -06:00
GitHub Action
96e9c89cc6 chore: generate 2026-01-21 05:37:18 +00:00
Kenny
a18ae2c8b7
feat: add OPENCODE_DISABLE_PROJECT_CONFIG env var (#8093)
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2026-01-20 23:36:42 -06:00
Aiden Cline
021e42c0bb core: fix issue when switching models (mainly between providers) where past reasoning/metadata would be sent to server and cause 400 errors since they came from another account/provider 2026-01-20 16:39:00 -06:00
Aiden Cline
0c4ffec857 chore: rename toModelMessage -> toModelMessages 2026-01-20 16:16:23 -06:00
Aiden Cline
9706aaf552 rm filetime assertions from patch tool 2026-01-20 00:32:29 -06:00
Aiden Cline
e2f1f4d81e
add scheduler, cleanup module (#9346) 2026-01-18 23:33:23 -06:00
Aiden Cline
0d8e706fac test: fix transfomr test 2026-01-18 14:44:39 -06:00
zerone0x
38c641a2fc
fix(tool): treat .fbs files as text instead of images (#9276)
Co-authored-by: Claude <noreply@anthropic.com>
2026-01-18 13:17:49 -06:00
Noam Bressler
bef1f66281
fix(acp): use single global event subscription and route by sessionID (#5628)
Co-authored-by: noamzbr <noamzbr@users.noreply.github.com>
Co-authored-by: noam-v <noam@bespo.ai>
2026-01-18 01:29:42 -06:00
GitHub Action
d13c0ea915 chore: generate 2026-01-18 06:42:13 +00:00
Bowen Dwelle
3591372c45
feat(tool): increase question header and label limits (#9201) 2026-01-18 00:41:36 -06:00
Aiden Cline
b7ad6bd839
feat: apply_patch tool for openai models (#9127) 2026-01-18 00:35:09 -06:00
Aiden Cline
052f887a9a core: prevent env variables in config from being replaced with actual values
When opencode.json was missing a $schema, the config loader would add it
and write the file back - but with env variables like {env:API_KEY} replaced
with their actual secret values. This made it impossible to safely commit
opencode.json to version control.

Now the original config text is preserved when adding $schema, keeping
variable placeholders intact.
2026-01-17 20:59:50 -06:00
Aiden Cline
ea13b6e8aa test: add azure test case 2026-01-17 00:35:49 -06:00
Aiden Cline
33290c54cd Revert "feat(mcp): add OAuth redirect URI configuration for MCP servers (#7379)"
This reverts commit 40b275d7e6.
2026-01-16 22:17:33 -06:00
Aiden Cline
7c3eeeb0fa
fix: gpt id stuff fr fr this time :/ (#9006) 2026-01-16 22:09:36 -06:00
Aiden Cline
8c24879246 test: fix 2026-01-16 15:52:51 -06:00
Aiden Cline
f5a6a4af7f Revert "fix: ensure that tool attachments arent sent as user messages (#8944)"
This reverts commit 8fd1b92e6e.
2026-01-16 15:50:24 -06:00
Aiden Cline
8fd1b92e6e
fix: ensure that tool attachments arent sent as user messages (#8944) 2026-01-16 12:47:43 -06:00
Aiden Cline
40836e9683 fix: fix the itemId stripping logic, this time it should fix that id issue w/ gpt models fr 2026-01-16 11:34:45 -06:00
Aiden Cline
d510bd52a4 Revert "test: fix test now that image fix went in"
This reverts commit fffa718f5e.
2026-01-16 09:34:00 -06:00
Aiden Cline
fffa718f5e test: fix test now that image fix went in 2026-01-16 00:11:30 -06:00
Christopher Tso
40b275d7e6
feat(mcp): add OAuth redirect URI configuration for MCP servers (#7379) 2026-01-15 23:36:48 -06:00
Aiden Cline
d8ef9f808d test: fix transform test 2026-01-15 19:27:04 -06:00
Dan Lapid
b572c68100
fix(mcp): show auth URL when browser cannot open in remote sessions (#7884) 2026-01-15 20:21:39 -05:00
Sercan Sagman
81983d4a2e
fix(agent): default agent selection in acp and headless mode (#8678)
Signed-off-by: assagman <ahmetsercansagman@gmail.com>
2026-01-15 17:09:19 -06:00
seilk
9b57db30d1 feat: add litellmProxy provider option for explicit LiteLLM compatibility (#8658)
Co-authored-by: Mark Henderson <Mark.Henderson99@hotmail.com>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2026-01-15 22:01:15 +00:00
Aiden Cline
dc1c25cff5
fix: ensure frontmatter can process same content as other agents (#8719) 2026-01-15 13:06:14 -06:00
opencode-agent[bot]
ebc194ca9a
Prettify retry duration display in TUI (#8608)
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: rekram1-node <rekram1-node@users.noreply.github.com>
2026-01-15 11:50:18 -06:00
Brandon Smith
8d720f9463
fix(opencode): add input limit for compaction (#8465) 2026-01-15 01:35:16 -06:00
Aiden Cline
92931437c4
fix: codex id issue (#8605) 2026-01-15 01:31:50 -06:00
Aiden Cline
50dfa9caf3
chore: upgrade bun from 1.3.5 -> 1.3.6, also update types/bun from 1.3.4 -> 1.3.6 and fix type errs (#8499)
Co-authored-by: Github Action <action@github.com>
2026-01-14 11:53:12 -06:00
Jacopo Binosi
3a9e6b558c
feat(opencode): add AWS Web Identity Token File support for Bedrock (#8461) 2026-01-14 10:20:47 -06:00
Shane Bishop
077ca4454f
fix(desktop): "load more" button behavior in desktop sidebar (#8430) 2026-01-14 07:36:08 -06:00
Vladimir Glafirov
452f11ff77
fix: Add Plugin Mocks to Provider Tests (#8276) 2026-01-13 15:23:41 -06:00
Dax Raad
501347cda5 test: fix plan agent test path from .opencode/plan/* to .opencode/plans/* 2026-01-13 16:19:14 -05:00
Dax
0a3c72d678
feat: add plan mode with enter/exit tools (#8281) 2026-01-13 15:55:48 -05:00
Vladimir Glafirov
05867f9318
feat: Add GitLab Duo Agentic Chat Provider Support (#7333)
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2026-01-13 13:21:39 -06:00
Aiden Cline
fd37d5b54e tweak: truncation dir perm 2026-01-12 16:46:47 -06:00
Aiden Cline
5c4345da4f test: fix read test 2026-01-12 15:49:31 -06:00
Aiden Cline
735f3d17bc
fix: ensure plurals are properly handled (#8070) 2026-01-12 15:21:01 -06:00
Aiden Cline
62702fbd11 fix: permissions wildcarding so that for ex: 'ls *' includes ls * AND 'ls' to prevent having to double state commands or use 'ls*' 2026-01-12 13:02:29 -06:00
Aiden Cline
d527ceeb2b test: fix 2026-01-12 12:33:39 -06:00
Dillon Mulroy
fa79736b87
fix: check worktree for external_directory permission in subdirs (#7811) 2026-01-11 14:17:36 -06:00
Dax Raad
f94ee5ce90 core: extract external directory validation to shared utility to reduce code duplication across tools 2026-01-10 18:49:42 -05:00
Frédéric DE MATOS
1662e149b3
fix: add ChatGPT-Account-Id header for organization subscriptions (#7603) 2026-01-10 07:50:24 -06:00
Jeon Suyeol
8e3ab4afa7
feat(config): deduplicate plugins by name with priority-based resolution (#5957) 2026-01-09 02:11:24 -06:00
Dax
22dd70b75b
feat(question): support multi-select questions (#7386) 2026-01-08 17:32:21 -05:00
Aiden Cline
3c5043497c ignore: ensure new file truncation stuff still works even if external_directoy is set to deny 2026-01-08 11:07:33 -06:00
Aiden Cline
d5f0e3fccc test: add larger image test for read tool 2026-01-07 23:01:02 -06:00
Dax
e37fd9c105
core: add interactive question tool for gathering user preferences and clarifying instructions (#7268) 2026-01-07 22:29:42 -05:00
Aiden Cline
1b82511fbd
feat: write truncated tool outputs to files (#7239) 2026-01-07 17:25:00 -06:00
M. Adel Alhashemi
34c9d106ee
refactor: simplify task tool subagent filtering (#7165)
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2026-01-07 13:28:13 -06:00
Matt Silverlock
4ba0b22b04
fix: config precedence now correctly allows local config to override remote (#7141) 2026-01-07 12:07:21 -05:00
GitHub Action
c961072d20 chore: generate 2026-01-07 07:43:43 +00:00
Aiden Cline
429240f439
ignore: add truncation funcs (#7178) 2026-01-07 01:43:06 -06:00
Daniel Polito
b5be883758
Make General SubAgent not hidden (#6752) 2026-01-07 01:31:47 -06:00
Sewer.
fd7b7eacd3
Added: Ability to hide subagents from primary agents system prompt. (#4773)
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2026-01-06 22:29:17 -06:00
Dax Raad
0276885181 core: preserve permission config key order to maintain user-defined permission precedence 2026-01-05 14:09:37 -05:00
Grégoire Morpain
e3b4d4ad49
feat(bedrock): config options and authentication precedence (#6377) 2026-01-05 12:51:43 -06:00
Aiden Cline
c285304acf fix: for anthropic compat ensure empty msgs and empty reasoning is filtered out 2026-01-05 01:40:15 -06:00
Dax Raad
2f5b2b23d5 core: fix permission rule matching to use permission field instead of pattern field 2026-01-05 01:21:49 -05:00
Aiden Cline
3611260405 core: remove hardcoded .env read block and use new permissions model instead 2026-01-04 01:49:49 -06:00
Dax Raad
0b4af95223 core: add sandbox support for git worktrees to allow working in multiple directories per project 2026-01-03 18:52:53 -05:00
Dax Raad
47c670aea9 tui: add reject message support to permission dialogs for better user feedback 2026-01-03 01:34:23 -05:00
YeonGyu-Kim
a3f38e0533
feat(plugin): add tui.session.select API endpoint for TUI navigation (#6565)
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2026-01-02 16:57:21 -06:00
Matt Silverlock
66bc046503
fix: merge instructions arrays across config files (#6663) 2026-01-02 13:55:40 -06:00
Aiden Cline
2fd97377f6 test: fix transform test 2026-01-02 12:38:44 -06:00
Aiden Cline
47ebb2973f test: add message-v2 test 2026-01-02 12:28:40 -06:00
Dax Raad
dad9c917d2 tui: fix memory leaks in session management and improve permission error handling 2026-01-01 21:28:11 -05:00
Dax Raad
db8d83b53d tui: fix permission tests for new evaluate function signature 2026-01-01 21:01:34 -05:00
Dillon Mulroy
05eee679a3
feat: add assistant metadata to session export (#6611) 2026-01-01 18:56:23 -06:00
Aiden Cline
76186d19f3 fix: ensure new permissions changes work for special case bash commands like rm, cd, etc 2026-01-01 17:27:23 -06:00
Dax
351ddeed91
Permission rework (#6319)
Co-authored-by: Github Action <action@github.com>
Co-authored-by: Adam <2363879+adamdotdevin@users.noreply.github.com>
2026-01-01 17:54:11 -05:00
Saatvik Arya
7a3ff5b98f
fix(session): check for context overflow mid-turn in finish-step (#6480) 2026-01-01 12:03:18 -06:00
Aiden Cline
9a1dc1ffe4 core: prevent TimeoutOverflowWarning by capping setTimeout delay to max 32-bit signed integer 2025-12-31 16:15:49 -06:00
Aiden Cline
81fef60266
fix: ensure variants also work for completely custom models (#6481)
Co-authored-by: Daniel Smolsky <dannysmo@gmail.com>
2025-12-30 16:37:32 -06:00
Aiden Cline
abc7eed92b
tweak: read global claude skills too (#6420) 2025-12-29 23:48:58 -06:00
Grégoire Morpain
893888536a
fix(bedrock): support region and bearer token configuration (#6332)
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-12-28 22:44:15 -06:00
Connor Adams
ae67f43ff0
feat: add support for .claude/skills directory (#6252) 2025-12-28 22:39:10 -06:00
Didier Durand
29d8557d41
doc: fix typos in various files (#6294) 2025-12-28 13:06:25 -06:00
Matt Silverlock
d6db6ff198
fix: handle non-text response parts in GitHub action (#6173) 2025-12-27 21:24:10 -06:00
rari404
3c02d5d338
feat: add path traversal protection to File.read and File.list (#5985) 2025-12-26 23:20:07 -06:00
Christopher Ochsenreither
bfb9787361
fix: compact command after revert now properly cleans up revert state (#6235) 2025-12-26 22:57:59 -06:00
Dax Raad
2cdc88d295 core: add compaction config tests to verify auto and prune settings work correctly 2025-12-26 19:44:32 -05:00
Aiden Cline
664e6bf2d0 test: add more tests to make sure that cwd is locked for read tool 2025-12-26 14:30:05 -06:00
Aiden Cline
8b40e38cd7 test: add test for retry 2025-12-23 19:34:40 -06:00
lif
5af35117db
fix: handle Windows CRLF line endings in grep tool (#5948)
Co-authored-by: Claude <noreply@anthropic.com>
2025-12-22 22:26:15 -06:00
Mohammad Alhashemi
046e351140
feat: add native skill tool with permission system (#5930)
Co-authored-by: Dax Raad <d@ironbay.co>
2025-12-22 18:24:06 -05:00
Aiden Cline
5605fc3f38 test: rm claude skills test 2025-12-22 15:45:31 -06:00
Buck Evan
60db171b44
fix(read): narrow .env file blocking to not block .envrc (#5654)
Co-authored-by: Claude <noreply@anthropic.com>
2025-12-22 08:37:43 -06:00
Dax
8fe0715928
feat: add Agent Skills support (#5921) 2025-12-21 19:44:56 -05:00
Aiden Cline
d3922f0965
core: add verification that at least 1 primary agent is enabled, add regression tests (#5881) 2025-12-20 21:36:22 -06:00
lif
d89b567b47
fix: add transform case for gemini if mcp tool has missing array items (#5846) 2025-12-20 11:41:52 -06:00
Aiden Cline
dae0168ed8 test: fixture cleanup 2025-12-19 17:00:23 -06:00
Aiden Cline
edfe2e4f1c test: fix test case 2025-12-19 16:37:36 -06:00
Aiden Cline
f9d0850c5e test: add regression test for setCacheKey option 2025-12-17 10:24:53 -06:00
Aiden Cline
3ac42e9632 fix: github install cmd if repo has . in it 2025-12-16 11:19:18 -06:00
René
9eefcd1b41
Provider fix, anthropic Errorhandling if empty image file is read (#5521) 2025-12-14 23:56:47 -06:00
Adam
79a4c65313
fix: test 2025-12-14 21:42:17 -06:00
Dax Raad
e22af25076 ci: fix test failures in CI by pre-populating models cache
Tests were failing in CI because the models.json cache file doesn't exist
and the data() macro fallback only works at build time, not runtime.
The preload now pre-fetches models.json and disables the background
refresh to prevent race conditions during test execution.
2025-12-14 21:23:45 -05:00
Sebastian Herrlinger
80e04be84f fix super modifier parsing 2025-12-11 19:20:23 +01:00
Aiden Cline
59fb3ae606 ignore: add bash tests 2025-12-10 15:07:40 -06:00
Aiden Cline
da56319af4 ignore: fix test 2025-12-10 13:31:45 -06:00
Dax Raad
cb188f907f ci 2025-12-09 19:53:50 -05:00
Dax Raad
63d9656ad8 ci 2025-12-09 19:46:59 -05:00
Dax Raad
3512d02e9e ci 2025-12-09 19:46:38 -05:00
Aiden Cline
df64612d54
better interleaved thinking support (#5298) 2025-12-09 16:32:12 -06:00
Dax Raad
5f6b2fdc6f fix tests 2025-12-09 16:03:33 -05:00
Dax Raad
f1955b4d05 core: fix project event emission to include updated worktree data 2025-12-09 15:41:38 -05:00
Dax Raad
c5e5627cbd test fixes 2025-12-09 15:41:38 -05:00
Dax Raad
b48caec218 core: add automatic project icon discovery from favicon/logo files 2025-12-09 15:06:24 -05:00
Dax Raad
fb1b6c5e6b add project.name/icon 2025-12-09 13:57:18 -05:00
Aiden Cline
e23a81097c core: add test to prevent MCP headers regression when OAuth is enabled
Custom headers configured for remote MCP servers were being silently
dropped when OAuth was enabled (the default). This test ensures headers
are always sent to MCP servers regardless of OAuth configuration.
2025-12-09 12:06:40 -06:00
Aiden Cline
9856e3b798 ignore: add test for provider url case 2025-12-07 13:06:12 -06:00
Aiden Cline
75a4dcbce8
tweak: make bash give agent more awareness of cwd, bump default timeout, drop max timeout (#5140) 2025-12-06 23:55:07 -06:00
Aiden Cline
767a81f930 fix: ensure that vcs is still set to git even if no commits in repo 2025-12-04 23:02:11 -06:00
Dax Raad
b1202ac6db core: add test for custom model npm package inheritance 2025-12-04 16:30:54 -05:00
Jakub Matjanowski
46790e57e9
feat: Enhance DeepSeek reasoning content handling (#4975)
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2025-12-03 21:31:36 -06:00
Dax
6d3fc63658
core: refactor provider and model system (#5033)
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: thdxr <thdxr@users.noreply.github.com>
2025-12-03 21:09:03 -05:00
Dax Raad
ee4437ff32 core: add provider test coverage for upcoming refactor
Add comprehensive test suite for Provider module to ensure safe
refactoring of provider internals. Tests cover:
- Provider loading from env vars and config
- Provider filtering (disabled_providers, enabled_providers)
- Model whitelist/blacklist
- Model aliasing and custom providers
- getModel, getProvider, closest, defaultModel functions

Also adds Env module for instance-scoped environment variable access,
enabling isolated test environments without global state pollution.
2025-12-03 18:30:42 -05:00
Dax Raad
9eabbe2e76 retry anthropic overloaded errors 2025-11-25 15:47:34 -05:00
Ariane Emory
4273fa9ccf
fix: merge plugin selections (resolves #4565) (#4724)
Co-authored-by: Dax Raad <d@ironbay.co>
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: rekram1-node <rekram1-node@users.noreply.github.com>
2025-11-25 11:34:21 -06:00
Aiden Cline
618c654aa0 ignore: todo fix test case 2025-11-19 15:18:21 -06:00
Aiden Cline
a1dc4ebbe4 ignore: flaky test be a lil less flaky plz 2025-11-19 14:46:06 -06:00
Aiden Cline
e4e6096510 ignore: fix hanging test 2025-11-19 14:38:12 -06:00
Dax Raad
0a2d7af179 core: honor retry-after values exceeding 10 minutes instead of discarding them 2025-11-17 11:33:28 -05:00
Dax Raad
8b19c6c7e4 better retry display 2025-11-17 11:31:10 -05:00
Chris Olszewski
69a45ef7d7
fix: snapshot history when running from git worktrees (#4312) 2025-11-15 01:02:00 -06:00
Aiden Cline
0c51feb9c2
fix: max tokens when using models like opus with providers other than anthropic (#4307) 2025-11-13 16:39:09 -06:00
Aiden Cline
0b86adbe99
feat: agent color cfg (#4226)
Co-authored-by: 0xrin <0xrin1@protonmail.com>
Co-authored-by: GitHub Action <action@github.com>
2025-11-11 18:32:44 -06:00
Dax Raad
ce1397cc34 core: add test to verify OpenCode doesn't crash when starting in git repositories with no commit history 2025-11-11 20:17:36 +00:00
Dax Raad
299bf1dca8 ci 2025-11-11 01:59:10 -05:00
Aiden Cline
f7cc46cd9f
set cap for max time to wait between retries (#4135)
Co-authored-by: GitHub Action <action@github.com>
2025-11-09 11:46:58 -06:00
Christopher Sacca
271b679058
fix(lsp): handle optional requests to avoid MethodNotFound (-32601) with MATLAB Language Server (#4007) 2025-11-08 16:31:39 -06:00
GitHub Action
34ff87d504 chore: format code 2025-11-08 01:59:02 +00:00
Jinhyeok Lee
afb831c93c
vscode: Add VS Code Insiders support (#4019) 2025-11-07 10:31:16 -06:00
Dax Raad
3c2803fd9a flaky test 2025-11-06 13:05:53 -05:00
Dax Raad
1ea3a8eb9b big format 2025-11-06 13:03:12 -05:00
Dax Raad
67f3c934fe fix tests 2025-11-06 11:42:46 -05:00
Aiden Cline
065f656fb0 chore: rm hanging test 2025-11-06 10:39:32 -06:00
Err
6f0028644e
fix: support scoped npm plugins (#3785)
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2025-11-04 09:15:01 -06:00
James Alexander
37a6b5177e
Add unit tests for util functions: iife, lazy, timeout (#3791) 2025-11-03 09:24:45 -05:00
Sebastian Herrlinger
92a1943771 upgrade to opentui 0.1.32, activates kitty keyboard 2025-11-02 01:45:38 +01:00
Dax
96bdeb3c7b
OpenTUI is here (#2685) 2025-10-31 15:07:36 -04:00
Aiden Cline
e6301ca5d5 tweak: rename event 2025-10-27 10:42:47 -05:00
Bernat Pericàs
b562863fcc
feat: add session.started event that triggers when a new session is created (#3413) 2025-10-27 07:18:23 -05:00
Aiden Cline
e88b659545
make plan agent whitelist more conservative (#3424) 2025-10-24 14:40:36 -05:00
Adam
fe8f6d7a3e
wip: desktop work 2025-10-24 12:16:33 -05:00
Dax Raad
4cab66da6c test cleanup 2025-10-24 09:29:38 -04:00
Aiden Cline
b5f336c0ea test: rm flaky test 2025-10-23 12:52:08 -05:00
Aiden Cline
7c7ebb0a9d
feat: retry parts (#3369) 2025-10-22 18:31:36 -05:00
Aiden Cline
354f5c3281
ignore: fix acp test (#3339) 2025-10-21 15:27:59 -05:00
Dax Raad
e9996342a7 core: provide line-level statistics in file diffs to help users understand the scale of changes 2025-10-21 11:54:41 -04:00
Dax Raad
a0a09f421c core: add session diff API to show file changes between snapshots 2025-10-20 17:59:26 -04:00
Joe Schmitt
f3f21194ae
feat: Add ACP (Agent Client Protocol) support (#2947)
Co-authored-by: opencode-bot <devnull@opencode.local>
Co-authored-by: Dax Raad <d@ironbay.co>
Co-authored-by: GitHub Action <action@github.com>
2025-10-20 16:55:22 -05:00
Alberto Fanton
7ef246f98f
fix: disable GPG signing in snapshot tests (#3102) 2025-10-13 23:40:41 -05:00
Dax Raad
9d30bc692c ci: fixes 2025-10-11 00:24:35 -04:00
Dax Raad
9da95cb805 upgrade to bun 1.3.0 2025-10-10 17:53:32 -04:00
Dax Raad
dfc7ac4cf0 ignore: improve file ignore performance and cross-platform support
- Replace glob patterns with Set lookup for common folders to speed up matching
- Use path.sep for cross-platform compatibility on Windows/Unix systems
- Add comprehensive test coverage for nested and non-nested folder matching
- Simplify implementation by removing unnecessary caching complexity
2025-10-09 15:54:01 -04:00
Dax Raad
5f61945090 core: remove redundant patch integration test
The integration test was duplicating coverage already provided by the comprehensive
patch namespace tests. Users benefit from faster test runs without losing any
coverage of patch functionality. The remaining tests provide complete validation
of patch parsing, application, and tool integration.
2025-10-01 06:49:19 -04:00
Dax Raad
41ce56494b core: make patch tool more reliable and consistent with other editing tools
The patch tool now works seamlessly alongside other file editing tools with improved
error handling and a more intuitive permission system. Users will experience:

- More reliable patch application with better error messages
- Consistent permission prompts that match other editing tools
- Smoother integration when applying complex multi-file changes
- Better feedback on what changes are being made before applying patches

This refactoring leverages the robust patch parsing engine while making the tool
feel native to the opencode workflow, reducing friction when making bulk changes
to your codebase.
2025-10-01 06:45:43 -04:00
Dax Raad
6a7eeb39c3 core: prevent file deletion when reverting changes to existing files 2025-10-01 05:06:37 -04:00
Dax Raad
d644e0b8a7 core: fix config test by removing model field expectation 2025-09-27 03:10:01 -04:00
Dax Raad
4b94d98f89 ci: improve test coverage 2025-09-27 03:04:42 -04:00
Dax Raad
d0043a4a78 sync 2025-09-27 02:53:20 -04:00
Dax Raad
53481f9790 wip: bun test improvements 2025-09-27 02:17:08 -04:00
GitHub Action
b5b8a0555d chore: format code 2025-09-19 09:12:20 +00:00
Dax Raad
ae6154e1c3 ignore: rework bootstrap so server lazy starts it 2025-09-19 05:11:29 -04:00
Dax
3b6c0ec0b3
support custom tools (#2668) 2025-09-18 03:58:21 -04:00
Dax Raad
40c206c2f9 add opencode attach command to connect to a remote opencode server 2025-09-17 03:30:25 -04:00
Dax Raad
259c722208 only prune messages from more than 2 turns ago 2025-09-17 03:30:09 -04:00
Dax Raad
abd99aeb7d ignore: fix event type gen 2025-09-17 01:17:56 -04:00
Dax
c1b4e1f19d
Upgrade to Zod v4 (#2605)
Co-authored-by: GitHub Action <action@github.com>
2025-09-15 03:12:07 -04:00
Dax
9bb25a9260
Session management and prompt handling improvements (#2577)
Co-authored-by: GitHub Action <action@github.com>
2025-09-13 05:46:14 -04:00
Dax Raad
38e8c42cf0 ci: format 2025-09-09 23:44:04 -04:00
Zack Jackson
ab3c22b77a
feat: add dynamic tool registration for plugins and external services (#2420) 2025-09-08 16:25:04 -04:00
Aiden Cline
f740663ded
fix: more durable @ references for commands (#2386) 2025-09-02 21:24:56 -05:00
Adam Spiers
47d4c87bdd
make @file references in custom slash commands more robust (#2203)
Co-authored-by: Adam Spiers <opencode@adamspiers.org>
Co-authored-by: rekram1-node <aidenpcline@gmail.com>
2025-09-01 21:14:27 -05:00
Dax
f993541e0b
Refactor to support multiple instances inside single opencode process (#2360)
This release has a bunch of minor breaking changes if you are using opencode plugins or sdk

1. storage events have been removed (we might bring this back but had some issues)
2. concept of `app` is gone - there is a new concept called `project` and endpoints to list projects and get the current project
3. plugin receives `directory` which is cwd and `worktree` which is where the root of the project is if it's a git repo
4. the session.chat function has been renamed to session.prompt in sdk. it no longer requires model to be passed in (model is now an object)
5. every endpoint takes an optional `directory` parameter to operate as though opencode is running in that directory
2025-09-01 17:15:49 -04:00
Dax
10735f93ca
Add agent-level permissions with whitelist/blacklist support (#1862) 2025-08-12 11:39:39 -04:00
Dax Raad
061ba65d20 show combined output of bash tool progressively 2025-08-11 01:23:00 -04:00
Yordis Prieto
04a1ab3893
chore: enhance bash command tests with config mock and timeout adjustments (#1486)
Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
2025-08-01 14:14:54 -04:00
adamdotdevin
1d682544b9
fix: test 2025-07-31 10:10:34 -05:00
adamdotdevin
ef633fe92e
fix: test 2025-07-31 10:07:58 -05:00
Dax
18888351e9
use treesitter to parse bash commands and catch commands that go outside of cwd (#1443) 2025-07-30 20:57:52 -04:00
Yordis Prieto
c38b091895
fix: update glob pattern and path in tool test (#1436) 2025-07-30 15:42:13 -05:00
Yordis Prieto
eecfd6d0ca
fix: unit test assertion (#1435)
Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
2025-07-30 15:13:37 -05:00
Yordis Prieto
4c34b69ae6
chore: fix test to have deterministic testing (#1401) 2025-07-29 17:54:22 -05:00
Dax Raad
e97613ef9f allow temperature to be configured per mode 2025-07-25 13:29:44 -04:00
Dax Raad
8dcd39f5b7 real life totally configurabl ai subasians 2025-07-24 21:21:02 -04:00
Filip
541a7a39d3
fix: edit tool (#1287) 2025-07-24 16:18:04 -04:00
Nipuna Perera
add81b9739
Enhance private npm registry support (#998) 2025-07-16 08:31:38 -04:00
Dax
f884766445
v2 message format and upgrade to ai sdk v5 (#743)
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Liang-Shih Lin <liangshihlin@proton.me>
Co-authored-by: Dominik Engelhardt <dominikengelhardt@ymail.com>
Co-authored-by: Jay V <air@live.ca>
Co-authored-by: adamdottv <2363879+adamdottv@users.noreply.github.com>
2025-07-07 15:53:43 -04:00
Dax Raad
51bf193889 ignore: run prettier 2025-06-26 22:30:44 -04:00
Dax Raad
d240f4c676 more edit tool fixes 2025-06-25 19:22:54 -04:00
Dax Raad
9c90cdbe08 integrate gemini-cli strategies for edit tool 2025-06-25 17:56:14 -04:00
Dax Raad
fc7af31fe5 make edit tool more robust 2025-06-25 17:10:48 -04:00
Tom
09b89fdb23
fix: resolve test failures by adding missing zod-openapi import (#301)
Co-authored-by: opencode <noreply@opencode.ai>
2025-06-22 14:25:02 -04:00
Dax Raad
f99904bc1c track version on session info 2025-06-18 13:40:36 -04:00
Dax Raad
ee91f31313 fix issue with tool schemas and google 2025-06-17 11:27:07 -04:00
Dax Raad
68e1b3c46c Fix TypeScript compilation errors and consolidate version handling
🤖 Generated with [opencode](https://opencode.ai)

Co-Authored-By: opencode <noreply@opencode.ai>
2025-06-17 10:27:49 -04:00
Dax Raad
bfb36a8566 Refactor app context system to use Zod schemas and sync access pattern
🤖 Generated with opencode
Co-Authored-By: opencode <noreply@opencode.ai>
2025-06-03 11:59:03 -04:00
Dax Raad
e764525578 sync 2025-06-01 15:01:57 -04:00
Dax Raad
a1c4f345a8 Fix TypeScript errors and clean up unused imports
- Remove unused fs import from app.ts
- Remove unused LLM import and missing module reference from server.ts
- Fix parameter naming inconsistency in fetch.ts execute function
- Add missing metadata property to fetch.ts return statement
- Update test file to use correct API signatures and parameter names
- Remove unused parameters from example.ts

🤖 Generated with opencode
Co-Authored-By: opencode <noreply@opencode.ai>
2025-06-01 14:46:04 -04:00
Dax Raad
b4f809559e tool rework 2025-05-31 17:12:16 -04:00
Dax Raad
3b746162d2 run formatter 2025-05-31 14:41:00 -04:00
Dax Raad
f3da73553c sync 2025-05-30 20:48:36 -04:00