# openwork **Repository Path**: marklang/openwork ## Basic Information - **Project Name**: openwork - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: dev - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-18 - **Last Updated**: 2026-01-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OpenWork OpenWork is an **extensible, open-source “Claude Work” style system for knowledge workers**. Screenshot 2026-01-13 at 7 19 02 PM It’s a native desktop app that runs **OpenCode** under the hood, but presents it as a clean, guided workflow: - pick a workspace - start a run - watch progress + plan updates - approve permissions when needed - reuse what works (templates + skills) The goal: make “agentic work” feel like a product, not a terminal. ## Quick start Download the dmg here https://github.com/different-ai/openwork/releases (or install from source below) ## Why Current CLI and GUIs for opencode are anchored around developers. That means a focus on file diffs, tool names, and hard to extend capabilities without relying on exposing some form of cli. OpenWork is designed to be: - **Extensible**: skill and opencode plugins are installable modules. - **Auditable**: show what happened, when, and why. - **Permissioned**: access to privileged flows. - **Local/Remote**: OpenWork works locally as well as can connect to remote servers. ## What’s Included - **Host mode**: runs opencode locally on your computer - **Client mode**: connect to an existing OpenCode server by URL. - **Sessions**: create/select sessions and send prompts. - **Live streaming**: SSE `/event` subscription for realtime updates. - **Execution plan**: render OpenCode todos as a timeline. - **Permissions**: surface permission requests and reply (allow once / always / deny). - **Templates**: save and re-run common workflows (stored locally). - **Skills manager**: - list installed `.opencode/skill` folders - install from OpenPackage (`opkg install ...`) - import a local skill folder into `.opencode/skill/` ## Skill Manager image ## Works on local computer or servers Screenshot 2026-01-13 at 7 05 16 PM ## Quick Start ### Requirements - Node.js + `pnpm` - Rust toolchain (for Tauri): `cargo`, `rustc` - OpenCode CLI installed and available on PATH: `opencode` ### Install ```bash pnpm install ``` ### Run (Desktop) ```bash pnpm dev ``` ### Run (Web UI only) ```bash pnpm dev:web ``` ## Architecture (high-level) - In **Host mode**, OpenWork spawns: - `opencode serve --hostname 127.0.0.1 --port ` - with your selected project folder as the process working directory. - The UI uses `@opencode-ai/sdk/v2/client` to: - connect to the server - list/create sessions - send prompts - subscribe to SSE events - read todos and permission requests ## Folder Picker The folder picker uses the Tauri dialog plugin. Capability permissions are defined in: - `src-tauri/capabilities/default.json` ## OpenPackage Notes If `opkg` is not installed globally, OpenWork falls back to: ```bash pnpm dlx opkg install ``` ## OpenCode Plugins Plugins are the **native** way to extend OpenCode. OpenWork now manages them from the Skills tab by reading and writing `opencode.json`. - **Project scope**: `/opencode.json` - **Global scope**: `~/.config/opencode/opencode.json` (or `$XDG_CONFIG_HOME/opencode/opencode.json`) You can still edit `opencode.json` manually; OpenWork uses the same format as the OpenCode CLI: ```json { "$schema": "https://opencode.ai/config.json", "plugin": ["opencode-wakatime"] } ``` ## Useful Commands ```bash pnpm typecheck pnpm build:web pnpm test:e2e ``` ## Security Notes - OpenWork hides model reasoning and sensitive tool metadata by default. - Host mode binds to `127.0.0.1` by default. ## License MIT — see `LICENSE`.