Revert "rename to deepwork"

This reverts commit e6360cd6b4.
This commit is contained in:
Hunter Lovell
2026-01-14 18:56:17 -08:00
parent e6360cd6b4
commit 676b8e678b
15 changed files with 63 additions and 63 deletions
+1 -1
View File
@@ -27,7 +27,7 @@ What actually happened.
## Environment
- **OS**: [e.g., macOS 14.0, Windows 11, Ubuntu 22.04]
- **deepwork version**: [e.g., 0.2.0]
- **openwork version**: [e.g., 0.2.0]
- **Node.js version**: [e.g., 20.10.0]
- **Installation method**: [npm / from source]
+1 -1
View File
@@ -1,5 +1,5 @@
blank_issues_enabled: true
contact_links:
- name: Documentation
url: https://github.com/langchain-ai/deepwork#readme
url: https://github.com/langchain-ai/openwork#readme
about: Check the README for setup and usage information
+6 -6
View File
@@ -74,25 +74,25 @@ jobs:
with:
name: v${{ steps.version.outputs.version }}
body: |
## deepwork v${{ steps.version.outputs.version }}
## openwork v${{ steps.version.outputs.version }}
### Installation
```bash
# Run directly
npx deepwork
npx openwork
# Or install globally
npm install -g deepwork
deepwork
npm install -g openwork
openwork
```
Requires Node.js 18+. Electron is installed automatically as a dependency.
### Links
- [Documentation](https://github.com/langchain-ai/deepwork#readme)
- [npm package](https://www.npmjs.com/package/deepwork)
- [Documentation](https://github.com/langchain-ai/openwork#readme)
- [npm package](https://www.npmjs.com/package/openwork)
draft: false
prerelease: ${{ contains(steps.version.outputs.version, '-') }}
env:
+6 -6
View File
@@ -1,6 +1,6 @@
# Contributing to deepwork
# Contributing to openwork
Thank you for your interest in contributing to deepwork! This document provides guidelines for development and contribution.
Thank you for your interest in contributing to openwork! This document provides guidelines for development and contribution.
## Development Setup
@@ -14,8 +14,8 @@ Thank you for your interest in contributing to deepwork! This document provides
1. Fork and clone the repository:
```bash
git clone https://github.com/YOUR_USERNAME/deepwork.git
cd deepwork
git clone https://github.com/YOUR_USERNAME/openwork.git
cd openwork
```
2. Install dependencies:
@@ -31,7 +31,7 @@ Thank you for your interest in contributing to deepwork! This document provides
## Project Structure
```
deepwork/
openwork/
├── src/
│ ├── main/ # Electron main process
│ │ ├── index.ts # App entry point
@@ -82,7 +82,7 @@ deepwork/
## Design System
deepwork uses a tactical/SCADA-inspired design system:
openwork uses a tactical/SCADA-inspired design system:
### Colors
+12 -12
View File
@@ -1,12 +1,12 @@
# deepwork
# openwork
[![CI](https://github.com/langchain-ai/deepwork/actions/workflows/ci.yml/badge.svg)](https://github.com/langchain-ai/deepwork/actions/workflows/ci.yml)
[![npm version](https://img.shields.io/npm/v/deepwork.svg)](https://www.npmjs.com/package/deepwork)
[![CI](https://github.com/langchain-ai/openwork/actions/workflows/ci.yml/badge.svg)](https://github.com/langchain-ai/openwork/actions/workflows/ci.yml)
[![npm version](https://img.shields.io/npm/v/openwork.svg)](https://www.npmjs.com/package/openwork)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
A tactical agent interface for [deepagentsjs](https://github.com/langchain-ai/deepagentsjs) - an opinionated harness for building deep agents with filesystem capabilities, planning, and subagent delegation.
![deepwork screenshot](docs/screenshot.png)
![openwork screenshot](docs/screenshot.png)
## Features
@@ -24,11 +24,11 @@ A tactical agent interface for [deepagentsjs](https://github.com/langchain-ai/de
```bash
# Run directly
npx deepwork
npx openwork
# Or install globally
npm install -g deepwork
deepwork
npm install -g openwork
openwork
```
Requires Node.js 18+. Electron is installed automatically as a dependency.
@@ -36,8 +36,8 @@ Requires Node.js 18+. Electron is installed automatically as a dependency.
### From Source
```bash
git clone https://github.com/langchain-ai/deepwork.git
cd deepwork
git clone https://github.com/langchain-ai/openwork.git
cd openwork
npm install
npm run dev
```
@@ -46,7 +46,7 @@ npm run dev
### API Keys
deepwork supports multiple LLM providers. Set your API keys via:
openwork supports multiple LLM providers. Set your API keys via:
1. **Environment Variables** (recommended)
```bash
@@ -67,7 +67,7 @@ deepwork supports multiple LLM providers. Set your API keys via:
## Architecture
deepwork is built with:
openwork is built with:
- **Electron** - Cross-platform desktop framework
- **React** - UI components with tactical/SCADA-inspired design
@@ -127,7 +127,7 @@ To publish a new release:
## Design System
deepwork uses a tactical/SCADA-inspired design system optimized for:
openwork uses a tactical/SCADA-inspired design system optimized for:
- **Information density** - Dense layouts for monitoring agent activity
- **Status at a glance** - Color-coded status indicators (nominal, warning, critical)
+4 -4
View File
@@ -34,8 +34,8 @@ Include the following information in your report:
This security policy applies to:
- The deepwork desktop application
- The npm package `deepwork`
- The openwork desktop application
- The npm package `openwork`
- This GitHub repository
### Out of Scope
@@ -46,9 +46,9 @@ This security policy applies to:
## Security Best Practices for Users
When using deepwork:
When using openwork:
1. **API Keys**: Store API keys securely using environment variables rather than hardcoding them.
2. **Sensitive Data**: Be cautious when giving agents access to directories containing sensitive information.
3. **Human-in-the-Loop**: Use the approval system for sensitive operations.
4. **Updates**: Keep deepwork updated to receive security patches.
4. **Updates**: Keep openwork updated to receive security patches.
+8 -8
View File
@@ -1,33 +1,33 @@
#!/usr/bin/env node
/* eslint-disable @typescript-eslint/no-require-imports */
/**
* deepwork CLI - Launches the Electron app
* openwork CLI - Launches the Electron app
*/
const { spawn } = require('child_process')
const path = require('path')
// Set process title for Activity Monitor
process.title = 'deepwork'
process.title = 'openwork'
const args = process.argv.slice(2)
// Handle --version flag
if (args.includes('--version') || args.includes('-v')) {
const { version } = require('../package.json')
console.log(`deepwork v${version}`)
console.log(`openwork v${version}`)
process.exit(0)
}
// Handle --help flag
if (args.includes('--help') || args.includes('-h')) {
console.log(`
deepwork - A tactical agent interface for deepagentsjs
openwork - A tactical agent interface for deepagentsjs
Usage:
deepwork Launch the application
deepwork --version Show version
deepwork --help Show this help
openwork Launch the application
openwork --version Show version
openwork --help Show this help
`)
process.exit(0)
}
@@ -58,6 +58,6 @@ child.on('close', (code) => {
})
child.on('error', (err) => {
console.error('Failed to start deepwork:', err.message)
console.error('Failed to start openwork:', err.message)
process.exit(1)
})
+3 -3
View File
@@ -1,11 +1,11 @@
{
"name": "deepwork",
"name": "openwork",
"version": "0.1.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "deepwork",
"name": "openwork",
"version": "0.1.0",
"license": "MIT",
"dependencies": {
@@ -44,7 +44,7 @@
"zustand": "^5.0.3"
},
"bin": {
"deepwork": "bin/cli.js"
"openwork": "bin/cli.js"
},
"devDependencies": {
"@electron-toolkit/eslint-config-prettier": "^3.0.0",
+5 -5
View File
@@ -1,5 +1,5 @@
{
"name": "deepwork",
"name": "openwork",
"version": "0.1.0",
"description": "A tactical agent interface for deepagentsjs",
"main": "./out/main/index.js",
@@ -11,17 +11,17 @@
"README.md"
],
"bin": {
"deepwork": "./bin/cli.js"
"openwork": "./bin/cli.js"
},
"author": "LangChain",
"license": "MIT",
"homepage": "https://github.com/langchain-ai/deepwork",
"homepage": "https://github.com/langchain-ai/openwork",
"repository": {
"type": "git",
"url": "git+https://github.com/langchain-ai/deepwork.git"
"url": "git+https://github.com/langchain-ai/openwork.git"
},
"bugs": {
"url": "https://github.com/langchain-ai/deepwork/issues"
"url": "https://github.com/langchain-ai/openwork/issues"
},
"keywords": [
"ai",
+1 -1
View File
@@ -1,5 +1,5 @@
/**
* Base system prompt for the deepwork agent.
* Base system prompt for the openwork agent.
*
* Adapted from deepagents-cli default_agent_prompt.md
*/
+1 -1
View File
@@ -50,7 +50,7 @@ function createWindow(): void {
app.whenReady().then(async () => {
// Set app user model id for windows
if (process.platform === 'win32') {
app.setAppUserModelId(isDev ? process.execPath : 'com.langchain.deepwork')
app.setAppUserModelId(isDev ? process.execPath : 'com.langchain.openwork')
}
// Set dock icon on macOS
+4 -4
View File
@@ -4,12 +4,12 @@ import * as fs from 'fs/promises'
import * as path from 'path'
import type { ModelConfig, Provider } from '../types'
import { startWatching, stopWatching } from '../services/workspace-watcher'
import { getDeepworkDir, getApiKey, setApiKey, deleteApiKey, hasApiKey } from '../storage'
import { getOpenworkDir, getApiKey, setApiKey, deleteApiKey, hasApiKey } from '../storage'
// Store for non-sensitive settings only (no encryption needed)
const store = new Store({
name: 'settings',
cwd: getDeepworkDir()
cwd: getOpenworkDir()
})
// Provider configurations
@@ -175,7 +175,7 @@ export function registerModelHandlers(ipcMain: IpcMain): void {
store.set('defaultModel', modelId)
})
// Set API key for a provider (stored in ~/.deepwork/.env)
// Set API key for a provider (stored in ~/.openwork/.env)
ipcMain.handle(
'models:setApiKey',
async (_event, { provider, apiKey }: { provider: string; apiKey: string }) => {
@@ -183,7 +183,7 @@ export function registerModelHandlers(ipcMain: IpcMain): void {
}
)
// Get API key for a provider (from ~/.deepwork/.env or process.env)
// Get API key for a provider (from ~/.openwork/.env or process.env)
ipcMain.handle('models:getApiKey', async (_event, provider: string) => {
return getApiKey(provider) ?? null
})
+9 -9
View File
@@ -2,8 +2,8 @@ import { homedir } from 'os'
import { join } from 'path'
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'fs'
const DEEPWORK_DIR = join(homedir(), '.deepwork')
const ENV_FILE = join(DEEPWORK_DIR, '.env')
const OPENWORK_DIR = join(homedir(), '.openwork')
const ENV_FILE = join(OPENWORK_DIR, '.env')
// Environment variable names for each provider
const ENV_VAR_NAMES: Record<string, string> = {
@@ -11,19 +11,19 @@ const ENV_VAR_NAMES: Record<string, string> = {
openai: 'OPENAI_API_KEY'
}
export function getDeepworkDir(): string {
if (!existsSync(DEEPWORK_DIR)) {
mkdirSync(DEEPWORK_DIR, { recursive: true })
export function getOpenworkDir(): string {
if (!existsSync(OPENWORK_DIR)) {
mkdirSync(OPENWORK_DIR, { recursive: true })
}
return DEEPWORK_DIR
return OPENWORK_DIR
}
export function getDbPath(): string {
return join(getDeepworkDir(), 'deepwork.sqlite')
return join(getOpenworkDir(), 'openwork.sqlite')
}
export function getCheckpointDbPath(): string {
return join(getDeepworkDir(), 'langgraph.sqlite')
return join(getOpenworkDir(), 'langgraph.sqlite')
}
export function getEnvFilePath(): string {
@@ -53,7 +53,7 @@ function parseEnvFile(): Record<string, string> {
// Write object back to .env file
function writeEnvFile(env: Record<string, string>): void {
getDeepworkDir() // ensure dir exists
getOpenworkDir() // ensure dir exists
const lines = Object.entries(env)
.filter(([_, v]) => v)
.map(([k, v]) => `${k}=${v}`)
+1 -1
View File
@@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>deepwork</title>
<title>openwork</title>
<meta
http-equiv="Content-Security-Policy"
content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data:"
+1 -1
View File
@@ -131,7 +131,7 @@ function App(): React.JSX.Element {
transformOrigin: 'top left'
}}
>
<span className="app-badge-name">DEEPWORK</span>
<span className="app-badge-name">OPENWORK</span>
<span className="app-badge-version">{__APP_VERSION__}</span>
</div>