Prerequisites for Using different-ai/openwork: Complete Setup Guide
To use OpenWork from different-ai/openwork, you need Node.js ≥ 18, pnpm (v8+), Git, and a supported operating system (macOS ≥ 10.15, Windows 10+, or recent Linux).
OpenWork is a cross-platform Electron desktop application with a monorepo architecture. Whether you want to run it locally, contribute code, or package it for distribution, meeting the prerequisites ensures a smooth setup. This guide breaks down every requirement based on the source code in the repository.
Required System Requirements
OpenWork runs on modern desktop operating systems. According to the top-level README.md, the application bundles an Electron runtime that supports:
- macOS ≥ 10.15
- Windows 10 or newer
- Recent Linux distributions
No additional runtime installation is needed for end users who download prebuilt binaries. However, developers building from source must satisfy the toolchain requirements below.
Node.js Version Requirement
The package.json file explicitly declares the Node.js engine constraint:
"engines": {
"node": ">=18"
}
Build scripts, TypeScript compilation, and development utilities all depend on Node 18 or newer. Install via your preferred method:
# Using nvm
nvm install 18
nvm use 18
# Using Homebrew (macOS)
brew install node@18
# Verify version
node --version
pnpm Package Manager (Required)
OpenWork uses pnpm workspaces to manage its monorepo structure. The apps/* and packages/* directories are linked through pnpm; npm and yarn will not resolve workspace dependencies correctly.
Install pnpm globally:
npm i -g pnpm@latest
# Verify installation
pnpm -v
All subsequent dependency management and script execution use pnpm commands.
Git and Worktree Support
Git is mandatory for two reasons:
- Cloning the repository from GitHub
- Git worktrees used in the development workflow (
pnpm dev,pnpm dev:worktree)
Install Git via your OS package manager:
# macOS
brew install git
# Debian/Ubuntu
sudo apt install git
# Arch
sudo pacman -S git
Linux-Specific Build Tools
For packaging OpenWork on Linux—specifically for the Arch AUR distribution—you need native compilation tools. The packaging/aur/README.md specifies these prerequisites:
| Distribution | Required Packages |
|---|---|
| Arch Linux | base-devel, curl |
| Debian/Ubuntu | build-essential, curl |
Install Arch prerequisites:
sudo pacman -S --needed base-devel curl
These tools download the Electron release and compile the PKGBUILD for system-wide installation.
Optional Prerequisites
OpenWork Den Server
For team-wide sharing, you may deploy the OpenWork Den control plane. This requires:
- A server with Node.js runtime
- Appropriate network ports open
- Docker Compose (optional, for containerized deployment)
Reference the Den server documentation for detailed setup instructions.
AI Provider Credentials
OpenWork integrates with multiple AI providers. API keys are never committed to the repository—instead, create a .env.dev file based on the template:
# .env.dev
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-...
Complete Installation Workflow
Follow these steps to satisfy all prerequisites and run OpenWork locally:
# 1. Clone repository
git clone https://github.com/different-ai/openwork.git
cd openwork
# 2. Install pnpm (if missing)
npm i -g pnpm@latest
# 3. Install monorepo dependencies
pnpm install
# 4. Start development server
pnpm dev
For Arch Linux packaging:
# Navigate to AUR packaging directory
cd packaging/aur
# Validate prerequisites and build
makepkg -si
Key Source Files Defining Prerequisites
| File | Purpose |
|---|---|
package.json |
Node engine version, workspace configuration |
README.md |
OS support, quickstart instructions |
dev/README.md |
Detailed development commands and profiles |
packaging/aur/README.md |
Linux build prerequisites |
.env.dev (template) |
API key configuration for AI integrations |
Summary
- Operating system: macOS ≥ 10.15, Windows 10+, or modern Linux
- Node.js: Version 18 or newer as declared in
package.json - Package manager: pnpm v8+ required for workspace functionality
- Version control: Git with worktree support for development workflows
- Linux builders:
base-develandcurl(Arch) orbuild-essential(Debian/Ubuntu) - Optional: Den server for team features; provider API keys for AI integrations
Frequently Asked Questions
Does OpenWork work with npm or yarn instead of pnpm?
No. The monorepo uses pnpm workspaces to link packages across apps/ and packages/ directories. npm and yarn lack the workspace resolution logic that pnpm install provides. Attempting to use alternative package managers will result in missing dependencies and failed builds.
What happens if my Node.js version is below 18?
The build system will reject the environment. The package.json engine constraint triggers a warning or error during pnpm install, and TypeScript compilation may fail due to unsupported syntax or missing APIs in older Node versions.
Is the Den server required for personal use?
No. The OpenWork Den server is only needed for team-wide sharing and centralized control plane functionality. Individual users can run the desktop application locally without any server infrastructure.
Where do I place my OpenAI or Anthropic API keys?
Create a .env.dev file in the repository root based on the provided template. Add provider keys there—this file is gitignored by default to prevent accidental credential exposure.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →