Merge shuvcode-dev: upstream v1.0.210 → v1.0.218 + desktop rebrand#219
Merged
shuv1337 merged 88 commits intointegrationfrom Dec 30, 2025
Merged
Merge shuvcode-dev: upstream v1.0.210 → v1.0.218 + desktop rebrand#219shuv1337 merged 88 commits intointegrationfrom
shuv1337 merged 88 commits intointegrationfrom
Conversation
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: Github Action <action@github.com>
…#6359) Co-authored-by: Joachim Isaksson <joachim.isaksson@centiro.com>
- Simplify defaultServerUrl in app.tsx to match upstream implementation - Add shuv.ai domain support alongside opencode.ai - Remove lib/server-url.ts (URL validation/history now in server context) - Remove dialog-server-settings.tsx (use upstream's DialogSelectServer) - Simplify error.tsx by removing custom server URL configuration - Update layout.tsx to use DialogSelectServer instead of deleted dialog This reduces ~400 lines while maintaining full functionality.
| build: { | ||
| target: "esnext", | ||
| sourcemap: true, | ||
| // sourcemap: true, |
There was a problem hiding this comment.
style: Remove commented code instead of leaving it in. If sourcemaps should be disabled, remove the lines entirely.
Suggested change
| // sourcemap: true, | |
| }, |
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
Prompt To Fix With AI
This is a comment left during a code review.
Path: packages/app/vite.config.ts
Line: 159:159
Comment:
**style:** Remove commented code instead of leaving it in. If sourcemaps should be disabled, remove the lines entirely.
```suggestion
},
```
<sub>Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!</sub>
How can I resolve this? If you propose a fix, please make it concise.
Comment on lines
+17
to
+19
| // build: { | ||
| // sourcemap: true, | ||
| // }, |
There was a problem hiding this comment.
style: Remove commented code instead of leaving it in.
Suggested change
| // build: { | |
| // sourcemap: true, | |
| // }, | |
| }, |
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
Prompt To Fix With AI
This is a comment left during a code review.
Path: packages/desktop/vite.config.ts
Line: 17:19
Comment:
**style:** Remove commented code instead of leaving it in.
```suggestion
},
```
<sub>Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!</sub>
How can I resolve this? If you propose a fix, please make it concise.| await Promise.resolve() | ||
| .then(() => { | ||
| const notification = new Notification(title, { body: description ?? "" }) | ||
| notification.onclick = () => { |
There was a problem hiding this comment.
logic: getCurrentWindow() is called twice - the outer win variable is already available from line 104.
Suggested change
| notification.onclick = () => { | |
| notification.onclick = () => { | |
| void win.show().catch(() => undefined) |
Prompt To Fix With AI
This is a comment left during a code review.
Path: packages/desktop/src/index.tsx
Line: 111:111
Comment:
**logic:** `getCurrentWindow()` is called twice - the outer `win` variable is already available from line 104.
```suggestion
notification.onclick = () => {
void win.show().catch(() => undefined)
```
How can I resolve this? If you propose a fix, please make it concise.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Upstream Changes (v1.0.210 → v1.0.218)
Fork-specific Changes
Greptile Summary
This PR successfully merges upstream releases v1.0.210 through v1.0.218 while rebranding the desktop package from
@opencode-ai/desktopto@shuvcode/desktop.Major Changes:
__SHUVCODE__window API (maintains__OPENCODE__fallback for compatibility)ServerProvidercontext supporting multiple servers with health checksplatform.notify()API for both Tauri and webextractReasoningMiddlewareand model variants support from upstreamUpstream Features:
Confidence Score: 4/5
__OPENCODE__fallbacks). The rebrand is comprehensive, upstream sync is clean, and new features (notifications, server management) are properly implemented. Score reflects one minor issue: commented-out sourcemap configuration should be removed rather than commentedpackages/app/vite.config.tsandpackages/desktop/vite.config.tswhere sourcemap configs are commented outImportant Files Changed
__SHUVCODE__window API with opencode fallback, simplified default URL detectionSequence Diagram
sequenceDiagram participant User participant App as App.tsx participant ServerCtx as ServerProvider participant GlobalSDK as GlobalSDKProvider participant Platform as Platform API participant Backend as OpenCode Server User->>App: Load application App->>App: Determine defaultServerUrl<br/>(query param → __SHUVCODE__ → origin) App->>ServerCtx: Initialize with defaultServerUrl ServerCtx->>ServerCtx: Load persisted servers from localStorage ServerCtx->>Backend: Health check active server Backend-->>ServerCtx: Health status ServerCtx->>GlobalSDK: Provide server.url GlobalSDK->>Backend: Connect event stream GlobalSDK->>GlobalSDK: Create SDK client User->>User: Interacts with app Backend->>GlobalSDK: SSE events GlobalSDK->>App: Emit events to components opt User switches server User->>ServerCtx: Select different server ServerCtx->>ServerCtx: Update active URL ServerCtx->>GlobalSDK: New server.url GlobalSDK->>Backend: Reconnect to new server end opt Notification triggered Backend->>GlobalSDK: Event requires notification GlobalSDK->>Platform: notify(title, description, href) Platform->>Platform: Check permission & focus state Platform->>User: Show system notification User->>Platform: Click notification Platform->>App: Focus window & navigate to href end