<div align="center">
<img src="https://raw.githubusercontent.com/YogurtJ/pivane/HEAD/public/brand/logo-192.png" alt="Pivane logo" width="96" height="96">
Pivane
AI 코딩 에이전트를 위한 자체 호스팅 웹 작업 공간으로, 모든 화면에서 사용 가능합니다.
자신의 기기에서 Pi coding agent를 실행하고 데스크톱, 태블릿 또는 휴대폰의 어떤 브라우저에서도 사용할 수 있습니다.<br>
서브 에이전트(Subagents), 예약된 작업(scheduled tasks), MCP, 장기 메모리(long-term memory), 풍부한 파일 미리보기와 자체 모델 및 키를 사용한 내장 이미지, 비디오 및 음성 실험실을 이용하세요.
Latest release
License: ISC
Node.js 22
Platforms
Powered by Pi
English · 简体中文
Download · Install · User guide · Changelog · Report an issue
<img src="https://raw.githubusercontent.com/YogurtJ/pivane/main/docs/assets/readme/hero-en.webp" alt="Pivane on the desktop: projects and threads, a finished coding task and its diff" width="100%">
</div>
Pivane을 사용해야 하는 이유
- Pi의 자체 런타임 사용. Pivane은 Pi의 네이티브 런타임을 실행하고, Pi 고유의 세션 파일을 읽고 작성합니다. 어떤 화면에서도 읽기 쉬운 UI에서 스트리밍 응답, 도구 호출(tool calls), 파일 차이점(file diffs), 셸 명령어(shell commands), 방향 설정(steering) 및 컨텍스트 압축(context compaction)을 얻을 수 있습니다.
- 데스크톱에서 시작하고 휴대폰으로 확인하세요. 세션은 서버에 저장됩니다. 다른 장치에서 스레드를 열 때, 동일한 에이전트 프로세스가 이를 제공합니다. Pivane을 홈 화면에 추가하여 응답 완료 시 알림을 받을 수 있습니다.
- 하나의 작업 공간에서 여러 에이전트를 실행하세요. 서브 에이전트(subagents), 에이전트가 스스로 생성하는 작업 스레드, 스레드 간 메시지, 사이드 채팅, 그리고 cron 예약된 작업을 사용할 수 있습니다. 라이브 뷰는 각각 무엇을 하고 있는지 보여줍니다.
- 사용자의 모델, 키, 기기. Anthropic, OpenAI, Google Gemini, GitHub Copilot, OpenRouter, DeepSeek, Qwen, Kimi, MiniMax, xAI, Mistral을 포함하여 Pi가 지원하는 모든 제공업체를 사용할 수 있습니다. API 키 또는 OAuth로 로그인하거나 자체 OpenAI 호환 엔드포인트를 추가할 수 있습니다. 자격 증명과 기록은 기기에 유지됩니다.
- Pi와 같은 방식으로 확장 가능. Pi 패키지, 스킬(skills), 프롬프트 템플릿 및 MCP 서버는 브라우저에서 설치할 수 있습니다. 또한 내장된 확장 기능 어시스턴트에게 찾아 설정하도록 요청할 수도 있습니다.
- 미디어 생성 및 음성 기능 내장. 자체 이미지, 비디오 및 음성 서비스를 연결하세요. 에이전트는 아이디어를 편집 가능한 매개변수로 변환하며, 사용자가 확인하기 전까지는 아무것도 실행되지 않습니다. 또한 메시지를 구술하고 응답을 음성으로 들을 수도 있습니다.
실제 작동 모습 보기
작업이 완료된 후, 해당 도구 추적(tool trace)은 하나의 줄로 접힙니다. 대화를 떠나지 않고도 변경된 파일과 결과를 검토할 수 있습니다.
<p align="center"><img src="https://raw.githubusercontent.com/YogurtJ/pivane/main/docs/assets/readme/demo-en.gif" alt="Pivane에서 완료된 CSV 내보내기 작업을 검토: 파일 변경, 테스트 결과 및 작업 계획" width="100%"></p>
<sub>스크린샷과 녹화는 합성 데모 프로젝트를 사용합니다.</sub>
기능
에이전트 작업 공간
- 스레드는 프로젝트별로 정리되며 서버의 폴더에서 직접 실행됩니다.
- 답글은 생각 과정(thinking), 도구 호출(tool calls) 및 각 턴마다 변경된 파일과 함께 스트리밍됩니다. 기본 압축 보기(compact view)는 완료된 각 턴을 '시간 · 도구 호출' 요약 한 줄로 접습니다.
- 이미지와 파일을 붙여넣기 또는 드래그 앤 드롭으로 첨부할 수 있고,
@를 사용하여 프로젝트 파일에 참조하거나 텍스트 선택 영역을 다음 메시지에 인용할 수 있습니다. DOCX, XLSX, PPTX 및 PDF 업로드 시 원본 형식을 유지하며, 에이전트는 요청 시 선택된 범위를 읽습니다.
- 작업이 실행되는 동안 방향을 제시하거나 후속 작업을 대기열에 추가할 수 있습니다. 또한 컨텍스트를 중지(stop), 재시도(retry) 또는 압축(compact)할 수도 있습니다.
!command는 서버에서 셸 명령어(shell command)를 실행하며, !!command는 그 출력을 모델 컨텍스트 밖에 유지합니다.
- 모델 선택기에는 검색 기능, 기기 간 동기화되는 즐겨찾기, 모델별 생각 수준, 그리고 컨텍스트 사용량 측정기가 있습니다.
- 진행 상황 카드(progress card)는 에이전트가 따르는 계획을 보여줍니다.
세션 및 기록 (Sessions and history)
- 세션은 Pi의 네이티브 JSONL 파일을 사용하므로 Pi CLI와 호환되며 별도의 채팅 데이터베이스로 복사되지 않습니다.
- 모든 스레드의 전체 텍스트를 검색하고, 메시지를 북마크하며, 세션 트리를 탐색하고, 대화를 포크(fork)하거나, 메시지를 편집 및 재시도할 수 있습니다.
- Pi 세션을 가져와 HTML 또는 JSONL로 내보낼 수 있습니다.
- 프로젝트와 스레드는 보관(archive)할 수 있으며, 스레드를 다른 프로젝트로 이동할 수 있습니다. 새 스레드에는 제목이 자동으로 생성됩니다.
멀티 에이전트 및 자동화 (Multi-agent and automation)
<img src="https://raw.githubusercontent.com/YogurtJ/pivane/main/docs/assets/readme/agents-en.webp" alt="Three subagents running in parallel while a side chat answers a quick question" width="100%">
- 서브 에이전트(Subagents)는 pi-subagents를 통해 구축할 수 있습니다. 라이브 패널에서는 각 실행의 상태와 모델을 보여주며, 사용자가 이를 조향(steer), 중지(stop) 또는 계속 진행할 수 있게 하고 토큰 사용량과 비용을 보고합니다.
- 에이전트는 새로운 작업 스레드를 시작하거나 같은 프로젝트 내 다른 스레드에 메시지를 보낼 수 있습니다.
- 사이드 채팅은 메인 작업을 방해하지 않고 간단한 질문을 할 수 있게 해줍니다. 파일 내용을 읽을 수 있으며, 사용자의 승인을 받은 후 작은 편집을 수행할 수 있습니다.
- 예약된 작업(Scheduled tasks)은 cron 기반 또는 일회성으로 설정할 수 있습니다. 시간대(time zones), 예정된 실행 미리보기, 예산(budgets), 그리고 실행 기록을 지원합니다.
메모리가 있는 어시스턴트 (Assistants with memory)
- 각 어시스턴트 프로필은 자체 페르소나, 사용자 관련 노트, 장기 메모리(long-term memory)를 가지며, pi-hermes-memory가 구동합니다.
- 선택적 백그라운드 학습(background learning)은 사용자의 수정 사항과 선호도를 흡수합니다. 이는 일일 예산 내에서 실행되며, 모든 메모리와 학습된 기술은 검토, 편집 또는 취소할 수 있습니다.
- 자체 지침을 가진 여러 개의 논리적인 프로젝트가 동일한 디렉터리를 가리킬 수 있습니다.
파일 및 렌더링 (Files and rendering)
- 프로젝트 파일을 탐색하고 검색할 수 있으며, 각 턴(turn)의 차이점(diff)을 검토하고 현재 파일과 비교할 수 있습니다.
- 미리보기는 Markdown, 코드, 이미지, PDF, CSV/TSV, SVG, 오디오 및 격리된 HTML(sandboxed HTML)을 지원합니다. 전체 화면 읽기는 사용자의 위치를 유지하며, 이미지는 패닝(pan) 및 줌(zoom)을 지원하고, PDF는 페이지와 줌 레벨을 유지합니다.
- 에이전트는 완성된 파일을 변경 불가능한 스냅샷(snapshots)으로 게시할 수 있으며, 이를 채팅에서 열고 다운로드할 수 있습니다.
- Markdown은 구문 강조(syntax highlighting), LaTeX 수학 공식(KaTeX), 그리고 Mermaid 다이어그램과 함께 렌더링됩니다.
확장 기능 및 MCP (Extensions and MCP)
- Pi 패키지, 스킬, 확장 기능, 프롬프트 템플릿 및 테마를 전역 또는 단일 프로젝트별로 관리할 수 있습니다.
- MCP는 Codemode와 도구 검색을 포함한 Pi의 네이티브 지원 기능을 사용합니다. 서버 및 OAuth 사인인은 브라우저에서 관리됩니다.
- 디스커버리 페이지에는 추천 패키지가 나열됩니다. 확장 기능 어시스턴트는 소스를 확인하고 요청한 후에만 설치합니다.
- 시스템 프롬프트를 편집하고 모든 스레드가 받는 전체 프롬프트를 검사할 수 있습니다.
미디어 랩 및 음성
<img src="https://raw.githubusercontent.com/YogurtJ/pivane/main/docs/assets/readme/media-en.webp" alt="Pivane 채팅에서 편집 가능한 매개변수와 완성된 합성 이미지가 있는 미디어 생성 카드" width="100%">
- 이미지, 비디오, 텍스트-음성 변환(text-to-speech) 및 음성-텍스트 변환(speech-to-text) 서비스를 추가할 수 있습니다. 프리셋에는 OpenAI, Google Gemini, Volcengine Ark (Seedream 및 Seedance), Alibaba Cloud Model Studio가 포함되며, 호환 가능한 모든 HTTP API를 수동으로 추가할 수 있습니다.
- 에이전트는 채팅 또는 랩에서 일반 언어 요청으로부터 편집 가능한 매개변수를 초안합니다. 각 생성은 사용자가 확인한 후에만 실행됩니다. 바쁜 요청은 대기열에 들어가고 새로 고침 후 동일한 상태가 반환됩니다. 모델이 지원하는 경우 참조 이미지나 비디오를 첨부할 수 있습니다.
- 생성 기록을 통해 이전 결과를 미리 보고, 재사용하고, 다운로드할 수 있습니다.
- 작성기에 메시지를 구술하고 응답이나 선택된 텍스트를 음성으로 들을 수 있습니다.
일상 사용
<img src="https://raw.githubusercontent.com/YogurtJ/pivane/main/docs/assets/readme/mobile-en.webp" alt="폰에서 Pivane: 작업 결과, 수학이 포함된 다크 모드 및 모델 선택기" width="100%">
- 레이아웃은 데스크톱, 태블릿 및 휴대폰 화면에 맞춰 조정되며, Pivane을 홈 화면에 설치할 수 있습니다.
- 페이지 내 알림과 소리가 제공되며, 배경 경고를 위한 선택적 Web Push도 이용 가능합니다.
- 사용 대시보드는 토큰과 예상 비용을 일별, 제공업체(provider), 모델, 프로젝트 및 세션별로 분석하여 보여줍니다.
- 라이트와 다크 색상 테마, 조절 가능한 글꼴 크기, 영어 또는 간체 중국어 인터페이스를 사용할 수 있습니다.
- 접근 토큰이 작업 공간을 보호합니다. Pivane은 데스크톱 바로가기와 함께 백그라운드 서비스로 실행됩니다. 새로운 릴리스를 확인하고 호스트의 에이전트에게 업그레이드 프롬프트를 제공합니다.
빠른 시작
Node.js 22와 npm, 그리고 bash 및 ripgrep가 필요합니다 (Windows의 경우 Git for Windows가 Bash를 제공). 또한 모델 제공업체 계정이 필요합니다. 전역 Pi 설치, 프런트엔드 빌드 단계 또는 GPU는 필요하지 않습니다.
sha256sum -c pivane-<version>.tar.gz.sha256
tar -xzf pivane-<version>.tar.gz && cd pivane-<version>
...
http://127.0.0.1:11408을 열고 **설정(Settings) → 제공업체 및 모델(Providers and models)**에서 프로젝트 폴더를 선택한 후 새 채팅을 시작합니다.
일상적인 사용을 위해서는 설치 가이드를 따라 데이터가 앱 디렉토리 외부에 유지되도록 한 다음, node scripts/install-service.cjs를 실행합니다. 이렇게 하면 Pivane이 백그라운드에서 계속 실행되며 로그인할 때 시작됩니다. macOS와 Windows에서는 데스크톱 바로가기도 추가됩니다.
이미 Pi CLI를 사용하고 있나요? Pivane은 기본적으로 동일한 Pi ID를 사용하므로 모델, 로그인 정보, 설정 및 세션이 즉시 이용 가능합니다. CLI와 브라우저에서 동시에 같은 세션에 쓰는 것을 피하세요. 기존 Pi 사용자를 참조하세요.
에이전트가 설정을 하길 원하나요? 코딩 에이전트에게 이 리포지토리와 에이전트 운영 가이드를 제공하세요. 여기에는 설치, 구성, 업그레이드 및 문제 해결 방법이 포함되어 있습니다.
플랫폼
Pivane은 Linux, macOS, Windows에서 네이티브로 실행됩니다 (WSL이나 Docker가 필요하지 않습니다). Raspberry Pi에 호스팅하기에 충분히 가볍고, 모든 최신 브라우저에서 사용할 수 있습니다.
Pivane은 기본적으로 localhost에서 리스닝합니다. 휴대폰이나 다른 컴퓨터에서 접근하려면 액세스 토큰을 켜고, LAN 또는 Tailscale과 같은 VPN, 또는 HTTPS 리버스 프록시를 통해 연결하세요. 네트워크 및 접근를 참조하세요.
작동 방식
flowchart LR
B[
⚠️ [IMG:N]
Pivane은 **개인 사용자(single-user)** 인스턴스를 위해 설계되었습니다. 접근 토큰을 공유하는 모든 사용자가 동일한 인스턴스를 사용하며, 별도의 사용자 계정은 없습니다.
프로젝트 루트는 탐색할 수 있는 폴더를 제한하지만, 이것이 **샌드박스(sandbox)** 는 아닙니다. 에이전트, 셸(shell), 패키지, 확장 기능 모두 서버의 사용자 계정 권한으로 실행되므로 신뢰하는 확장 기능만 설치하십시오.
미디어 생성 및 기타 유료 작업은 사용자가 명시적으로 확인한 후에만 실행됩니다. Pivane은 실패했거나 불확실한 요청을 자동으로 재시도하지 않습니다.
## FAQ
**Pi CLI를 대체할 수 있나요?** 아닙니다. Pi CLI의 보조 도구(companion)입니다. 둘 다 동일한 Pi ID를 공유하므로, 상황에 맞는 것을 사용하시면 됩니다.
**GPU가 필요한가요?** 아니요. 모델은 사용자 제공업체 또는 구성하는 엔드포인트에서 실행됩니다.