TencentCloud/Octop
Python0 / 0
로컬 우선으로 IM 통합·ACP 연동이 가능한 오픈소스 멀티에이전트 어시스턴트
TL;DR
Octop은 Python 3.12+ 기반의 셀프호스트 다중 사용자·다중 에이전트 AI 어시스턴트 플랫폼으로, 웹 대시보드·CLI·IM 채널·cron을 단일 프로세스에서 구동하고 상태를 ~/.octop/octop.db에 보관합니다. harness-* 컴포넌트(harness-agent, harness-gateway, harness-memory 등)를 조합해 에이전트 런타임, 메시지 브리지, 계층형 메모리를 제공하며 플러그형 백엔드로 로컬 디스크나 S3/COS를 선택할 수 있습니다. Feishu/DingTalk/QQ/Discord/WeCom 같은 IM 통합, ACP 양방향 연동, 브라우저·터미널 자동화 기능과 도커 배포·원라인 인스톨러를 제공하므로 로컬 우선의 다중 채널 통합 어시스턴트가 필요하면 고려 대상이 됩니다. 운영 시 기본 포트 8088과 기본 계정(admin / octop)이 README에 명시되어 있으니 배포 직후 자격 증명과 설정을 변경해야 합니다.
핵심 포인트
- Octop은 단일 프로세스 모델로 웹 대시보드, CLI, IM 채널, cron 작업을 동일한 실행 환경에서 제공하며 모든 상태를 로컬의 SQLite 데이터베이스(~/.octop/octop.db)로 복원하도록 설계되어 있습니다. 이 구조는 FastAPI/uvicorn 기반으로 서비스되고 재시작 시 DB에서 상태를 재구성하므로 외부 메시지 브로커 없이도 IM·웹·스케줄러 요청을 하나의 파이프라인으로 처리합니다. 로컬 우선 설계와 단일 데이터 디렉터리(~/.octop/)는 개인정보와 자격증명을 호스트 내부에 유지해야 하는 환경에서 유리합니다.
- 에이전트 런타임과 메모리 계층은 harness-agent, harness-memory, harness-gateway 같은 내부 컴포넌트로 구성되어 에이전트별 워크스페이스, 도구, 스킬, 체크포인트를 관리합니다. 워크스페이스 백엔드로 로컬 디스크, Docker 컨테이너, PostgreSQL 또는 COS/S3 같은 원격 저장소를 플러그인 방식으로 교체할 수 있으며 메모리는 워크스페이스와 함께 이주하도록 설계되어 있습니다. 이 구조는 팀·가정 환경에서 사용자별 또는 에이전트별 분리된 상태를 유지하면서도 동일한 플랫폼 위에서 확장 가능하게 운영할 수 있게 합니다.
- 채널 통합과 외부 에이전트 연동(ACP)에 초점을 두고 있어 Feishu, DingTalk, QQ, Discord, WeCom 등 주요 IM 채널을 허용하고 OAuth·MCP 게이트웨이로 외부 리소스 경계를 확장할 수 있습니다. Octop은 inbound/outbound 양방향 ACP를 지원하며 예시 명령(octop acp --agent main)을 통해 IDE나 외부 도구가 Octop 에이전트를 호출하거나, 대시보드에서 OpenCode·Claude Code 같은 외부 러너로 작업을 위임하는 흐름을 구성할 수 있습니다. 이 통합은 대화형 UI뿐 아니라 프로그래매틱 HTTP/SSE 접근, cron 기반 프로액티브 자동화까지 하나의 메시지 처리 파이프라인으로 묶어주는 점이 핵심입니다.
- 보안과 운영 측면에서는 JWT 기반 다중 사용자 격리, 도구 실행 허가(툴 가드레일), PII 마스킹 같은 로컬 보안 기능을 제공하며 설치용 인스톨러와 Docker 배포 옵션을 모두 준비하고 있습니다. 설치 후 기본 웹 포트는 8088이며 기본 관리자 계정은 README에 명시된 admin / octop으로 배포되어 있고 즉시 변경하도록 권장하고 있습니다. 또한 Python 3.12+, FastAPI, React 기반 프런트엔드 빌드 파이프라인과 테스트·린트 도구(hatchling, ruff, mypy, pytest)를 갖추어 개발자 환경에서 빌드·테스트·배포 흐름을 따르기 수월합니다.
이미지 분석


999
Stars
119
Forks
+207
Trending
0
조회수
999 watchers76 open issuesMIT License
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.