Commit graph

235 commits

Author SHA1 Message Date
Dax Raad
4126fedbd4 openapi 2025-12-07 21:55:36 -05:00
Dax Raad
bf0f85e37f playing with sdk docs 2025-12-07 19:58:04 -05:00
Dax
ea7ec60f51
v2 SDK (#5216)
Co-authored-by: GitHub Action <action@github.com>
2025-12-07 19:04:14 -05:00
André Cruz
509e43d6f8
feat(mcp): add OAuth authentication support for remote MCP servers (#5014) 2025-12-07 15:47:27 -05:00
Adam
cfbaf81ef8
fix(desktop): clone pty session on reconnect 2025-12-05 10:30:48 -06:00
Adam
09f522f0aa
Reapply "feat(desktop): terminal pane (#5081)"
This reverts commit f9dcd97936.
2025-12-04 20:32:08 -06:00
Aiden Cline
f9dcd97936 Revert "feat(desktop): terminal pane (#5081)"
This reverts commit d763c11a6d.
2025-12-04 15:57:01 -06:00
Adam
d763c11a6d
feat(desktop): terminal pane (#5081)
Co-authored-by: Github Action <action@github.com>
Co-authored-by: Dax Raad <d@ironbay.co>
2025-12-04 15:37:29 -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
7da6a22df2 core: close SSE stream when instance is disposed 2025-12-01 09:14:00 -05:00
Dax Raad
98031173b6 lil branch refactor 2025-11-26 12:34:48 -05:00
Aiden Cline
09bc8d9ca4
show current git branch in tui (#4765)
Co-authored-by: GitHub Action <action@github.com>
2025-11-25 21:39:20 -06:00
Aiden Cline
020ee56f25 fix: dont auto continue if compaction was manual 2025-11-25 12:11:09 -06:00
Shantur Rathore
b1aaa8570e
prompt_async: Allows to receive prompt and return immediately, start … (#4664)
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2025-11-24 23:52:57 -06:00
Adam
acf1dd8500
wip(share): more styling 2025-11-24 15:10:40 -06:00
Dax
49408c00e9
enterprise (#4617)
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Adam <2363879+adamdotdevin@users.noreply.github.com>
2025-11-21 20:41:27 -05:00
Patrick Wolf
416f2964b5
fix: preserve agent context during compaction (#4556) 2025-11-21 02:13:10 -06:00
Dax
23ea8ba1ce
Tui onboarding (#4569)
Co-authored-by: GitHub Action <action@github.com>
2025-11-21 00:21:06 -05:00
Tommy D. Rossi
b12efb2023
fix: do not print ai sdk warnings (#4541)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-20 08:42:24 -06:00
Adam
fc5fc2c570 wip(desktop): new layout work 2025-11-18 17:07:34 +00:00
Dax
a1214fff2e
Refactor agent loop (#4412) 2025-11-17 10:57:18 -05:00
Tyler Gannon
e96442310c
chore: replace z.union with z.enum for cleaner OpenAPI generation (#4394) 2025-11-17 00:06:40 -06:00
Tyler Gannon
c724d2392f
fix: replace union type with enum "true"/"false" in /find/file endpoint (#4338) 2025-11-14 17:48:23 -06:00
Dax Raad
64d28ea457 fix sdk types 2025-11-14 12:42:46 -05:00
Dax Raad
2520780846 fix sdk types 2025-11-14 12:42:46 -05:00
Dax Raad
5fc26c958a add global.event.subscribe() to sdk 2025-11-14 12:32:43 -05:00
Dax
d81dce6a82
fix: add support for loading custom themes from .opencode/themes directory (#4229)
Co-authored-by: GitHub Action <action@github.com>
2025-11-11 21:30:38 -05:00
Dax Raad
4d20e1c3c6 Merge remote-tracking branch 'origin/dev' into dev 2025-11-08 20:21:02 -05:00
Dax Raad
4bb7ea9127 improve startup speed 2025-11-08 20:18:36 -05:00
GitHub Action
34ff87d504 chore: format code 2025-11-08 01:59:02 +00:00
Aiden Cline
73cd8a334c
rework acp to compensate for changes in Zed IDE (#4050) 2025-11-07 13:57:12 -06:00
Dax Raad
d462e380f4 fix: update references after moving message functions to MessageV2 namespace 2025-11-07 14:47:05 -05:00
Dax Raad
287855336d allow not specifying a limit on messages endpoint 2025-11-07 13:05:19 -05:00
Dax Raad
9554abb56e message storage performance improvements 2025-11-07 01:11:47 -05:00
Dax Raad
e45e94634f only display last 100 messages in TUI 2025-11-06 13:21:15 -05:00
Dax Raad
1ea3a8eb9b big format 2025-11-06 13:03:12 -05:00
Dax Raad
7a7060ef15 fix session performance issue from large diffs 2025-11-04 13:35:44 -05:00
Dax Raad
bc6f4aed2b local web 2025-11-04 12:33:14 -05:00
Dax Raad
178a14ce3e fix dirs query param 2025-11-03 16:35:55 -05:00
Dax Raad
07bb75f086 core: add optional dirs parameter to file search API
Allow users to exclude directories from file search results by setting dirs=false parameter in /find/file endpoint
2025-11-03 11:53:41 -05:00
Yuku Kotani
2fe7d13e69
Add formatter status display to TUI status dialog (#3701) 2025-11-01 11:14:39 -04:00
Dax
96bdeb3c7b
OpenTUI is here (#2685) 2025-10-31 15:07:36 -04:00
Jérôme Benoit
0eb899a950
chore: cleanup versioned zod imports (#3460)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.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-10-26 14:50:41 -05:00
Dax Raad
3e574c71cb potentially fix fetch failed timeout errors 2025-10-24 09:46:28 -04:00
Dax Raad
cee7106054 session summaries in data 2025-10-23 16:28:20 -04:00
Dax Raad
f4dfae0bb0 ignore: diff stuff 2025-10-23 16:04:58 -04:00
Dax Raad
a0a09f421c core: add session diff API to show file changes between snapshots 2025-10-20 17:59:26 -04:00
Aiden Cline
1f869bccc1
make compact interruptable (#3251) 2025-10-18 11:49:29 -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
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
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
Dax Raad
10998d62b9 core: improve session API reliability with proper input validation 2025-10-06 19:37:44 -04:00
Dax Raad
6417edf998 Add todo list and session forking API endpoints 2025-10-06 18:51:57 -04:00
Dax Raad
6e19200fca overhaul file search and support @ mentioning directories 2025-10-01 03:37:01 -04:00
Dax Raad
eb7f4e20df core: add config update endpoint and functionality 2025-09-26 02:37:19 -04: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
abd99aeb7d ignore: fix event type gen 2025-09-17 01:17:56 -04: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
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
Zack Jackson
ab3c22b77a
feat: add dynamic tool registration for plugins and external services (#2420) 2025-09-08 16:25:04 -04:00
Adam
f171250033
fix: better file/content return 2025-09-04 12:39:49 -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
Adam
8749c0c707
feat: file list api 2025-08-27 15:28:03 -05:00
Lubos
6e626afdcb
chore(openapi): set correct content type for server-sent events (#2045) 2025-08-22 17:51:24 -04:00
Dax
133fe41cd5
slash commands (#2157)
Co-authored-by: adamdotdevin <2363879+adamdottv@users.noreply.github.com>
2025-08-22 17:04:28 -04:00
zWing
bca523eb63
fix(js-sdk): fix types in session.chat (#1925)
Co-authored-by: zwingzheng <zwingzheng@tencent.com>
Co-authored-by: rekram1-node <aidenpcline@gmail.com>
2025-08-21 10:44:20 -05:00
adamdotdevin
07dbc30c63
feat(tui): navigate child sessions (subagents) 2025-08-15 10:16:08 -05:00
adamdotdevin
1ae38c90a3
feat(api): get session and session children routes 2025-08-15 08:49:19 -05:00
adamdotdevin
9609c1803e
feat: /tui/show-toast api 2025-08-15 08:39:58 -05:00
adamdotdevin
6e0e87fb2a
fix: more commands cleanup 2025-08-15 07:43:30 -05:00
Dax Raad
a433766a31 allow plugins to create custom auth providers 2025-08-14 16:25:08 -04:00
Lubos
703ae49675
chore: declare OpenAPI version 3.1.1 (#1931) 2025-08-14 12:10:32 -04:00
Dax Raad
93b71477e6 support !shell commands 2025-08-13 15:26:13 -04:00
Dax Raad
c6344c5714 wip: bash 2025-08-13 13:31:29 -04:00
Dax Raad
7505fa61b9 wip: bash commands 2025-08-13 13:29:06 -04:00
spoons-and-mirrors
47c327641b
feat: add session rename functionality to TUI modal (#1821)
Co-authored-by: opencode <noreply@opencode.ai>
Co-authored-by: Dax Raad <d@ironbay.co>
Co-authored-by: Dax <mail@thdxr.com>
2025-08-12 16:22:03 -04:00
Dax
c34aec060f
Merge agent and mode into one (#1689)
The concept of mode has been deprecated, there is now only the agent field in the config.

An agent can be cycled through as your primary agent with <tab> or you can spawn a subagent by @ mentioning it. if you include a description of when to use it, the primary agent will try to automatically use it

Full docs here: https://opencode.ai/docs/agents/
2025-08-07 16:32:12 -04:00
Timo Clasen
723a37ea9a
fix: get session api (#1684) 2025-08-07 15:28:18 -04:00
Dax Raad
1a561bb512 add api to get session 2025-08-06 20:24:36 -04:00
Dax Raad
ca031278ca wip: plugins 2025-08-02 18:50:19 -04:00
adamdotdevin
872b1e068f
feat: more scriptable tui (api) 2025-07-31 11:24:23 -05:00
adamdotdevin
c5368e7412
fix: missing operationId 2025-07-31 10:19:42 -05:00
adamdotdevin
5500698734
wip: tui permissions 2025-07-31 09:59:17 -05:00
Dax
33cef075d2
ci: new publish method (#1451) 2025-07-31 01:00:29 -04:00
Dax Raad
9c9cbb3e81 wip: undo properly remove messages from UI 2025-07-28 22:58:31 -04:00
Dax Raad
1ad529db59 wip: fix redoing 2025-07-23 20:42:02 -04:00
Dax
96866e52ce
basic undo feature (#1268)
Co-authored-by: adamdotdevin <2363879+adamdottv@users.noreply.github.com>
Co-authored-by: Jay V <air@live.ca>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Andrew Joslin <andrew@ajoslin.com>
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Tobias Walle <9933601+tobias-walle@users.noreply.github.com>
2025-07-23 20:30:46 -04:00
Aiden Cline
b7b0cdbd7c
tweak: ensure most recently interacted with session appears at the top (#1239) 2025-07-22 22:37:36 -05:00
Dax Raad
5aafab118f wip: tui api 2025-07-22 12:15:50 -04:00
Dax Raad
f20ef61bc7 wip: api for tui 2025-07-21 19:53:58 -04:00
Dax
d56dec4ba7
wip: optional IDs in api (#1128) 2025-07-18 13:42:50 -04:00
Dax
90d6c4ab41
Part data model (#950) 2025-07-13 17:22:11 -04:00
adamdottv
ce4cb820f7
feat(tui): modes 2025-07-10 10:06:51 -05:00
Dax Raad
a826936702 modes concept 2025-07-09 21:59:38 -04:00
adamdottv
53f8e7850e
feat: configurable log levels 2025-07-09 10:00:03 -05:00
adamdottv
ca8ce88354
feat(tui): move logging to server logs 2025-07-09 08:16:10 -05:00
Dax Raad
75279e5ccf wip: symbols endpoint 2025-07-08 20:05:33 -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
adamdottv
c82a060eca
feat(tui): file viewer, select messages 2025-07-02 16:08:11 -05:00
Dax Raad
dd5736fe5f add back in file hierarchy in system prompt but limit to 200 items 2025-06-30 14:46:46 -04:00
adamdottv
79bbf90b72
chore: rework openapi spec and use stainless sdk 2025-06-27 14:26:25 -05:00
Dax Raad
4b26b43855 added opencode serve command 2025-06-24 20:52:09 -04:00
Adam
6f18475428
feat: delete sessions (#362)
Co-authored-by: adamdottv <2363879+adamdottv@users.noreply.github.com>
2025-06-24 11:07:41 -05:00
Dax Raad
61160dc220 docs: readme 2025-06-20 15:22:41 -04:00
adamdottv
f7e8dd2ff8
chore: fix typescript issues 2025-06-20 07:48:42 -05:00
Dax Raad
41dba0db08 config validation 2025-06-20 00:57:28 -04:00
Dax Raad
e5e9b3e3c0 rework config 2025-06-18 23:01:19 -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
d054f88130
Improve upgrade command with installation method detection (#158) 2025-06-17 00:07:17 -04:00
Dax Raad
fe05edaa79 enhance ripgrep files function with query filtering and limit support
🤖 Generated with [opencode](https://opencode.ai)

Co-Authored-By: opencode <noreply@opencode.ai>
2025-06-15 21:26:32 -04:00
Dax Raad
7d174767b0 first pass making system prompt less fast 2025-06-15 20:25:04 -04:00
Dax Raad
6a261dedb4 Improve logging and simplify fzf implementation
- Refactor fzf search to use Bun's $ syntax for cleaner command execution
- Add request/response duration logging to server middleware
- Set default service name for logging to improve log clarity

🤖 Generated with [OpenCode](https://opencode.ai)

Co-Authored-By: OpenCode <noreply@opencode.ai>
2025-06-14 01:51:04 -04:00
adamdottv
d7d5fc39fb
wip: refactoring tui 2025-06-13 08:30:57 -05:00
Dax Raad
442e1b52ad Update provider configuration and server handling
🤖 Generated with [OpenCode](https://opencode.ai)

Co-Authored-By: OpenCode <noreply@opencode.ai>
2025-06-12 23:10:03 -04:00
Dax Raad
f6ed59bf45 Refactor external tools organization and add file search API endpoint
🤖 Generated with [OpenCode](https://opencode.ai)

Co-Authored-By: OpenCode <noreply@opencode.ai>
2025-06-11 23:59:51 -04:00
Dax Raad
5ab2ff9589 onboarding progress 2025-06-10 15:43:14 -04:00
Dax Raad
021fd3fcb5 sync 2025-06-09 14:01:11 -04:00
Dax Raad
db2bb32bcf integrate with models.dev 2025-06-05 14:59:16 -04:00
Dax Raad
d334ead84a sync 2025-06-04 20:49:33 -04:00
Dax Raad
7f8f46f9fe Refactor session module structure and improve error handling
- Rename session.ts to index.ts for cleaner module imports
- Update all imports to use new session module structure
- Add error metadata tracking to message schema
- Improve error handling in session stream processing

🤖 Generated with [OpenCode](https://opencode.ai)

Co-Authored-By: OpenCode <noreply@opencode.ai>
2025-06-04 17:38:54 -04:00
Dax Raad
1e063e7937 fix port issue 2025-06-03 16:35:37 -04:00
Dax Raad
8e769dcac0 Replace env-paths with xdg-basedir for better XDG compliance and cross-platform directory handling
🤖 Generated with opencode
Co-Authored-By: opencode <noreply@opencode.ai>
2025-06-03 14:46:28 -04:00
Dax Raad
caf9fdc893 initialized 2025-06-03 14:24:45 -04:00
Dax Raad
ec7ab16ce4 sync 2025-06-03 13:00:27 -04:00
Dax Raad
e5b06a2d95 initialzie 2025-06-03 12:38:48 -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
f072ab3276 lazy load LLMs even harder 2025-05-31 16:05:12 -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
Renamed from js/src/server/server.ts (Browse further)