English · 简体中文
The open-source platform for task-driven autonomous AI.
Every task becomes an autonomous agent — campaigns, reports, features, audits
ship in parallel. For every team.
How It Works · Features · Quick Start · Architecture · Contributing
| Step | What happens |
|---|---|
| Create | Write a task, not a prompt. Describe the deliverable — a campaign, a report, a feature, an audit. OpenCow links full context: project files, prior work, related tasks. |
| Dispatch | One task, one agent. Each task gets a dedicated agent with full context — project knowledge, team playbooks, organizational standards. 15 tasks, 15 agents, in parallel. |
| Deliver | Agents research, draft, build, and publish — autonomously. Real-time progress, instant notifications, approval gates at every step. Review. Ship. |
Everything to turn your task list into a parallel AI workforce.
|
Built-in task tracker where every task becomes an agent. Break projects into sub-tasks, each with a dedicated agent. Your task list IS your delivery plan.
|
Equip agents with your org's knowledge, standards, and tools. Skills, playbooks, integrations — every agent follows your processes.
|
|
Real-time dashboard. Track every agent's progress and actions. Approve deliverables. One screen, full visibility.
|
Dispatch agents from Telegram, Discord, WeChat, or Lark. Schedule recurring workflows. Get notified via webhooks.
|
No plugins. No integrations to configure. Every capability your AI workforce needs.
|
Task & Agent Core
|
Intelligence
|
Automation
|
Command & Control
|
The design decisions that define OpenCow.
| Principle | What it means | |
|---|---|---|
| 1:1 | Task → Agent | One task, one agent. Full context. Full traceability. Zero ambiguity. |
| ✅ | Local & Private | Everything runs on your machine. Zero telemetry. Zero cloud. Your data never leaves. |
| 15+ | Parallel Agents | Deliver 15+ tasks simultaneously. Suspend and resume any agent without losing context. |
| 4-Layer | Deep Context Engine | Every agent inherits organizational knowledge, project context, team standards, and task-specific instructions. |
Prerequisites: Node.js >= 18 and pnpm >= 9
# Clone the repository
git clone https://github.com/OpenCowAI/opencow.git
cd opencow
# Install dependencies
pnpm install
# Launch in development mode (HMR enabled)
pnpm devGrab the latest release from opencow.ai/download — free, open source, ready in 60 seconds.
| Layer | Choice | Why |
|---|---|---|
| Desktop | Electron 40 | Cross-platform, native-grade experience |
| UI | React 19 + Tailwind CSS 4 | Concurrent rendering, utility-first styling |
| Language | TypeScript (strict, zero any) |
End-to-end type safety |
| State | Zustand | Lightweight reactive stores with row-level subscriptions |
| Build | electron-vite (Vite) | Sub-second HMR, triple-target build |
| Database | SQLite via Kysely | Local-first, type-safe schema with 35+ migrations |
| Terminal | xterm.js + WebGL | Hardware-accelerated terminal rendering |
| Editor | Monaco Editor | VS Code-grade editing experience |
| Testing | Vitest + React Testing Library | Fast, modern test runner |
| AI | Claude Agent SDK + Codex SDK + MCP | Multi-engine — choose Claude or Codex as your AI engine, with Model Context Protocol |
OpenCow follows a hardened Electron architecture with strict process isolation:
┌─────────────────────────────────────────────────────┐
│ Renderer Process │
│ ┌───────────┐ ┌──────────┐ ┌──────────────────┐ │
│ │ React 19 │ │ Zustand │ │ 271 Components │ │
│ │ Components │ │ Stores │ │ 68 Hooks │ │
│ └─────┬─────┘ └────┬─────┘ └────────┬─────────┘ │
│ └──────────────┴─────────────────┘ │
│ │ IPC (contextBridge) │
├────────────────────────┼────────────────────────────┤
│ Main Process │
│ ┌──────────┐ ┌──────────┐ ┌───────────────────┐ │
│ │ DataBus │ │ Services │ │ Native Modules │ │
│ │ Events │ │ (47+) │ │ SQLite · PTY │ │
│ └──────────┘ └──────────┘ └───────────────────┘ │
│ ┌──────────┐ ┌──────────┐ ┌───────────────────┐ │
│ │ Claude │ │ Bot │ │ Capability │ │
│ │ Agent SDK│ │ Gateway │ │ Center │ │
│ └──────────┘ └──────────┘ └───────────────────┘ │
└─────────────────────────────────────────────────────┘
Security model:
contextIsolation: true— renderer cannot access Node.jsnodeIntegration: false— no direct module loading- Type-safe IPC bridge via
contextBridge.exposeInMainWorld - Sandboxed file access with explicit path allowlists
- Separate data directories for dev (
~/.opencow-dev) and production (~/.opencow)
opencow/
├── electron/ # Main process
│ ├── main.ts # App entry point
│ ├── preload.ts # Secure IPC bridge
│ ├── services/ # 47+ backend service modules
│ │ ├── capabilityCenter/ # AI capability management
│ │ ├── schedule/ # Cron automation engine
│ │ ├── messaging/ # Multi-channel messaging
│ │ ├── git/ # Git integration layer
│ │ └── ...
│ ├── database/ # SQLite schema & migrations
│ ├── sources/ # Hook, task, and stats data sources
│ └── ipc/ # IPC channel handlers
├── src/
│ ├── renderer/ # React application
│ │ ├── components/ # 32 feature modules, 271 components
│ │ ├── hooks/ # 68 custom React hooks
│ │ ├── stores/ # 18 Zustand domain stores
│ │ ├── lib/ # Utilities & helpers
│ │ └── locales/ # i18n (en-US, zh-CN)
│ └── shared/ # Cross-process types & utilities
├── tests/ # Vitest test suite
├── docs/ # 520+ design docs & proposals
└── resources/ # App icons & tray assets
| Command | What it does |
|---|---|
pnpm dev |
Start with HMR |
pnpm build |
Compile all targets |
pnpm preview |
Build + launch in production mode |
pnpm package |
Build + package .app (fast, for testing) |
pnpm package:dmg |
Build + package .dmg installer |
pnpm typecheck |
TypeScript strict check |
pnpm lint |
ESLint |
pnpm format |
Prettier |
pnpm test |
Run all tests |
pnpm test:watch |
Watch mode |
electron-vite compiles three independent TypeScript targets:
| Target | Entry | Output |
|---|---|---|
| Main | electron/main.ts |
out/main/ |
| Preload | electron/preload.ts |
out/preload/ |
| Renderer | src/renderer/index.html |
out/renderer/ |
@→src/renderer(renderer only)@shared→src/shared(all targets)
- TypeScript strict mode, zero
anyusage - Prettier — no semicolons, single quotes, 100 char width, 2-space indent
- ESLint — strict rules with React Hooks plugin
- Conventional Commits —
feat:,fix:,perf:,refactor:, etc.
# macOS .app (for local testing, fast)
pnpm package
# Output: dist/mac-arm64/OpenCow.app
# macOS .dmg (for distribution)
pnpm package:dmg
# Output: dist/OpenCow-{version}.dmgCross-platform builds for Windows and Linux are supported via electron-builder configuration in package.json.
We welcome contributions of all kinds — bug fixes, features, docs, and ideas.
# 1. Fork & clone
git clone https://github.com/<you>/opencow.git
cd opencow
# 2. Install & run
pnpm install && pnpm dev
# 3. Create a branch, make changes, submit a PR
git checkout -b feat/my-featurePlease read CONTRIBUTING.md for the full guide on code style, commit format, and review process.
- X (Twitter) — Follow us for updates
- Discord — Chat with the community
- GitHub Issues — Bug reports & feature requests
- GitHub Discussions — Questions & ideas
- Code of Conduct — Our community standards
Apache-2.0 — completely free and open source. No paid tiers, no usage limits, no subscriptions.
Third-party SDKs: OpenCow integrates with third-party AI SDKs (e.g.
@anthropic-ai/claude-agent-sdk,@openai/codex-sdk) that are subject to their own license terms. Please review each SDK's license before use.
Autonomous Agents for Every Team.
