Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
230 commits
Select commit Hold shift + click to select a range
bc918e7
fix(server): discover project skills for Claude (#9210)
anirudhsama Sep 2, 2026
6effe0a
feat(web): redesign provider editor and models list (#8508)
StiensWout Sep 2, 2026
6e3bac3
fix(web): prevent connection rows from wrapping during removal (#8706)
MatthewFeroz Sep 2, 2026
57a6660
fix(pull-requests): align checkout control with author (#9196)
maria-rcks Sep 2, 2026
b5a09e1
fix(release): pin patched expo-sharing version (#9250)
willsheldon Sep 2, 2026
aab4049
fix(ci): keep Expo Sharing patch applied (#9248)
StiensWout Sep 2, 2026
2a7a449
fix(web): hide deleted providers with prototype keys (#8337)
Lucenx9 Sep 2, 2026
9159b80
feat(mobile): long-press file references for path and open actions (#…
juliusmarminge Sep 2, 2026
8d5b712
fix(desktop): exclude opposite macOS pty prebuilds (#9240)
extoci Sep 2, 2026
b57726c
feat(web): add copy path button to diff headers (#2403)
ipanasenko Sep 2, 2026
f90e2f2
fix(server): subscribe before provider settings watcher (#9271)
t3-code[bot] Sep 2, 2026
62c68dc
fix(mobile): show filled filter icon on Android when filters are acti…
none23 Sep 2, 2026
46b5c66
fix(chat): show single tool calls without summaries (#9267)
maria-rcks Sep 2, 2026
5a9b562
fix(web): warn when shared settings have no target environment (#9207)
imabdulazeez Sep 2, 2026
28ddaf7
fix(web): confirm closing agent-controlled browsers (#9272)
maria-rcks Sep 2, 2026
134d510
feat(desktop): browser profiles for the preview browser (#7254)
juliusmarminge Sep 2, 2026
ca63d42
refactor(shared): move the node:sqlite Effect SQL client into shared …
juliusmarminge Sep 2, 2026
91c8d47
feat(web): add opt-in panel animations (#8830)
maria-rcks Sep 2, 2026
ba3cb07
feat(projects): automatically pull clean default branches (#9277)
maria-rcks Sep 2, 2026
1eb36b4
fix(web): show pull request state icons in tabs (#9112)
flamboh Sep 2, 2026
535557b
feat(providers): add context compaction across harnesses (#8808)
maria-rcks Sep 2, 2026
fb93902
feat(web): add proactive panels (#9276)
maria-rcks Sep 2, 2026
b59b7d0
fix(web): unify control sizing across settings pages (#9281)
juliusmarminge Sep 2, 2026
064392f
fix(web): offer browser profiles from the empty-panel launcher (#9279)
juliusmarminge Sep 2, 2026
63f334b
Revert "feat(providers): add context compaction across harnesses" (#9…
maria-rcks Sep 2, 2026
c742edd
fix(web): show scroll-to-end as soon as the last message slips under …
juliusmarminge Sep 2, 2026
994bd73
fix(cursor): honor auto and full access modes (#9283)
maria-rcks Sep 2, 2026
4ba39a6
fix(desktop): detect installed Spectre libs for Windows builds
juliusmarminge Sep 2, 2026
443b4eb
fix(pull-requests): missing features & better behaviour (#9188)
maria-rcks Sep 3, 2026
15fea6c
fix(providers): discover workspace skills everywhere (#9180)
maria-rcks Sep 3, 2026
2971ec3
fix(server): preserve automatic settlement timestamps (#9254)
eimexdev Sep 3, 2026
dbc7bfa
fix(opencode): show Reasoning selector for OpenCode models (#9287)
maria-rcks Sep 3, 2026
7751299
feat(web): preview document attachments in the file viewer (#9292)
juliusmarminge Sep 3, 2026
e94603a
chore(ci): narrow the UI consistency check-run agent (#9297)
juliusmarminge Sep 3, 2026
ef6cc0b
chore(ci): only run check-run agents on vouched contributors (#9298)
juliusmarminge Sep 3, 2026
355fbd9
fix(web): stop remounting markdown on every activity delta (#9306)
juliusmarminge Sep 3, 2026
d897641
fix(pull-requests): keep cached PR chrome on reopen (#9294)
maria-rcks Sep 3, 2026
0fbb942
feat(environments): draw each environment as the machine it runs on (…
juliusmarminge Sep 3, 2026
9ebbeda
feat(web): apply and remove labels from the pull request tab (#9313)
juliusmarminge Sep 3, 2026
31eeb44
fix(sidebar): collapse settled and snoozed shelves by default (#9314)
maria-rcks Sep 3, 2026
922bd69
refactor(media): unify file and media previews across clients (#9253)
juliusmarminge Sep 3, 2026
ec44bc5
fix(chat): keep live tool labels in present tense (#9316)
maria-rcks Sep 3, 2026
194f838
chore: audit lint directives and move plugin allowlists into config (…
juliusmarminge Sep 3, 2026
b9b1b8f
chore(ci): narrow the Effect conventions check-run agent (#9321)
juliusmarminge Sep 3, 2026
85f2479
refactor(mobile): style plain views with Uniwind classes instead of t…
juliusmarminge Sep 3, 2026
66419a1
fix(dev): share dev servers on the loopback Vite actually binds (#9324)
juliusmarminge Sep 3, 2026
12f1fc4
fix(web): line up the titlebar wordmark label and version pill (#9255)
tristanmanchester Sep 3, 2026
9409dd2
fix(web): make the diff layout toggle a persisted setting (#9326)
juliusmarminge Sep 3, 2026
3b2de9d
chore: dedupe lightningcss and tailwind node bindings (#9331)
juliusmarminge Sep 3, 2026
f5fbb1b
chore: upgrade vite-plus to 0.3.0 (#9327)
juliusmarminge Sep 3, 2026
1aa44a0
feat(web): add a file tree to the diff panel and pull request code ta…
juliusmarminge Sep 3, 2026
5f84efa
feat(web): add PageUp/PageDown chat navigation (#9315)
Yash-Singh1 Sep 3, 2026
2a3cfe4
fix(web): collapse PR header actions to icons when narrow (#9334)
maria-rcks Sep 3, 2026
d42254d
fix(web): resolve Vite sourcemap and supports warnings (#9343)
juliusmarminge Sep 3, 2026
18062da
feat(web): choose whether links open in the default browser or in T3 …
juliusmarminge Sep 3, 2026
6a5a18c
fix(web): add press feedback to buttons (#9349)
maria-rcks Sep 3, 2026
f6c04c5
feat(web): add customizable project icons (#9137)
saphid Sep 3, 2026
1575ada
fix(mobile): stop indented code overflowing Android chat bubbles (#9347)
Adamulek123 Sep 3, 2026
0bc59bb
fix(web): let the pull request list use wide screens (#9351)
juliusmarminge Sep 3, 2026
6cf0c6e
feat: display native app and browser icons in work logs (#9093)
Yash-Singh1 Sep 3, 2026
48ba76b
fix(web): collapse oldest pull request comments (#9323)
maria-rcks Sep 3, 2026
854541a
fix(pull-requests): shared state + not settling? (#9332)
maria-rcks Sep 3, 2026
9f9359b
fix(web): stop usage summary requests reporting slow RPCs (#9358)
juliusmarminge Sep 3, 2026
b5f4e81
feat(web): suggest ssh hosts in a dropdown under the host field (#9171)
flamboh Sep 3, 2026
d4bd892
feat(web): mod+w closes the active right panel tab before the window …
juliusmarminge Sep 3, 2026
5eb4f45
test(web): remove static markup-only component tests (#9364)
t3-code[bot] Sep 3, 2026
829c3db
fix(environments): draw the machine icon everywhere an environment is…
juliusmarminge Sep 3, 2026
c89e3e1
fix(web): settled sidebar rows use the project fallback icon (#9366)
juliusmarminge Sep 3, 2026
cf0bb4c
fix(web): match project icon chooser button sizes (#9368)
Yash-Singh1 Sep 3, 2026
1f7a3c1
fix(mobile): pressed and disabled styles no longer apply unconditiona…
juliusmarminge Sep 3, 2026
24799de
fix(mobile): size expanded tool groups correctly (#9359)
juliusmarminge Sep 3, 2026
5b8445b
fix(web): collapse the resting composer (#7855)
chrisdeeming Sep 3, 2026
4b26132
fix(web): keep trailing tool groups out of "Worked for" accordion (#9…
Yash-Singh1 Sep 3, 2026
5d1b02c
feat(marketing): put named-developer quotes on the landing page (#9385)
t3dotgg Sep 3, 2026
18573d6
fix(claude): expand slash commands when a message has attachments (#9…
t3dotgg Sep 3, 2026
044ea8e
fix(web): stop the resting composer layout loop (#9393)
t3dotgg Sep 3, 2026
652515a
fix(web): render assistant images inline in chat (#9126)
t3dotgg Sep 3, 2026
0633646
feat(providers): add Google Antigravity via the official ACP agent (#…
t3dotgg Sep 3, 2026
2aa907b
fix(mobile): show an error instead of an endless preview spinner (#9123)
t3dotgg Sep 3, 2026
2b745ef
fix(usage): price new models without waiting a day for the rate table…
t3dotgg Sep 3, 2026
19c97ea
fix(web): unlock the composer when preview capture fails (#9127)
t3dotgg Sep 3, 2026
1e05187
fix(antigravity): refresh the model manifest so older Gemini models f…
t3dotgg Sep 3, 2026
fff33f9
perf(ci): reuse dependency checks in release builds (#9399)
t3dotgg Sep 3, 2026
77e35c5
fix(web): send cited messages with Cmd+Enter (#9307)
extoci Sep 3, 2026
098bf53
fix(web): preserve explicit preview navigation URLs (#8902)
nateEc Sep 3, 2026
57626eb
fix(web): prevent loading ssh environments from overriding navigation…
flamboh Sep 3, 2026
cfddb42
fix(mobile): skip unsupported shared settings targets (#9381)
Lucenx9 Sep 3, 2026
2120fbc
fix(web): avoid duplicate Antigravity install status (#9419)
RakshithBhat03 Sep 3, 2026
d4ba2a1
fix(composer): mute fast icon when collapsed (#9451)
maria-rcks Sep 3, 2026
21b9dda
fix(web): unify skeleton loading animations on one pulse (#9448)
maria-rcks Sep 3, 2026
645d585
fix(web): prioritize authored pull requests (#9453)
maria-rcks Sep 3, 2026
4e89d74
fix(web): make project icons the default (#9457)
maria-rcks Sep 3, 2026
c78f05a
fix(server): reuse pr state when settling threads (#9459)
maria-rcks Sep 3, 2026
8bd544c
fix(web): keep agent images collapsed (#9460)
maria-rcks Sep 3, 2026
126afb5
fix(web): banner buttons no longer expand the resting composer (#9452)
juliusmarminge Sep 3, 2026
d5825e1
fix(web): stop clipping the traits chevron on long Codex effort label…
zortos293 Sep 3, 2026
46e8b1a
fix(web): make right panel tabs easier to scroll (#9461)
maria-rcks Sep 3, 2026
db8d60f
fix(web): render transparent previews on white (#9463)
UtkarshUsername Sep 3, 2026
de025aa
fix(mobile): show loading and syncing in the working pill (#9466)
juliusmarminge Sep 3, 2026
36c4e9c
fix(server): keep a/ and b/ prefixes in rendered git patches (#9438)
Mnigos Sep 3, 2026
d2b6f3b
fix(server): full-access OpenCode threads no longer ask for approvals…
shivamhwp Sep 3, 2026
493fbb5
fix(web): reuse pull request list data while loading (#9467)
maria-rcks Sep 3, 2026
0372836
feat(web): let users turn off composer collapse on blur and scroll (#…
juliusmarminge Sep 3, 2026
373be93
fix(web): move workflow approval beside checks (#9465)
maria-rcks Sep 3, 2026
4b8b5d9
fix(desktop): refresh generated annotation styles (#9488)
juliusmarminge Sep 3, 2026
0869ad6
fix(web): let the PR reviewer and label search boxes take keystrokes …
juliusmarminge Sep 3, 2026
77138cf
fix(web): dont collapse composer when interacting with bottom row (#9…
extoci Sep 3, 2026
678f23a
fix(desktop): restore second-press quit fallback (#9485)
maria-rcks Sep 3, 2026
c726c30
fix(web): keep opencode icon hollow in collapsed composer (#9492)
maria-rcks Sep 3, 2026
12e8997
fix(web): keep agent browser preview visible (#9484)
maria-rcks Sep 3, 2026
409bc4f
fix(mobile): keep the machine glyph next to the environment label (#9…
juliusmarminge Sep 3, 2026
80b5373
fix(mobile): let back swipe pop from horizontal scroll edges (#9493)
juliusmarminge Sep 3, 2026
0aae1e2
fix(antigravity): discover legacy workspace skills (#9410)
Lucenx9 Sep 3, 2026
ef4cc60
fix(mobile): resolve Antigravity provider icon and normalize driver m…
Invictine Sep 3, 2026
e01c153
fix(antigravity): forward Google sign-in URLs from browser helper (#9…
WellyngtonF Sep 3, 2026
39449e5
feat(desktop): import browser cookies into a profile (#7255)
juliusmarminge Sep 3, 2026
ff58434
feat(desktop): import from Chrome, Edge, Brave, Vivaldi, Opera, Arc a…
juliusmarminge Sep 3, 2026
498ab9c
feat(desktop): resolve Chromium cookie keys on Linux (#7261)
juliusmarminge Sep 3, 2026
f25e442
fix(antigravity): allow slow runtime startup during setup (#9510)
t3dotgg Sep 3, 2026
baf67b6
fix(antigravity): keep model choices up to date (#9511)
t3dotgg Sep 3, 2026
eb334ca
fix(antigravity): handle native sign-in URLs on stderr (#9514)
t3dotgg Sep 3, 2026
8ea52c8
fix(antigravity): update managed runtime to 1.1.1 (#9509)
t3dotgg Sep 3, 2026
3653cb2
fix(desktop): address the browser import review left over from the st…
juliusmarminge Sep 3, 2026
f8a14b2
feat(antigravity): show subagent calls and results (#9515)
t3dotgg Sep 4, 2026
6382268
fix(web): let paste expand a resting composer (#9498)
juliusmarminge Sep 4, 2026
522ebe6
fix(web): keep the composer open while selecting timeline text (#9499)
juliusmarminge Sep 4, 2026
c0ebc88
fix(web): return focus to the composer after closing a media preview …
juliusmarminge Sep 4, 2026
9c9ae3d
fix(server): keep events during thread subscription startup (#9521)
t3dotgg Sep 4, 2026
44701ef
chore: forward issue/PR/discussion events to Cursor hygiene (#9518)
juliusmarminge Sep 4, 2026
9d28c21
fix(auth): keep pairing credentials out of access read models (#9523)
t3dotgg Sep 4, 2026
e3723e0
chore: drop comment events from Cursor hygiene forwarder (#9527)
juliusmarminge Sep 4, 2026
d76b24d
feat(codex): support async questions (#9512)
t3dotgg Sep 4, 2026
0a0b6be
fix(web): keep right panel controls clickable (#9517)
maria-rcks Sep 4, 2026
19d8ab2
feat(usage): show Codex and Claude subscription limits on a Limits ta…
juliusmarminge Sep 4, 2026
343db2c
feat(web): reorganize settings pages (#9354)
maria-rcks Sep 4, 2026
2b96220
fix(server): settle branch threads immediately on pull request merge …
maria-rcks Sep 4, 2026
b908980
fix(server): back off relay client restarts after rapid exits (#8788)
derektrimm Sep 4, 2026
75ab5ab
fix(codex): accept rate limit errors on thread resume (#8897)
nateEc Sep 4, 2026
6319a97
fix(desktop): preview CDP sessions no longer hard-crash the app (#9068)
sethwebster Sep 4, 2026
f54ab90
Fix worktree removal timing out on large install trees (#3902)
jakeleventhal Sep 4, 2026
0ba06a1
fix(web): settle the resting composer layout with a pixel of slack (#…
matheustimbo Sep 4, 2026
07c4ab5
fix(web): keep automatic project icons consistent (#9535)
t3dotgg Sep 4, 2026
dddc0bd
fix(server): include SQLite conditions in persistence errors
t3dotgg Sep 4, 2026
6f40537
fix(dev): keep shared dev reloads and hot updates working (#9543)
t3dotgg Sep 4, 2026
c5ba51d
feat(providers): add context compaction command (#9293)
maria-rcks Sep 4, 2026
5989de4
fix(mobile): keep store screenshots free of system banners and show d…
juliusmarminge Sep 4, 2026
54aef6f
fix(web): restore composer controls as space becomes available (#9539)
juliusmarminge Sep 4, 2026
3c3e05c
fix(web): measure collapsed model labels at their visible width (#9540)
juliusmarminge Sep 4, 2026
f239b77
fix(web): close composer menus when their controls hide (#9541)
juliusmarminge Sep 4, 2026
3e2c1a6
fix(web): thread error banner no longer shifts the chat (#9473)
flamboh Sep 4, 2026
617edab
fix(server): reveal normalized paths in File Explorer (#9551)
juliusmarminge Sep 4, 2026
232de5e
feat(marketing): fresh screenshot and floating marks on the homepage …
t3dotgg Sep 4, 2026
1641b4a
feat(usage): redeem Codex reset credits from the Limits tab (#9534)
juliusmarminge Sep 4, 2026
4e54731
fix(server): find newly opened pull requests after agent turns (#9125)
t3dotgg Sep 4, 2026
f96a220
ci: add on-demand Windows test workflow (#9538)
juliusmarminge Sep 4, 2026
710f6dc
fix(web): simplify expanded tool details (#9549)
maria-rcks Sep 4, 2026
9e1bc36
fix(web): keep the last message visible when the resting composer exp…
t3dotgg Sep 4, 2026
fee2e0f
test(web): fix flaky startup and Tailwind tests (#9558)
t3dotgg Sep 4, 2026
65f1839
fix(web): keep codex restart responses continuous (#9560)
maria-rcks Sep 4, 2026
d7884ce
fix(web): make settings sidebar sub-section buttons full width (#9562)
juliusmarminge Sep 4, 2026
2b10398
fix(web): render settings sidebar immediately (#9563)
maria-rcks Sep 4, 2026
95390ed
chore: vouch august contributors (#9557)
maria-rcks Sep 4, 2026
42bdea1
fix(web): stabilize right panel transitions (#9554)
maria-rcks Sep 4, 2026
0cb02ab
fix: better shell syntax handling for labels (#9371)
Yash-Singh1 Sep 4, 2026
bf40fa7
fix(web): align the sidebar wordmark by baseline (#9578)
maria-rcks Sep 4, 2026
2675e3c
fix(antigravity): keep subagent batches active after launch (#9579)
t3dotgg Sep 4, 2026
09b81a3
fix(mobile): render workspace images in markdown file previews (#8769)
SunkenInTime Sep 4, 2026
b34ff8f
fix(usage): deduplicate CLI proxy subscription accounts (#9584)
juliusmarminge Sep 4, 2026
07891e9
fix(web): bound disconnected send toasts (#9592)
maria-rcks Sep 4, 2026
5783280
fix(desktop): restore panel titlebar interactions (#9591)
maria-rcks Sep 4, 2026
39abb9d
fix(connect): refresh authorization without disconnecting (#9582)
maria-rcks Sep 4, 2026
f559fe0
fix(web): show context meter in compact composer (#9430)
GuilhermeVieiraDev Sep 4, 2026
5cc369b
fix(pull-requests): refresh data after thread turns (#9496)
maria-rcks Sep 4, 2026
caab2fd
fix(web): render draft PRs in gray (#9537)
extoci Sep 4, 2026
f1e90e3
refactor(web): move usage provider controls to settings (#9599)
juliusmarminge Sep 4, 2026
00f8b7c
fix: show idle subagent batches without completion marks (#9616)
t3dotgg Sep 4, 2026
61a91b6
fix(web): group image views like other tool calls (#9597)
juliusmarminge Sep 4, 2026
c3b8825
fix: preserve tool icons on failed calls (#9606)
juliusmarminge Sep 4, 2026
99e3b72
fix(connect): diagnose incomplete headless server setup (#9602)
juliusmarminge Sep 4, 2026
4cc800c
fix(web): keep command palette above composer menus (#9613)
Gigioxx Sep 4, 2026
93c3ab4
fix(web): snooze menu no longer overlaps thread details (#9601)
RakshithBhat03 Sep 4, 2026
7062315
fix(web): match composer pull request state icons (#9375)
flamboh Sep 4, 2026
2152d44
fix(server): load OpenCode workspace skills via SDK to avoid 64KB CLI…
BarryHenryJr Sep 4, 2026
ec3ec6f
fix(web): mute sidebar branch name to match worktree icon (#9622)
maria-rcks Sep 4, 2026
5f878d2
fix(web,mobile): fold context compaction under settled turn folds (#9…
maria-rcks Sep 4, 2026
09d13de
feat(mobile): make chat text selectable on Android (#8779)
SunkenInTime Sep 4, 2026
14bf3f6
fix(web): toggle a single stashed prompt with Cmd+S (#9644)
t3dotgg Sep 4, 2026
eb77683
fix(server): prevent duplicate desktop clients after restart
seeb1337 Sep 4, 2026
acb34d3
merge: sync upstream/main through 5f878d2a85 (185 commits)
github-actions[bot] Sep 4, 2026
d487dfb
fix(web): resume Antigravity threads without repeated sign-in (#9647)
t3dotgg Sep 4, 2026
aa73e56
merge: latest fork/dev (#447) into sync/upstream-5f878d2
github-actions[bot] Sep 4, 2026
b6bb9d2
merge: sync remaining upstream/main through eb77683e55 (3 commits)
github-actions[bot] Sep 4, 2026
1aba350
fix(web): repair type errors from upstream merge weld
github-actions[bot] Sep 4, 2026
ad29f95
fix(mobile): restore firstValidTimestampMs after upstream weld
github-actions[bot] Sep 4, 2026
d5b9410
feat(mobile): paste the phone clipboard into the terminal (#9199)
lnieuwenhuis Sep 4, 2026
8d78799
fix(server): repair type errors from upstream merge weld
github-actions[bot] Sep 4, 2026
3e11f92
style: format leftover files from the upstream merge
github-actions[bot] Sep 4, 2026
acbbbd3
fix: satisfy full-workspace vp check after the upstream merge
github-actions[bot] Sep 4, 2026
f0a637b
fix(web): restore fork picker stats, remote preview, and timeline tests
github-actions[bot] Sep 4, 2026
ac07550
test(web): isolate browserDefaults tests that mock client settings
github-actions[bot] Sep 4, 2026
d8ce6c8
merge: include upstream through d5b9410086
github-actions[bot] Sep 4, 2026
f034732
feat(web): show which sidebar threads hold an unsent draft (#9658)
t3dotgg Sep 4, 2026
01f3e50
fix(server): unblock OpenCode approvals and stop (#9653)
t3dotgg Sep 4, 2026
10dfa82
fix(server): finish 3-way weld after upstream through d5b9410086
github-actions[bot] Sep 4, 2026
57b9418
test(server): expect Antigravity mode via session/set_mode
github-actions[bot] Sep 4, 2026
156d8b3
test(web): isolate useHandleNewThread tests that mock React
github-actions[bot] Sep 4, 2026
caa8a0d
fix(desktop): quit immediately on a second shortcut press (#9657)
t3dotgg Sep 4, 2026
560afff
fix(server): update Claude Agent SDK to 0.3.260 (#9135)
t3dotgg Sep 4, 2026
8ac5462
perf(server): stop loading message bodies for thread summaries (#9662)
t3dotgg Sep 4, 2026
cccd7e3
perf(web): speed up terminal snapshots (#9663)
t3dotgg Sep 4, 2026
082cab2
fix(web): show machine icons in the environment picker (#9668)
t3dotgg Sep 4, 2026
3b6be3e
perf(mobile): bound diff syntax highlighting work (#9673)
t3dotgg Sep 4, 2026
887ece3
perf(web): keep Markdown mounted during streaming (#9677)
t3dotgg Sep 4, 2026
7cf5b28
perf(mobile): skip unused legacy list work (#9679)
t3dotgg Sep 4, 2026
8e3aa32
perf(marketing): serve images at their display size (#9682)
t3dotgg Sep 4, 2026
27e6cc2
perf(server): cache and stream static web assets (#9669)
t3dotgg Sep 4, 2026
2263e13
perf(server): batch projector cursor writes (#9671)
t3dotgg Sep 4, 2026
f2e3764
perf(server): stop retaining unused OpenCode tool history (#9684)
t3dotgg Sep 4, 2026
44dc8ae
perf(mobile): reuse chat feed rows during streaming (#9688)
t3dotgg Sep 4, 2026
ec8b211
perf(server): omit repeated OpenCode progress logs (#9689)
t3dotgg Sep 4, 2026
2460649
perf(clients): avoid waiting to read cached relay tokens (#9691)
t3dotgg Sep 4, 2026
777f5bb
perf(mobile): reuse diff rows during comment edits (#9693)
t3dotgg Sep 4, 2026
dab5f6e
perf(web): defer composer draft serialization (#9695)
t3dotgg Sep 4, 2026
1587f24
feat(server): measure provider turn token usage (#9132)
t3dotgg Sep 4, 2026
c5345e8
merge: include upstream through 2460649935
github-actions[bot] Sep 4, 2026
9e82a68
merge: include remaining upstream through 1587f248dd
github-actions[bot] Sep 4, 2026
c026bd2
test: keep mobile steer feed existence after upstream Pick API
github-actions[bot] Sep 4, 2026
5a717b1
test(web): isolate Ghostty snapshot tests that mock wasm URLs
github-actions[bot] Sep 4, 2026
4aaebd9
test(web): isolate syntax highlighter cache test from ChatMarkdown
github-actions[bot] Sep 4, 2026
f18206e
fix(server): keep origin rebuild from failing shell-summary refresh
github-actions[bot] Sep 4, 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
  •  
  •  
  •  
6 changes: 6 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@ jobs:
- name: Typecheck
run: vpr typecheck

- name: Install browser secret helper build libraries
run: sudo apt-get update && sudo apt-get install -y libsecret-1-dev pkg-config

- name: Build desktop pipeline
run: vp run build:desktop

Expand Down Expand Up @@ -85,6 +88,9 @@ jobs:
- name: Ensure Electron runtime is installed
run: vp run --filter @t3tools/desktop ensure:electron

- name: Install browser secret helper build libraries
run: sudo apt-get update && sudo apt-get install -y libsecret-1-dev pkg-config

- name: Test
run: vp run --parallel --concurrency-limit 4 --filter '!t3' --filter '!@t3tools/monorepo' test

Expand Down
36 changes: 36 additions & 0 deletions .github/workflows/cursor-hygiene-webhook.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: Forward to Cursor hygiene

on:
push:
branches: [main]
pull_request:
types: [opened, reopened, ready_for_review]
issues:
types: [opened, closed, reopened]
discussion:
types: [created, closed, reopened]

permissions:
contents: read

jobs:
forward:
name: POST to Cursor
runs-on: ubuntu-24.04
steps:
- name: POST to Cursor
env:
URL: ${{ secrets.CURSOR_T3CODE_WEBHOOK_URL }}
AUTH: ${{ secrets.CURSOR_T3CODE_WEBHOOK_AUTH }}
run: |
set -euo pipefail
if [ -z "${URL:-}" ] || [ -z "${AUTH:-}" ]; then
echo "Missing CURSOR_T3CODE_WEBHOOK_URL or CURSOR_T3CODE_WEBHOOK_AUTH — skipping."
exit 0
fi
curl -fsS --max-time 60 -X POST "$URL" \
-H "Authorization: $AUTH" \
-H "Content-Type: application/json" \
-H "X-GitHub-Event: ${{ github.event_name }}" \
-H "X-GitHub-Delivery: ${{ github.run_id }}-${{ github.run_attempt }}" \
--data-binary @"${{ github.event_path }}"
6 changes: 6 additions & 0 deletions .github/workflows/fork-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,9 @@ jobs:
- name: Ensure Electron runtime is installed
run: vp run --filter @t3tools/desktop ensure:electron

- name: Install browser secret helper build libraries
run: sudo apt-get update && sudo apt-get install -y libsecret-1-dev pkg-config

- name: Check
run: vp check

Expand Down Expand Up @@ -144,6 +147,9 @@ jobs:
- name: Ensure Electron runtime is installed
run: vp run --filter @t3tools/desktop ensure:electron

- name: Install browser secret helper build libraries
run: sudo apt-get update && sudo apt-get install -y libsecret-1-dev pkg-config

- name: Test
run: vp run test

Expand Down
30 changes: 28 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,8 @@ jobs:
node-version-file: package.json
cache: true
run-install: true
env:
pnpm_config_cache_dir: ${{ runner.temp }}/pnpm-metadata

- id: release_meta
name: Resolve release version
Expand Down Expand Up @@ -179,6 +181,14 @@ jobs:
--current-tag "${{ steps.release_meta.outputs.tag }}" \
--github-output

# Share only the verification results, not the large registry metadata cache.
- name: Upload dependency verification
continue-on-error: true
uses: actions/upload-artifact@v7
with:
name: release-dependency-verification
path: ${{ runner.temp }}/pnpm-metadata/lockfile-verified.jsonl

quality:
name: Release quality checks
needs: [preflight]
Expand Down Expand Up @@ -211,6 +221,9 @@ jobs:
- name: Typecheck
run: vp run typecheck

- name: Install browser secret helper build libraries
run: sudo apt-get update && sudo apt-get install -y libsecret-1-dev pkg-config

- name: Test
run: vp run test

Expand Down Expand Up @@ -451,7 +464,18 @@ jobs:
path: ${{ steps.package_cache_path.outputs.path }}
key: windows-release-packages-v1-${{ matrix.arch }}-${{ hashFiles('pnpm-lock.yaml') }}

# pnpm checks the lockfile and policy before reusing this result. A missing
# artifact leaves the cache empty, so installation runs the checks again.
- name: Download dependency verification
continue-on-error: true
uses: actions/download-artifact@v8
with:
name: release-dependency-verification
path: ${{ runner.temp }}/pnpm-metadata

- name: Install desktop dependencies
env:
pnpm_config_cache_dir: ${{ runner.temp }}/pnpm-metadata
run: vp install --filter=@t3tools/desktop... --filter=t3... --filter=@t3tools/scripts...

- name: Cache resource monitor
Expand Down Expand Up @@ -508,12 +532,13 @@ jobs:
exit $code
}

- name: Install ImageMagick
- name: Install Linux desktop build libraries
if: matrix.platform == 'linux'
shell: bash
run: |
sudo apt-get update
sudo apt-get install -y libsecret-1-dev pkg-config
if ! command -v magick >/dev/null 2>&1 && ! command -v convert >/dev/null 2>&1; then
sudo apt-get update
sudo apt-get install -y imagemagick
fi

Expand Down Expand Up @@ -588,6 +613,7 @@ jobs:
- name: Build desktop artifact
shell: bash
env:
pnpm_config_cache_dir: ${{ runner.temp }}/pnpm-metadata
T3CODE_DESKTOP_REUSE_RESOURCE_MONITOR: ${{ steps.resource_monitor_cache.outputs.cache-hit == 'true' }}
CSC_LINK: ${{ secrets.CSC_LINK }}
CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }}
Expand Down
81 changes: 81 additions & 0 deletions .github/workflows/windows-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# On-demand Windows test lane. Manual only: nothing in the suite passes on
# Windows yet, so this exists to give contributors (and agents) a cloud Windows
# box to iterate against. Once the suite is green here, fold it into ci.yml.
#
# gh workflow run windows-tests.yml --ref <branch> -f package=packages/shared
# gh workflow run windows-tests.yml --ref <branch> -f package=apps/server \
# -f files="src/process/externalLauncher.test.ts src/cli/theme.test.ts"
# gh run watch && gh run view --log-failed
name: Windows Tests

on:
workflow_dispatch:
inputs:
package:
description: "Workspace directory to test, e.g. apps/server or packages/shared. Empty runs every package except apps/server."
type: string
default: ""
files:
description: "Space-separated test files relative to the package directory. Empty runs the package's whole suite. Requires package."
type: string
default: ""

permissions:
contents: read

jobs:
test:
name: Test (${{ inputs.package || 'all non-server' }})
runs-on: blacksmith-8vcpu-windows-2025
timeout-minutes: 45
steps:
- name: Checkout
uses: actions/checkout@v6
with:
sparse-checkout: |
/*
!/.repos/
sparse-checkout-cone-mode: false

# setup-vp's own cache restores a Linux-shaped store on Windows, which is
# slower than no cache (see #7975). Cache pnpm's Windows store directly.
- name: Setup Vite+
uses: voidzero-dev/setup-vp@v1
with:
node-version-file: package.json
cache: false
run-install: false

- name: Resolve package cache path
id: package_cache_path
shell: pwsh
run: '"path=$(vp pm cache dir)" >> $env:GITHUB_OUTPUT'

- name: Cache packages
uses: actions/cache@v6
with:
path: ${{ steps.package_cache_path.outputs.path }}
key: windows-tests-packages-v1-${{ hashFiles('pnpm-lock.yaml') }}

- name: Install
run: vp install

- name: Ensure Electron runtime is installed
if: inputs.package == '' || inputs.package == 'apps/desktop'
run: vp run --filter "@t3tools/desktop" ensure:electron

# `vp run ... test -- <files>` does not forward positional args to vitest,
# so file-scoped runs call `vp test run` inside the package instead.
- name: Test
shell: pwsh
run: |
$package = '${{ inputs.package }}'
$files = '${{ inputs.files }}'
if ($package -eq '') {
vp run --parallel --concurrency-limit 4 --filter '!t3' --filter '!@t3tools/monorepo' test
} elseif ($files -eq '') {
vp run --filter "./$package" test
} else {
Set-Location $package
vp test run $files.Split(' ')
}
Loading
Loading