Skip to content

Conversation

@xavierarpa
Copy link

No description provided.

Copilot AI and others added 9 commits January 16, 2026 10:57
Co-authored-by: xavierarpa <44328679+xavierarpa@users.noreply.github.com>
Co-authored-by: xavierarpa <44328679+xavierarpa@users.noreply.github.com>
…llation

feat: Add Windows build workflow and installation docs
Co-authored-by: xavierarpa <44328679+xavierarpa@users.noreply.github.com>
…e comments

Co-authored-by: xavierarpa <44328679+xavierarpa@users.noreply.github.com>
Co-authored-by: xavierarpa <44328679+xavierarpa@users.noreply.github.com>
Fix Windows OpenCode CLI detection for npm-installed opencode-ai
Copilot AI review requested due to automatic review settings January 16, 2026 13:10
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds comprehensive Windows support to OpenWork, enabling it to be easily installed and used on Windows via MSI and NSIS installers. The changes include Windows-specific executable detection, npm global package support, updated installation instructions, and a dedicated Windows release workflow.

Changes:

  • Added Windows-specific OpenCode CLI detection supporting both .exe and .cmd wrappers
  • Updated error messages to include npm-based installation instructions for Windows users
  • Created automated Windows release workflow for building MSI and NSIS installers
  • Updated documentation with Windows-specific installation steps

Reviewed changes

Copilot reviewed 4 out of 6 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
src/App.tsx Updated error messages to include npm installation method alongside existing Homebrew/script options
src-tauri/src/lib.rs Added Windows-specific executable detection for opencode.exe and opencode.cmd, npm global bin directory support, and platform-specific error messages
src-tauri/Cargo.lock Bumped version from 0.1.3 to 0.1.6
package-lock.json Added complete lockfile with version 0.1.6
README.md Added comprehensive Windows installation instructions including MSI installer setup and OpenCode CLI prerequisites
.github/workflows/release-windows.yml New GitHub Actions workflow for automated Windows releases with MSI and NSIS bundle support

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +119 to +127
fn npm_global_bin_dir() -> Option<PathBuf> {
// npm global bin on Windows is typically %APPDATA%\npm
if let Ok(appdata) = env::var("APPDATA") {
if !appdata.trim().is_empty() {
return Some(PathBuf::from(appdata).join("npm"));
}
}
None
}
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Windows-specific paths should use backslashes or be normalized for Windows. The path %APPDATA%\npm is correct, but consider documenting that this is specifically for npm global installations. Users might also have Node.js installed via nvm-windows or other tools where the npm global directory could be in a different location.

Copilot uses AI. Check for mistakes.
Comment on lines +132 to +136
let home = home_dir();

if let Some(ref h) = home {
candidates.push(h.join(".opencode").join("bin").join(OPENCODE_EXECUTABLE));
}
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The variable home is captured but only used within conditional blocks. While the code is correct, consider making the structure more explicit by moving the let home = home_dir(); declaration inside the conditional blocks or using a more concise pattern. This is a minor style preference.

Copilot uses AI. Check for mistakes.
Comment on lines +26 to +34
| **Windows** | `OpenWork_{version}_x64-setup.exe` or `OpenWork_{version}_x64_en-US.msi` | Run the installer, then launch OpenWork |
| **macOS (Apple Silicon)** | `OpenWork_{version}_aarch64.dmg` | Drag to Applications, then open |
| **macOS (Intel)** | `OpenWork_{version}_x64.dmg` | Drag to Applications, then open |

> **Prerequisite**: You need [OpenCode CLI](https://opencode.ai) installed on your system. OpenWork will detect it automatically or guide you through installation on first launch.
### Windows Installation (1-Click)

1. Download `OpenWork_{version}_x64-setup.exe` from [Releases](https://github.com/different-ai/openwork/releases)
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The README mentions that the version format should include the version number (e.g., OpenWork_0.1.6_x64-setup.exe), but the actual release artifacts will use underscores between version segments as generated by Tauri. Verify that the documentation examples match the actual artifact naming convention from the build process.

Suggested change
| **Windows** | `OpenWork_{version}_x64-setup.exe` or `OpenWork_{version}_x64_en-US.msi` | Run the installer, then launch OpenWork |
| **macOS (Apple Silicon)** | `OpenWork_{version}_aarch64.dmg` | Drag to Applications, then open |
| **macOS (Intel)** | `OpenWork_{version}_x64.dmg` | Drag to Applications, then open |
> **Prerequisite**: You need [OpenCode CLI](https://opencode.ai) installed on your system. OpenWork will detect it automatically or guide you through installation on first launch.
### Windows Installation (1-Click)
1. Download `OpenWork_{version}_x64-setup.exe` from [Releases](https://github.com/different-ai/openwork/releases)
| **Windows** | `OpenWork_{version}_x64-setup.exe` or `OpenWork_{version}_x64_en-US.msi` | Run the installer, then launch OpenWork. Tauri uses underscores in the version, e.g. `OpenWork_0_1_6_x64-setup.exe` for version `0.1.6`. |
| **macOS (Apple Silicon)** | `OpenWork_{version}_aarch64.dmg` | Drag to Applications, then open (e.g. `OpenWork_0_1_6_aarch64.dmg` for version `0.1.6`). |
| **macOS (Intel)** | `OpenWork_{version}_x64.dmg` | Drag to Applications, then open (e.g. `OpenWork_0_1_6_x64.dmg` for version `0.1.6`). |
> **Prerequisite**: You need [OpenCode CLI](https://opencode.ai) installed on your system. OpenWork will detect it automatically or guide you through installation on first launch.
### Windows Installation (1-Click)
1. Download `OpenWork_{version}_x64-setup.exe` from [Releases](https://github.com/different-ai/openwork/releases) (Tauri uses underscores in `{version}`, e.g. `OpenWork_0_1_6_x64-setup.exe` for version `0.1.6`)

Copilot uses AI. Check for mistakes.
1. Download `OpenWork_{version}_x64-setup.exe` from [Releases](https://github.com/different-ai/openwork/releases)
2. Run the installer
3. Launch **OpenWork** from Start Menu
4. If OpenCode CLI is not installed, OpenWork will show instructions (install via [Scoop](https://scoop.sh), [Chocolatey](https://chocolatey.org), or from https://opencode.ai/install)
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The documentation mentions Scoop and Chocolatey as installation methods but doesn't provide the actual package names or commands. Add specific installation commands for users, such as scoop install opencode or choco install opencode-ai, to make the instructions more actionable.

Suggested change
4. If OpenCode CLI is not installed, OpenWork will show instructions (install via [Scoop](https://scoop.sh), [Chocolatey](https://chocolatey.org), or from https://opencode.ai/install)
4. If OpenCode CLI is not installed, OpenWork will show instructions (or you can install manually via [Scoop](https://scoop.sh) with `scoop install opencode`, [Chocolatey](https://chocolatey.org) with `choco install opencode-ai`, or from https://opencode.ai/install)

Copilot uses AI. Check for mistakes.
status: -1,
stdout: String::new(),
stderr: "Guided install is not supported on Windows yet. Install OpenCode via Scoop/Chocolatey or https://opencode.ai/install, then restart OpenWork.".to_string(),
stderr: "Guided install is not supported on Windows yet. Install OpenCode via:\n- npm install -g opencode-ai\n- https://opencode.ai/install\n\nThen restart OpenWork.".to_string(),
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The error message references "Scoop/Chocolatey" as installation methods but doesn't provide the actual commands. Consider adding the specific commands users should run, such as scoop install opencode or choco install opencode, to make the error message more actionable.

Suggested change
stderr: "Guided install is not supported on Windows yet. Install OpenCode via:\n- npm install -g opencode-ai\n- https://opencode.ai/install\n\nThen restart OpenWork.".to_string(),
stderr: "Guided install is not supported on Windows yet. Install OpenCode via one of:\n- npm install -g opencode-ai\n- scoop install opencode-ai\n- choco install opencode-ai\n- https://opencode.ai/install\n\nThen restart OpenWork.".to_string(),

Copilot uses AI. Check for mistakes.
Copilot AI and others added 3 commits January 16, 2026 14:13
Co-authored-by: xavierarpa <44328679+xavierarpa@users.noreply.github.com>
…-sidebar

Add Chrome extension with Side Panel support
@benjaminshafii
Copy link
Member

Thanks for working on Windows improvements — we really want OpenWork to work on Windows.

For the core “Windows capability” work, I’m going to use #17 as the main base (it’s closer to the CLI detection/config-path problem and is more focused).

This PR is hard to review/merge as-is because it mixes in a lot of unrelated surface area:

  • chrome-extension/** (new app + assets)
  • introduces package-lock.json files (repo seems pnpm-based today)
  • extra lockfile/version churn

Could you split this into smaller PRs? For example:

  1. a PR that only contains the Windows release workflow (.github/workflows/release-windows.yml) + minimal README updates, and
  2. any Windows detection changes either dropped (if covered by feat: Add Windows compatibility for OpenCode CLI detection #17) or moved into feat: Add Windows compatibility for OpenCode CLI detection #17.

If you have a short video showing the Windows installer/build workflow producing a working MSI/NSIS and OpenWork launching on Windows, that would be super helpful.

Thank you again — I really want this to work on Windows.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants