Commit Graph

1024 Commits

Author SHA1 Message Date
Dax Raad d8a15e7bc9 try to avoid persisting empty thinking/text blocks 2025-10-16 10:54:10 -04:00
seridescent 536934548a
fix: use ai-sdk openai chat language model instead of completion language model (#3204) 2025-10-16 00:59:49 -05:00
Aiden Cline 1c59530115
Revert "fix: Text content blocks must contain non-whitespace text" (#3200) 2025-10-15 20:02:17 -05:00
Dax Raad ab8471a7ff core: filter out alpha status models from provider list 2025-10-15 20:12:37 -04:00
Dax Raad 790fe72f39 sync 2025-10-15 19:48:57 -04:00
Aiden Cline d3caa55c10 Revert "fix: spawns hanging (#3192)"
This reverts commit 278ffb9a4e.
2025-10-15 15:20:14 -05:00
Fabian Kukuck ca534a36e5
feat: make compact feature use streaming API (#3079)
Co-authored-by: fku <fabian.kukuck@ipt.ch>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2025-10-15 13:44:16 -05:00
Aiden Cline 278ffb9a4e
fix: spawns hanging (#3192) 2025-10-15 13:01:54 -05:00
Aiden Cline b2ff4be4c6
fix: Text content blocks must contain non-whitespace text (#3194) 2025-10-15 13:00:26 -05:00
Matt Gillard e29d1d339c
updated bedrock provider for the new Australian sonnet 4.5 cross region inference (#3050)
Co-authored-by: Matt Gillard <matt-github@gillard.biz>
2025-10-15 11:09:22 -05:00
Haris Gušić 92bc78a2d3
Improve http error codes (#3186) 2025-10-15 10:53:09 -05:00
Aiden Cline b3fcc9a81d
tweak: consolidate session lock logic (#3185) 2025-10-15 01:12:51 -05:00
Dax Raad d07e79e6ad ci: channels 2025-10-14 15:09:18 -04:00
Dax Raad 61f6091de1 ci: test 2025-10-14 14:56:21 -04:00
Dax Raad 289783f627 ci: version stuff 2025-10-14 14:52:05 -04:00
Aiden Cline 717b544633
fix: false positive package manager detection in upgrade (#3181) 2025-10-14 13:18:40 -05:00
Netanel Draiman 4d019430e2
feat(cli): add session option to attach command (#3167) 2025-10-14 11:04:32 -05:00
Dax Raad cb73e2d9e1 fix: export trimDiff function from edit tool 2025-10-14 02:55:02 -04:00
Dax Raad 1923ddab6e feat: add Slack integration package with Bolt framework 2025-10-14 02:53:55 -04:00
Dax Raad b8249cde4b core: improve dependency management and error handling for more reliable builds 2025-10-14 01:33:25 -04:00
Aiden Cline b91582d68a
fix: config dir overrides (#3160) 2025-10-13 23:25:53 -05:00
Aiden Cline 682d30bd12
fix: custom model (#3156) 2025-10-13 19:58:19 -05:00
pancake 4d68ee5d2c
fix: clang formatter name (#3042)
Co-authored-by: pancake <pancake@nopcode.org>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2025-10-13 19:55:18 -05:00
Haris Gušić dbe9fd00b7
fix: make shell more robust (#3051) 2025-10-13 17:37:35 -05:00
Aiden Cline 59765e0157
fix: typecheck (#3149) 2025-10-13 14:51:12 -05:00
AB d0519be0d0
fix: add useCompletionUrls option to fix certain azure setups (#2528)
Co-authored-by: andreas.blass <andreas.blass@outlook.com>
Co-authored-by: GitHub Action <action@github.com>
2025-10-13 14:16:21 -05:00
Tommy D. Rossi 066e4f064d
tweak: include stack trace in server error responses (#3134) 2025-10-13 14:10:35 -05:00
Dax Raad a398013ecb fix: disable workspace symbol lookup to prevent LSP performance issues 2025-10-13 14:05:54 -04:00
Aiden Cline 53d9717d90
fix: pass options to compact (#3136) 2025-10-13 10:42:39 -05:00
Aiden Cline fd70b9b057
fix: adjust list tool prompt to handle cwd better (#3115) 2025-10-12 16:48:03 -05:00
OpeOginni 36cf9b9922
fix: add timeout to fetch models.dev refresh request (#3059) 2025-10-12 00:20:22 -05:00
Tommy D. Rossi b4171aa8e8
fix: `rg` hanging forever when run in bash, waiting for stdin (#3103)
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2025-10-11 23:24:48 -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
Rustafarian Dev 34ec6cc978
fix: perl6 file extension (#3066) 2025-10-10 11:28:49 -05:00
Dax Raad 9b52d33889 core: improve directory validation error messages to help users fix invalid directory names 2025-10-09 22:40:23 -04:00
Dax Raad 096710a8cc ensure @opencode-ai/plugin is available in `.opencode` folder 2025-10-09 21:18:49 -04:00
Dax Raad d91781c639 core: use platform-specific watcher backends for better file system monitoring 2025-10-09 18:29:18 -04:00
Dax Raad f3b71007d2 core: replace chokidar with @parcel/watcher for better performance and cross-platform support 2025-10-09 18:21:38 -04:00
Dax Raad 0a96d254e8 ignore: add common build and framework directories to ignore list 2025-10-09 16:35:56 -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
Adam c2950d26f0
feat: experimental skip bootstrap 2025-10-09 14:51:11 -05:00
Aiden Cline 225adc46ba
feat: allow read tool to handle images (#3052) 2025-10-09 09:05:11 -05:00
Dax Raad 979c9ea569 lsp: fix root detection to use instance directory instead of worktree 2025-10-09 04:30:30 -04:00
Dax Raad c0bd29155d lsp: simplify language server root detection to use lock files
Improves project boundary detection by focusing on package manager lock files instead of config files, providing more reliable workspace identification across different project types.
2025-10-09 04:22:38 -04:00
Haris Gušić c5b5795636
fix: process.stdout.write instead of console.log for export cmd (#3049) 2025-10-09 00:46:19 -05:00
Dax Raad a440e09cfe core: improve MCP reliability and add status monitoring
- Added 5-second timeout to MCP client verification to prevent hanging connections
- New GET /mcp endpoint to monitor server connection status
- Automatically removes unresponsive MCP clients during initialization
2025-10-07 04:04:19 -04:00
Aiden Cline cd528ae78f
fix: mcp error (#3006) 2025-10-07 00:45:46 -05:00
Aiden Cline 06c42093c8
tweak: grep tool to handle single file better (#3004) 2025-10-06 23:24:00 -05:00
Dax Raad a20fc2dfdf ignore: 2025-10-06 23:25:01 -04:00
Dax Raad 2bf0e42367 core: restore bash command security validation to prevent accidental directory traversal
The permission validation that prevents commands from accessing paths outside the project directory was accidentally disabled, which could allow commands like 'cd ../' to escape the workspace. This restores the security check that keeps your commands safely contained within your project boundaries.
2025-10-06 23:24:18 -04:00
Dax Raad 10998d62b9 core: improve session API reliability with proper input validation 2025-10-06 19:37:44 -04:00
Dax Raad aee240150b Update todo tool to use centralized Todo module 2025-10-06 18:54:05 -04:00
Dax Raad cdd6e98af9 Add missing files and fix type aliases for opentui features 2025-10-06 18:53:35 -04:00
Dax Raad 6417edf998 Add todo list and session forking API endpoints 2025-10-06 18:51:57 -04:00
Dax Raad 9a0735de76 Add session forking functionality and simplify remove logic 2025-10-06 18:50:56 -04:00
Aiden Cline bdf77701cf
fix: add timeout message if command times out (#2986) 2025-10-05 23:55:01 -05:00
Mani Sundararajan 889c276558
fix: file references & grep tool for windows (#2980) 2025-10-05 14:32:07 -05:00
Aiden Cline 71a7e8ef36
fix: max output tokens when using large thinking budget (#2976) 2025-10-04 23:38:41 -05:00
Aiden Cline f41a54b4b0
fix: allow LSP filename matching when extension is missing (#2975) 2025-10-04 20:30:53 -05:00
Yuku Kotani e7b6ffb314
feat: Vertex AI support; add google-vertex and google-vertex-anthropic providers (#2347) 2025-10-04 01:10:38 -04:00
Aiden Cline 395c41b748
add command to debug config (#2962) 2025-10-03 23:07:58 -05:00
Dax Raad bd0ba5ab88 turn on codex medium reasoning again 2025-10-03 06:46:07 -04:00
Aiden Cline 860e47edea
fix: run cmd json format when running command (#2926) 2025-10-02 10:37:42 -05:00
Sandip Wane 8fc6a25142
chore: rm empty try-catch block (#2769)
Co-authored-by: Sandip Wane <sandip.wane@cloudhedge.io>
2025-10-01 23:21:57 -05:00
Dax Raad 5079ba7ce5 core: fix file search limit handling and ensure File module initialization 2025-10-02 00:18:18 -04:00
Dax Raad b2440e92e7 core: improve file search reliability and performance 2025-10-02 00:09:02 -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 bd69c5aca8 codex should not have reasoning effort 2025-10-01 05:06:37 -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 6e19200fca overhaul file search and support @ mentioning directories 2025-10-01 03:37:01 -04:00
Dax Raad 5a507023a6 update anthropic system prompts 2025-09-30 04:41:36 -04:00
Aiden Cline bc9ff7e99f
fix: worktree cmd (#2870) 2025-09-29 22:21:54 -05:00
Aiden Cline edeaab321a
fix: bash regex (#2858) 2025-09-29 08:51:46 -05:00
Dax Raad c148f10bbd core: improve webfetch tool content negotiation and format handling 2025-09-28 17:57:50 -04:00
Aiden Cline 89167ae387
respect model id in opencode.json (#2833) 2025-09-27 17:09:21 -05:00
Arjun Singh 8a28d34fe9
Include step-start and step-finish for cost tracking (#2810) 2025-09-27 03:45:36 -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
Timo Clasen 3d332a06b5
fix(tool): follow symlinks when looking for tools (#2809) 2025-09-26 16:01:08 -05:00
Yihui Khuu 7ecdc1b5d8
fix: config loading not considering symlinks (#2800) 2025-09-26 09:46:49 -05:00
Dax Raad 80305813f5 disable aggressive config validation 2025-09-26 07:51:53 -04:00
Dax Raad 093fbca711 core: add themes to allowed config directories 2025-09-26 06:40:41 -04:00
Dax Raad f2b547cc45 fix erroring on custom tool folder 2025-09-26 05:33:38 -04:00
Dax Raad 70310a37b3 validate config directory 2025-09-26 03:23:25 -04:00
Dax Raad eb7f4e20df core: add config update endpoint and functionality 2025-09-26 02:37:19 -04:00
Dax Raad f5c7a94abe turn reasoning summaries back on by default for zen 2025-09-26 01:37:44 -04:00
Dax Raad 7ec3900208 core: enable reasoning.encrypted_content and reasoningSummary for opencode provider\ntui: adjust editorY position calculation 2025-09-26 01:27:53 -04:00
Aiden Cline 5d95846df1
fix: openai reasoning issue (#2780) 2025-09-26 01:23:30 -04:00
Aiden Cline d47feb9969
tweak: include usage by default for openai compatible providers (#2788) 2025-09-25 21:06:58 -05:00
Adam 945de4eddc
wip: watch select .git files in watcher 2025-09-25 14:41:31 -05:00
Dax Raad d86d3e7ea1 update copilot auth 2025-09-23 23:36:27 -04:00
Siddhant Choudhary 449994f120
feat: output-format flag to stream json output (#2471)
Co-authored-by: Siddhant Choudhary <sid@treaps.com>
Co-authored-by: rekram1-node <aidenpcline@gmail.com>
2025-09-23 16:19:32 -05:00
Dax Raad 71b43fd02e fix codex errors 2025-09-23 16:56:40 -04:00
Dax Raad f40b91ab7a fix: remove file existence check from LSP debug and format storage code 2025-09-23 16:49:57 -04:00
Adam 80b0a93d64
wip: desktop file updates 2025-09-23 11:41:15 -05:00
Aiden Cline c23510346b
ignore: lsp debug file check (#2743) 2025-09-22 22:16:03 -05:00
Aiden Cline 02b4d1e2fc
fix: lsp extension undefined handle (#2739) 2025-09-22 21:14:55 -05:00
Aiden Cline cc2bd7141f
fix: enforce extensions requirement for custom lsp servers (#2734) 2025-09-22 11:45:47 -05:00
iwauo 6b799b304c
feat: add Java LSP server support (#2547)
Co-authored-by: rekram1-node <aidenpcline@gmail.com>
2025-09-21 23:55:15 -05:00
Aiden Cline 92c126d875
fix: lsp spawn logic (#2723) 2025-09-21 11:25:47 -05:00
Dax Raad 079095d7a9 core: filter models without keys in opencode provider 2025-09-21 04:43:32 -04:00
Aiden Cline 84d95a0d2a
ignore: lsp log (#2715) 2025-09-20 23:02:06 -05:00
Dax Raad 7be9dc8e49 ignore: fix 2025-09-19 06:13:45 -04:00
Dax Raad ae6154e1c3 ignore: rework bootstrap so server lazy starts it 2025-09-19 05:11:29 -04:00
Dax Raad baaff81a06 fix task tool ui disappearing once done 2025-09-19 01:09:52 -04:00
Aiden Cline ffa5689885
docs: subtask config option (#2682) 2025-09-18 17:52:23 -05:00
Dax 3b6c0ec0b3
support custom tools (#2668) 2025-09-18 03:58:21 -04:00
Julián Díaz 71076d5c68
fix: add synthetic user prompt after session compaction (#2659)
Co-authored-by: Julián Díaz <git@jdiaz.io>
2025-09-17 23:27:37 -04:00
Aiden Cline ff6a93f355
fix: only keep aborted messages if they have sufficient parts (#2651) 2025-09-17 14:24:53 -05:00
Aiden Cline 3c3d6b65c2
Revert "fix: type 'reasoning' was provided without its required follo… (#2648) 2025-09-17 11:17:26 -05:00
Aiden Cline 8c2aec43b8
fix: type 'reasoning' was provided without its required following item (#2633) 2025-09-17 09:45:13 -05:00
Aiden Cline 2564801bde
tweak: adjust title gen when using models like gpt-5-nano on non open… (#2646) 2025-09-17 08:39:34 -05: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 Raad d4c01f858b disable thinking for opencode zen and gpt-5 temporarily 2025-09-16 13:49:37 -04:00
Dax Raad 3aeac02bf1 enable session pruning and allow disabling with OPENCODE_DISABLE_PRUNE 2025-09-16 04:53:17 -04:00
Dax Raad 2d5bd26a59 feat: enhance provider model mapping and reasoning capabilities
- Add npm package tracking to provider model mapping
- Implement special handling for opencode provider with reasoning
- Update provider options mapping to use npm package names
2025-09-16 03:10:17 -04:00
Dax 14cb2d2af6
feat: improve file watcher with chokidar and better ignore patterns (#2621)
Co-authored-by: GitHub Action <action@github.com>
2025-09-16 00:17:10 -04:00
Stephen Murray 52fb571739
fix: restore chat.message plugin hook (#2619) 2025-09-15 21:44:07 -05:00
Dax 725104572e
feat: add desktop/web app package (#2606)
Co-authored-by: adamdotdevin <2363879+adamdottv@users.noreply.github.com>
Co-authored-by: Adam <2363879+adamdotdevin@users.noreply.github.com>
Co-authored-by: GitHub Action <action@github.com>
2025-09-15 03:28:08 -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
Aiden Cline e3e459fc50
fix: reasoning metadata persistence (#2602) 2025-09-14 16:28:06 -05:00
Tommy D. Rossi 4bf0541bd6
log bash output when using `opencode run` (#2595) 2025-09-14 09:03:40 -05:00
Aiden Cline c81624aef7
tweak: make bash permissions key off of command pattern (#2592) 2025-09-14 09:01:57 -05:00
Kenn Costales df61aa801b
fix: fix wrong tool references `LS` and `Agent` (#2466) 2025-09-14 08:53:50 -05:00
Mani Sundararajan 1f8d396b76
fix(dev): build tui with correct file ext for windows (#2590) 2025-09-14 01:59:25 -04:00
Aiden Cline 16d66c209d
respect subagent in command, add `subtask` flag (#2569) 2025-09-13 12:47:18 -05:00
Aiden Cline 6506e48c54
tweak: keep aborted msgs in context (#2583) 2025-09-13 12:25:30 -05:00
Dax Raad a00b49d65b disable autocompact if context is 0 2025-09-13 05:59:18 -04:00
Dax Raad b1589be4ba add disable OPENCODE_DISABLE_AUTOCOMPACT 2025-09-13 05:55:04 -04:00
Dax Raad eb24d2f847 ignore: fix 2025-09-13 05:53:03 -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 555fb53505 nudge llm to continue properly after compaction 2025-09-13 01:23:54 -04:00
Tommy D. Rossi b1e0a23351
fix: ShellError: exit code 1 errors (#2568)
Co-authored-by: rekram1-node <aidenpcline@gmail.com>
2025-09-13 00:06:07 -05:00
Aiden Cline aebd50da7e
fix: make permission always behavior match expectation (#2573) 2025-09-12 18:59:38 -05:00
Stephen Murray c02f58c2af
fix: await cleanupRevert() to prevent dupe msgs after undo (#2572) 2025-09-12 18:42:39 -05:00
Dax Raad f2094b7bb3 temporarily disable midstream compaction 2025-09-12 14:00:54 -04:00
Dax Raad 3e2478ebf9 undo session pruning 2025-09-12 13:20:13 -04:00
Dax Raad 0290b4aaf0 ignore: internal 2025-09-12 10:45:44 +00:00
Dax Raad 469dc9095f add microcompact 2025-09-12 06:38:47 -04:00
Dax Raad 983e3b2ee3 fix compaction issues 2025-09-12 06:01:11 -04:00
Dax Raad f5b3992479 properly support model level npm definition 2025-09-11 16:22:44 -04:00
Chris Covington 53f1f16122
feat: Add an experimental option to disable paste summaries (#2552)
Co-authored-by: rekram1-node <aidenpcline@gmail.com>
2025-09-11 14:21:08 -05:00
Dax Raad 3e9b451fb4 reduce LSP verbosity 2025-09-11 12:54:12 -04:00
Dax Raad 4ccf683527 remove block anchor edit 2025-09-11 12:53:10 -04:00
Dax Raad 4c94753eda compaction improvements 2025-09-11 02:22:51 -04:00
Aiden Cline 780e532094
resolve nested commands (#2537) 2025-09-10 14:05:26 -05:00
Aiden Cline 29310957c8
fix: handle @dir in command (#2533) 2025-09-10 13:27:44 -05:00