Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
759 commits
Select commit Hold shift + click to select a range
bb8a171
fix(desktop): restore shell path env for desktop sidecar (#15211)
nexxeln Feb 26, 2026
7453e78
feat: opencode go provider list (#15203)
iamdavidhill Feb 26, 2026
05ac0a7
fix(app): simplify review layout (#14953)
adamdotdevin Feb 26, 2026
b4d0090
chore: fix flaky test
adamdotdevin Feb 26, 2026
96ca0de
wip: zen
fwang Feb 26, 2026
08f056d
docs: Sync zh_CN docs with English Version (#15228)
niushuai1991 Feb 26, 2026
5745ee8
refactor(desktop): enhance project tile interaction with suppress hov…
OpeOginni Feb 26, 2026
7e6a007
feat(app): auto-accept all permissions mode
adamdotdevin Feb 26, 2026
9312867
feat(app): new tabs styling (#15284)
adamdotdevin Feb 26, 2026
270d084
fix(ui): avoid truncating workspace paths in assistant text (#14584)
nexxeln Feb 26, 2026
a0b3bbf
fix(ui): prevent filename and diff count overlap in session changes (…
nexxeln Feb 26, 2026
8c484a0
fix(app): terminal issues
adamdotdevin Feb 26, 2026
05d77b7
chore: storybook (#15285)
adamdotdevin Feb 26, 2026
9736fce
chore: update nix node_modules hashes
opencode-agent[bot] Feb 26, 2026
c95febb
tui: fix session tab alignment in compact view to prevent vertical ov…
iamdavidhill Feb 26, 2026
7a74be3
tweak(ui): add border to filetree on scroll
iamdavidhill Feb 26, 2026
adabad1
Revert "fix(ui): prevent filename and diff count overlap in session c…
adamdotdevin Feb 27, 2026
37d4259
fix: test
adamdotdevin Feb 27, 2026
09e1b98
tweak(ui): max-width on session when the review is closed but the fil…
iamdavidhill Feb 27, 2026
bf442a5
fix(ui): mute inactive file tab icons
iamdavidhill Feb 27, 2026
fa11942
tweak(app): align review changes select height
iamdavidhill Feb 27, 2026
9a6bfeb
refactor(app): dedupe filetree scroll state
kitlangton Feb 27, 2026
fc52e4b
feat(app): better diff/code comments (#14621)
adamdotdevin Feb 27, 2026
4205fbd
tweak(app): show keybind on context tab close
iamdavidhill Feb 27, 2026
e9a7c71
fix(app): permission notifications
adamdotdevin Feb 27, 2026
b0b88f6
fix(app): permission indicator
adamdotdevin Feb 27, 2026
f2100dc
fix(app): scroll jacking
adamdotdevin Feb 27, 2026
8c739b4
zen: fix go plan usage limit
fwang Feb 27, 2026
7528419
app: allow providing username and password when connecting to remote …
Brendonovich Feb 27, 2026
2a4ed49
wip: zen
fwang Feb 27, 2026
0da8af8
desktop: move open_path to rust (#15323)
Brendonovich Feb 27, 2026
6b31188
wip: zen
fwang Feb 27, 2026
1f108bc
feat(app): recent projects section in command pallette (#15270)
neriousy Feb 27, 2026
dc8c011
docs(readme): add Greek translation and update language navigation (#…
pirrozani Feb 27, 2026
a325c9a
feat(app): add Turkish (tr) locale for app and ui packages (#15278)
vaur94 Feb 27, 2026
3407ded
chore: generate
opencode-agent[bot] Feb 27, 2026
4a94096
fix(app): update provider sprite
adamdotdevin Feb 27, 2026
dfa0281
fix(app): auto-accept permissions
adamdotdevin Feb 27, 2026
9673132
desktop: add latest.json finalizer script (#15335)
Brendonovich Feb 27, 2026
157920b
chore: update test
adamdotdevin Feb 27, 2026
3dc10a1
Change keybindings to navigate between child sessions (#14814)
jlongster Feb 27, 2026
78cea89
chore(script): source team members from TEAM_MEMBERS (#15369)
kitlangton Feb 27, 2026
e49e781
feat(app): add Warp to the open menu (#15368)
kitlangton Feb 27, 2026
9d76ef6
chore: update docs locale sync workflow
adamdotdevin Feb 27, 2026
e5ae6c5
chore: update translator model
adamdotdevin Feb 27, 2026
6ef3af7
chore(app): i18n sync (#15362)
adamdotdevin Feb 27, 2026
a94f564
fix(app): scroll issues
adamdotdevin Feb 27, 2026
c12ce2f
feat(core): basic implementation of remote workspace support (#15120)
jlongster Feb 27, 2026
7ff2710
chore: generate
opencode-agent[bot] Feb 27, 2026
f347194
docs: add missing Bosanski link to Arabic README (#15399)
Niraj12chaudhary Feb 27, 2026
1f2348c
fix(app): make bash output selectable (#15378)
alexyaroshuk Feb 27, 2026
46d678f
chore: generate
opencode-agent[bot] Feb 27, 2026
a3bdb97
chore(app): deps
adamdotdevin Feb 27, 2026
7f851da
chore(console): i18n sync (#15360)
adamdotdevin Feb 27, 2026
1f1f36a
chore: update nix node_modules hashes
opencode-agent[bot] Feb 27, 2026
d2a8f44
doc: opencode go
fwang Feb 27, 2026
2eb1d4c
doc: go
fwang Feb 27, 2026
0b8c1f1
docs: Update OpenCode Go subscription and usage details (#15415)
jayair Feb 28, 2026
267d2c8
chore: cleanup
adamdotdevin Feb 28, 2026
2a20822
fix(app): display skill name in skill tool call (#15413)
alexyaroshuk Feb 28, 2026
971bd30
fix(app): fallback to synthetic icon for unknown provider IDs (#15295)
rexdotsh Feb 28, 2026
e1e18c7
chore(docs): i18n sync (#15417)
adamdotdevin Feb 28, 2026
114eb42
docs: fix broken config imports in translated documentation
thdxr Feb 28, 2026
cec16df
feat(core): add WorkspaceContext (#15409)
jlongster Mar 1, 2026
fcd733e
chore: generate
opencode-agent[bot] Mar 1, 2026
3ee1653
feat(core): add workspace_id to `session` table (#15410)
jlongster Mar 1, 2026
b88e8e0
chore: generate
opencode-agent[bot] Mar 1, 2026
4d968eb
docs(ecosystem): add opencode-vibeguard (#15464)
inkdust2021 Mar 1, 2026
38704ac
chore: generate
opencode-agent[bot] Mar 1, 2026
c4c0b23
fix: kill orphaned MCP child processes and expose OPENCODE_PID on shu…
ryanwyler Mar 1, 2026
438610a
fix(app): show proper usage limit errors (#15496)
neriousy Mar 1, 2026
f5eade1
fix(i18n): polish turkish translations (#15491)
vaur94 Mar 1, 2026
c8866e6
fix(app): make provider icon resolved id reactive (#15583)
neriousy Mar 1, 2026
b15fb21
feat(app): add compact ui (#15578)
neriousy Mar 1, 2026
6b7e6bd
fix(opencode): show human-readable message for HTML error responses (…
rianvdm Mar 1, 2026
90270c6
feat(tui): improve task tool display with subagent keybind hints and …
thdxr Mar 1, 2026
ae0f69e
doc: add zen deprecated models
fwang Mar 1, 2026
c0483af
perf(session): faster session switching via windowed rendering and st…
kitlangton Mar 1, 2026
d1938a4
chore: generate
opencode-agent[bot] Mar 1, 2026
a692e6f
desktop: use correct download link in finalize-latest-json
Brendonovich Mar 2, 2026
cf78855
Revert "fix(i18n): polish turkish translations" (#15656)
nexxeln Mar 2, 2026
b1bfecb
desktop: fix latest.json finalizer
Brendonovich Mar 2, 2026
7bfbb1f
fix: project ID conflict, and update on same session id (#15596)
noamzbr Mar 2, 2026
be20f86
fix: recover from 413 Request Entity Too Large via auto-compaction (#…
bentrd Mar 2, 2026
4b9e19f
chore: generate
opencode-agent[bot] Mar 2, 2026
bf2cc3a
feat(app): show which messages are queued (#15587)
neriousy Mar 2, 2026
51e6000
core: keep review header buttons visible when scroll thumb shows
iamdavidhill Mar 2, 2026
4c2aa4a
ui: widen scroll thumb hit area
iamdavidhill Mar 2, 2026
d60696d
ui: tighten scroll thumb and review padding
iamdavidhill Mar 2, 2026
633a3ba
ui: avoid session review header clipping
iamdavidhill Mar 2, 2026
0a3a321
ui: move session review bottom padding
iamdavidhill Mar 2, 2026
8176baf
chore(app): solidjs refactoring (#13399)
adamdotdevin Mar 2, 2026
1cd77b1
chore: fix docs sync permissions
adamdotdevin Mar 2, 2026
7806936
fix(app): default auto-respond to false
adamdotdevin Mar 2, 2026
9d7852b
Animation Smorgasbord (#15637)
kitlangton Mar 2, 2026
b5dc6e6
chore: generate
opencode-agent[bot] Mar 2, 2026
98c75be
chore: update nix node_modules hashes
opencode-agent[bot] Mar 2, 2026
fd6f713
fix(opencode): clone part data in Bus event to preserve token values …
ryanskidmore Mar 3, 2026
96d6fb7
fix(provider): forward metadata options to cloudflare-ai-gateway prov…
ryanskidmore Mar 3, 2026
e41b535
chore: generate
opencode-agent[bot] Mar 3, 2026
7e3e85b
fix(opencode): avoid gemini combiner schema sibling injection (#15318)
nexxeln Mar 3, 2026
9f150b0
chore: generate
opencode-agent[bot] Mar 3, 2026
6aa4928
wip: zen
fwang Mar 3, 2026
881ca86
chore: generate
opencode-agent[bot] Mar 3, 2026
1233ebc
wip: zen
fwang Mar 3, 2026
b985ea3
wip: zen
fwang Mar 3, 2026
6deb27e
zen: docs
fwang Mar 3, 2026
48412f7
chore: nix flake update for bun 1.3.10 (#15648)
gigamonster256 Mar 3, 2026
18850c4
fix(opencode): disable session navigation commands when no parent ses…
jerome-benoit Mar 3, 2026
5e8742f
fix(app): timeline jank
adamdotdevin Mar 3, 2026
e4af1bb
fix(app): timeline jank
adamdotdevin Mar 3, 2026
1e2da60
chore: fix test
adamdotdevin Mar 3, 2026
7305fc0
chore: cleanup
adamdotdevin Mar 3, 2026
356b5d4
fix(app): stabilize project close navigation (#15817)
MrMushrooooom Mar 3, 2026
cbf0570
fix: update Turkish translations (#15835)
06ergin06 Mar 3, 2026
70b6a05
chore: generate
opencode-agent[bot] Mar 3, 2026
da82d40
chore: tr glossary
adamdotdevin Mar 3, 2026
fa45422
chore: cleanup
adamdotdevin Mar 3, 2026
10c3258
fix(app): tighten up header elements
adamdotdevin Mar 3, 2026
fd4d309
fix(app): timeline jank
adamdotdevin Mar 3, 2026
c2091ac
wip: zen
fwang Mar 3, 2026
b751bd0
docs(i18n): sync locale docs from english changes
opencode-agent[bot] Mar 3, 2026
3310c25
Upgrade opentui to v0.1.86 and activate markdown renderable by defaul…
kommander Mar 3, 2026
6f90c3d
chore: update nix node_modules hashes
opencode-agent[bot] Mar 3, 2026
70c6fcf
chore: cleanup
adamdotdevin Mar 3, 2026
9d427c1
fix(app): defer diff rendering
adamdotdevin Mar 3, 2026
502dbb6
fix(app): defer diff rendering
adamdotdevin Mar 3, 2026
3c8ce4a
feat(console): add /go landing page
iamdavidhill Mar 3, 2026
b1c166e
chore(console): add Go to nav
iamdavidhill Mar 3, 2026
1663c11
wip: zen
fwang Mar 3, 2026
74ebb41
fix(auth): normalize trailing slashes in auth login URLs (#15874)
elithrar Mar 3, 2026
c2f5abe
chore(console): move Enterprise after Go
iamdavidhill Mar 3, 2026
d80334b
chore(console): update /go hero copy
iamdavidhill Mar 3, 2026
12f4315
chore(console): trim /go model logos
iamdavidhill Mar 3, 2026
e3a787a
tui: use arrow indicator for active tool execution (#15887)
thdxr Mar 3, 2026
c78e7e1
tui: show pending toolcall count instead of generic 'Running...' message
thdxr Mar 3, 2026
c4ffd93
tui: replace curved arrow with straight arrow for better terminal com…
thdxr Mar 3, 2026
e66d829
release: v1.2.16
Mar 3, 2026
9a42927
revert: undo turbo typecheck dependency change from #14828 (#15902)
Copilot Mar 3, 2026
109ea17
fix: `run --attach` agent validation (#11812)
alberti42 Mar 3, 2026
e79d41c
docs(bash): clarify output capture guidance (#15928)
thdxr Mar 4, 2026
7f37acd
feat(core): rework workspace integration and adaptor interface (#15895)
jlongster Mar 4, 2026
2a0be83
chore: generate
opencode-agent[bot] Mar 4, 2026
3ebebe0
fix(process): prevent orphaned opencode subprocesses on shutdown (#15…
thdxr Mar 4, 2026
e4f0825
zen: fix aws bedrock header
fwang Mar 4, 2026
5cf235f
desktop: add electron version (#15663)
Brendonovich Mar 4, 2026
5dcf330
chore: update nix node_modules hashes
opencode-agent[bot] Mar 4, 2026
db3eddc
ui: rely on task part href instead of onClick handler (#15978)
Brendonovich Mar 4, 2026
850fd94
fix(docs): update dead opencode-daytona ecosystem link (#15979)
Niraj12chaudhary Mar 4, 2026
a2d3d62
chore(console): move login to end on zen/go
iamdavidhill Mar 4, 2026
0541d75
docs(i18n): sync locale docs from english changes
opencode-agent[bot] Mar 4, 2026
e8f67dd
chore(console): update /go hero body
iamdavidhill Mar 4, 2026
9909f94
chore(console): hide Go nav item on /go
iamdavidhill Mar 4, 2026
5709561
chore(console): refine /go hero and pricing copy
iamdavidhill Mar 4, 2026
e44cdaf
chore(console): use Go ornate logo on /go
iamdavidhill Mar 4, 2026
0a2aa86
chore(console): switch /go page to go.* i18n keys
iamdavidhill Mar 4, 2026
d7569a5
fix(app): terminal tab close
adamdotdevin Mar 4, 2026
eb71856
docs: send Go landing page links to Go docs
iamdavidhill Mar 4, 2026
dd4ad5f
chore(console): edit copy
iamdavidhill Mar 4, 2026
2ccf21d
fix(app): loading session should be scrolled to the bottom
adamdotdevin Mar 4, 2026
ad56338
chore(console): update copy
iamdavidhill Mar 4, 2026
e482405
fix(app): remove diff lines from sessions in sidebar
adamdotdevin Mar 4, 2026
64b2113
fix(app): delay dock animation on session load
adamdotdevin Mar 4, 2026
a69742c
fix(app): remove blur from todos
adamdotdevin Mar 4, 2026
18cad10
show scrollbar by default (#15282)
kommander Mar 4, 2026
e326741
remove build from typecheck
thdxr Mar 4, 2026
faf5012
ci: only publish electron on beta
Brendonovich Mar 4, 2026
1b0d65f
ci: remove electron beta requirement
Brendonovich Mar 4, 2026
715b844
release: v1.2.17
Mar 4, 2026
7c215c0
docs: replace Go landing page video with interactive limits graph
iamdavidhill Mar 4, 2026
61795d7
docs: clarify Go models in FAQ answer
iamdavidhill Mar 4, 2026
d94c516
docs: update Go privacy copy for global hosting
iamdavidhill Mar 4, 2026
c6187ee
docs: de-link Go testimonials and swap Zen→Go
iamdavidhill Mar 4, 2026
ca5a737
docs: localize Go graph and testimonial copy
iamdavidhill Mar 4, 2026
b42a63b
docs: make Go hero CTA translatable with pricing emphasis
iamdavidhill Mar 4, 2026
22fcde9
tui: reduce excessive spacing in go route layout to improve visual ba…
iamdavidhill Mar 4, 2026
e9de250
Merge branch 'dev' into go-page
fwang Mar 4, 2026
744c38c
tui: clarify which models are available in Go subscription
iamdavidhill Mar 4, 2026
0f1f55a
tui: show Go request limits per 5-hour session
iamdavidhill Mar 4, 2026
de6a6af
tweak(ui): remove section
iamdavidhill Mar 4, 2026
b7198c2
tweak(ui): darker text
iamdavidhill Mar 4, 2026
6f23271
chore(ui): remove quotes
iamdavidhill Mar 4, 2026
40fc406
ci: make tsgo available for pre-push typechecks
iamdavidhill Mar 4, 2026
29dbfc2
docs: Add opencode-sentry-monitor to ecosystem documentation (#16037)
stolinski Mar 4, 2026
22a4c5a
docs(i18n): sync locale docs from english changes
opencode-agent[bot] Mar 4, 2026
0b825ca
docs: redesign Go pricing graph with horizontal bars and inline reque…
iamdavidhill Mar 4, 2026
6cbb1ef
wip: Make bar colors in limit graph customizable via CSS variables fo…
iamdavidhill Mar 4, 2026
f8685a4
tui: clarify free tier includes Big Pickle and promotional requests o…
iamdavidhill Mar 4, 2026
cd3a09c
tui: clearer graph labels and responsive layout for usage visualization
iamdavidhill Mar 4, 2026
67fa790
tui: prevent Go pricing graph from overflowing on medium screens by c…
iamdavidhill Mar 4, 2026
218330a
Merge branch 'go-page' into dev
fwang Mar 4, 2026
45ac20b
fix(core): handle SIGHUP and kill process (#16057)
jlongster Mar 4, 2026
27447ba
wip: zen
fwang Mar 4, 2026
7f7e622
dont let dax touch the ui (#16060)
Hona Mar 4, 2026
3242308
chore: update turborepo (#16061)
akronb Mar 4, 2026
85ff056
zen: update go page
fwang Mar 5, 2026
f363904
feat(opencode): Adding options to auth login to skip questions (#14470)
dbpolito Mar 5, 2026
7948de1
app: prefer using useLocation instead of window.location (#15989)
Brendonovich Mar 5, 2026
6ddd13c
chore: update nix node_modules hashes
opencode-agent[bot] Mar 5, 2026
6531cfc
desktop-electon: handle latest version update check properly
Brendonovich Mar 5, 2026
4e26b0a
desktop: new-session deeplink (#15322)
Brendonovich Mar 5, 2026
161734f
desktop: remove unnecessary macOS entitlements (#16161)
nexxeln Mar 5, 2026
a60e715
fix(app): improve agent selection logic passing in configured models …
OpeOginni Mar 5, 2026
62909e9
chore: generate
opencode-agent[bot] Mar 5, 2026
27baa2d
refactor(desktop): improve error handling and translation in server e…
OpeOginni Mar 5, 2026
2bb3dc5
fix(app): no delay on tooltip close
adamdotdevin Mar 5, 2026
3448118
fix(app): mod+f always opens search
adamdotdevin Mar 5, 2026
0e5edef
chore(console): go page i18n
adamdotdevin Mar 5, 2026
5f40bd4
fix(app): icon jiggle
adamdotdevin Mar 5, 2026
07348d1
fix(app): preserve question dock state across session switches (#16173)
ualtinok Mar 5, 2026
8cbe7b4
fix(app): file icon stability
adamdotdevin Mar 5, 2026
6c9ae5c
fix(app): file path truncation in session turn
adamdotdevin Mar 5, 2026
6f9e533
fix(app): file icon stability
adamdotdevin Mar 5, 2026
4c185c7
fix(app): provider settings consistency
adamdotdevin Mar 5, 2026
1a420a1
fix(app): websearch and codesearch tool rendering
adamdotdevin Mar 5, 2026
152df24
fix(app): stale read error
adamdotdevin Mar 5, 2026
a3d4ea0
fix(app): locale error
adamdotdevin Mar 5, 2026
7665b8e
fix(app): stale keyed show errors
adamdotdevin Mar 5, 2026
d802e28
update sdk package.json
thdxr Mar 5, 2026
bb37e90
ci: remove unused publishConfig that was breaking npm publishing
thdxr Mar 5, 2026
9cccaa6
chore(app): ghostty-web fork
adamdotdevin Mar 5, 2026
4da1996
feat(tui): add onClick handler to InlineTool and Task components (#16…
thdxr Mar 5, 2026
9507b0e
chore: update nix node_modules hashes
opencode-agent[bot] Mar 5, 2026
2c58964
release: v1.2.18
Mar 5, 2026
0638e49
zen: gpt5.4
fwang Mar 5, 2026
e3b6d84
docs(i18n): sync locale docs from english changes
opencode-agent[bot] Mar 5, 2026
2ba1eca
fix(app): load tab on open file
adamdotdevin Mar 5, 2026
76cdc66
fix(console): follow-up for #13108 docs/en routing and locale cookie …
Seungjun0906 Mar 5, 2026
80c36c7
zen: gpt5.3 codex spark
fwang Mar 5, 2026
a697816
ci: fix
fwang Mar 5, 2026
adaee66
zen: gpt 5.4 pro
fwang Mar 5, 2026
39691e5
tui: remove keyboard shortcut tooltips from new session and new works…
iamdavidhill Mar 5, 2026
cf425d1
fix(app): stale show (#16236)
neriousy Mar 6, 2026
3ebba02
refactor: replace Bun.sleep with node timers (#15013)
thdxr Mar 6, 2026
6e89d3e
refactor: replace Bun.write/file with Filesystem utilities in snapshot
thdxr Mar 6, 2026
dad2488
refactor: replace Bun.write with Filesystem.write in config files
thdxr Mar 6, 2026
a9bf1c0
refactor: replace Bun.hash with Hash.fast using xxhash3-xxh64
thdxr Mar 6, 2026
ae5c9ed
refactor: replace Bun.stdin.text with Node.js stream reading
thdxr Mar 6, 2026
7e28098
refactor: use node:stream/consumers for stdin reading
thdxr Mar 6, 2026
6733a5a
fix: use sha1 for hash instead of unsupported xxhash3-xxh64
thdxr Mar 6, 2026
bf35a86
refactor: replace Bun.connect with net.createConnection
thdxr Mar 6, 2026
d68afca
refactor: replace Bun.stderr and Bun.color with Node.js equivalents
thdxr Mar 6, 2026
46d7d2f
feat: add "gpt-5.4" to codex allowed models list (#16274)
msadiks Mar 6, 2026
cb41124
release: v1.2.19
Mar 6, 2026
74effa8
refactor(opencode): replace Bun.which with npm which (#15012)
thdxr Mar 6, 2026
c04da45
chore: update nix node_modules hashes
opencode-agent[bot] Mar 6, 2026
aec6ca7
fix(git): stop leaking fsmonitor daemons e.g. 60GB+ of commited memor…
Hona Mar 6, 2026
326c701
fix: restore Bun stdin reads for prompt input (#16300)
thdxr Mar 6, 2026
6c7d968
release: v1.2.20
Mar 6, 2026
9c5a2cd
merge upstream (conflicts auto-accepted - needs review)
github-actions[bot] Mar 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
15 changes: 15 additions & 0 deletions .github/TEAM_MEMBERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
adamdotdevin
Brendonovich
fwang
Hona
iamdavidhill
jayair
jlongster
kitlangton
kommander
MrMushrooooom
nexxeln
R44VC0RP
rekram1-node
RhysSullivan
thdxr
2 changes: 2 additions & 0 deletions .github/VOUCHED.td
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@
# - Denounce with minus prefix: -username or -platform:username.
# - Optional details after a space following the handle.
adamdotdevin
-agusbasari29 AI PR slop
ariane-emory
edemaine
-florianleibert
fwang
iamdavidhill
Expand Down
27 changes: 22 additions & 5 deletions .github/actions/setup-bun/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,33 @@ description: "Setup Bun with caching and install dependencies"
runs:
using: "composite"
steps:
- name: Mount Bun Cache
uses: useblacksmith/stickydisk@v1
- name: Cache Bun dependencies
uses: actions/cache@v4
with:
key: ${{ github.repository }}-bun-cache-${{ runner.os }}
path: ~/.bun
path: ~/.bun/install/cache
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lockb') }}
restore-keys: |
${{ runner.os }}-bun-

- name: Get baseline download URL
id: bun-url
shell: bash
run: |
if [ "$RUNNER_ARCH" = "X64" ]; then
V=$(node -p "require('./package.json').packageManager.split('@')[1]")
case "$RUNNER_OS" in
macOS) OS=darwin ;;
Linux) OS=linux ;;
Windows) OS=windows ;;
esac
echo "url=https://github.com/oven-sh/bun/releases/download/bun-v${V}/bun-${OS}-x64-baseline.zip" >> "$GITHUB_OUTPUT"
fi

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version-file: package.json
bun-version-file: ${{ !steps.bun-url.outputs.url && 'package.json' || '' }}
bun-download-url: ${{ steps.bun-url.outputs.url }}

- name: Install dependencies
run: bun install
Expand Down
24 changes: 23 additions & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,29 @@
### Issue for this PR

Closes #

### Type of change

- [ ] Bug fix
- [ ] New feature
- [ ] Refactor / code improvement
- [ ] Documentation

### What does this PR do?

Please provide a description of the issue (if there is one), the changes you made to fix it, and why they work. It is expected that you understand why your changes work and if you do not understand why at least say as much so a maintainer knows how much to value the PR.
Please provide a description of the issue, the changes you made to fix it, and why they work. It is expected that you understand why your changes work and if you do not understand why at least say as much so a maintainer knows how much to value the PR.

**If you paste a large clearly AI generated description here your PR may be IGNORED or CLOSED!**

### How did you verify your code works?

### Screenshots / recordings

_If this is a UI change, please include a screenshot or recording._

### Checklist

- [ ] I have tested my changes locally
- [ ] I have not included unrelated changes in this PR

_If you do not follow this template your PR will be automatically rejected._
4 changes: 4 additions & 0 deletions .github/workflows/beta.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,11 @@ jobs:
opencode-app-id: ${{ vars.OPENCODE_APP_ID }}
opencode-app-secret: ${{ secrets.OPENCODE_APP_SECRET }}

- name: Install OpenCode
run: bun i -g opencode-ai

- name: Sync beta branch
env:
GH_TOKEN: ${{ steps.setup-git-committer.outputs.token }}
OPENCODE_API_KEY: ${{ secrets.OPENCODE_API_KEY }}
run: bun script/beta.ts
9 changes: 9 additions & 0 deletions .github/workflows/compliance-close.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,15 @@ jobs:
body: closeMessage,
});

try {
await github.rest.issues.removeLabel({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: item.number,
name: 'needs:compliance',
});
} catch (e) {}

if (isPR) {
await github.rest.pulls.update({
owner: context.repo.owner,
Expand Down
34 changes: 24 additions & 10 deletions .github/workflows/docs-locale-sync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,14 @@ jobs:
if: github.actor != 'opencode-agent[bot]'
runs-on: blacksmith-4vcpu-ubuntu-2404
permissions:
id-token: write
contents: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
persist-credentials: false
fetch-depth: 0
ref: ${{ github.ref_name }}

- name: Setup Bun
uses: ./.github/actions/setup-bun
Expand Down Expand Up @@ -46,15 +47,26 @@ jobs:
echo "EOF"
} >> "$GITHUB_OUTPUT"

- name: Install OpenCode
if: steps.changes.outputs.has_changes == 'true'
run: curl -fsSL https://opencode.ai/install | bash

- name: Sync locale docs with OpenCode
if: steps.changes.outputs.has_changes == 'true'
uses: sst/opencode/github@latest
env:
OPENCODE_API_KEY: ${{ secrets.OPENCODE_API_KEY }}
with:
model: opencode/gpt-5.2
agent: docs
prompt: |
OPENCODE_CONFIG_CONTENT: |
{
"permission": {
"*": "deny",
"read": "allow",
"edit": "allow",
"glob": "allow",
"task": "allow"
}
}
run: |
opencode run --agent docs --model opencode/gpt-5.3-codex <<'EOF'
Update localized docs to match the latest English docs changes.

Changed English doc files:
Expand All @@ -67,10 +79,12 @@ jobs:
2. You MUST use the Task tool for translation work and launch subagents with subagent_type `translator` (defined in .opencode/agent/translator.md).
3. Do not translate directly in the primary agent. Use translator subagent output as the source for locale text updates.
4. Run translator subagent Task calls in parallel whenever file/locale translation work is independent.
5. Preserve frontmatter keys, internal links, code blocks, and existing locale-specific metadata unless the English change requires an update.
6. Keep locale docs structure aligned with their corresponding English pages.
7. Do not modify English source docs in packages/web/src/content/docs/*.mdx.
8. If no locale updates are needed, make no changes.
5. Use only the minimum tools needed for this task (read/glob, file edits, and translator Task). Do not use shell, web, search, or GitHub tools for translation work.
6. Preserve frontmatter keys, internal links, code blocks, and existing locale-specific metadata unless the English change requires an update.
7. Keep locale docs structure aligned with their corresponding English pages.
8. Do not modify English source docs in packages/web/src/content/docs/*.mdx.
9. If no locale updates are needed, make no changes.
EOF

- name: Commit and push locale docs updates
if: steps.changes.outputs.has_changes == 'true'
Expand Down
64 changes: 62 additions & 2 deletions .github/workflows/duplicate-issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,11 @@ name: duplicate-issues

on:
issues:
types: [opened]
types: [opened, edited]

jobs:
check-duplicates:
if: github.event.action == 'opened'
runs-on: blacksmith-4vcpu-ubuntu-2404
permissions:
contents: read
Expand Down Expand Up @@ -34,7 +35,7 @@ jobs:
"webfetch": "deny"
}
run: |
opencode run -m opencode/claude-haiku-4-5 "A new issue has been created:
opencode run -m opencode/claude-sonnet-4-6 "A new issue has been created:

Issue number: ${{ github.event.issue.number }}

Expand Down Expand Up @@ -115,3 +116,62 @@ jobs:
If you believe this was flagged incorrectly, please let a maintainer know.

Remember: post at most ONE comment combining all findings. If everything is fine, post nothing."

recheck-compliance:
if: github.event.action == 'edited' && contains(github.event.issue.labels.*.name, 'needs:compliance')
runs-on: blacksmith-4vcpu-ubuntu-2404
permissions:
contents: read
issues: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 1

- uses: ./.github/actions/setup-bun

- name: Install opencode
run: curl -fsSL https://opencode.ai/install | bash

- name: Recheck compliance
env:
OPENCODE_API_KEY: ${{ secrets.OPENCODE_API_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
OPENCODE_PERMISSION: |
{
"bash": {
"*": "deny",
"gh issue*": "allow"
},
"webfetch": "deny"
}
run: |
opencode run -m opencode/claude-sonnet-4-6 "Issue #${{ github.event.issue.number }} was previously flagged as non-compliant and has been edited.

Lookup this issue with gh issue view ${{ github.event.issue.number }}.

Re-check whether the issue now follows our contributing guidelines and issue templates.

This project has three issue templates that every issue MUST use one of:

1. Bug Report - requires a Description field with real content
2. Feature Request - requires a verification checkbox and description, title should start with [FEATURE]:
3. Question - requires the Question field with real content

Additionally check:
- No AI-generated walls of text (long, AI-generated descriptions are not acceptable)
- The issue has real content, not just template placeholder text left unchanged
- Bug reports should include some context about how to reproduce
- Feature requests should explain the problem or need
- We want to push for having the user provide system description & information

Do NOT be nitpicky about optional fields. Only flag real problems like: no template used, required fields empty or placeholder text only, obviously AI-generated walls of text, or completely empty/nonsensical content.

If the issue is NOW compliant:
1. Remove the needs:compliance label: gh issue edit ${{ github.event.issue.number }} --remove-label needs:compliance
2. Find and delete the previous compliance comment (the one containing <!-- issue-compliance -->) using: gh api repos/${{ github.repository }}/issues/${{ github.event.issue.number }}/comments --jq '.[] | select(.body | contains(\"<!-- issue-compliance -->\")) | .id' then delete it with: gh api -X DELETE repos/${{ github.repository }}/issues/${{ github.event.issue.number }}/comments/{id}
3. Post a short comment thanking them for updating the issue.

If the issue is STILL not compliant:
Post a comment explaining what still needs to be fixed. Keep the needs:compliance label."
46 changes: 0 additions & 46 deletions .github/workflows/nix-desktop.yml.disabled

This file was deleted.

Loading
Loading