Dax Raad
2f4a688790
chore: set up orchestrator plugin and mute prompt status labels
2026-07-01 18:51:18 -04:00
Dax Raad
4a90ffedfb
fix(server): restore provider node deps after dev merge
2026-07-01 18:39:43 -04:00
Dax Raad
95cf5039be
fix(tui): color prompt work counts
2026-07-01 18:23:07 -04:00
Dax Raad
041215996c
chore: trigger deploy
2026-07-01 18:16:27 -04:00
Dax Raad
d0b920e187
chore: trigger publish ci
2026-07-01 18:11:49 -04:00
Dax Raad
716f6658db
feat(core): add skill autoinvoke metadata
2026-07-01 15:13:40 -04:00
Dax Raad
9f1a8f2149
docs: add sample skill
2026-07-01 14:40:56 -04:00
Dax Raad
b3650e2316
fix(core): provide job service in session default layer
2026-07-01 14:38:35 -04:00
Dax Raad
fb884bb91e
feat: update session notices and skill reloads
2026-07-01 14:37:27 -04:00
Dax Raad
98c09884bf
feat(protocol): publish package
2026-07-01 13:53:09 -04:00
Dax Raad
5e47501b8b
feat(schema): publish package
2026-07-01 13:33:59 -04:00
Dax Raad
d51ba6ed94
fix(cli): run update check in background
2026-07-01 13:18:00 -04:00
Dax Raad
a6983b65fc
fix: skip plugin publish
2026-07-01 12:57:48 -04:00
Dax Raad
1a06198954
fix(tui): indent synthetic session notices
2026-07-01 12:39:06 -04:00
Dax Raad
72ec09cf74
fix(tui): keep backgrounded subagents spinning
2026-07-01 12:33:01 -04:00
Dax Raad
e2bca216a2
feat: background blocking tools
2026-07-01 12:18:04 -04:00
Dax Raad
a10733dbf4
docs: add debug opencode skill
2026-07-01 12:18:04 -04:00
Dax Raad
ae49b21376
fix(core): save external permissions at project root
2026-07-01 11:27:24 -04:00
Dax Raad
5710064ae1
feat(core): generate session titles from first prompt
...
Add SessionTitle service that generates a session title from the
session's sole user message via the customizable "title" agent, then
renames the session. Runs once per session, gated on durable history
having exactly one user message (no default-title string comparison).
Wire it into SessionRunner as a background fork after the first turn's
prompt promotion makes the user message visible; forking before
promotion caused the first-message lookup to see zero rows and silently
no-op.
Closes #34364
2026-07-01 11:07:44 -04:00
Dax Raad
6a91a682e4
feat(core): add plugin list endpoint
...
Adds a plugin.list HTTP endpoint that reports currently loaded plugins, wires it through protocol, server, and generated clients, and merges it into sdk-next's plugin API. Also updates the sample plugin to register a primary agent instead of a subagent for local testing.
2026-07-01 00:53:53 -04:00
Dax Raad
c26f6f95f7
fix(core): deny subagent tool for default subagents
2026-06-30 23:11:06 -04:00
Dax Raad
d77b87ea65
feat(script): use GitHub run number for preview build identifier
2026-06-30 23:05:46 -04:00
Dax Raad
6ca6566bd3
fix(core): derive reasoning variants from models.dev
2026-06-30 22:50:20 -04:00
Dax Raad
8dd993d25a
fix(tui): stabilize reload connection state
2026-06-30 22:31:51 -04:00
Dax Raad
24ab17e718
fix(tui): keep background shell spinner active
2026-06-30 21:56:45 -04:00
Dax Raad
a1250cd690
test(sdk-next): update embedded client namespaces
2026-06-30 01:16:33 -04:00
Dax Raad
23adaaaeab
feat(core): add native skill activation
2026-06-30 01:16:33 -04:00
Dax Raad
0f9719a7b5
fix(cli): support service autostart setting
2026-06-30 00:28:11 -04:00
Dax Raad
1b83c08b8a
Update service configuration CLI
2026-06-30 00:18:26 -04:00
Dax Raad
02cb350880
feat(tui): refresh agents after update events
2026-06-30 00:18:26 -04:00
Dax Raad
fe59174c23
fix(core): resume after synthetic session message
2026-06-29 17:32:54 -04:00
Dax Raad
2fe057324f
fix(core): provide filesystem to shell tool
2026-06-29 17:27:24 -04:00
Dax Raad
19a5b5a05d
feat(core): support background shell tool
2026-06-29 17:01:04 -04:00
Dax Raad
ff4cab03c1
refactor(core): simplify session fork event
2026-06-29 16:16:13 -04:00
Dax Raad
b2d46ecd7e
feat(core): add durable session fork event
2026-06-29 16:13:51 -04:00
Dax Raad
360d85a521
fix(tui): indent subagent empty state
2026-06-29 15:46:51 -04:00
Dax Raad
c65a7d50c1
feat(tui): integrate composer picker
2026-06-29 15:37:09 -04:00
Dax Raad
fa73546a86
feat(tui): add composer tabs
2026-06-29 14:20:43 -04:00
Dax Raad
01edae4a7f
fix(core): spawn shell non-interactively without sourcing rc files
...
ShellSelect.args() ran zsh/bash with -l and explicitly sourced .zshrc/.bashrc,
loading user functions and aliases that can shadow builtins and return non-zero
exit codes, breaking && chains. Match the old tool behavior: plain non-login
non-interactive shell -c command with cwd passed via spawn options.
2026-06-29 12:05:56 -04:00
Dax Raad
e8ac44430b
feat(cli): poll for updates every 10 minutes in serve
2026-06-29 00:59:01 -04:00
Dax Raad
5ae93092aa
refactor(core): replace bash tool with shell tool
2026-06-29 00:44:17 -04:00
Dax Raad
11bf8d8a42
refactor(cli): simplify updater, remove cache and confirmation
...
- Remove the 24h disk cache (State, readState/writeState, checkInterval)
that served stale latest versions within the TTL window
- Remove file lock (Flock) and confirmation prompt (Prompt/Terminal)
- Every check now hits the npm registry directly
- Updates always auto-install on any version mismatch within the same
major, including rollbacks where the registry version is lower
- Drop the interactive option from check() and the confirm/declined/
dismissed action concepts
2026-06-27 20:52:03 -04:00
Dax Raad
c22973ab9f
fix(server): log undo revert operations
2026-06-27 20:32:58 -04:00
Dax Raad
612009e0f1
fix(tui): use span for inline styled hotkey in revert footer
2026-06-27 20:32:14 -04:00
Dax Raad
a0a6c9545e
fix(tui): style redo hotkey as normal text in revert footer
2026-06-27 20:30:52 -04:00
Dax Raad
bceb6d0a9e
feat(tui): add redo hotkey footer and pad file list in revert banner
2026-06-27 20:30:26 -04:00
Dax Raad
49e7dc191f
fix(tui): make undo inclusive of last user message and simplify revert banner
2026-06-27 20:25:08 -04:00
Dax Raad
cd942d0669
fix(tui): normalize abbreviated home paths to forward slashes
2026-06-27 18:54:06 -04:00
Dax Raad
4741e3ee6b
fix(tui): remove redundant top spacer in session history
2026-06-27 13:54:16 -04:00
Dax Raad
4673bfbaa0
feat(cli): log startup info
...
Emit a log entry on CLI startup with version, channel, and local flag
so every CLI process is visible in opencode.log from the start.
2026-06-27 13:45:42 -04:00
Dax Raad
b458dd8c63
feat(cli): log updater check decisions
...
Add Effect.logInfo at every previously-silent path in the updater
check so each run is observable in opencode.log: skip reasons
(local install, disabled, policy), the resolved version with source
(cached vs registry), and the final action (up-to-date, dismissed,
declined).
2026-06-27 13:29:46 -04:00
Dax Raad
7edd6c3a1d
feat(cli): use installation version and document API debugging
...
- Replace hardcoded "local" version string with InstallationVersion
- Document DESCRIPTION
Make a request to the running server
USAGE
opencode api [flags] <operation | method path...>
ARGUMENTS
operation | method path... stringOpenAPI operation ID, or an HTTP method followed by a path
FLAGS
--data, -d string Request body
--header, -H string Request header in name:value form
--param key=value OpenAPI path or query parameter
GLOBAL FLAGS
--help, -h Show help information
--version, -v Show version information
--completions <bash|zsh|fish|sh> Print shell completion script (choices: bash, zsh, fish, sh)
--log-level <all|trace|debug|info|warn|warning|error|fatal|none> Sets the minimum log level (choices: all, trace, debug, info, warn, warning, error, fatal, none) server/API debugging command in AGENTS.md
2026-06-27 13:18:22 -04:00
Dax Raad
f43f066741
fix(tui): stop bash spinner when tool errors before command received
2026-06-27 13:17:21 -04:00
Dax Raad
b6553d14e1
fix(core): fail interrupted session steps
2026-06-27 01:16:30 -04:00
Dax Raad
ab0042a666
docs(opencode): mark package as v1
2026-06-27 01:16:30 -04:00
Dax Raad
5df049d081
feat(cli): add self-update service
...
Check the npm registry (at most once per 24h, file-locked) for newer
@opencode-ai/cli releases and act on a host-level autoupdate policy read
from config. Apply patch updates automatically, confirm minor updates
interactively, and never auto-update across majors. Skip local installs
and honor the disable flag. Wired into the default TUI command
(interactive) and serve (background).
2026-06-27 00:51:45 -04:00
Dax Raad
573ab9c24b
fix(tui): interrupt v2 sessions with escape
2026-06-26 22:32:21 -04:00
Dax Raad
6a16c41e8f
fix(core): continue after tool defects
2026-06-26 22:02:30 -04:00
Dax Raad
a491cbee64
fix(tui): hide prompt for running shell commands
2026-06-26 21:35:20 -04:00
Dax Raad
658cbe9caf
fix(core): load OpenCode provider config asynchronously
2026-06-26 21:16:15 -04:00
Dax Raad
62b2bc39df
test(ci): skip v2 end-to-end checks
2026-06-26 21:04:10 -04:00
Dax Raad
beb2c52c3f
fix(cli): publish scoped package
2026-06-26 21:01:10 -04:00
Dax Raad
655adbf46e
fix: stabilize v2 runtime behavior
2026-06-26 20:56:36 -04:00
Dax Raad
ac2a78391f
fix(ci): publish v2 as next
2026-06-26 15:55:04 -04:00
Dax Raad
9a9bdaba95
test(ci): drop legacy opencode tests
2026-06-26 14:58:40 -04:00
Dax Raad
8b682c42b6
refactor(tui): use v2 client transport
2026-06-26 14:57:01 -04:00
Dax Raad
ad4f1c1018
refactor(ci): use branch npm tag
2026-06-26 14:54:35 -04:00
Dax Raad
a0afb63ed0
fix(ci): use v2 npm tag
2026-06-26 14:53:35 -04:00
Dax Raad
df9ecb8f6a
fix(cli): publish v2 package
2026-06-26 14:52:30 -04:00
Dax Raad
e6f660fecf
feat(tui): add v2 terminal interface
2026-06-26 14:38:25 -04:00
Dax Raad
11d2f3e5f8
fix(llm): end reasoning before responses
2026-06-26 13:55:04 -04:00
Dax Raad
1ac6b4bec4
fix(core): authorize external read paths
2026-06-26 13:55:04 -04:00
Dax Raad
850a0dfe7c
fix(core): resolve prompt attachment mime types
2026-06-26 13:51:00 -04:00
Dax Raad
25c6abc31a
fix(core): lower OpenAI text verbosity
2026-06-24 19:32:59 -04:00
Dax Raad
f4afb2c0a5
fix(core): preserve unconfigured console models
2026-06-24 18:58:17 -04:00
Dax Raad
bba74985ab
fix(core): handle unavailable fff index
2026-06-24 18:49:22 -04:00
Dax Raad
e9ee2129ea
fix(core): disable fff broad scanning
2026-06-24 18:42:15 -04:00
Dax Raad
68260ea6c9
fix(core): scope fff broad scanning
2026-06-24 18:42:15 -04:00
Dax Raad
42bb793574
feat(core): generate model variants
2026-06-24 13:17:14 -04:00
Dax Raad
17f312d537
refactor(core): simplify model requests
2026-06-24 13:17:14 -04:00
Dax Raad
784eea3911
feat(cli): add API request command
2026-06-23 23:35:20 -04:00
Dax Raad
e8610d821c
refactor(core): drop filesystem entry mime
2026-06-23 21:49:01 -04:00
Dax Raad
53076999c5
fix(tui): normalize autocomplete attachments
2026-06-23 21:41:14 -04:00
Dax Raad
9b01f15f1d
test(opencode): retry Windows CLI cleanup
2026-06-23 00:56:14 -04:00
Dax Raad
81851ca6b9
test(opencode): stabilize Windows async readiness
2026-06-23 00:41:02 -04:00
Dax Raad
3c5632e110
test(opencode): stabilize Windows CLI subprocesses
2026-06-23 00:26:48 -04:00
Dax Raad
6ea3e6698a
fix(opencode): scope reference readiness wait
2026-06-23 00:10:36 -04:00
Dax Raad
ed75ce9ecc
fix(core): prioritize reference plugin registration
2026-06-22 23:39:26 -04:00
Dax Raad
af14fefc96
test(opencode): relax compaction readiness timeout
2026-06-22 23:01:05 -04:00
Dax Raad
4a710e4679
fix(core): await plugin readiness
2026-06-22 22:49:57 -04:00
Dax Raad
d2c866bf70
test(core): speed up test setup
2026-06-22 22:49:57 -04:00
Dax Raad
975b1132f1
refactor(plugin): use direct runtime registry
2026-06-22 20:10:29 -04:00
Dax Raad
cd97de7391
refactor(plugin): consolidate internal registration
2026-06-22 19:49:00 -04:00
Dax Raad
23fd5907be
fix(opencode): normalize CLI test line endings
2026-06-22 19:15:50 -04:00
Dax Raad
cf31029350
fix(core): batch plugin shutdown
2026-06-22 09:04:29 -04:00
Dax Raad
79b55d4db8
fix(tui): use bridged event stream for data
2026-06-22 08:50:46 -04:00
Dax Raad
7b750a8f20
fix(ci): preserve test log groups
2026-06-22 08:35:40 -04:00
Dax Raad
e50261e524
fix(core): format generated migrations
2026-06-22 08:23:25 -04:00
Dax Raad
b13a2d712a
fix(server): isolate event schema types
2026-06-22 08:20:39 -04:00
Dax Raad
1b91b5df34
fix(core): constrain event schema services
2026-06-22 08:14:49 -04:00