Commit graph

697 commits

Author SHA1 Message Date
Kit Langton
5dfe86dcb1
refactor(truncation): effectify TruncateService, delete Scheduler (#17957) 2026-03-17 21:59:54 -04:00
Kit Langton
e5cbecf17c
fix+refactor(vcs): fix HEAD filter bug and effectify VcsService (#17829) 2026-03-16 13:59:11 -04:00
Shoubhit Dash
9457493696
perf(server): paginate session history (#17134) 2026-03-13 15:48:43 +05:30
Kit Langton
1cb7df7159
refactor(provider): flow branded ProviderID/ModelID through internal signatures (#17182) 2026-03-12 14:48:17 +00:00
Kit Langton
c45467964c
feat(id): brand ProviderID and ModelID (#17110) 2026-03-12 09:27:52 -04:00
Kit Langton
2a4dedc210
feat(id): brand PermissionID, PtyID, QuestionID, and ToolID (#17042) 2026-03-12 01:49:57 +00:00
Kit Langton
090f636354
feat(id): brand PartID through Drizzle and Zod schemas (#16966) 2026-03-11 23:40:50 +00:00
Kit Langton
16a6d6feba
feat(id): brand WorkspaceID through Drizzle and Zod schemas (#16964) 2026-03-11 23:30:17 +00:00
Kit Langton
cb67465675
feat(id): brand SessionID through Drizzle and Zod schemas (#16953) 2026-03-11 23:16:56 +00:00
Dax Raad
604ab1bde1 core: restore plugin serverUrl getter so plugins can connect to local server 2026-03-11 17:41:51 -04:00
Kit Langton
dbc00aa8e0
feat(id): brand ProjectID through Drizzle and Zod schemas (#16948) 2026-03-11 16:44:26 -04:00
Dax Raad
89d6f60d25 refactor(server): extract createApp function for server initialization
- Replace Server.App() with Server.Default() for internal server access
- Extract server app creation into Server.createApp(opts) for testability
- Move CORS whitelist from module-level variable to function parameter
- Update all tests to use Server.Default() instead of Server.App()
2026-03-09 17:13:52 -04: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
Shoubhit Dash
d6e0f47361
feat: add project git init api (#16383) 2026-03-06 13:39:50 -06:00
James Long
7f37acdaaa
feat(core): rework workspace integration and adaptor interface (#15895) 2026-03-03 21:35:38 -05:00
James Long
cec16dfe95
feat(core): add WorkspaceContext (#15409) 2026-02-28 20:44:54 -05:00
James Long
c12ce2ffff
feat(core): basic implementation of remote workspace support (#15120) 2026-02-27 15:36:39 -05:00
Shantur Rathore
79b5ce58e9
feat(core): add message delete endpoint (#14417) 2026-02-25 09:25:26 -05:00
adamelmore
9f4fc5b72a
Revert "fix(app): terminal issues"
This reverts commit e70d2b27de.
2026-02-22 21:27:25 -06: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
d07f09925f
fix(app): terminal rework (#14217) 2026-02-19 06:35:14 -06:00
Adam
de25703e9d
fix(app): terminal cross-talk (#14184) 2026-02-18 13:56:05 -06:00
Shoubhit Dash
3dfbb70593
fix(app): recover state after sse reconnect and harden sse streams (#13973) 2026-02-17 07:10:39 -06:00
Dax Raad
68bb8ce1da core: filter sessions at database level to improve session list loading performance 2026-02-14 13:41:15 -05: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
Adam
548608b7ad
fix(app): terminal pty isolation 2026-02-12 15:15:34 -06:00
Adam
fc37337a3e
fix(app): memory leak with platform fetch for events 2026-02-10 13:18:33 -06:00
Adam
3929f0b5bd
fix(app): terminal replay (#12991) 2026-02-10 10:15:19 -06:00
Goni Zahavy
def907ae4b
fix(opencode): SessionPrompt.shell() now triggers loop if messages are queued (#10987) 2026-02-06 16:13:11 -06:00
Luiz Guilherme D'Abruzzo Pereira
a9fca05d8b
feat(server): add --mdns-domain flag to customize mDNS hostname (#11796) 2026-02-02 14:52:32 -06:00
Desmond Sow
eace76e525
fix: opencode hanging when using client.app.log() during initialization (#11642) 2026-02-01 13:14:34 -06:00
tan
427ef95f7d
fix(opencode): allow media-src data: URL for small audio files (#11082) 2026-01-28 21:21:49 -06:00
adamelmore
65e1186efe
wip(app): global config 2026-01-28 07:28:03 -06:00
adamelmore
2f35c40bb5
chore(app): global config changes 2026-01-28 07:28:02 -06:00
adamelmore
03d884797c wip(app): provider settings 2026-01-25 20:40:00 -06:00
Adam
16fad51b5e feat(app): add workspace startup script to projects 2026-01-22 07:42:56 -06:00
Halil Tezcan KARABULUT
87d91c29e2
fix(app): terminal improvements - focus, rename, error state, CSP (#9700) 2026-01-21 06:49:46 -06:00
GitHub Action
dac73572e0 chore: generate 2026-01-21 02:39:31 +00:00
Ariane Emory
cbe20d22d3
fix: don't update session timestamp for metadata-only changes (resolves #9494) (#9495) 2026-01-20 20:38:54 -06:00
Adam
924fc9ed80 wip(app): settings 2026-01-20 07:33:44 -06:00
Adam
093a3e7876 feat(app): reset worktree 2026-01-19 07:35:52 -06:00
Adam
f26de6c52f feat(app): delete workspace 2026-01-19 07:35:52 -06:00
Aiden Cline
b7ad6bd839
feat: apply_patch tool for openai models (#9127) 2026-01-18 00:35:09 -06:00
Nathan Flurry
bfb8c531c2
feat: bind vim-style line-by-line scrolling (#8980)
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2026-01-17 21:54:26 -06:00
Javier Aceña
7030f49a74
fix: mdns discover hostname (#9039) 2026-01-17 05:47:19 -06:00
Akshar Patel
c25155586c
fix: open help dialog with tui/open-help route (#8596) 2026-01-16 16:42:27 -06:00
GitHub Action
6e028ec2dc chore: generate 2026-01-16 21:21:54 +00:00
Aiden Cline
8e0ddd1ac9
chore: cleanup server routes (#8965)
Co-authored-by: Leka74 <leke.dobruna@gmail.com>
Co-authored-by: Leka74 <791494+Leka74@users.noreply.github.com>
2026-01-16 15:21:13 -06:00
Shane Bishop
077ca4454f
fix(desktop): "load more" button behavior in desktop sidebar (#8430) 2026-01-14 07:36:08 -06:00
Dax Raad
f0912ee838 core: rename OPENCODE_PASSWORD to OPENCODE_SERVER_PASSWORD for clearer authentication configuration 2026-01-12 15:59:17 -05:00
Dax Raad
7ca767de55 core: fix HTTP exception handling order to prevent NamedError from masking HTTP exceptions
docs: add OPENCODE_PASSWORD environment variable documentation for basic auth
2026-01-12 15:43:48 -05:00
Dax Raad
1954c1255e core: add password authentication and improve server security
- Add OPENCODE_PASSWORD flag for basic auth protection
- Show security warnings when password is not set
- Remove deprecated spawn command
- Improve error handling with HTTPException responses
2026-01-12 15:23:19 -05:00
Aiden Cline
172bbdaced
feat: codex auth support (#7537) 2026-01-09 17:47:37 -06:00
Dax
982b71e861
disable server unless explicitly opted in (#7529) 2026-01-09 16:33:46 -05:00
Dax
22dd70b75b
feat(question): support multi-select questions (#7386) 2026-01-08 17:32:21 -05:00
Dax
e37fd9c105
core: add interactive question tool for gathering user preferences and clarifying instructions (#7268) 2026-01-07 22:29:42 -05:00
jwaterwater
2d52a461a0
fix: encode non-ASCII directory paths in HTTP headers (#7145)
Co-authored-by: Claude <noreply@anthropic.com>
2026-01-07 06:46:17 -06:00
Dax Raad
7304ba616e tui: add session search functionality with debounced input and server-side filtering 2026-01-04 13:38:30 -05:00
Paolo Ricciuti
21dc3c24d9
feat: mcp resources (#6542) 2026-01-04 09:12:54 -06:00
Dax Raad
81e8d29ad2 oops 2026-01-03 19:25:59 -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
Adam
052de3c556
feat: add managed git worktrees (#6674) 2026-01-02 20:17:02 -06:00
Dax Raad
4956ee3ebd tui: add escape key handling to permission dialogs for better keyboard navigation 2026-01-02 18:48:26 -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
Dax Raad
4f1ef93910 ignore 2026-01-01 20:42:06 -05: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
Tom
dc8586371c
fix(server): add Content-Type headers for proxied static assets (#6587) 2026-01-01 11:35:04 -06:00
Adam
50ef866a02
fix(core): mdns fails if service already registered 2025-12-31 07:33:49 -06:00
Adam
b1a6333d17
feat(core): configurable cors hosts 2025-12-31 03:50:29 -06:00
Adam
a02fefe9dc
fix(core): cors exception for tauri 2025-12-30 14:14:44 -06:00
Dax Raad
8cd8393339 core: allow CORS requests from tauri://localhost 2025-12-30 13:58:41 -05:00
Dax Raad
7d2d87fa2c core: allow CORS requests from *.opencode.ai subdomains 2025-12-30 13:04:18 -05:00
Adam
a576fdb5e4
feat(web): open projects 2025-12-30 04:57:37 -06:00
Jkker
ddc4e34731
fix(mdns): use named import for bonjour-service (resolves #6422) (#6423) 2025-12-29 23:29:34 -06:00
Eduardo Santos de Brito
4657fa823f
feat(plugin): expose server URL to plugins (#6373) 2025-12-29 21:05:08 -06:00
Adam
21eba5f987
feat(desktop): permissions 2025-12-27 14:43:42 -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
Adam
b2f45d574f
Reapply "feat(core): optional mdns service (#6192)"
This reverts commit 505068d5a6.
2025-12-26 14:47:53 -06:00
Aiden Cline
505068d5a6 Revert "feat(core): optional mdns service (#6192)"
This reverts commit 26e7043718.
2025-12-26 11:43:52 -06:00
Adam
26e7043718
feat(core): optional mdns service (#6192)
Co-authored-by: Github Action <action@github.com>
2025-12-26 10:29:48 -06:00
Adam
794fe8f381
chore: rename packages/desktop -> packages/app 2025-12-22 19:39:00 -06:00
Adam
680a63e3de
fix(desktop): better error messages on connection failure 2025-12-22 19:16:54 -06:00
Adam
2c16b9fa61
Revert "server: ensure frontend has correct port for PTY websocket connections (#5898)"
This reverts commit a05915ddc8.
2025-12-22 06:05:46 -06:00
Adam
240ad31edd
Revert "fix: server"
This reverts commit dbaac79039.
2025-12-22 06:05:46 -06:00
Adam
dbaac79039
fix: server 2025-12-22 06:02:16 -06:00
Ashutosh Kumar
a05915ddc8
server: ensure frontend has correct port for PTY websocket connections (#5898) 2025-12-22 05:56:23 -06:00
YeonGyu-Kim
b906f2de88
feat(server): expose auto param in session.summarize for plugins (#5924) 2025-12-21 21:05:30 -06:00
Dax Raad
2536e9f45b tui: fix SDK context usage and server port fallback
- Update SDK context to return client instead of event for proper usage
- Add server port fallback to 4096 when port 0 is specified but unavailable
- Fix SDK event listener usage in TUI app
2025-12-21 14:57:55 -05:00
Matt Silverlock
8f6c8844d7 feat: support configuring a default_agent across all API/user surfaces (#5843)
Co-authored-by: observerw <observerw@users.noreply.github.com>
2025-12-20 11:49:23 -06:00
Tommy D. Rossi
a7a2bbb497 feat: add endpoints to delete and update message parts (#5433) 2025-12-20 15:00:41 +00:00
shuv
83843a794f
fix: handle empty directory query parameter in server middleware (#5732) 2025-12-18 03:27:50 -06:00
Aiden Cline
16e6941495 fix: remove needless tui event publish on session delete 2025-12-17 11:29:55 -06:00
Dax Raad
4e2d1acf7d core: fix Tauri desktop app SSE connection timeout
- Add heartbeat events to /global/event and /event SSE endpoints
- Send server.heartbeat event every 30s to prevent WKWebView 60s timeout
- Fixes desktop app disconnecting from global events after 1 minute
2025-12-16 14:45:03 -05:00
Dax Raad
38c5f23f4a tui: update dialog context and server to use new single dialog system 2025-12-15 19:35:19 -05:00
Dax Raad
d5a506d4ae core: fix server response handling to prevent connection timeouts 2025-12-15 15:07:20 -05:00
Sachnun
237c0253c2
fix(server): make time field optional in session update validator (#5372) 2025-12-11 20:06:15 -06:00
Dax Raad
13a77005f1 global.dispose 2025-12-10 22:22:16 -05:00
Dax Raad
936a6be5d6 stuff adam needs 2025-12-10 15:59:42 -05:00
Dax Raad
388156704a fix /provider endpoint to return loaded providers 2025-12-10 13:49:45 -05:00
Dax Raad
1e3bdcc71c rename bus 2025-12-09 14:32:09 -05:00
Adam
9a34965432
feat: add color to project 2025-12-09 13:29:59 -06:00
Dax Raad
fb1b6c5e6b add project.name/icon 2025-12-09 13:57:18 -05:00
Ravi Kumar
e38814c597
fix: apply provider filtering to /connect endpoint (#5233) 2025-12-08 15:28:32 -06:00
Daniel Polito
203f3312ee
feat: ability to toggle MCP Servers in TUI (#4509) 2025-12-08 11:31:22 -06:00
Adam
d66b903e7f
fix: opencode web command 2025-12-08 09:48:21 -06:00
Adam
4425c66732
revert: opencode web command changes
This reverts commit c347056246.
2025-12-08 09:47:43 -06:00
Adam
c347056246
fix: opencode web command 2025-12-08 09:39:41 -06:00
Adam
d9175be989
fix: opencode web command 2025-12-08 09:35:12 -06:00
Adam
de415be4f6
fix: opencode web command 2025-12-08 09:18:46 -06:00
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
Aiden Cline
4994bf1b46 ignore: rename type 2025-10-28 22:39:57 -05:00
Tyler Gannon
1e24514d61
add OpenAPI annotations to tui.ts control endpoints (#3519) 2025-10-28 22:39:22 -05: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