Commit graph

2855 commits

Author SHA1 Message Date
Kyle Mistele
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
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
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
Adam
05019dae76
fix(bedrock): use reasoningConfig for Anthropic models on Bedrock (#8092) 2026-01-12 18:42:19 -06:00
Darsh Patel
bf37a88f7f
fix: await auth.set to prevent race condition when setting API key (#8075) 2026-01-12 18:20:50 -06:00
Paolo Ricciuti
498a4ab408
fix: actually modify opencode config with mcp add (#7339) 2026-01-12 18:02:59 -06:00
Jason Kölker
d954e1e3b6
fix(session): store api url in metadata (#8090) 2026-01-12 17:22:42 -06:00
opencode-agent[bot]
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
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
Andrew Pashynnyk
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 Cline
735f3d17bc
fix: ensure plurals are properly handled (#8070) 2026-01-12 15:21:01 -06:00
opencode
db7243c364 release: v1.1.15 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 Vogel
983f8ffeca
fix(tui): prevent layout jump when toggling tips visibility (#8068) 2026-01-12 14:57:49 -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
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
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
Ravi Kumar
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
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
David Hill
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
opencode
7c6b3f981e release: v1.1.14 2026-01-12 05:08:25 +00:00
Aiden Cline
a5b6c57a76 tweak: make the subagent header have clickable nav 2026-01-11 22:43:09 -06:00
Andrey Taranov
8b9a85b7e7
fix(mcp): support resource content type in MCP tool output (#7879) 2026-01-11 21:39:42 -06:00
indeep99
82b432349e
feat(tui): add mouse hover and click support to questions tool (#7905) 2026-01-11 22:01:48 -05:00
Dax Raad
68ed664a3f tui: fix prompt ref initialization to prevent undefined reference errors 2026-01-11 19:40:16 -05:00
Dax Raad
3a30773874 tui: refactor event streaming to use SDK instead of manual RPC subscription 2026-01-11 18:53:39 -05:00
Octane
0c0057a7de
Fix: TUI single-line paste cursor position (#7277) 2026-01-12 00:50:27 +01:00
Dillon Mulroy
fa79736b87
fix: check worktree for external_directory permission in subdirs (#7811) 2026-01-11 14:17:36 -06:00
Aiden Cline
20c18689c0 bump copilot plugin version 2026-01-11 12:58:14 -06:00
Kit Langton
a803cf8aee
feat(tui): add mouse hover and click support to autocomplete (#7820) 2026-01-11 12:45:20 -05:00
King'ori Maina
c526e2d908
fix(tui): copy oauth url when no device code (#7812) 2026-01-11 10:27:17 -06:00
Kit Langton
43c2da24d0
fix(tui): slash command autocomplete highlighted row jumping (#7815) 2026-01-11 11:11:40 -05:00
opencode
efbab087df release: v1.1.13 2026-01-11 07:10:41 +00:00
Mani Sundararajan
9280db3297
fix(tui): move props.ref to onMount (#7702) 2026-01-11 00:20:04 -06:00
Aiden Cline
0cc3c3bc78 tweak: ensure codex built in plugin is always available 2026-01-10 22:59:39 -06:00
Aiden Cline
ee8b38ab26 fix: ensure /connect works for openai business plans too (was missing field) 2026-01-10 22:48:28 -06:00
wid4t
44fa3d5392
feat(acp): track file modified (#7723)
Co-authored-by: Aiden Cline <aidenpcline@gmail.com>
2026-01-10 21:46:53 -06:00
Kit Langton
a457828a67
fix(opencode): command palette mouse hover highlights wrong item (#7721) 2026-01-10 19:52:17 -05:00
Spoon
4752c83155
feat: pass sessionID to chat.system.transform (#7718) 2026-01-10 18:21:51 -06:00