Commit Graph
5537 Commits
Author SHA1 Message Date
Kyle MisteleandClaude Opus 4.5 4c7c65a054 merge: resolve conflicts from upstream dev
Merge upstream changes while preserving structured output feature:
- Keep tools deprecation notice from upstream
- Keep bypassAgentCheck parameter from upstream
- Keep variant field on user messages from upstream
- Preserve outputFormat and StructuredOutput tool injection

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 00:01:34 -08:00
Kyle Mistele d2beb78457 feat: structured output 2026-01-12 23:54:53 -08:00
Kyle Mistele 0e8f7694ed fix: force tool calls when outputFormat is json_schema
When structured output is requested, the model must call the
StructuredOutput tool instead of responding with plain text.

Changes:
- Add toolChoice parameter to LLM.StreamInput
- Pass toolChoice: "required" to streamText when outputFormat is json_schema
- This forces the model to call a tool, ensuring structured output is captured
2026-01-12 23:05:43 -08:00
Kyle Mistele 34f9feb12d docs: add structured output documentation to SDK reference
Document the outputFormat feature for requesting structured JSON output:
- Basic usage example with JSON schema
- Output format types (text, json_schema)
- Schema configuration options (type, schema, retryCount)
- Error handling for StructuredOutputError
- Best practices for using structured output
2026-01-12 21:04:13 -08:00
Kyle Mistele 4cb9f8ab34 fix: structured output loop exit and add system prompt
- Fix loop exit condition to check processor.message.finish instead of
  result === "stop" (processor.process() returns "continue" on normal exit)
- Add system prompt instruction when json_schema mode is enabled to ensure
  model calls the StructuredOutput tool
- Add integration tests for structured output functionality
- Fix test Session.messages call to use object parameter format
2026-01-12 20:51:17 -08:00
Kyle Mistele d582dc1c9f chore: regenerate JavaScript SDK with structured output types
Regenerate SDK types to include outputFormat and structured_output fields.
2026-01-12 20:18:50 -08:00
Kyle Mistele 32ef11da1f feat: add structured output (JSON schema) support
Add outputFormat option to session.prompt() for requesting structured JSON
output. When type is 'json_schema', injects a StructuredOutput tool that
validates model output against the provided schema.

- Add OutputFormat schema types (text, json_schema) to message-v2.ts
- Add structured_output field to AssistantMessage
- Add StructuredOutputError for validation failures
- Implement createStructuredOutputTool helper in prompt.ts
- Integrate structured output into agent loop with retry support
- Regenerate OpenAPI spec with new types
- Add unit tests for schema validation
2026-01-12 20:09:51 -08:00
AdamandGitHub 05019dae76 fix(bedrock): use reasoningConfig for Anthropic models on Bedrock (#8092) 2026-01-12 18:42:19 -06:00
Darsh PatelandGitHub bf37a88f7f fix: await auth.set to prevent race condition when setting API key (#8075) 2026-01-12 18:20:50 -06:00
Paolo RicciutiandGitHub 498a4ab408 fix: actually modify opencode config with mcp add (#7339) 2026-01-12 18:02:59 -06:00
GitHub Action 835e48cd28 chore: generate 2026-01-12 23:30:47 +00:00
OpeOginniandGitHub 1a5a63843e feat(terminal): implement better dynamic terminal numbering (#8081) 2026-01-12 17:30:09 -06:00
Jason KölkerandGitHub d954e1e3b6 fix(session): store api url in metadata (#8090) 2026-01-12 17:22:42 -06:00
opencode-agent[bot]GitHubopencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>rekram1-node
8f22a6b69d Add nova-2 to region prefix models (#8085)
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: rekram1-node <rekram1-node@users.noreply.github.com>
2026-01-12 16:55:12 -06:00
Aiden Cline fd37d5b54e tweak: truncation dir perm 2026-01-12 16:46:47 -06:00
Frank e146083b73 wip: black 2026-01-12 17:10:50 -05:00
Adam d7a1c268d9 fix(app): sanitize markdown -> html 2026-01-12 15:50:24 -06:00
Aiden Cline 5c4345da4f test: fix read test 2026-01-12 15:49:31 -06:00
Aiden Cline 0be37cc2c6 tweak: make the .env reads ask user for permission instead of blocking 2026-01-12 15:32:43 -06:00
GitHub Action 64f0205f97 chore: generate 2026-01-12 21:27:36 +00:00
OpeOginniandGitHub b3a1360ad9 feat(dialog-select-server): add icon button for server removal (#8053) 2026-01-12 15:26:58 -06:00
GitHub Action 08d4d6d4af chore: generate 2026-01-12 21:22:21 +00:00
9c69c1de9f fix(formatter): use biome check instead of format to include import sorting (#8057)
Co-authored-by: kynnyhsap <kynnyhsap@users.noreply.github.com>
2026-01-12 15:21:38 -06:00
Aiden ClineandGitHub 735f3d17bc fix: ensure plurals are properly handled (#8070) 2026-01-12 15:21:01 -06:00
opencode db7243c364 release: v1.1.15
Update Nix Hashes / update-linux (push) Has been cancelled
Update Nix Hashes / update-macos (push) Has been cancelled
2026-01-12 21:03:52 +00:00
Dax Raad f0912ee838 core: rename OPENCODE_PASSWORD to OPENCODE_SERVER_PASSWORD for clearer authentication configuration 2026-01-12 15:59:17 -05:00
Ryan VogelandGitHub 983f8ffeca fix(tui): prevent layout jump when toggling tips visibility (#8068) 2026-01-12 14:57:49 -06:00
KennyandGitHub c474380684 docs: fix permission rule ordering in examples (#7010) 2026-01-12 14:45:17 -06: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
Daniel PolitoandGitHub b4f33485a7 fix(desktop): Improve User Message Badges for Big Titles and Small Screens (#8037) 2026-01-12 14:22:03 -06:00
Aiden Cline e47f383137 core: improve error handling for built-in plugin installation failures 2026-01-12 13:47:25 -06:00
Aiden Cline cd56845dce tui: add hint for variants toggle 2026-01-12 13:35:07 -06:00
Frank b7b09fdfc2 admin unshare 2026-01-12 14:20:33 -05:00
Aiden Cline 62702fbd11 fix: permissions wildcarding so that for ex: 'ls *' includes ls * AND 'ls' to prevent having to double state commands or use 'ls*' 2026-01-12 13:02:29 -06:00
22c68a6992 fix(tui): reopen autocomplete after backspace deletes space (#6031)
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com>
2026-01-12 12:52:36 -06:00
Aiden Cline d527ceeb2b test: fix 2026-01-12 12:33:39 -06:00
Shubh PorwalandGitHub 2e9c22d911 docs: fix typo (#8041) 2026-01-12 12:30:30 -06:00
Aiden Cline 61d0b3e4dc chore: bump ai sdk packages 2026-01-12 12:25:19 -06:00
Dax Raad 71a7ad1a4e core: fix model selection in title generation to use user's model instead of assistant's 2026-01-12 12:45:24 -05:00
Dax Raad 20399bbdfe tui: rename kvStore to store for consistency 2026-01-12 09:53:08 -05:00
Dax Raad 547a975707 tui: redesign tips display on home screen 2026-01-12 09:42:28 -05:00
c009cab15b Redesign tips display on home screen (#6126)
Co-authored-by: Dax <mail@thdxr.com>
2026-01-12 09:31:36 -05:00
Dax Raad e6bc3b253b tui: remove update complete toast notification 2026-01-12 09:30:31 -05:00
Brendan Allan c6092e4ad9 disable appimage 2026-01-12 19:28:55 +08:00
GitHub Action e6045ca925 chore: generate 2026-01-12 09:58:50 +00:00
Brendan AllanandGitHub ebbb4dd88a fix(desktop): improve server detection & connection logic (#7962) 2026-01-12 17:58:13 +08:00
GitHub Action 087473be6e chore: generate 2026-01-12 05:22:12 +00:00
Brendan Allan e0eb460fc8 app: resolve defaultServerUrl inside AppInterface
The desktop app sometimes modified __OPENCODE__.serverUrl after the
window is created. Previously this was ignored since defaultServerUrl
was created at module scope, now it isn't created until desktop's
ensure_server_started query complete, after which point serverUrl is
guaranteed to be updated.
2026-01-12 13:21:21 +08:00
opencode 7c6b3f981e release: v1.1.14
Update Nix Hashes / update (push) Has been cancelled
2026-01-12 05:08:25 +00:00