Skip to content

matanfield/openwork

 
 

Repository files navigation

Openwork - The open source AI coworker that lives on your desktop

MIT License GitHub Stars Download

Download for Mac (Apple Silicon)




What makes it different

🖥️ It runs locally

  • Your files stay on your machine
  • You decide which folders it can touch
  • Nothing gets sent to Openwork (or anyone else)

🔑 You bring your own AI

  • Use your own API key (OpenAI, Anthropic, etc.)
  • No subscription, no upsell
  • It's a tool—not a service

📖 It's open source

  • Every line of code is on GitHub
  • MIT licensed
  • Change it, fork it, break it, fix it

⚡ It acts, not just chats

  • File management
  • Document creation
  • Custom automations
  • Skill learning



What it actually does

📁 File Management ✍️ Document Writing 🔗 Tool Connections
Sort, rename, and move files based on content or rules you give it Prompt it to write, summarize, or rewrite documents Works with Notion, Google Drive, Dropbox, and more (through local APIs)
⚙️ Custom Skills 🛡️ Full Control
Define repeatable workflows, save them as skills You approve every action. You can see logs. You can stop it anytime.



How to use it

Takes 2 minutes to set up.

Step Action Details
1 Install the App the DMG and drag it into Applications
2 Connect Your AI Use your own OpenAI or Anthropic API key. No subscriptions.
3 Give It Access Choose which folders it can see. You stay in control.
4 Start Working Ask it to summarize a doc, clean a folder, or create a report. You approve everything.




See it in Action

Watch Demo

Watch the demo →




Development

pnpm install
pnpm dev

That's it.

Prerequisites
  • Node.js 20+
  • pnpm 9+
All Commands
Command Description
pnpm dev Run desktop app in dev mode
pnpm dev:clean Dev mode with clean start
pnpm build Build all workspaces
pnpm build:desktop Build desktop app only
pnpm lint TypeScript checks
pnpm typecheck Type validation
pnpm -F @accomplish/desktop test:e2e Playwright E2E tests
Environment Variables
Variable Description
CLEAN_START=1 Clear all stored data on app start
E2E_SKIP_AUTH=1 Skip onboarding flow (for testing)
Architecture
apps/
  desktop/        # Electron app (main + preload + renderer)
packages/
  shared/         # Shared TypeScript types

The desktop app uses Electron with a React UI bundled via Vite. The main process spawns OpenCode CLI using node-pty to execute tasks. API keys are stored securely in the OS keychain.

See CLAUDE.md for detailed architecture documentation.




Contributing

Contributions welcome! Feel free to open a PR.

# Fork → Clone → Branch → Commit → Push → PR
git checkout -b feature/amazing-feature
git commit -m 'Add amazing feature'
git push origin feature/amazing-feature



Website · GitHub · Issues


MIT License · Built by Accomplish

About

The open source Al coworker that lives on your desktop

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 96.8%
  • JavaScript 2.0%
  • Other 1.2%