Commit graph

1154 commits

Author SHA1 Message Date
Shoubhit Dash
e6f5214779
feat: add git-backed session review modes (#17961) 2026-03-19 19:29:29 +05:30
Dax
1ac1a0287c
anthropic legal requests (#18186) 2026-03-19 04:45:24 +00:00
Kit Langton
5ddfe4ada5
chore: type Provider.list() as Record<ProviderID, Info>, delete dead code (#18123) 2026-03-18 19:43:12 -04:00
Luke Parker
54ed87d53c
fix(windows): use cross-spawn for shim-backed commands (#18010) 2026-03-19 08:49:16 +10:00
Kit Langton
a800583aea
refactor(effect): unify service namespaces and align naming (#18093) 2026-03-18 13:34:36 -04:00
Aiden Cline
171e69c2fc
feat: integrate support for multi step auth flows for providers that require additional questions (#18035) 2026-03-18 11:36:19 -05:00
Kit Langton
5dfe86dcb1
refactor(truncation): effectify TruncateService, delete Scheduler (#17957) 2026-03-17 21:59:54 -04:00
Kyle Altendorf
a64f604d54
fix(tui): check for selected text instead of any selection in dialog escape handler (#16779) 2026-03-17 10:25:03 +10:00
AbigailJixiangyuyu
e9a17e4480
fix(windows): restore /editor support on Windows (#17146) 2026-03-17 08:11:02 +10:00
Kit Langton
c523aac586
fix(cli): scope active org labels to the active account (#16957) 2026-03-16 10:01:42 -04:00
Kit Langton
f015154314
refactor(permission): effectify PermissionNext + fix InstanceState ALS bug (#17511) 2026-03-14 18:28:00 +00:00
Kit Langton
092f654f63
fix(cli): hide console command from help output (#17277) 2026-03-12 22:22:16 -04:00
Kit Langton
d9dd33aeeb
feat(cli): add console account subcommands (#17265) 2026-03-13 00:56:40 +00:00
Aiden Cline
3016efba47
tweak: rm openrouter warning (#17259) 2026-03-12 19:42:31 -05:00
Kit Langton
7066e2a25e
reorder provider list in providers login (#17262) 2026-03-13 00:09:30 +00:00
Kit Langton
64fb9233bf
refactor(import): use .parse() at boundaries instead of manual .make() (#17106) 2026-03-12 10:52:20 -04:00
Kit Langton
1cb7df7159
refactor(provider): flow branded ProviderID/ModelID through internal signatures (#17182) 2026-03-12 14:48:17 +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
Kit Langton
dbc00aa8e0
feat(id): brand ProjectID through Drizzle and Zod schemas (#16948) 2026-03-11 16:44:26 -04:00
Kit Langton
981c7b9e37
refactor(account): tighten effect-based account flows (#17072) 2026-03-11 18:18:58 +00:00
opencode-agent[bot]
94c128f73b chore: generate 2026-03-10 16:56:30 +00:00
Dax
613562f504
core: make account login upgrades safe while adding multi-account workspace auth (#15487)
Co-authored-by: Kit Langton <kit.langton@gmail.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 12:53:47 -04:00
James Long
a4330a225d
feat(core): allow passing workspaceID into session create endpoint (#16798) 2026-03-10 11:12:51 -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
James Long
86cef16940
fix(core): put workspace routing behind OPENCODE_EXPERIMENTAL_WORKSPACES flag (#16775) 2026-03-09 16:14:19 -04:00
Kyle Altendorf
b312928e9f
fix(tui): wait for model store before auto-submitting --prompt (#7476) 2026-03-09 14:22:38 -05:00
Dax
2f2856e20a
refactor(opencode): replace Bun shell in core flows (#16286) 2026-03-09 15:19:50 -04:00
Dax Raad
831eb6881b refactor: change pathToFileURL imports from bun to url module 2026-03-09 14:52:25 -04:00
James Long
f20ee2fad2
fix(tui): handle error when creating a session (#16767) 2026-03-09 12:13:32 -04:00
James Long
366b8a8034
feat(tui): add initial support for workspaces into the tui (#16230) 2026-03-09 10:28:04 -04:00
Eric Clemmons
18fb19da3b
fix(opencode): pass missing auth headers in run --attach (#16097)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Shoubhit Dash <shoubhit2005@gmail.com>
2026-03-09 07:32:13 +00:00
Sebastian
49a3a9fe36
guard tui exit (#16640) 2026-03-08 23:14:41 +01:00
Luke Parker
e51ed460a6
fix(tui): canonicalize cwd after chdir (#16641) 2026-03-09 07:57:48 +10:00
tobwen
13a68f3de3
fix(opencode): avoid TTY corruption from double cleanup (#16565)
Co-authored-by: Shoubhit Dash <shoubhit2005@gmail.com>
2026-03-08 13:55:33 +05:30
Nate Williams
5b5b791d75
fix(tui): fix broken /export toggling (#16443) 2026-03-07 12:52:17 +05:30
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
Dax
326c70184d
fix: restore Bun stdin reads for prompt input (#16300) 2026-03-06 02:08:10 -05:00
Dax
74effa8eec
refactor(opencode): replace Bun.which with npm which (#15012) 2026-03-06 05:18:29 +00:00
Dax Raad
d68afcaa55 refactor: replace Bun.stderr and Bun.color with Node.js equivalents 2026-03-05 22:20:16 -05:00
Dax Raad
7e28098365 refactor: use node:stream/consumers for stdin reading 2026-03-05 22:08:50 -05:00
Dax Raad
ae5c9ed3dd refactor: replace Bun.stdin.text with Node.js stream reading 2026-03-05 22:04:20 -05:00
Dax
3ebba02d04
refactor: replace Bun.sleep with node timers (#15013) 2026-03-05 21:54:06 -05:00
Dax
4da199697b
feat(tui): add onClick handler to InlineTool and Task components (#16187) 2026-03-05 15:02:30 +00:00
Daniel Polito
f363904feb
feat(opencode): Adding options to auth login to skip questions (#14470)
Co-authored-by: Shoubhit Dash <shoubhit2005@gmail.com>
2026-03-05 06:16:53 +00:00
Luke Parker
7f7e622426
dont let dax touch the ui (#16060) 2026-03-04 23:31:48 +00:00
Sebastian
18cad10647
show scrollbar by default (#15282) 2026-03-04 15:10:27 +01:00
Dax
3ebebe0a96
fix(process): prevent orphaned opencode subprocesses on shutdown (#15924) 2026-03-03 22:14:28 -05:00
James Long
7f37acdaaa
feat(core): rework workspace integration and adaptor interface (#15895) 2026-03-03 21:35:38 -05:00
Andrea Alberti
109ea1709b
fix: run --attach agent validation (#11812)
Co-authored-by: LukeParkerDev <10430890+Hona@users.noreply.github.com>
2026-03-03 22:30:16 +00:00
Dax Raad
c4ffd93caa tui: replace curved arrow with straight arrow for better terminal compatibility 2026-03-03 15:25:11 -05:00
Dax Raad
c78e7e1a28 tui: show pending toolcall count instead of generic 'Running...' message 2026-03-03 15:08:11 -05:00
Dax
e3a787a7a3
tui: use arrow indicator for active tool execution (#15887) 2026-03-03 14:46:07 -05:00
Matt Silverlock
74ebb4147f
fix(auth): normalize trailing slashes in auth login URLs (#15874) 2026-03-03 13:35:49 -05:00
Sebastian
3310c25dd1
Upgrade opentui to v0.1.86 and activate markdown renderable by default (#14974) 2026-03-03 15:42:27 +00:00
Jérôme Benoit
18850c4f91
fix(opencode): disable session navigation commands when no parent session (#15762)
Co-authored-by: Test User <test@test.com>
Co-authored-by: Shoubhit Dash <shoubhit2005@gmail.com>
2026-03-03 16:00:25 +05:30
Noam Bressler
7bfbb1fcf8
fix: project ID conflict, and update on same session id (#15596) 2026-03-02 13:09:53 +05:30
Dax
90270c615d
feat(tui): improve task tool display with subagent keybind hints and spinner animations (#15607) 2026-03-01 17:46:10 +00:00
James Long
c12ce2ffff
feat(core): basic implementation of remote workspace support (#15120) 2026-02-27 15:36:39 -05:00
James Long
3dc10a1c16
Change keybindings to navigate between child sessions (#14814) 2026-02-27 09:41:23 -05:00
David Hill
7453e78b35
feat: opencode go provider list (#15203) 2026-02-26 14:37:33 +00:00
Sebastian
9d29d692c6
split tui/server config (#13968) 2026-02-25 23:53:09 +01:00
Ayush Thakur
088a81c116
fix: consume stdout concurrently with process exit in auth login (#15058) 2026-02-25 08:22:52 -05:00
Dax Raad
561f9f5f05 opencode go copy 2026-02-25 01:54:28 -05:00
Dax
637059a515
feat: show LSP errors for apply_patch tool (#14715) 2026-02-25 04:15:11 +00:00
Dax
814c1d398c
refactor: migrate Bun.spawn to Process utility with timeout and cleanup (#14448) 2026-02-24 23:04:15 -05:00
James Long
2c00eb60bd
feat(core): add workspace-serve command (experimental) (#14960) 2026-02-24 17:34:34 -05:00
Matt Silverlock
2410593023
fix(github): support variant in github action and opencode github run (#14431) 2026-02-20 13:20:54 +00:00
Aiden Cline
1a329ba47d
fix: issue from structuredClone addition by using unwrap (#14359) 2026-02-19 19:28:06 -06:00
Michael Hart
8ad60b1ec2 Use structuredClone instead of remeda's clone (#14351)
Co-authored-by: Dax Raad <d@ironbay.co>
Co-authored-by: Dax <mail@thdxr.com>
2026-02-19 18:37:56 -06:00
Yanosh Kunsh
824ab4cecc
feat(tui): add custom tool and mcp call responses visible and collapsable (#10649)
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2026-02-19 15:36:40 -06:00
Matt Silverlock
1a1437e78b
fix(github): action branch detection and 422 handling (#14322)
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2026-02-19 15:11:59 -06:00
Dax
cb8b74d3f1
refactor: migrate from Bun.Glob to npm glob package (#14317) 2026-02-19 13:40:09 -05: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
Dax Raad
11a37834c2 tui: ensure onExit callback fires after terminal output is written 2026-02-18 20:43:50 -05:00
Dax Raad
568eccb4c6 Revert: all refactor commits migrating from Bun.file() to Filesystem module 2026-02-18 19:41:14 -05:00
Aiden Cline
088eac9d4e
fix: opencode run crashing, and show errored tool calls in output (#14206) 2026-02-18 17:13:01 -06:00
Dax
6fb4f2a7a5
refactor: migrate src/cli/cmd/tui/thread.ts from Bun.file() to Filesystem module (#14135) 2026-02-18 17:28:41 -05:00
Dax
e37a9081a6
refactor: migrate src/cli/cmd/session.ts from Bun.file() to statSync (#14144) 2026-02-18 16:20:58 -05:00
Dax
898bcdec87
refactor: migrate src/cli/cmd/agent.ts from Bun.file()/Bun.write() to Filesystem module (#14142) 2026-02-18 21:08:01 +00:00
Dax
d5971e2da5
refactor: migrate src/cli/cmd/import.ts from Bun.file() to Filesystem module (#14143) 2026-02-18 21:07:32 +00:00
OpeOginni
be2e6f1926
fix(opencode): update pasteImage to only increment count when the previous attachment is an image too (#14173) 2026-02-18 12:09:09 -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
5638b782c5
refactor: migrate editor.ts from Bun.file()/Bun.write() to Filesystem module (#14149) 2026-02-18 17:44:33 +00:00
Dax
eb3f337695
refactor: migrate clipboard.ts from Bun.file() to Filesystem module (#14148) 2026-02-18 12:38:44 -05:00
Dax
8f4a72c57a
refactor: migrate config/markdown.ts from Bun.file() to Filesystem module (#14151) 2026-02-18 12:35:32 -05:00
Dax
472d01fbaf
refactor: migrate cli/cmd/run.ts from Bun.file() to Filesystem/stat modules (#14155) 2026-02-18 17:22:46 +00:00
Dax
3d189b42a3
refactor: migrate file/ripgrep.ts from Bun.file()/Bun.write() to Filesystem module (#14159) 2026-02-18 12:10:42 -05:00
Mike Harris
d27dbfe062
fix(cli): session list --max-count not honored, shows too few sessions (#14162) 2026-02-18 10:56:37 -06:00
Dax Raad
ad3c192837 tui: exit cleanly without hanging after session ends
- Force process exit after TUI thread completes to prevent lingering processes
- Add 5-second timeout to worker shutdown to prevent indefinite hangs during cleanup
2026-02-17 17:56:39 -05:00
Anton Volkov
5512231ca8
fix(tui): style scrollbox for permission and sidebar (#12752) 2026-02-17 16:24:01 -06:00
jackarch-2
cb88fe26aa
chore: add missing newline (#13992) 2026-02-17 16:04:58 -06:00
opencode-agent[bot]
2a2437bf22 chore: generate 2026-02-17 21:23:23 +00: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
David Hill
b784c923a8 tweak(ui): bump button heights and align permission prompt layout 2026-02-17 17:43:37 +00:00
David Hill
07947bab7d
tweak(tui): new session banner with logo and details (#13970) 2026-02-17 07:43:55 -05:00
Ariane Emory
b0afdf6ea4
feat(cli): add session delete command (#13571) 2026-02-16 14:15:34 -06:00
OpeOginni
16332a8583
fix(tui): make use of server dir path for file references in prompts (#13781) 2026-02-16 13:14:08 -06:00
Dax
fdad823edc
feat(cli): add db migrate command for JSON to SQLite migration (#13874) 2026-02-16 19:05:21 +00:00
Ryan Vogel
5cc1d6097e
feat(cli): add --continue and --fork flags to attach command (#13879) 2026-02-16 13:45:00 -05:00
Imanol Maiztegui
bb30e06855
fix (tui): Inaccurate tips (#13845) 2026-02-16 09:08:04 -05:00
Dax Raad
45f0050372 core: add db command for database inspection and querying 2026-02-14 20:37:17 -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
Kevin
d018903887
fix: prevent opencode run crash on malformed tool inputs (#13051)
Co-authored-by: 0xK3vin <kevin@git-pu.sh>
2026-02-13 20:54:20 -06:00
Rahul Mishra
693127d382
feat(cli): add --dir option to run command (#12443) 2026-02-13 00:59:37 -06:00
Luke Parker
a8f2884521
feat: windows selection behavior, manual ctrl+c (#13315) 2026-02-13 07:38:27 +10:00
Sebastian
c0814da785
do not open console on error (#13374) 2026-02-12 21:29:58 +00:00
Luke Parker
8f9742d988
fix(win32): use ffi to get around bun raw input/ctrl+c issues (#13052) 2026-02-12 15:39:31 +10:00
Kit Langton
135f8ffb2a
feat(tui): add toggle to hide session header (#13244) 2026-02-12 02:21:42 +00:00
Kit Langton
17bdb5d56a
fix(tui): dismiss dialogs with ctrl+c (#12884) 2026-02-11 09:03:59 -05:00
Kit Langton
7a463cd193
fix(tui): keep /share available to copy existing link (#12532) 2026-02-11 08:58:24 -05:00
Kit Langton
352a54c698
feat(prompt): mode-specific input placeholders (#12388) 2026-02-11 08:57:59 -05:00
Kit Langton
93957da2c9
fix(tui): prevent home wordmark corruption in height-constrained terminals (#13069) 2026-02-11 08:52:14 -05:00
Dax
6e9cd576ea
fix(tui): default session sidebar to auto (#13046) 2026-02-11 01:26:01 +00:00
Dax
27fa9dc843
refactor: clean up dialog-model.tsx per code review (#12983) 2026-02-10 15:13:37 +00:00
Dax Raad
63cd763418 Revert "feat: add version to session header and /status dialog (#8802)"
This reverts commit ac54535486.
2026-02-10 00:01:28 -05:00
Dax Raad
32394b699e Revert "feat(tui): highlight esc label on hover in dialog (#12383)"
This reverts commit 683d234d80.
2026-02-09 23:57:37 -05:00
Dax Raad
12262862cd Revert "feat: show connected providers in /connect dialog (#8351)"
This reverts commit a57c8669b6.
2026-02-09 23:46:57 -05:00
Marcio
056d0c1197
fix(tui): use sender color for queued messages (#12832) 2026-02-09 16:54:12 -06:00
Aiden Cline
a7c5d5ac4c
Revert "feat(tui): restore footer to session view (#12245)" (#12836) 2026-02-09 10:08:26 -06:00
Khang Ha (Kelvin)
fde0b39b7c
fix: properly encode file URLs with special characters (#12424) 2026-02-06 16:16:56 -06:00
opencode-agent[bot]
918795d868 chore: generate 2026-02-06 19:16:36 +00:00
Ariane Emory
84c5df19c7
feat(tui): add Claude Code-style --fork flag to duplicate sessions before continuing (resolves #11137) (#11340) 2026-02-06 13:15:47 -06:00
Ariane Emory
449c5b44b7
feat(tui): restore footer to session view (#12245) 2026-02-06 10:21:16 -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
Akshar Patel
683d234d80
feat(tui): highlight esc label on hover in dialog (#12383) 2026-02-05 20:11:08 -06:00
Dax Raad
154d0ebf53 increase skill dialog width 2026-02-05 18:38:31 -05:00
Andrew Pashynnyk
2e9a63fe4f
fix(opencode): improve skills dialog readability (#12356) 2026-02-05 18:35:35 -05:00
Akshar Patel
102d8e72bb
fix(tui): allow mouse escape via "esc" labels in dialogs (#11421) 2026-02-05 16:14:49 -06:00
Goni Zahavy
40ebc34909
feat(tui): add running spinner to bash tool in TUI (#12317) 2026-02-05 12:23:02 -06:00
Ariane Emory
4387f9fb9a
feat: Allow the function to hide or show thinking blocks to be bound to a key (resolves #12168) (#12171) 2026-02-04 18:29:46 -06:00
Maharshi Patel
31e2feb347
fix(tui): add hover states to question tool tabs (#12203) 2026-02-04 18:28:22 -06:00
Sebastian
64bafce665
restore direct osc52 (#12071) 2026-02-04 00:35:57 -06:00
Idris Gadi
95211a8854
feat(tui): allow theme colors in agent customization (#11444) 2026-02-03 15:09:21 -06:00
Dax
ee84eb44ee
cli: add --thinking flag to show reasoning blocks in run command (#12013) 2026-02-03 20:49:15 +00:00
MartinWie
82dd4b6908
fix: always fall back to native clipboard after OSC52 (#11994) 2026-02-03 20:53:04 +01:00
Dax
1275c71a63
cli: make run non-interactive (#11814) 2026-02-02 23:35:23 -05:00
opencode-agent[bot]
5e3162b7f4 chore: generate 2026-02-02 22:30:23 +00:00
Joseph Campuzano
f9aa209131
fix: fixes issue where the autocomplete tui dialog flickers while typing (#11641) 2026-02-02 16:29:43 -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
Pablo P Varela
965f32ad63
fix(tui): respect terminal transparency in system theme (#8467) 2026-02-02 11:36:47 -06:00
Dax
4369d79636
tui: truncate session title in exit banner (#11797) 2026-02-02 14:30:10 +00:00
Sebastian
3982c7d99a
Use opentui OSC52 clipboard, again (#11744) 2026-02-02 08:12:50 +01:00
Dax
7a9290dc9b
tui: show exit message banner (#11733) 2026-02-02 00:13:47 -05:00
Dax Raad
cfbe9d329f Revert "Use opentui OSC52 clipboard (#11718)"
This reverts commit 8e985e0a75.
2026-02-02 00:13:02 -05:00
Dax
0dc80df6fd
Add spinner animation for Task tool (#11725) 2026-02-01 22:51:55 -05:00