프로젝트 소개
pi_agent_rust는 Rust로 작성된 고성능, 무-unsafe 코드 AI 코딩 에이전트 CLI입니다. Mario Zechner의 Pi Agent를 네이티브로 포팅한 것으로, Electron이나 Node.js와 같은 관리형 런타임 기반의 느리고 리소스를 많이 사용하는 대안을 대체하도록 설계되었습니다.
**주요 기능:**
- **5개 계층에 걸친 36개의 내장 도구**: 필수 명령(read, write, edit, bash, grep, find, ls, web_search), 검색 가능 도구(ast_grep, ast_edit, lsp, debug, 메모리 도구), 백그라운드 유틸리티(jobs, hub), 설정 기반 추가 기능(브라우저 자동화, 컴퓨터/데스크톱 제어, 이미지/tts/미디어 처리)
- 실제 네트워크 조건에 맞게 조정된 커스텀 SSE 파서를 통한 확장 사고 블록 지원 스트리밍 응답
- API 키 없이 Ollama, llama.cpp(llama-server), mistralrs를 위한 로컬 모델 지원 기본 제공
- asupersync 런타임을 통한 구조적 동시성으로 예측 가능한 취소 및 리소스 정리
- **기능 기반 보안 모델**: 위험한 셸 패턴(재귀 삭제, 디스크 쓰기, 리버스 셸)의 명령 수준 차단을 통한 2단계 확장 실행 강제, 4계층 신뢰 수명주기(대기 → 승인 → 신뢰 → 종료), hostcall-lane 킬 스위치 제어, 변조 방지 런타임 위험 원장
- SQLite 세션 인덱싱과 O(index+tail) 재개 경로를 위한 v2 사이드카를 사용하는 장기 실행 세션을 위한 리소스 제한 아키텍처
- Python Rich 라이브러리의 Rust 포트인 rich_rust로 구축된 풍부한 터미널 UI
**설치:**
```bash
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/pi_agent_rust/main/install.sh?$(date +%s)" | bash
```
**빠른 사용법:**
```bash
# 대화형 세션
pi
# 초기 프롬프트와 함께
pi "src/의 아키텍처 요약"
# 파일 첨부
pi @src/main.rs "시작 흐름 설명"
# 단일 실행 스크립트 모드
pi -p "이 diff의 잠재적 회귀 위험 나열"
# 마지막 세션 계속
pi --continue
```
**구성:** API 키는 환경 변수(예: `ANTHROPIC_API_KEY`)로 설정됩니다. 로컬 제공자는 키 없이 작동합니다. 모델 카탈로그는 `pi --fetch-models <provider> --refresh-models --persist-models`로 새로 고칠 수 있습니다. 제공자 및 모델 구성은 `~/.pi/agent/models.json`에 있습니다.
이 프로젝트는 모든 빌드 및 품질 검사에 Doodlestein Self-Releaser(DSR)를 사용합니다. 기여자는 직접 Cargo 호출을 피하도록 안내됩니다. 벤치마크 증거는 릴리스 관련 주장이 게시되기 전에 출처가 일치하는 결과를 요구하는 엄격한 아티팩트 계약에 의해 관리됩니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.