Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
393 commits
Select commit Hold shift + click to select a range
469a5c8
fix(core): import cancellation event on Windows
andrasbacsai Jul 19, 2026
ffb45cf
test(chat): update stale modal assertion
andrasbacsai Jul 19, 2026
3ac9d3b
fix(tauri): consume terminal option on Windows
andrasbacsai Jul 19, 2026
cc17a68
fix: preserve branch names and silence metadata cleanup
andrasbacsai Jul 19, 2026
dff0c21
fix(chat): keep retryable Codex errors nonterminal
andrasbacsai Jul 19, 2026
fb838cb
fix: synchronize onboarding and attachment cleanup
andrasbacsai Jul 19, 2026
6c379e1
fix(web): preserve remote sessions and filesystem browsing
andrasbacsai Jul 19, 2026
6225f45
feat(installer): add interactive bind configuration
andrasbacsai Jul 19, 2026
6648bda
feat(remote): load server UI in child webview
andrasbacsai Jul 19, 2026
18ccc5f
fix(environment): exclude native remote shell from isNativeApp
andrasbacsai Jul 19, 2026
992dfb1
feat(remote): add native shell header controls
andrasbacsai Jul 19, 2026
d310ed4
feat(remote): keep bundled UI for remote backends
andrasbacsai Jul 20, 2026
e214ade
chore(release): bump version to 0.1.68
andrasbacsai Jul 20, 2026
c8a3234
feat(remote): keep server update offers in title bar
andrasbacsai Jul 20, 2026
f27c36e
fix(release): sync Cargo.lock versions after version bump
andrasbacsai Jul 20, 2026
d75a12b
ci(server-release): allow manual re-publish for existing tags
andrasbacsai Jul 20, 2026
5d463ed
ci(server-release): checkout repo before uploading server-latest.json
andrasbacsai Jul 20, 2026
c0ccbb0
fix(server-update): report host binary version so update clears
andrasbacsai Jul 20, 2026
469ca33
fix(ci): satisfy consistent-type-imports in CloneProjectModal test
andrasbacsai Jul 20, 2026
b933650
chore(or feat): add GitHub issue templates
alepouna Jul 20, 2026
86ba2e2
fix(git): run setup scripts without interactive shell
andrasbacsai Jul 20, 2026
6bca0ab
fix(auto-fix): show only installed backends in model picker
andrasbacsai Jul 20, 2026
08d919d
feat(grok): configure MCP and yolo investigations
andrasbacsai Jul 21, 2026
a25d7b6
fix(types): tighten MCP backend and hook mock types
andrasbacsai Jul 21, 2026
0da6c39
fix(types): tighten MCP backend and mock casts
andrasbacsai Jul 21, 2026
004496d
fix(backends): select installed backend fallbacks
andrasbacsai Jul 21, 2026
5ee05bc
fix(grok): harden one-shot structured output
andrasbacsai Jul 21, 2026
ac1f30f
fix(sessions): sync unread state across clients on mark-read (#519)
andrasbacsai Jul 21, 2026
f93c4cb
fix(chat): show project picker when last session closes (#503)
andrasbacsai Jul 21, 2026
ccd90cb
feat(chat): show Task/Agent subagent final reports (#504)
andrasbacsai Jul 21, 2026
6f74f40
feat(mcp): add project and worktree lifecycle tools (#520)
andrasbacsai Jul 21, 2026
8edbd40
fix(grok): use prompt files for one-shot runs
andrasbacsai Jul 21, 2026
c6748b0
feat: Add agent prompt copy button
alepouna Jul 22, 2026
bcc0954
docs(web): clarify desktop and headless web access
andrasbacsai Jul 22, 2026
958cf21
docs(readme): list additional supported AI CLI backends
andrasbacsai Jul 22, 2026
4c2e578
feat(mcp): add worktree shipping tools
andrasbacsai Jul 22, 2026
238d220
feat: Add agent prompt copy button (#529)
andrasbacsai Jul 22, 2026
6edb9db
feat(remote): install and connect headless servers via SSH
andrasbacsai Jul 23, 2026
852cd59
test(remote): use direct transport mock references
andrasbacsai Jul 23, 2026
581bf2b
chore: prepare for PR (#545)
andrasbacsai Jul 23, 2026
0a2c282
chore: prepare for PR (#547)
andrasbacsai Jul 23, 2026
22ea76e
chore: prepare for PR (#548)
andrasbacsai Jul 23, 2026
51945ae
chore: prepare for PR (#550)
andrasbacsai Jul 23, 2026
08a4489
chore: prepare for PR (#544)
andrasbacsai Jul 23, 2026
a683909
chore: prepare for PR (#543)
andrasbacsai Jul 23, 2026
55c633b
chore: prepare for PR (#538)
andrasbacsai Jul 23, 2026
41b9da7
chore: prepare for PR (#539)
andrasbacsai Jul 23, 2026
bc3300c
chore: prepare for PR (#536)
andrasbacsai Jul 23, 2026
5a7f326
chore: prepare for PR (#540)
andrasbacsai Jul 23, 2026
a3e80e5
feat(remote): open remote worktrees in local Zed over SSH
andrasbacsai Jul 23, 2026
8ec83d6
Merge remote-tracking branch 'origin/main'
andrasbacsai Jul 23, 2026
b950521
chore: prepare for PR (#549)
andrasbacsai Jul 23, 2026
087fbfa
chore: prepare for PR (#552)
andrasbacsai Jul 23, 2026
d55fb10
chore: prepare for PR (#553)
andrasbacsai Jul 23, 2026
6f4eebb
chore: prepare for PR (#554)
andrasbacsai Jul 23, 2026
8dd2530
chore: prepare for PR (#555)
andrasbacsai Jul 23, 2026
5dc259d
chore: prepare for PR (#551)
andrasbacsai Jul 23, 2026
4b1d176
chore: prepare for PR (#559)
andrasbacsai Jul 23, 2026
dd859af
chore: prepare for PR (#558)
andrasbacsai Jul 23, 2026
d989369
chore: prepare for PR (#541)
andrasbacsai Jul 23, 2026
8f92e07
chore: prepare for PR (#537)
andrasbacsai Jul 23, 2026
fc98aa7
chore: prepare for PR (#556)
andrasbacsai Jul 23, 2026
3bbf77e
chore: prepare for PR (#560)
andrasbacsai Jul 23, 2026
95a82bc
chore: prepare for PR (#557)
andrasbacsai Jul 23, 2026
a108b2e
chore: prepare for PR (#561)
andrasbacsai Jul 23, 2026
734d3e7
chore: prepare for PR (#563)
andrasbacsai Jul 23, 2026
03aec22
fix(open-in): allow remote worktrees in local editors
andrasbacsai Jul 23, 2026
8c2be2e
fix(canvas): show base branch with no sessions (#565)
andrasbacsai Jul 23, 2026
d93fe97
fix(remote): align connection versions and actions
andrasbacsai Jul 23, 2026
36840db
feat(editor): add VSCodium as a supported code editor (#534)
munikes Jul 23, 2026
42c8b48
chore: prepare for PR (#546)
andrasbacsai Jul 23, 2026
431a4ab
fix(investigation): recover remote worktree readiness
andrasbacsai Jul 23, 2026
8cd5048
feat(worktrees): create a worktree from any remote's default branch (…
fsioni Jul 23, 2026
b652f09
style: standardize TypeScript type declarations
andrasbacsai Jul 23, 2026
e713a7f
style(opencode): use is_empty for role validation
andrasbacsai Jul 23, 2026
701275d
chore: prepare for PR (#568)
andrasbacsai Jul 23, 2026
b60dfce
chore: prepare for PR (#569)
andrasbacsai Jul 23, 2026
7190ee4
feat(magic): automate bug and advisory investigations
andrasbacsai Jul 23, 2026
bedbbcb
fix(chat): preserve plans and PR worktree context
andrasbacsai Jul 24, 2026
e2100a8
feat(models): add Claude Opus 5 support
andrasbacsai Jul 24, 2026
db3de63
feat(review): batch selected findings into fix sessions
andrasbacsai Jul 24, 2026
add6ec6
Merge remote-tracking branch 'upstream/main' into sync/upstream-2026-07
figassis Jul 26, 2026
49792a0
feat(files): add worktree browser and inline editor
andrasbacsai Jul 26, 2026
e19c544
feat(magic): configure MCP and review fix modes
andrasbacsai Jul 27, 2026
c34493f
fix(chat): preserve history across provider switches
andrasbacsai Jul 28, 2026
0bc2191
fix(chat): handle Jean MCP tool calls in UI (#582)
andrasbacsai Jul 29, 2026
3fb4aa8
fix(chat): show bash tool call output (#581)
andrasbacsai Jul 29, 2026
12d049e
chore: prepare for PR (#593)
andrasbacsai Jul 29, 2026
c2b0a3f
chore: prepare for PR (#597)
andrasbacsai Jul 29, 2026
e33ebe8
chore: prepare for PR (#598)
andrasbacsai Jul 29, 2026
0afc13f
chore: prepare for PR (#599)
andrasbacsai Jul 29, 2026
ced8dd5
chore: prepare for PR (#600)
andrasbacsai Jul 29, 2026
0c91a36
chore: prepare for PR (#601)
andrasbacsai Jul 29, 2026
7291795
feat(worktrees): bulk investigate selected items
andrasbacsai Jul 29, 2026
5d147ad
fix(focus): restore keyboard focus after alt-tab (#602)
andrasbacsai Jul 29, 2026
6ce048b
fix(grok): surface rate limits and ACP errors (#603)
andrasbacsai Jul 29, 2026
40e7702
feat(chat): retain scroll position when switching sessions (#605)
andrasbacsai Jul 29, 2026
8b38abc
fix(opencode): surface child errors and stop POST retries (#604)
andrasbacsai Jul 29, 2026
ec675f3
fix(chat): make WSL Claude sessions reliable
CamAnNguyen Jul 21, 2026
9cf5483
fix(docker): install GitHub CLI in server images
midego1 Jul 25, 2026
2024f55
chore(or feat): add GitHub issue templates (#502)
andrasbacsai Jul 29, 2026
1848337
fix(chat): pipe WSL Claude stdin instead of redirecting
andrasbacsai Jul 29, 2026
2c4115a
test(docker): verify bundled GitHub CLI in server images
andrasbacsai Jul 29, 2026
51a3165
Merge pull request #570 from midego1/fix/docker-github-cli
andrasbacsai Jul 29, 2026
e4e9094
fix(terminal): preserve unicode input in web access
toanalien Jul 20, 2026
9b3a75b
Merge pull request #606 from coollabsio/fix/web-terminal-vietnamese-u…
andrasbacsai Jul 30, 2026
ca60423
fix: restore PR checkout links and HTTP copy
andrasbacsai Jul 30, 2026
0ab43b8
Fix web terminal fast-typing input ordering (#494)
toanalien Jul 30, 2026
adcaf95
Merge remote-tracking branch 'origin/main' into fix/wsl-pid0-silent-hang
andrasbacsai Jul 30, 2026
e5677b5
Merge pull request #518 from CamAnNguyen/fix/wsl-pid0-silent-hang
andrasbacsai Jul 30, 2026
4950e4b
chore: prepare for PR (#607)
andrasbacsai Jul 30, 2026
41460bd
fix(unread): remove finished-session badge glow
andrasbacsai Jul 30, 2026
d983626
chore: prepare for PR (#612)
andrasbacsai Jul 30, 2026
3e9deda
chore: prepare for PR (#608)
andrasbacsai Jul 30, 2026
47ad6c0
chore: prepare for PR (#609)
andrasbacsai Jul 30, 2026
7401e08
chore: prepare for PR (#610)
andrasbacsai Jul 30, 2026
0b80f34
chore: prepare for PR (#611)
andrasbacsai Jul 30, 2026
98a99e2
feat(checkpoints): add AI change checkpoints and restore (#614)
andrasbacsai Jul 30, 2026
7becad2
feat: add safe turn restores and sharper display defaults
andrasbacsai Jul 31, 2026
a3925cb
feat(chat): add adaptive thinking/effort level (#613)
andrasbacsai Jul 31, 2026
ddf0160
feat(checkpoints): clarify checkpoint undo options
andrasbacsai Jul 31, 2026
fe8640c
feat(projects): clean up unused PR fork remotes
andrasbacsai Jul 31, 2026
f85214a
chore: prepare for PR (#616)
andrasbacsai Jul 31, 2026
64ed546
feat(chat): show provider switch separators
andrasbacsai Jul 31, 2026
8e81809
chore: prepare for PR (#617)
andrasbacsai Jul 31, 2026
4940b39
chore: prepare for PR (#618)
andrasbacsai Jul 31, 2026
a29323a
feat(chat): show labeled actions below messages
andrasbacsai Jul 31, 2026
99104ed
fix(ui): prevent display-scale zoom feedback loops
fsioni Jul 31, 2026
6f9c31e
fix(open-in): restore web browser editor after upstream merge
figassis Jul 31, 2026
9c7e317
feat(terminal): add mobile input controls
andrasbacsai Jul 31, 2026
01ed348
feat(terminal): add graduated arrow gesture controls
andrasbacsai Jul 31, 2026
a576417
fix(docker): allow tokenless wildcard bind in headless container
figassis Aug 1, 2026
13f6632
fix(chat): wrap long prompts on mobile viewports
andrasbacsai Aug 1, 2026
13f3ce4
refactor(checkpoints): simplify checkpoint sorting
andrasbacsai Aug 1, 2026
7f65861
fix(projects): use worktree base branches
andrasbacsai Aug 1, 2026
d859b65
fix(ci): resolve clippy and Windows WebView2 ProcessFailedKind
andrasbacsai Aug 1, 2026
f17612d
feat(terminal): add standalone CLI login terminal
andrasbacsai Aug 1, 2026
11a7bd7
feat(terminal): add copy and paste controls
andrasbacsai Aug 1, 2026
a12315c
fix(terminal): add selection methods to ghostty-web types
andrasbacsai Aug 1, 2026
fb6f447
fix(terminal): satisfy consistent-type-imports in test mock
andrasbacsai Aug 1, 2026
619b081
fix(ci): make Windows Rust tests path-safe
andrasbacsai Aug 1, 2026
a1cc419
fix(ci): disable autocrlf in checkpoint test repos
andrasbacsai Aug 1, 2026
13fc4ea
feat(linear): expose formal issue relations (blocks / blocked-by) (#13)
figassis Aug 1, 2026
98353f9
refactor(file-viewer): always use built-in editor
andrasbacsai Aug 2, 2026
b0bb1b5
chore(release): bump version to 0.1.70
andrasbacsai Aug 2, 2026
a12ccf9
feat(review): filter resolved and outdated comments
andrasbacsai Aug 2, 2026
d04d964
fix(ci): resolve libunwind conflict for GStreamer deps
andrasbacsai Aug 2, 2026
bef9633
fix(codex): detect bubblewrap sandbox and use device-auth login
andrasbacsai Aug 2, 2026
521c3bb
fix(ui): settle display-scale zoom bounce side-effects
andrasbacsai Aug 3, 2026
39b1d00
Merge pull request #619 from fsioni/fix/stabilize-display-scale-zoom
andrasbacsai Aug 3, 2026
0c79487
feat(ui): add font prefs and harden chat, editor, web replay
andrasbacsai Aug 3, 2026
10d3401
chore(release): bump version to 0.1.71
andrasbacsai Aug 3, 2026
dee4939
fix(ui): store zoom levels in client-local storage (#636)
andrasbacsai Aug 3, 2026
f8cac67
fix(ui): dismiss stuck overlays on remote disconnect (#637)
andrasbacsai Aug 3, 2026
1a7293d
fix(file-browser): stop infinite re-render when files are undefined (…
andrasbacsai Aug 3, 2026
46aa6d6
fix(chat): truncate UTF-8 strings on char boundaries (#639)
andrasbacsai Aug 3, 2026
f58d209
fix(transport): prefer remote native-open over ssh:// remap (#638)
andrasbacsai Aug 3, 2026
98607be
fix(codex): support current skill invocation syntax (#633)
fsioni Aug 3, 2026
4f4cebe
feat(codex): track native terminal attention state (#634)
fsioni Aug 4, 2026
fc24cc1
fix(codex): always allow YOLO promote on command approvals (#644)
andrasbacsai Aug 4, 2026
5092e6d
fix(opencode): handle permission requests that freeze sessions (#642)
andrasbacsai Aug 4, 2026
41b988b
fix(terminal): floor login PTY size so TUI CLIs stay usable (#646)
andrasbacsai Aug 4, 2026
d93880a
feat(agent-browser): add managed install and MCP settings (#643)
andrasbacsai Aug 4, 2026
6b046ee
fix(git): emit raw UTF-8 paths for non-ASCII names (#647)
andrasbacsai Aug 4, 2026
7d2e827
fix(terminal): keep Ctrl-C sticky and kill job-control orphans (#645)
andrasbacsai Aug 4, 2026
1e95e73
feat(git): add combined sync button and base64 file preview
andrasbacsai Aug 4, 2026
15f84b4
fix(chat): resolve managed CLI paths and fold Grok todos
andrasbacsai Aug 4, 2026
3c82cac
fix(git): compact sync badge to behind/ahead count text
andrasbacsai Aug 4, 2026
9cea39a
fix(git): use single Syncing toast for pull-then-push sync
andrasbacsai Aug 4, 2026
59c1ef1
fix(chat): guard todo merge when tool call id is missing
andrasbacsai Aug 4, 2026
ec35d42
fix(clippy): use matches! and drop needless return
andrasbacsai Aug 4, 2026
28ec480
fix(test): restore remote mocks and icon path fixtures
andrasbacsai Aug 4, 2026
8f53648
fix(file-browser): BFS walk skips vendor trees; hide mid-turn restore
andrasbacsai Aug 4, 2026
59a8aa6
feat: bootstrap projects and replace CodeMirror with Pierre
andrasbacsai Aug 5, 2026
7c00b90
feat(ui-state): persist and restore session chat zen mode
andrasbacsai Aug 5, 2026
1cd15ff
feat(chat): add single-session mode and mobile zen composer
andrasbacsai Aug 6, 2026
8e3469e
feat(chat): put clear context by zen and hide mobile zen dock
andrasbacsai Aug 6, 2026
b1c4f4b
feat(chat): remove single-session mode; always clear context
andrasbacsai Aug 6, 2026
d5132c7
feat(chat): polish zen mode chrome and add clear-context command
andrasbacsai Aug 6, 2026
f52803c
fix(chat): use compact textarea height in desktop zen mode
andrasbacsai Aug 6, 2026
bdd92d4
fix(chat): use compact zen composer layout on desktop too
andrasbacsai Aug 6, 2026
ea3f835
fix(chat): hide focus hint and dock in zen on all viewports
andrasbacsai Aug 6, 2026
c5250d5
feat: show remote server version; fix modal clear-session
andrasbacsai Aug 6, 2026
c7c94f9
fix(preferences): guard remote server info query without connection
andrasbacsai Aug 6, 2026
d990365
fix(window): allow native start-resize-dragging permission
andrasbacsai Aug 6, 2026
93c65cc
feat(chat): force steer with mod+enter while sending
andrasbacsai Aug 6, 2026
14d7cbb
feat(chat): keep zen toolbar mounted; collapse user prompts
andrasbacsai Aug 6, 2026
4cddd29
fix(chat): drop zen prompt collapse and mobile clear-context
andrasbacsai Aug 6, 2026
aa1985c
fix(chat): simplify zen mode UI and keep desktop toolbar
andrasbacsai Aug 6, 2026
d1560d4
fix(codex): install code-mode host beside Codex CLI
andrasbacsai Aug 7, 2026
31b1d17
fix(chat): pass review backend/provider into fix sessions (#654)
andrasbacsai Aug 7, 2026
bd7db30
fix(backends): list installed CLIs in pickers; gate login at send (#653)
andrasbacsai Aug 7, 2026
73af142
fix(codex): install missing code-mode host after Jean update
andrasbacsai Aug 7, 2026
afbf8d7
Merge remote-tracking branch 'origin/main'
andrasbacsai Aug 7, 2026
19d05e7
fix(chat): grow zen composer for two lines and show send
andrasbacsai Aug 7, 2026
901ce0d
fix(chat): treat Cmd/Ctrl alone as steer while sending
andrasbacsai Aug 7, 2026
61655e7
refactor(ui): share JeanLoadingScreen for app and project loading
andrasbacsai Aug 7, 2026
7ed194b
fix(chat): allow editing queued prompts for steerable backends
andrasbacsai Aug 7, 2026
5e8258f
test(chat): mock pierre Editor as constructable vi.fn()
andrasbacsai Aug 7, 2026
14e0c91
fix(ci): pin zune-core 0.5.1 to unblock clippy
andrasbacsai Aug 7, 2026
2314c57
fix(test): unblock App remote and ChatWindow context regressions
andrasbacsai Aug 7, 2026
9b46e7b
fix(chat): keep tool-row file details at compact font size
andrasbacsai Aug 7, 2026
32a3b29
chore(release): bump version to 0.1.72
andrasbacsai Aug 7, 2026
a8b6eeb
fix(chat): group open-in-editor with close in MessageDiffModal
andrasbacsai Aug 8, 2026
c980034
fix(chat): complete Codex agents on normal turn end
andrasbacsai Aug 8, 2026
72976b6
feat(chat): add Antigravity CLI as a full chat backend
andrasbacsai Aug 9, 2026
895c8b3
feat(onboarding): check and install host prerequisites
Aug 9, 2026
1807700
fix(chat): cache conflict resolution sessions immediately
andrasbacsai Aug 9, 2026
930d6f4
feat(skills): discover skills in nested category directories (#666)
andrasbacsai Aug 10, 2026
1b3368b
feat(preferences): add AI server warming toggle (#667)
andrasbacsai Aug 10, 2026
bc455f2
feat: improve CLI installs and empty worktree session handling
andrasbacsai Aug 10, 2026
bea5cf2
fix: improve CLI fallbacks, terminal paste, and model selection
andrasbacsai Aug 10, 2026
fd9efd1
feat(chat): copy URLs from links in message context menus
andrasbacsai Aug 10, 2026
a8b47cb
fix(chat): confirm closing empty worktrees with Cmd+W
andrasbacsai Aug 10, 2026
365bb85
chore: ignore local Superpowers artifacts
andrasbacsai Aug 10, 2026
52d6a03
fix(chat): align YOLO permissions and session state across chat UI
andrasbacsai Aug 11, 2026
09ed2a5
feat(magic): generate release notes in an interactive chat session
andrasbacsai Aug 11, 2026
f081b36
chore(release): bump version to 0.1.73
andrasbacsai Aug 11, 2026
58d459a
fix(release-notes): require fenced Markdown output
andrasbacsai Aug 11, 2026
eccdcf8
feat(release-notes): apply custom prompts and add GitHub release link
andrasbacsai Aug 11, 2026
da398b2
fix(release-notes): use custom prompts without added instructions
andrasbacsai Aug 11, 2026
ca2fdb8
test(chat): fix environment module mock typing
andrasbacsai Aug 12, 2026
7eda6c8
fix(clipboard): prevent web access to the server clipboard
andrasbacsai Aug 12, 2026
cd556c6
fix(workflows): continue investigating fixes until CI is green
andrasbacsai Aug 12, 2026
fefff94
fix(prompts): sync defaults and workflow retry behavior
andrasbacsai Aug 12, 2026
f109aea
fix(onboarding): skip local setup selection in web access
andrasbacsai Aug 12, 2026
8dc2748
fix: improve session defaults, branch switching, and push errors
andrasbacsai Aug 12, 2026
a383e6e
fix(projects): prevent base sessions from using PR-aware pushes
andrasbacsai Aug 12, 2026
9d556bb
feat: split preference ownership and support unlinking pull requests
andrasbacsai Aug 12, 2026
e8f7750
feat(grok): default to Grok 4.6 across backends and UI
andrasbacsai Aug 12, 2026
ad8ffc4
feat(terminal): expose run environments and opt-out recaps
andrasbacsai Aug 13, 2026
03a6ab1
feat: resolve project configs and preview binary diff files
andrasbacsai Aug 14, 2026
1e49f09
feat: support session moves and version-only release notes
andrasbacsai Aug 17, 2026
d1f45d3
feat(sentry): load issue context from context modal
andrasbacsai Aug 17, 2026
be23613
feat(sentry): manage loaded issue context in chat and context modal
andrasbacsai Aug 17, 2026
08b909c
style(chat): format toolbar controls and add Sentry context fixtures
andrasbacsai Aug 17, 2026
9e8d523
feat(sentry): enable investigation of loaded issue contexts
andrasbacsai Aug 17, 2026
b3a0ea0
feat(release-notes): require v-prefixed release titles
andrasbacsai Aug 17, 2026
206dcf0
refactor(chat): sort session tabs by most recent updates
andrasbacsai Aug 18, 2026
d24bdba
refactor(chat): simplify reviews and persist setup-script dismissal
andrasbacsai Aug 18, 2026
6c05eac
fix(chat): allow editing queued steerable messages
andrasbacsai Aug 19, 2026
df0dfd0
fix(chat): align review send actions and preserve input drafts
andrasbacsai Aug 19, 2026
c8755e2
fix(ci): restore cross-platform preflight checks
andrasbacsai Aug 20, 2026
970bdc8
test(ci): remove timing-sensitive script output assertion
andrasbacsai Aug 20, 2026
4a6c74e
fix(chat): render Claude code-review findings inline
andrasbacsai Aug 23, 2026
9bebf32
feat(chat): add smoke-test workflow and run environment MCP tool
andrasbacsai Aug 24, 2026
567ca08
feat(chat): make smoke tests worktree-based and persist run environments
andrasbacsai Aug 25, 2026
88145dc
fix(ci): satisfy Rust 1.98 clippy
andrasbacsai Aug 25, 2026
41390c6
feat(magic): allow smoke tests from the worktree canvas
andrasbacsai Aug 25, 2026
2a2a846
Merge upstream coollabsio/jean main into sync branch (2026-08-29)
figassis Aug 29, 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
  •  
  •  
  •  
190 changes: 190 additions & 0 deletions .ai/gemini-cli-feasibility.md

Large diffs are not rendered by default.

39 changes: 39 additions & 0 deletions .ai/lessons.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Lessons

## Keep task tracking proportional

- The project instructions require work to be tracked in `.ai/todo.md`, but do not expand it with excessive implementation detail.
- For small follow-up fixes, add only a short checklist and result instead of a long duplicate report.
- Explain that `.ai/todo.md` is internal task tracking when the user asks why it changes.

## Normalize backend tool vocabularies at the display boundary

- Do not assume similar tools share names or parameter casing across backends.
- Capture real stream events, map exact backend names and keys to Jean's common renderer contract, and keep an explicit readable fallback for known native tools.
- Test both live-looking tool inputs and persisted inputs so reload does not reintroduce unhandled labels.

## Wire backend capability semantics end to end

- A backend flag is not supported until the frontend selects the correct setting type and every send path forwards it.
- For persistent-only MCP backends, add discovery and installers, but do not show a per-session switch that the CLI cannot honor.
- Test the exact CLI value set and the generated persistent config, not only the low-level command builder.

## Do not confuse incomplete work with upstream limits

- When the user asks for production readiness, classify each gap as either implementable in Jean or unavailable in the external backend.
- Do not call work complete while implementable checklist items remain.
- Do not use an upstream limitation to excuse adjacent Jean work that is still possible.
- State verification limits separately from implementation limits.

## Verify product migrations against the current official CLI

- Do not treat an old package registry entry as proof that a product is still the supported user path.
- Check the official product site, migration guide, installer, release manifest, and downloaded binary help before designing an integration.
- Do not rename an integration while keeping the old transport assumptions. Reclassify the backend from its current documented protocol.
- Do not install similarly named third-party packages. For Antigravity, use Google's official native installer and release manifest, not the unrelated npm package.

## Register live and history parsers together

- A new streaming backend needs two parser paths: the live response parser and the run-log reconstruction parser.
- Route persisted runs by the per-run backend or model prefix before using a generic fallback parser.
- Test history reload with the backend's real NDJSON format. Live streaming success does not prove that the response survives a query refresh or app reload.
292 changes: 292 additions & 0 deletions .ai/todo.md

Large diffs are not rendered by default.

58 changes: 58 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: Bug report
description: Report a problem with Jean
title: "[Bug]: "
body:
- type: textarea
id: description
attributes:
label: Describe the issue
description: Tell us what happened and what you expected to happen.
placeholder: Please describe the issue and what you expected to happen.
validations:
required: true

- type: textarea
id: replication
attributes:
label: Replication
description: What steps can we follow to reproduce the issue?
placeholder: |
1. ...
2. ...
3. ...

- type: dropdown
id: running_mode
attributes:
label: How are you running Jean?
options:
- App
- Headless
validations:
required: true

- type: input
id: operating_system
attributes:
label: Operating system
description: If you are running the app, which OS are you using?
placeholder: macOS 15, Windows 11, Ubuntu 24.04, etc.

- type: input
id: jean_version
attributes:
label: Jean version
placeholder: 0.1.68
validations:
required: true

- type: dropdown
id: interaction_method
attributes:
label: How are you interacting with Jean?
options:
- Via the app
- Via the web
- Remotely via another Jean app
validations:
required: true
14 changes: 14 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
blank_issues_enabled: false

contact_links:
- name: 🤔 Questions and Community Support
url: https://coollabs.io/discord
about: If you have any questions, reach out to us on Discord for community support.

- name: 🐛 Bug Report
url: https://github.com/coollabsio/jean/issues/new?template=bug_report.yml
about: Report a problem with Jean.

- name: 💡 Feature Request
url: https://github.com/coollabsio/jean/issues/new?template=feature_request.yml
about: Suggest an idea or improvement for Jean.
32 changes: 32 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Feature request
description: Suggest an idea or improvement for Jean
title: "[Feature]: "
body:
- type: textarea
id: request
attributes:
label: Describe the feature
description: What would you like Jean to do?
placeholder: Tell us about the feature or improvement you would like to see.
validations:
required: true

- type: textarea
id: motivation
attributes:
label: Why would this be useful?
description: What problem would this solve, or what use case would it support?
placeholder: Describe the problem or workflow this feature would improve.

- type: textarea
id: alternatives
attributes:
label: Alternatives considered
description: Have you considered any alternative solutions or workarounds?
placeholder: Share any alternatives or workarounds you have tried.

- type: textarea
id: additional_context
attributes:
label: Additional context
description: Add any other context, examples, or screenshots.
7 changes: 7 additions & 0 deletions .github/workflows/preflight.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,13 @@ jobs:
- name: Lint
run: bun run lint

# Tauri build script requires bundle.resources path `../dist` to exist
# (see tauri.conf.json). Keep this even if dist/.gitkeep is missing.
# Use bash so Windows runners don't use PowerShell mkdir (fails if dist exists).
- name: Ensure dist exists for Tauri resources
shell: bash
run: mkdir -p dist && touch dist/.gitkeep

- name: Rust clippy
run: bun run rust:clippy

Expand Down
32 changes: 23 additions & 9 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,16 +42,9 @@ jobs:
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
echo "Preparing release $RELEASE_TAG ($VERSION)"

preflight:
name: Preflight
needs: prepare-release
uses: ./.github/workflows/preflight.yml
with:
version: ${{ needs.prepare-release.outputs.tag }}

publish-tauri:
name: Publish Tauri (${{ matrix.platform }})
needs: [prepare-release, preflight]
needs: prepare-release
permissions:
contents: write
strategy:
Expand All @@ -78,7 +71,28 @@ jobs:
if: startsWith(matrix.platform, 'ubuntu')
run: |
sudo apt-get update
sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf xdg-utils libfuse2
# GitHub-hosted Ubuntu 22.04 runners ship LLVM libunwind-*-dev packages
# that conflict with system libunwind-dev required by libgstreamer1.0-dev.
# Without this, apt fails with "held broken packages".
# See: https://github.com/orgs/community/discussions/113480
sudo apt-get remove -y 'libunwind-*-dev' || true
# gstreamer packages are required when bundleMediaFramework is true so
# AppImage ships plugins WebKit needs (appsrc/appsink/autoaudiosink).
# See: https://github.com/coollabsio/jean/issues/100
sudo apt-get install -y \
libwebkit2gtk-4.1-dev \
libappindicator3-dev \
librsvg2-dev \
patchelf \
xdg-utils \
libfuse2 \
libunwind-dev \
libgstreamer1.0-dev \
libgstreamer-plugins-base1.0-dev \
gstreamer1.0-plugins-base \
gstreamer1.0-plugins-good \
gstreamer1.0-plugins-bad \
gstreamer1.0-libav

- name: Setup Bun
uses: oven-sh/setup-bun@v2
Expand Down
Loading
Loading