본문으로 건너뛰기
로그인 둘러보기
개발·코딩·데이터베이스 · 윈도우즈 유틸

OpenCoWork

0

OpenCoWork는 AIDotNet 팀이 개발한 오픈소스 데스크톱 플랫폼으로, AI 에이전트가 사용자의 로컬 파일 시스템과 셸에 직접 접근해 멀티에이전트 협업을 수행하도록 설계되었습니다.

대형 언어 모델데스크톱에이전트오픈소스

소개

OpenCoWork는 AIDotNet 팀이 개발한 오픈소스 데스크톱 플랫폼으로, AI 에이전트가 사용자의 로컬 파일 시스템과 셸에 직접 접근해 멀티에이전트 협업을 수행하도록 설계되었습니다. 전통적인 LLM 채팅 인터페이스가 가진 ‘환경과 분리된 섬’ 문제를 해결하기 위해, 에이전트가 코드베이스와 로그를 자율적으로 탐색하고 작업을 위임받으며 실행할 수 있는 환경을 제공합니다. 데스크톱 앱과 `cowork` CLI는 동일한 .NET 11 Native Worker 런타임을 공유하여 일관된 작업 경험을 제공합니다.

상세정보

멀티 에이전트 및 메시징 채널 연동

  • 서브 에이전트, Agent Teams, Plan Mode, 세션 목표를 통한 멀티 에이전트 구성
  • Feishu, DingTalk, Discord, QQ, Telegram, WeCom, WeChat Official, WhatsApp 등 메신저 채널 연동

런타임 구조

  • Electron + .NET Native Worker 구조: React 19 UI, 좁은 Preload 브리지, Electron Main 호스트 게이트웨이, 플랫폼별 .NET 11 Native AOT Worker가 에이전트 루프를 소유
  • Worker-authoritative 루프: 프로바이더 스트리밍, 도구 실행, 승인, 취소, SQLite, CodeGraph 인덱싱이 Worker에 위치하며 Main은 프로세스 감독 역할
  • SSH: 통합 xterm.js 터미널을 통한 원격 호스트 작업 지원

5가지 세션 모드

  • chat: 파일 시스템·셸 도구 없이 빠른 대화
  • clarify: 코드 작성 전에 근거 있는 질문과 검토 가능한 계획 제시
  • cowork: 파일, 셸, 브라우저, 검색, 서브 에이전트, 팀을 포함한 전체 에이전트 모드
  • code: Monaco 기반 포커스된 편집과 페어 프로그래밍
  • acp: 아키텍처 리드 — 명확화, 설계, 분해, 위임을 수행

도구 모음(Toolbox)

  • 파일·셸: Read, Write, Edit, Glob, Grep, Bash(로컬 및 SSH)
  • 브라우저: 탐색, 스냅샷, 클릭, 입력, 추출
  • 작업·팀: TaskCreate/TaskUpdate, 병렬 Task 서브 에이전트, TeamCreate/SendMessage/TeamStatus
  • Plan Mode: EnterPlanMode → 계획 작성 → ExitPlanMode
  • 목표·메모리: 토큰 예산 기반 세션 목표, `SOUL.md` / `USER.md` / `MEMORY.md` 계층 및 프로젝트별 `.agents/` 오버라이드
  • Cron: 반복 또는 1회성 백그라운드 실행을 메신저 채널로 전달
  • MCP: stdio, SSE, streamable-HTTP 서버, 활성화된 도구를 에이전트에 노출
  • 스킬·확장: Skills Market 및 Product Design, Creative Production, HyperFrames, Template Creator 등 번들 확장
  • CodeGraph: Worker 내 온디맨드 tree-sitter 인덱싱과 explore/search/callers/impact 도구

워크스페이스 인터페이스

  • Task Board: 에이전트와 사용자의 작업을 위한 칸반
  • Tasks/Cron: 스케줄링 및 1회성 에이전트 작업
  • Resources: 프로젝트 파일 및 아티팩트
  • Skills/Souls: 도메인 스킬 및 에이전트 페르소나
  • Sync: `~/.open-cowork/`의 WebDAV 동기화
  • Draw: 이미지·비디오 생성 파이프라인용 노드 그래프 캔버스
  • CodeGraph: 리포지토리 그래프 시각화
  • SSH: 전용 원격 터미널 창

다국어 지원

  • i18next 기반 16개 언어 지원: 영어, 중국어, 일본어, 한국어, 프랑스어, 독일어, 스페인어, 포르투갈어, 러시아어, 아랍어, 이탈리아어, 네덜란드어, 튀르키예어, 베트남어, 태국어, 인도네시아어

Windows에서 winget으로 설치

Windows에서는 winget 패키지 관리자를 통해 다음 명령으로 OpenCoWork를 설치할 수 있습니다.

winget install --id AIDotNet.OpenCowork --exact

CLI 설치 및 실행

CLI는 동일한 Native Worker 위에서 동작하는 터미널 UI로, 별도의 프로바이더 저장소나 에이전트 루프를 두지 않습니다.

  • 전역 설치: npm install -g @aidotnet/opencowork
  • 실행: cowork (별칭: opencowork)
  • 진단: cowork --doctor
  • 도움말: cowork --help
  • 언어 지정: cowork --language zh

CLI의 자격 증명, 모델, 에이전트, 설정은 데스크톱 앱과 `~/.open-cowork/` 아래에서 공유됩니다.

소스에서 데스크톱 앱 빌드

  • 저장소 클론(서브모듈 포함): git clone --recurse-submodules https://github.com/AIDotNet/OpenCowork.git
  • 디렉터리 이동 후 의존성 설치: cd OpenCowork → npm install
  • 개발 모드 실행: npm run dev (Electron + Vite, 핫 리로드)

추가 빌드 명령: npm run build(타입체크 후 프로덕션 빌드), npm run build:win(Windows 설치 프로그램), npm run build:win:green(설치형 Windows zip), npm run build:mac(macOS .dmg/zip), npm run build:linux(.AppImage/.deb), npm run lint(ESLint), npm run typecheck(TypeScript).

데스크톱 앱과 CLI는 동일한 데이터를 사용하나요?

두 진입점은 동일한 .NET 11 Native Worker, 프로바이더, 그리고 `~/.open-cowork/` 데이터 디렉터리를 공유하므로 자격 증명, 모델, 에이전트, 설정이 함께 유지됩니다.

Windows에서 어떻게 설치하나요?

winget 패키지 관리자를 통해 winget install --id AIDotNet.OpenCowork --exact 명령으로 설치할 수 있습니다.

CLI 실행에 필요한 Node.js 버전은 무엇인가요?

CLI는 Node.js 18 이상에서 동작합니다.

소스에서 빌드하려면 무엇이 필요한가요?

Node.js ≥ 18, npm ≥ 9, .NET 11 SDK Preview 7 이상(Native AOT 사전 요구사항 포함)이 필요하며, 저장소를 서브모듈과 함께 클론해야 네이티브 워커를 빌드할 수 있습니다.

시스템 요구사항

시스템 요구 사항

  • 패키지된 빌드 대상: Windows 설치 프로그램(Nullsoft), macOS 13 이상, Linux(.AppImage / .deb) — GitHub Releases에서 배포
  • 아키텍처: x64
  • CLI 사용 시: Node.js ≥ 18
  • 소스에서 데스크톱 앱 빌드 시: Node.js ≥ 18, npm ≥ 9, .NET 11 SDK Preview 7 이상(Native AOT 사전 요구사항 포함, `PATH`에 `dotnet` 등록), `sidecars/codegraph` 서브모듈이 포함된 클론

데이터 및 디렉터리

  • 데이터 디렉터리: `~/.open-cowork/` — 데이터베이스, 프로바이더, 에이전트, 스킬, 커맨드, 프롬프트가 저장되며 버전 관리에 포함해서는 안 됩니다

라이선스

  • 라이선스: Apache License 2.0 (LICENSE 파일 참조)