Panel 연구 작업 환경은 에이전트가 사용자 정의 패널을 생성할 수 있게 합니다
핵심 요약
Panel은 로컬에서 실행되며 도킹 기반의 연구 환경으로, AI 에이전트가 함께 작업할 수 있도록 도와줍니다. 대화, 파일 편집, PDF 브라우징, 노트북 실행, 그리고 필요에 따라 사용자 정의 UI 패널을 생성할 수 있습니다.
Panel이란 무엇이며 왜 중요한가
Panel은 대화, 파일 탐색, PDF 렌더링, 마크다운, Jupyter 노트북 편집을 하나의 도킹 가능한 인터페이스로 통합합니다. 핵심적인 차별점은 연결된 AI 에이전트가 새로운 패널(예: 단백질 구조 뷰어 또는 SQLite 브라우저)을 요청하고 데이터로 채워 넣을 수 있다는 점입니다. 이로 인해 UI 자체가 프로그래머블한 작업 공간이 됩니다.
핵심 기능 (현재 작동 중인 기능)
- 에이전트 주도 대화 – 에이전트는 파일을 읽고 쓸 수 있으며, 도구를 사용하기 전에 확인을 요청해야 합니다.
- 작업 공간 격리 – 각 작업 공간은 독립적인 폴더에 위치하며, 대화와 레이아웃 상태가 분리됩니다.
- 다양한 유형의 패널 – 내장된 패널은 파일, PDF, 마크다운, Jupyter 노트북을 표시합니다. 노트북은 실제 커널에서 실행되어, 사용자와 에이전트가 동시에 편집할 수 있습니다.
- 백그라운드 작업 – 오래 실행되는 명령어는 백그라운드에서 실행되며, 모니터링 및 중지가 가능합니다.
- 에이전트 생성 패널 – 내장 패널로 결과를 렌더링할 수 없는 경우, 에이전트가 실시간으로 사용자 정의 패널을 생성할 수 있습니다.
- 문헌 리뷰 모듈 – 채팅에서 리뷰를 요청하면 결과가 도구 카드로 나타나며, 직접 열 수 있습니다.
현재 제한 사항 (아직 작동하지 않는 기능)
- Claude 전용 지원 – 전체 기능을 사용하려면 Claude Code가 필요하며, 다른 LLM 백엔드는 아직 통합되지 않았습니다.
- 모듈 실행 UI – 모듈은 채팅 명령어를 통해만 시작되며, 전용 버튼이 없습니다.
- 가설 모듈 UI – 가설 모듈은 자체 뷰가 없어 결과를 보기 어렵습니다.
- OpenAI 통합 – 웹 검색이 필요한 모듈(예: 문헌 리뷰)은 OpenAI API 키로는 사용할 수 없습니다.
선택적 OpenAI 지원
apps/server/.env에 OPENAI_API_KEY를 제공하면, 채팅 및 도구 사용 시 에이전트 선택기에서 "OpenAI API" 옵션이 나타납니다. 그러나 문헌 리뷰 및 가설 모듈은 여전히 Claude Code가 필요합니다. 왜냐하면 이 모듈들은 현재 Claude만 제공하는 웹 검색 기능에 의존하기 때문입니다.
설치 체크리스트
- Node 22.18+ (또는 24.12+) 및 pnpm, uv 설치 (Python 3.12+를 다운로드함)
- Claude Code 설치 및 로그인 (CLI
claude가 실행 가능해야 함) - 다음 명령어 실행:
pnpm install uv sync pnpm start # 빌드 후 앱 제공 - 브라우저에서
http://localhost:4173열기. 첫 실행 시 약 1분 정도 소요될 수 있습니다.
데이터 위치
~/Panel/panel.db– 모든 대화와 에이전트 작업을 저장합니다.~/Panel/workspaces– 작업 공간 폴더가 포함되어 있으며, 다른 위치를 지정하지 않으면 이 폴더를 사용합니다. 이 두 디렉터리는 리포지토리 외부에 있으므로, 리포지토리 삭제 또는 재클론해도 데이터는 유지됩니다.
일반적인 문제 해결
- "Panel이 서버에 도달할 수 없습니다." – 서버 프로세스가 실행 중이 아닙니다.
pnpm start를 실행한 터미널을 확인하고 재시도를 클릭하세요. - 에이전트가 설정되지 않았다고 표시됨. – 메시지 박스 아래에 정확한 이유가 표시됩니다. 일반적으로 Claude Code가 로그인되지 않았거나 OpenAI 키가 누락되었음을 의미합니다.
- 포트 충돌 또는 빈 페이지 –
pnpm dev:doctor를 실행하여 필요한 포트를 차지하고 있는 프로세스를 확인하고 해제하는 방법을 확인하세요.
아키텍처 개요
UI 계층
Panel은 Vue와 dockview를 사용하여 유연하고 도킹 가능한 패널 시스템을 제공합니다. 패널은 이미지, 데이터 파일, 코드, 대화 세션을 렌더링할 수 있으며, 연구자들이 자주 컨텍스트를 전환하는 작업 흐름을 반영합니다.
모듈 프로토콜
모듈은 "스킬" 개념을 확장하여 타입화된 입력(Inputs), 출력(Outputs), 중간 상태(Intermediates) 를 제공합니다. 중간 상태는 장시간 실행 작업에 대해 관찰 가능한 상태(예: 사고의 흐름, 스케치패드)를 노출하여 진행 상황 추적과 하위 구성 가능성을 제공합니다.
데이터 추상화 계층(DAL)
DAL은 URI를 메모리 객체 또는 파일 시스템 파일로 매핑하여, 모듈이 저장 세부 사항을 고려하지 않고 추상화된 데이터 핸들로 작동할 수 있도록 합니다.
Hacker News 커뮤니티의 통찰
"나도 취미 프로젝트로 비슷한 아이디어를 만들었는데, AI 네이티브 Airtable 같았어요. 모든 것이 지속되며 앱 자체의 UI가 되었죠." – hellojebus
"이 프로젝트는 멋지지만, 체크포인트 기능이 있나요? 저는 에이전트 워크플로우에서 이 기능을 필수로 생각합니다." – AdityaK_9999
"에이전트가 자신의 패널을 만들 수 있다는 아이디어는 멋지네요. 사람들이 에이전트가 만든 레이아웃을 유지하나요?" – quietraster
"나도 비슷한 것을 만든 적이 있는데, slices-ide라고 불러요… 에이전트는 IDE의 어떤 부분도 수정할 수 있고, 사용자 정의 패널을 추가할 수 있으며, 전역 타임라인을 통해 되돌리기/다시하기도 가능합니다." – purple-leafy
이 댓글들은 두 가지 반복되는 주제를 강조합니다: 지속 가능한, 자가 수정 가능한 UI 레이아웃의 매력과, 에이전트 기반 변경 사항을 안전하게 실험하기 위한 체크포인트 또는 버전 관리의 필요성입니다.
라이선스
Panel은 MIT 라이선스 하에 배포됩니다.
Sources
관련
- 프로젝트
- Dispatch
- 프로젝트
- 프로젝트
- 프로젝트