feat(desktop): add message-level fork action#25584
Conversation
|
The following comment was made by an LLM, it may be inaccurate: Based on my search, I found one potentially related PR: Related PR:
No duplicate PRs found that are addressing the exact same fork action feature. |
|
In addition to the regular template PR I will say that: I have tested Electron-based OpenCode in Debian 13 GNU/Linux. I have not tested neither Electron-based OpenCode nor Tauri-v2-based OpenCode in Windows / MacOS. I have focused my testing on Electron-based OpenCode because someone said recently in one of issues that this was new beta beta App. I also have a video that documents how I have developed the feature: |
Well, for now I think I can ignore that PR. If that PR ever gets included onto OpenCode codebase I could revisit my own PR to check if that specific enable/disable switch should also trigger a different behaviour in the OpenCode Desktop (for now I don't think so) because in the Desktop there is no such a thing like a pop-up based on random clicks on the UI. |
|
Regarding how the Pull Request is supposed to be handled... Am I supposed to click on the 'Update branch' button every time there are new changes in the dev branch? I see that it creates additional merge commits. I'm not sure if I should manually rebase stuff in my own branch and force-push it so that the latest commit is always 'clean' on top of the dev branch. Or is it not needed at all and you will get rid of those |
4f0ffce to
5973b40
Compare

Issue for this PR
Closes #25582
Type of change
What does this PR do?
Fork to new session option was not present at the OpenCode Desktop app.
So I have added back the option thanks to OpenCode itself and OpenAI ChatGPT 5.3 Codex.
Regarding understanding why the changes work, well, it's my first time dealing with the OpenCode codebase so I'm a bit lost here. However I will say that I have insisted that changes follow contribution guidelines and that it should reuse or recreate TUI based behaviour as much as possible so hopefully that has ended up in a better PR than a regular one-shot vibe-coded PR.
How did you verify your code works?
bun installfrom repo root.bun run typecheckfrom repo root.bun run typecheckfrompackages/app.Screenshots / recordings
The new Fork the new session option:

How a new forked session is seen:

Checklist