Dax Raad
705f792e87
core: move Global module to @opencode-ai/core for centralized path management
...
Move the Global module from packages/opencode/src/global to packages/core/src/global
to provide a unified location for managing XDG directories and application paths.
This eliminates duplicate path definitions across packages and ensures consistent
access to data, config, cache, state, log, and bin directories throughout the codebase.
2026-04-25 13:52:32 -04:00
Dax Raad
1a734adb4d
core: consolidate shared infrastructure into core package
...
Moves effect logging, observability, runtime utilities, flags, installation
version info, and process utilities from opencode to core package. This
enables better code sharing across packages and establishes core as the
single source of truth for foundational utilities.
All internal imports updated to use @opencode-ai/core paths for consistency.
2026-04-25 13:30:37 -04:00
Kit Langton
a9740b9133
fix(config): preserve permission order with Effect decode ( #24308 )
2026-04-25 13:30:12 -04:00
Dax
62ef2a2207
refactor: rename shared package to core ( #24309 )
2026-04-25 10:59:17 -04:00
Kit Langton
d5bfaef53d
feat(httpapi): bridge instance read endpoints ( #24258 )
2026-04-25 10:42:31 -04:00
Dax
66f93035b0
fix permission config order ( #24222 )
2026-04-25 13:18:42 +00:00
Simon Klee
9ff999cc2b
tool/lsp: include request details in permission metadata ( #24139 )
2026-04-25 14:21:35 +02:00
Kit Langton
4877eccc0d
Fix shell cwd after login startup ( #24215 )
2026-04-25 01:14:52 -04:00
opencode-agent[bot]
5cd178ba70
chore: generate
2026-04-24 22:05:23 +00:00
Kit Langton
97eb9fdee8
test(httpapi): cover hono bridge middleware ( #24216 )
2026-04-24 18:03:51 -04:00
Kit Langton
011c23761b
feat(httpapi): bridge mcp status endpoint ( #24100 )
2026-04-24 09:18:57 -04:00
Kit Langton
9f7ecd65e5
feat(httpapi): bridge file read endpoints ( #24098 )
2026-04-24 09:12:05 -04:00
rahul
f8c6ddd4cb
feat(truncate): allow configuring tool output truncation limits ( #23770 )
...
Co-authored-by: rgs_ramp <rgs@ramp.com>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2026-04-23 17:43:33 -04:00
Kit Langton
e50a688ca3
feat(httpapi): bridge workspace read endpoints ( #24062 )
2026-04-23 17:32:02 -04:00
Aiden Cline
334ab4707c
fix: account for additional openai retry case ( #24063 )
2026-04-23 17:31:43 -04:00
Kit Langton
3910a6e527
refactor(tool): migrate tool framework + all 18 built-in tools to Effect Schema ( #23244 )
2026-04-23 16:09:34 -04:00
Kit Langton
cd93533b1f
refactor(bus): migrate BusEvent to Effect Schema ( #24040 )
2026-04-23 15:37:44 -04:00
Kit Langton
c50d65b4d6
refactor(sync): make session events schema-first ( #24019 )
2026-04-23 12:43:08 -04:00
opencode-agent[bot]
353532b1c1
chore: generate
2026-04-23 16:00:01 +00:00
Shoubhit Dash
9df7c78ebe
fix(npm): respect npmrc for version lookups ( #24016 )
2026-04-23 21:28:54 +05:30
Kit Langton
0517ab4695
refactor(session): migrate session domain to Effect Schema ( #24005 )
2026-04-23 11:30:02 -04:00
Shoubhit Dash
38deb0f3ee
fix(npm): respect npmrc config ( #24001 )
2026-04-23 19:54:01 +05:30
Brendan Allan
6002500bc0
feat(project): add icon_url_override field to projects ( #23955 )
2026-04-23 18:57:04 +08:00
Luke Parker
e383df4b17
feat: support pull diagnostics in the LSP client (C#, Kotlin, etc) ( #23771 )
2026-04-23 00:25:40 -04:00
Steven T. Cramer
3a082a0efd
fix(project): use git common dir for bare repo project cache ( #19054 )
2026-04-23 00:25:39 -04:00
opencode-agent[bot]
504fd1b373
chore: generate
2026-04-23 00:25:39 -04:00
Shoubhit Dash
574b2c2170
fix(session): improve session compaction ( #23870 )
2026-04-23 00:25:38 -04:00
opencode-agent[bot]
71d196d3cd
chore: generate
2026-04-23 00:25:37 -04:00
Luke Parker
20756e0ee4
test: fix cross-spawn stderr race on Windows CI ( #23808 )
2026-04-23 00:25:37 -04:00
opencode-agent[bot]
894e638914
chore: generate
2026-04-23 00:25:37 -04:00
Luke Parker
8113a4360e
fix: preserve BOM in text tool round-trips ( #23797 )
2026-04-23 00:25:36 -04:00
Kit Langton
e89543811c
refactor(core): migrate MessageV2 message DTOs (User/Assistant/Part/Info/WithParts) to Effect Schema ( #23757 )
2026-04-21 23:26:12 -04:00
Kit Langton
b0f565b74a
refactor(core): migrate ConfigPermission.Info to Effect Schema canonical ( #23740 )
2026-04-21 17:33:13 -04:00
Kit Langton
2ae64f426b
refactor(core): migrate MessageV2.Format to Effect Schema ( #23744 )
2026-04-21 17:30:08 -04:00
Ruben De Smet
1a20703469
feat: add Mistral Small reasoning variant support (issue #19479 ) ( #23735 )
2026-04-21 16:45:06 -04:00
Kit Langton
ecc06a3d8f
refactor(core): make Config.Info canonical Effect Schema ( #23716 )
2026-04-21 14:06:47 -04:00
Kit Langton
9579429276
test(opencode): consolidate session prompt tests into Effect style ( #23710 )
2026-04-21 15:54:40 +00:00
Aiden Cline
2486621ca1
chore: kill unused tool ( #23701 )
2026-04-21 11:31:20 -04:00
opencode-agent[bot]
f3d5a71620
chore: generate
2026-04-20 06:07:28 +00:00
Aiden Cline
c6c56ac2cf
tweak: rename tail_tokens -> preserve_recent_tokens ( #23491 )
2026-04-20 01:06:29 -05:00
opencode-agent[bot]
84e322b0fd
chore: generate
2026-04-20 05:15:29 +00:00
Aiden Cline
8bc4f91fd9
fix: parallel edits sometimes would override each other ( #23483 )
2026-04-20 00:14:21 -05:00
Dax Raad
b9640fc7e4
core: fix session compaction test to properly enable prune config option
2026-04-19 19:53:43 -04:00
Dax Raad
5ae74aa881
Merge branch 'nxl/improve-compaction-strategy' into dev
2026-04-19 19:38:46 -04:00
Aiden Cline
78ca49a1bc
test: fix bedrock test ( #23351 )
2026-04-18 17:46:15 -05:00
Kit Langton
9918f389e7
fix: detect attachment mime from file contents ( #23291 )
2026-04-18 11:59:08 -04:00
opencode-agent[bot]
dd8c424806
chore: generate
2026-04-18 15:21:48 +00:00
Dax Raad
078d8a07cf
core: support OTEL_RESOURCE_ATTRIBUTES environment variable for custom telemetry attributes
...
Users can now pass custom OpenTelemetry resource attributes via the OTEL_RESOURCE_ATTRIBUTES environment variable (comma-separated key=value format). These attributes are automatically included in all telemetry data sent from both the main process and workspace environments, enabling better observability integration with existing monitoring systems that rely on custom resource tags.
2026-04-18 11:20:29 -04:00
Dax Raad
55315bdffa
tui: fix sync loading indicator to properly show loading state on startup
2026-04-18 10:39:10 -04:00
Dax Raad
882b8e1e75
core: track retry attempts with detailed error context on assistant entries
...
users can now see when transient failures occur during assistant responses,
such as rate limits or provider overloads, giving visibility into what
issues were encountered and automatically resolved before the final response
2026-04-18 10:38:35 -04:00
opencode-agent[bot]
95edbc0ae6
chore: generate
2026-04-18 05:49:37 +00:00
Dax Raad
11cd4fb639
core: extract session entry stepping logic into dedicated module
...
Move the step function from session-entry.ts to session-entry-stepper.ts and remove immer dependency. Add static fromEvent factory methods to Synthetic, Assistant, and Compaction classes for cleaner event-to-entry conversion.
2026-04-18 01:48:21 -04:00
Aiden Cline
9c16bd1e30
fix: make skills logic more token efficient ( #23253 )
2026-04-17 23:51:16 -05:00
opencode-agent[bot]
daaa1c7e26
chore: generate
2026-04-18 02:03:30 +00:00
Kit Langton
1fae784b81
feat(effect-zod): add ZodPreprocess annotation for pre-parse transforms ( #23222 )
2026-04-18 02:02:37 +00:00
Kit Langton
e6fd57165e
refactor: remove ambient instance reads from lsp ( #23023 )
2026-04-17 21:47:59 -04:00
opencode-agent[bot]
f52ae28432
chore: generate
2026-04-18 00:56:33 +00:00
Kit Langton
36119ff173
feat(effect-zod): translate Schema.withDecodingDefault into zod .default() ( #23207 )
2026-04-17 20:55:38 -04:00
Kit Langton
bb90f3bbf9
feat(effect-zod): translate well-known filters into native Zod methods ( #23209 )
2026-04-17 20:50:36 -04:00
Kit Langton
05cdb7c107
refactor(v2): tag session unions and exhaustively match events ( #23201 )
2026-04-18 00:29:26 +00:00
Kit Langton
211136e3a8
feat(effect-zod): transform support + walk memoization + flattened checks ( #23203 )
2026-04-18 00:29:26 +00:00
Kit Langton
eafbe5c57c
refactor(server): align route-span attrs with OTel semantic conventions ( #23198 )
2026-04-18 00:29:26 +00:00
Kit Langton
7b98f544ff
feat(effect-zod): add catchall (StructWithRest) support to the walker ( #23186 )
2026-04-18 00:29:26 +00:00
Kit Langton
d5c4c26b4b
feat(server): auto-tag route spans with route params (session.id, message.id, …) ( #23189 )
2026-04-18 00:29:26 +00:00
Kit Langton
5980b0a5ee
feat(effect-zod): add tuple support; migrate config/plugin to Effect Schema ( #23178 )
2026-04-17 21:06:55 +00:00
opencode-agent[bot]
dc16013b4f
chore: generate
2026-04-17 20:47:05 +00:00
Kit Langton
e7686dbd64
feat(effect-zod): translate Schema.check filters into zod .superRefine + promote LSP refinement to Effect layer ( #23173 )
2026-04-17 20:46:05 +00:00
Kit Langton
68834cfcc3
fix(opencode): normalize provider metadata and tag otel runs ( #23140 )
2026-04-17 15:22:08 -04:00
Dax
467be08e67
refactor: consolidate npm exports and trace flock acquisition ( #23151 )
2026-04-17 18:58:37 +00:00
Dax Raad
b1f076558c
test: align plugin loader npm mocks
...
- switch plugin loader tests to the effect npm module
- return Option.none() for mocked npm entrypoints
- keep test fixtures aligned with the current Npm.add contract
2026-04-17 14:33:02 -04:00
Dax Raad
2f73e73e9d
trace npm fully
2026-04-17 14:08:45 -04:00
James Long
a8c78fc005
fix(core): add historical sync on workspace connect ( #23121 )
2026-04-17 13:30:09 -04:00
Ismail Ghallou
3fe602cda3
feat: add LLM Gateway provider ( #7847 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2026-04-17 10:29:31 -05:00
James Long
7605acff65
refactor(core): move server routes around to clarify workspacing ( #23031 )
2026-04-17 02:06:20 -04:00
Aiden Cline
76a141090e
chore: delete filetime module ( #22999 )
2026-04-16 23:31:21 -05:00
Brendan Allan
a4882290aa
Merge branch 'dev' into nxl/improve-compaction-strategy
2026-04-17 11:53:17 +08:00
James Long
0bedea52b1
fix(tui): tui resiliency when workspace is dead, disable directory filter in session list ( #23013 )
2026-04-16 23:35:36 -04:00
opencode-agent[bot]
dc38f22bd8
chore: generate
2026-04-17 02:34:07 +00:00
Dax
220e3e9a2b
refactor: make formatter config opt-in ( #22997 )
2026-04-17 02:33:09 +00:00
Dax
ee708040f6
fix: prefer real undo filenames over /dev/null ( #23006 )
2026-04-16 22:25:43 -04:00
Dax
01bb54a94d
refactor: split config parsing steps ( #22996 )
2026-04-17 01:57:43 +00:00
Kit Langton
f592c3846b
refactor: convert Flag namespace to const object with getters ( #22984 )
2026-04-17 01:57:21 +00:00
Kit Langton
c026e25088
refactor: eliminate account/ barrel, route consumers to sibling files ( #22995 )
2026-04-17 01:55:50 +00:00
Kit Langton
9c87a144e8
refactor: normalize AccountRepo to canonical Effect service pattern ( #22991 )
2026-04-17 01:43:57 +00:00
Kit Langton
5d47ea0918
refactor: unwrap ConfigMCP namespace + self-reexport ( #22948 )
2026-04-16 19:52:04 -04:00
Kit Langton
2638e2acfa
refactor: collapse plugin barrel into plugin/index.ts ( #22914 )
2026-04-16 20:37:13 +00:00
Kit Langton
1c33b866ba
fix: remove 10 more unnecessary as any casts in opencode core ( #22882 )
2026-04-16 20:11:05 +00:00
Kobi Hudson
5e650fd9e2
fix(opencode): drop max_tokens for OpenAI reasoning models on Cloudflare AI Gateway ( #22864 )
...
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2026-04-16 15:01:21 -05:00
Aiden Cline
47e0e2342c
tweak: set display 'summarized' by default for opus 4.7 thorugh messages api ( #22873 )
2026-04-16 14:12:43 -05:00
Dax
9afbdc102c
fix(test): make plugin loader theme source path separator-safe ( #22870 )
2026-04-16 14:45:17 -04:00
Dax Raad
03e20e6ac1
core: modularize config parsing to improve maintainability
...
Extract error handling, parsing logic, and variable substitution into dedicated
modules. This reduces duplication between tui.json and opencode.json parsing
and makes the config system easier to extend for future config formats.
2026-04-16 13:29:03 -04:00
Aiden Cline
c5deeee8c7
fix: ensure azure has store = true by default ( #22764 )
2026-04-16 12:19:01 -05:00
Dax Raad
33bb847a1d
config: refactor
2026-04-16 12:40:24 -04:00
Dax Raad
bfffc3c2c6
tui: ensure TUI plugins load with proper project context when multiple directories are open
...
Fixes potential plugin resolution issues when switching between projects by wrapping
plugin loading in Instance.provide(). This ensures each plugin resolves dependencies
relative to its correct project directory instead of inheriting context from whatever
instance happened to be active.
Also reorganizes config loading code into focused modules (command.ts, managed.ts,
plugin.ts) to make the codebase easier to maintain and test.
2026-04-16 12:40:24 -04:00
James Long
06afd33291
refactor(tui): improve workspace management ( #22691 )
2026-04-16 12:24:40 -04:00
James Long
305460b25f
fix: add a few more tests for sync and session restore ( #22837 )
2026-04-16 12:15:44 -04:00
Graham Campbell
378c05f202
feat: Add support for claude opus 4.7 xhigh adaptive reasoning effort ( #22833 )
...
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2026-04-16 10:57:36 -05:00
Shoubhit Dash
42771c1db3
fix(compaction): budget retained tail with media
2026-04-16 17:30:29 +05:30
Shoubhit Dash
2e18a603f0
merge dev
2026-04-16 17:30:14 +05:30
Dax
ef90b93205
fix: restore .gitignore logic for config dirs and migrate to shared Npm service ( #22772 )
2026-04-16 03:14:06 -04:00