내 워크플로우에 맞춰 고치는 AI 코딩 에이전트
터미널에서 대화하듯 코드를 수정하거나, 스크립트로 자동화하거나, 다른 앱에 연결해 쓸 수 있습니다. Pi는 최소한의 기능만 갖춘 에이전트 하네스로, 내가 필요한 부분만 골라 쓰는 구조입니다. 확장, 스킬, 프롬프트 템플릿, 테마를 추가해 원하는 형태로 바꿀 수 있습니다.
기본에 없는 기능은 직접 추가
Pi는 서브 에이전트나 계획 모드 같은 특정 기능을 기본에 포함하지 않습니다. 대신 확장, 스킬, 프롬프트 템플릿, 테마를 추가해 원하는 형태로 바꿀 수 있습니다. 이렇게 만든 묶음을 패키지로 만들어 npm이나 git으로 공유할 수도 있습니다. Pi는 내 워크플로우에 맞춰지도록 설계되었습니다.
다양한 실행 방식
터미널에서 대화형으로 사용할 수도 있고, 출력만 받는 인쇄 모드나 JSON 모드로 자동화할 수도 있습니다. RPC를 통해 원격으로 제어하거나, TypeScript SDK로 직접 앱을 만들 수도 있습니다. OpenClaw라는 실제 통합 사례를 참고하면 어떻게 쓰이는지 볼 수 있습니다. 설치 시 Node.js 22.19 이상이 필요합니다. macOS, Linux, Windows 설치 프로그램은 필요한 경우 Node.js를 함께 설치해 줍니다.
권한 제한이 없는 이유
Pi에는 파일 시스템, 프로세스, 네트워크, 자격 증명 접근을 제한하는 내장 권한 시스템이 없습니다. 기본적으로 Pi를 실행한 사용자와 프로세스의 권한으로 동작합니다. 더 강한 경계가 필요하면 컨테이너나 샌드박스를 사용해야 합니다. Gondolin 확장, 일반 Docker, OpenShell 세 가지 패턴을 문서에서 제공합니다. Gondolin은 호스트에 인증을 두고 도구를 마이크로 VM으로 라우팅하는 방식입니다.
의존성 관리와 공급망 강화
npm 의존성 변경을 코드 변경처럼 검토합니다. 직접적인 외부 의존성은 정확한 버전으로 고정하고, 내부 워크스페이스 패키지는 버전 범위로 유지합니다. package-lock.json이 의존성의 기준이 되며, 실수로 커밋되는 것을 방지합니다. pi.dev 설치 프로그램은 전이적 의존성까지 고정된 설치 로크에서 설치합니다. 릴리스 시에는 격리된 환경에서 npm과 Bun 설치를 테스트합니다.
사용 전 확인 사항
Pi는 MIT 라이선스로 공개되어 있습니다. 하지만 내장된 권한 제한이 없으므로, 민감한 환경에서는 반드시 컨테이너나 샌드박스 격리를 적용해야 합니다. Node.js 22.19 이상을 요구하며, Nix를 사용할 경우 ARM64와 x86-64 아키텍처의 Linux와 macOS를 지원합니다. 새로운 기여자의 이슈와 PR은 기본적으로 자동 폐기되며, 유지보수자가 매일 검토합니다. 내 워크플로우에 맞는 확장이 있는지, 또는 직접 만들어야 하는지 먼저 확인하는 것이 좋습니다.