Marius
142f423b76
feat: add ask agent for read-only Q&A mode ( #256 )
...
* feat: add ask agent for read-only Q&A mode
Add a new primary 'ask' agent that answers questions and explains code
without making changes. Permissions are read-only: read, grep, glob,
list, question, webfetch, websearch, codesearch — edit, bash, and task
are denied. Migrators already had 'ask' in their known mode lists.
* fix: preserve .env read gating in ask agent, clarify read-only prompt
Address PR review feedback:
- Re-state *.env pattern map in ask agent permissions so the blanket
deny+allow doesn't bypass the default env file gating
- Update prompt to say 'this agent is read-only' instead of implying
edits are possible on request
- Add .env gating assertions to ask agent test
2026-02-12 08:47:14 +01:00
Marius
4adc994e10
feat: add debug and orchestrator built-in agents ( #186 )
...
* feat: add debug and orchestrator built-in agents
Add two new primary agents that legacy Kilo Code users expect:
- debug: systematic debugging methodology (reflect on causes, narrow
down, add logs, confirm before fixing). Same permissions as code agent.
- orchestrator: coordinates complex tasks by delegating to explore and
general subagents in parallel. Read-only + task delegation permissions.
Both are enabled by default and can be disabled via opencode.json:
{ "agent": { "debug": { "disable": true } } }
* docs: document debug and orchestrator agents in agents.mdx
* refine orchestrator prompt: add planning phase, wave-based execution, and file conflict avoidance
2026-02-09 13:32:46 +01:00
Catriel Müller
dd7da05bd9
feat: merge opencode v1.1.50
2026-02-04 18:24:00 -03:00
Catriel Müller
452320af42
feat: merge opencode v1.1.49
2026-02-04 17:06:38 -03:00
Aiden Cline
3975329629
feat: improve skills, better prompting, fix permission asks after invoking skills, ensure agent knows where scripts/resources are ( #11737 )
2026-02-03 09:58:31 -06:00
Catriel Müller
9ab79857ce
Code Agent ( #84 )
...
* refactor: rename build agent to code
* refactor: add backward compat for build config
2026-02-03 08:04:27 +01:00
Aiden Cline
188cc24bfc
chore: cleanup external_dir perm logic ( #11845 )
2026-02-02 16:43:55 -06:00
Catriel Müller
1b5ef0737f
Merge OpenCode v1.1.42 ( #67 )
...
* chore: details
* fix(tui): add visual feedback for diff wrap and conceal toggles (#10655 )
* fix: await SessionRevert.cleanup for shell (#10669 )
* fix: Make diff wrapping toggle always available in command_list and correct a type error (resolves #10682 ) (#10683 )
* feat(app): default servers on web
* fix(app): handle non-tool call permissions
* fix(app): line selection waits on ready
* wip(app): model settings
* feat(app): model settings
* chore: generate
* wip(app): sidebar hover full
* wip(app): full-height sidebar
* wip(app): full-height sidebar
* feat(app): better sidebar hover when collapsed
* fix(app): query selector with non-latin chars
* chore: stale-while-revalidate headers for changelog
* chore: generate
* feat(opencode): add agent description (#10680 )
* feat: dynamically resolve AGENTS.md files from subdirectories as agent explores them (#10678 )
* chore: gen changelog page off changelog json
* upgrade opentui to v0.1.75
* chore: update nix node_modules hashes
* fix: move changelog footer outside content div to fix padding (#10712 )
* fix(app): Order themes alphabetically (#10698 )
* fix(app): restore external link opening in system browser (#10697 )
* fix(ui): use focus-visible instead of focus to prevent sticky hover effect on click (#10651 )
* fix: add 44px top padding to sticky version header on changelog (#10715 )
* feat(app): file tree
* wip(app): file tree mode
* wip(app): file tree mode
* chore: cleanup
* chore: cleanup
* chore(app): createStore over signals
* fix(enterprise): add message navigation to share page desktop view (#10071 )
Co-authored-by: Claude <noreply@anthropic.com >
* chore: fix changelog page
* Revert "fix(app): restore external link opening in system browser (#10697 )"
This reverts commit 984518b1c0 .
* ignore: tweak ai deps
* feat: use anthropic compat messages api for anthropic models through copilot
* chore: debug changelog
* fix: ensure openai 404 errors are retried (#10590 )
* chore: generate
* test(app): e2e test for sidebar nav
* chore: refactor changelog
* fix(app): session load cap
* chore(app): missing i18n strings
* chore: cleanup
* fix(app): session sync issue
* chore: generate
* fix(ui): update button styles and disconnect button size
* fix(app): set provider row height to 56px
* fix(app): add hover text for env-connected providers
* fix(app): use default cursor for env provider text
* feat(ui): add providers icon and use in settings
* feat(ui): add models icon and use in settings
* fix(app): style view all button with interactive color and margin
* feat(ui): add optional transition animations to dialog
* fix(ui): prevent double-close and fix dialog replacement
* feat(app): add transition to select provider dialog
* feat(app): add transition to command palette
* fix(ui): reduce dialog transition in time to 150ms
* feat(app): add provider descriptions to settings
* feat(app): add Vercel AI Gateway provider description
* fix(ui): scope filetree pill tabs styling
* fix(app): adjust filetree panel padding
* fix(app): tighten filetree row spacing
* fix(app): use chevron icons for filetree folders
* fix(app): use medium font for filetree items
* fix(app): refine filetree row spacing and indent
* fix(app): reduce filetree folder indent
* fix(app): dim non-deep filetree guide lines
* fix(app): fade filetree guide lines on hover
* fix(app): move file tree toggle to right
* fix(app): disable tooltips in filetree tabs
* test(app): fix e2e test
* ci: add stale pr job
* ci: add dry-run option to stale PR closer workflow
Allows testing stale PR closure without actually closing PRs
* tweak: retry logic to catch certain provider problems
* fix(app): disconnect zen provider
* fix(app): zen disconnect not working
* chore: generate
* chore: cleanup
* fix: search clear icon
* wip: new release modal
- highlight key updates or new features
- needs some transition love
- all copy including text and video placeholder
* chore: cleanup
* wip: highlights
* wip: highlights
* wip: highlights
* tweak: when using messages api for copilot, attach anthropic beta headers
* chore: don't flip github draft release automatically
* fix(app): file tree performance
* fix(app): reactive file tree
* chore: generate
* chore: cleanup
* fix(app): enable file watcher
* chore: cleanup
* chore: cleanup
* test(app): file tree spec
* feat(release): add highlights template to draft releases (#10745 )
* docs: add Italian README (#10732 )
* chore: generate
* fix(app): add connect provier in model selector (#10706 )
* fix(desktop): disable magnification gestures on macOS (#10605 )
* feat: add /learn command to extract session learnings to scoped AGENTS.md files (#10717 )
* fix: use Instance.directory instead of process.cwd() in read tool
* fix(core): expose Instance.directory to custom tools
* fix(app): only show files in select dialog when clicking + tab
* desktop: deduplicate tauri configs
* ignore: update download stats 2026-01-27
* fix(app): auto-scroll button sometimes sticks
* chore(app): missing tooltips
* feat(app): forward and back buttons
* chore: cleanup
* feat(core): add worktree to plugin tool context
* fix(app): agent fallback colors
* fix(app): non-fatal error handling
* docs(core): plugin tool context updates
* fix(ui): set filetree tablist height to 48px with centered content
* fix(app): center filetree empty state with 32px top margin
* fix(app): update review empty states to 14px and align select file empty state
* fix(app): only show left border on plus button when sticky
* fix(app): use smaller close icon on tabs to match comment cards
* fix(ui): add max-width 280px to tabs with text truncation
* fix(app): don't show session skeleton after workspace reset
* perf(app): don't keep parts in memory
* perf(app): cleanup connect provider timers
* perf(app): shared terminal ghostty-web instance
* fix(app): select model anchor
* Revert "fix(app): select model anchor"
This reverts commit 36babf5fc390fd9a892ad3742690740296d94a23.
* fix(app): open markdown links in external browser
* fix(app): navigate to tabs when opening file
* chore(app): cleanup tailwind vs pure css
* fix(app): tooltips causing getComputedStyle errors in model select
* fix(app): swallow file search errors
* feat(opencode): Handle Venice cache creation tokens (#10735 )
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com >
* chore: generate
* chore(docs): Better explanation on how to allow tools in external directories (#10862 )
* tweak: adjust retry check to be more defensive
* ci: make tests passing a requirement pre-release
* zen: kimi k2.5 and minimax m2.1
* feat(app): update settings in general settings
* chore(app): translations
* test(app): new e2e smoke tests
* feat(app): show loaded agents.md files
* fix(app): session diffs not always loading
* feat(app): improved layout
* chore: generate
* tweak: add recommended topP/temp for kimi k2.5
* Set temperature for kimi k2.5
* Revert "ci: make tests passing a requirement pre-release"
This reverts commit 8c00818108 .
* Revert "Set temperature for kimi k2.5"
This reverts commit bb63d16fa8 .
* feat(app): color filetree change dots by diff kind
* feat(app): add filetree tooltips with diff labels
* fix(app): shorten nav tooltips
* fix(app): adjust titlebar left spacing
* fix(app): delay nav tooltips
* fix(app): align filetree change styling
* fix(app): set filetree padding to 6px
* fix(app): highlight selected change
Track clicked file in the Changes tree and apply selection styling to the matching review diff.
* chore(app): show 5 highlights
* fix(app): auto-scroll
* fix(app): don't connect to localhost through vpn
* perf(app): better memory management
* chore: cleanup
* feat(desktop): i18n for tauri side
* feat(desktop): tauri locales
* fix(app): not auto-navigating to last project
* chore: update nix node_modules hashes
* fix(tui): handle 4-5 codes too in c to copy logic
* fix(app): spinner color
* fix(app): file tree not always loading
* test(app): fix outdated e2e test
* test(app): fix outdated e2e test
* fix(app): file tree not always loading
* fix(app): terminal corruption
* feat(app): add 'connect provider' button to the manage models dialog (#10887 )
* fix(app): auto-scroll
* feat: support headless authentication for chatgpt/codex (#10890 )
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com >
Co-authored-by: Aiden Cline <aidenpcline@gmail.com >
* fix(app): reintroduce review tab
* release: v1.1.37
* feat(app): use opentui markdown component behind experimental flag (#10900 )
* chore: generate
* docs: add Daytona OpenCode plugin to ecosystem (#10917 )
* chore: generate
* fix(cli): restore brand integrity of CLI wordmark (#10912 )
* zen: kimi k2.5
* fix(opencode): ensure unsub(PartUpdated) is always called in TaskTool (#9992 )
* chore: generate
* ignore: adjust flag
* bump plugin version
* ci
* fix: ensure parallel tool calls dont double load AGENTS.md
* release: v1.1.38
* fix: ensure copilot plugin properly sets headers for new messages api
* chore: generate
* release: v1.1.39
* bump: plugins
* ignore: update download stats 2026-01-28
* chore(app): global config changes
* feat(app): custom provider
* chore: cleanup
* wip(app): global config
* chore: cleanup
* chore: cleanup
* chore: generate
* feat(i18n): add th locale support (#10809 )
* chore: generate
* fix(desktop): enable ctrl+n and ctrl+p for popover navigation (#10777 )
* fix: add SubtaskPart with metadata reference (#10990 )
Co-authored-by: yangtianzhe <yangtianzhe@corp.netease.com >
* chore: generate
* fix(app): close review pane
* fix(markdown): Add streaming prop to markdown element (#11025 )
* release: v1.1.40
* fix(script): remove highlights template from release notes (#11052 )
* chore: generate
* fix(ui): allow KaTeX inline math to be followed by punctuation (#11033 )
* fix(app): alignment and padding in dialogs (#10866 )
* fix(app): fill missing zh keys to avoid English fallback (#10841 )
* chore: generate
* fix(opencode): normalize zh punctuation for Chinese UI (#10842 )
* fix(ui): improve zh duration display formatting (#10844 )
* fix(opencode): add `AbortSignal` support to `Ripgrep.files()` and `GlobTool` (#10833 )
* fix(typescript errors): remove duplicate keys causing typescript failures (#11071 )
* fix(app): file tabs - auto scroll on open & scroll via mouse wheel (#11070 )
* tweak: add ctx.abort to grep tool
* fix(app): types
* docs: update experimental environment variables in CLI docs (#11030 )
* fix(app): make settings more responsive for mobile and small web/desktop (#10775 )
* chore: generate
* fix(opencode): allow media-src data: URL for small audio files (#11082 )
* fix(provider): include providerID in SDK cache key (#11020 )
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
* fix: maxOutputTokens was accidentally hardcoded to undefined (#10995 )
* fix: ensure variants for copilot models work w/ maxTokens being set
* release: v1.1.41
* test: fix test
* chore: generate
* feat(cli): include cache tokens in stats (#10582 )
* ci: adjust team
* guard destroyed input field in timeout
* feat: Sequential numbering for forked session titles (Issue #10105 ) (#10321 )
* more timeout race guards
* fix: ensure that kimi doesnt have fake variants available
* fix: frontmatter was adding newlines in some cases causing invalid model ids (#11095 )
Co-authored-by: aptdnfapt <aptdnfapt@users.noreply.github.com >
* fix: undo change that used anthropic messages endpoint for anthropic models on copilot due to ratelimiting issues, go back to completions endpoint instead
* release: v1.1.42
* fix: fix types
* fix: fix kilocode/sdk type
* chore: update nix node_modules hashes
---------
Co-authored-by: adamelmore <2363879+adamdottv@users.noreply.github.com >
Co-authored-by: Idris Gadi <85882535+IdrisGit@users.noreply.github.com >
Co-authored-by: Noam Bressler <noamzbr@gmail.com >
Co-authored-by: Ariane Emory <97994360+ariane-emory@users.noreply.github.com >
Co-authored-by: GitHub Action <action@github.com >
Co-authored-by: Steffen Deusch <steffen@deusch.me >
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com >
Co-authored-by: Sebastian Herrlinger <hasta84@gmail.com >
Co-authored-by: Ryan Vogel <ryan@mandarin3d.com >
Co-authored-by: Sam Huckaby <samhuckaby@gmail.com >
Co-authored-by: Alex Yaroshuk <34632190+alexyaroshuk@users.noreply.github.com >
Co-authored-by: Rahul A Mistry <149420892+ProdigyRahul@users.noreply.github.com >
Co-authored-by: Adam <2363879+adamdotdevin@users.noreply.github.com >
Co-authored-by: zerone0x <hi@trine.dev >
Co-authored-by: Claude <noreply@anthropic.com >
Co-authored-by: Aiden Cline <aidenpcline@gmail.com >
Co-authored-by: Tim <hello@timsmart.co >
Co-authored-by: David Hill <iamdavidhill@gmail.com >
Co-authored-by: Fabio Martino <fabiomartino@users.noreply.github.com >
Co-authored-by: Chris Yang <18487241+ysm-dev@users.noreply.github.com >
Co-authored-by: Brendan Allan <git@brendonovich.dev >
Co-authored-by: dpuyosa <dpuyosa@users.noreply.github.com >
Co-authored-by: OpeOginni <107570612+OpeOginni@users.noreply.github.com >
Co-authored-by: Frank <frank@anoma.ly >
Co-authored-by: Rohan Godha <git@rohangodha.com >
Co-authored-by: opencode <opencode@sst.dev >
Co-authored-by: Tommy D. Rossi <beats.by.morse@gmail.com >
Co-authored-by: James Murdza <james@jamesmurdza.com >
Co-authored-by: Tito <github@mynameistito.com >
Co-authored-by: Goni Zahavy <goni1993@gmail.com >
Co-authored-by: Dax Raad <d@ironbay.co >
Co-authored-by: Nattawee Phantawong <crozzio@gmail.com >
Co-authored-by: Sairaj <sairaj2119@gmail.com >
Co-authored-by: RenegadeE <37529469+YangTianz@users.noreply.github.com >
Co-authored-by: yangtianzhe <yangtianzhe@corp.netease.com >
Co-authored-by: Max Kong <kongzheyuan@outlook.com >
Co-authored-by: Julian Coy <julian@juliancoy.com >
Co-authored-by: Babou <42550761+bbabou@users.noreply.github.com >
Co-authored-by: Devin Griffin <31415269+DNGriffin@users.noreply.github.com >
Co-authored-by: tan <zerotanapok@gmail.com >
Co-authored-by: Saba Tchikhinashvili <38084512+saba-ch@users.noreply.github.com >
Co-authored-by: ideallove <20013535+ideallove@users.noreply.github.com >
Co-authored-by: Benjamin Oldenburg <benjamin.oldenburg@ordis.co.th >
Co-authored-by: aptdnfapt <aptdnfapt@users.noreply.github.com >
Co-authored-by: marius-kilocode <marius@kilocode.ai >
2026-02-02 12:47:09 +01:00
neavo
f15755684f
fix(opencode): scope agent variant to model ( #11410 )
2026-02-01 14:12:30 -06:00
Catriel Müller
03c4bfb9e8
feat: telemetry
2026-01-27 19:04:35 +01:00
Steffen Deusch
b1fbfa7e94
feat(opencode): add agent description ( #10680 )
2026-01-26 10:43:10 -05:00
Aiden Cline
94dd0a8dbe
ignore: rm spoof and bump plugin version
2026-01-25 17:27:24 -05:00
Thiago Malek
6b481b5fb0
fix(opencode): use streamObject when using openai oauth in agent generation ( #9231 )
2026-01-18 23:22:31 -06:00
Sercan Sagman
81983d4a2e
fix(agent): default agent selection in acp and headless mode ( #8678 )
...
Signed-off-by: assagman <ahmetsercansagman@gmail.com >
2026-01-15 17:09:19 -06:00
Aiden Cline
b3ae1931fc
fix: plan path permissions
2026-01-14 13:28:56 -06:00
Dax Raad
fcc561ebb7
fix plan mode when not in git worktree
2026-01-14 08:21:26 -05:00
Dax
0a3c72d678
feat: add plan mode with enter/exit tools ( #8281 )
2026-01-13 15:55:48 -05:00
Aiden Cline
fd37d5b54e
tweak: truncation dir perm
2026-01-12 16:46:47 -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
Aiden Cline
3c5043497c
ignore: ensure new file truncation stuff still works even if external_directoy is set to deny
2026-01-08 11:07:33 -06:00
Dax
e37fd9c105
core: add interactive question tool for gathering user preferences and clarifying instructions ( #7268 )
2026-01-07 22:29:42 -05:00
Aiden Cline
1b82511fbd
feat: write truncated tool outputs to files ( #7239 )
2026-01-07 17:25:00 -06:00
Aiden Cline
fe57d7bb38
tweak: title gen prompt & temp to avoid repetative 'Analyzing ...' titles
2026-01-07 12:56:41 -06:00
Daniel Polito
b5be883758
Make General SubAgent not hidden ( #6752 )
2026-01-07 01:31:47 -06:00
Sewer.
fd7b7eacd3
Added: Ability to hide subagents from primary agents system prompt. ( #4773 )
...
Co-authored-by: GitHub Action <action@github.com >
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com >
Co-authored-by: Aiden Cline <aidenpcline@gmail.com >
2026-01-06 22:29:17 -06:00
Aiden Cline
01eadf3ded
test: fix test
2026-01-06 12:31:41 -06:00
Aiden Cline
c7a2c737e8
fix: ensure 'name' isnt being sent in request body for custom agent
2026-01-06 12:21:30 -06:00
Aiden Cline
3611260405
core: remove hardcoded .env read block and use new permissions model instead
2026-01-04 01:49:49 -06:00
Dax
351ddeed91
Permission rework ( #6319 )
...
Co-authored-by: Github Action <action@github.com >
Co-authored-by: Adam <2363879+adamdotdevin@users.noreply.github.com >
2026-01-01 17:54:11 -05:00
Mohammad Alhashemi
046e351140
feat: add native skill tool with permission system ( #5930 )
...
Co-authored-by: Dax Raad <d@ironbay.co >
2025-12-22 18:24:06 -05:00
Aiden Cline
d3922f0965
core: add verification that at least 1 primary agent is enabled, add regression tests ( #5881 )
2025-12-20 21:36:22 -06:00
Matt Silverlock
8f6c8844d7
feat: support configuring a default_agent across all API/user surfaces ( #5843 )
...
Co-authored-by: observerw <observerw@users.noreply.github.com >
2025-12-20 11:49:23 -06:00
Aiden Cline
ca599ab8fc
tweak: add model flag support for agent create command
2025-12-15 14:55:59 -06:00
Dax Raad
b0f77da56c
core: reorganize agent configuration to separate primary agents (build, plan) from subagents
2025-12-15 09:58:23 -05:00
Dax
fed4776451
LLM cleanup ( #5462 )
...
Co-authored-by: GitHub Action <action@github.com >
Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com >
2025-12-14 21:11:30 -05:00
Timor
b2057791aa
feat: add CLI arguments to agent create command for scripting ( #5157 )
2025-12-09 21:09:45 -06:00
Ravi Kumar
8326640670
feat(telemetry): Add userId and sessionId metadata to experimental_telemetry ( #5279 )
2025-12-09 09:46:48 -06:00
Nathan Thomas
40eb8b93e1
feat: add max steps for supervisor and sub-agents ( #4062 )
...
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: rekram1-node <rekram1-node@users.noreply.github.com >
2025-12-05 12:26:44 -06:00
Noam Bressler
864c098701
add experimental.open_telemetry config option to enable OTEL spans ( #4978 )
...
Co-authored-by: noamzbr <noamzbr@users.noreply.github.com >
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: rekram1-node <rekram1-node@users.noreply.github.com >
2025-12-05 10:48:22 -06:00
Dax
6d3fc63658
core: refactor provider and model system ( #5033 )
...
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: thdxr <thdxr@users.noreply.github.com >
2025-12-03 21:09:03 -05:00
Dax Raad
a262508fb8
core: clarify general agent can execute multiple parallel tasks
2025-11-29 16:40:15 -05:00
Dax Raad
d80880350d
core: improve explore agent description to clarify tool availability
2025-11-28 21:47:45 -05:00
Dax Raad
813d287a09
core: add explore agent for fast codebase navigation and improve task UI display
2025-11-28 21:13:07 -05:00
Tyler Gannon
e96442310c
chore: replace z.union with z.enum for cleaner OpenAPI generation ( #4394 )
2025-11-17 00:06:40 -06:00
Aiden Cline
0b86adbe99
feat: agent color cfg ( #4226 )
...
Co-authored-by: 0xrin <0xrin1@protonmail.com >
Co-authored-by: GitHub Action <action@github.com >
2025-11-11 18:32:44 -06:00
Aiden Cline
4e549b1c05
fix: allow user to configure doom loop & external dir perms ( #4095 )
2025-11-09 20:21:38 -06:00
GitHub Action
34ff87d504
chore: format code
2025-11-08 01:59:02 +00:00
Dax Raad
1ea3a8eb9b
big format
2025-11-06 13:03:12 -05:00
Jérôme Benoit
0eb899a950
chore: cleanup versioned zod imports ( #3460 )
...
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com >
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: rekram1-node <rekram1-node@users.noreply.github.com >
2025-10-26 14:50:41 -05:00
Aiden Cline
e88b659545
make plan agent whitelist more conservative ( #3424 )
2025-10-24 14:40:36 -05:00