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:

  1. Cloning the repository from GitHub
  2. 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-devel and curl (Arch) or build-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:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →