can1357 oh-my-pi, IDE 통합 코딩 에이전트로 Pi 포크 공개
can1357이 Mario Zechner의 Pi를 기반으로 만든 코딩 에이전트 'oh-my-pi'(omp)를 오픈소스로 공개했다. 설치 스크립트는 omp.sh에서 제공하며 macOS, Linux, Windows에서 동일한 바이너리로 동작한다.
코어는 약 2만 7천 줄의 Rust 코드로, 40개 이상의 LLM 제공자, 32개 내장 도구, 13개 LSP 연산, 27개 DAP 연산을 한 표면에 통합했다. Bun 설치도 지원하며 권장 버전은 1.3.14 이상이다.
omp는 모델별 편집 포맷을 다듬어 같은 가중치·같은 프롬프트에서도 통과율을 끌어올렸다고 밝혔다. Grok Code Fast 1은 6.7%에서 68.3%로 약 10배 상승했고, MiniMax는 통과율이 2.1배가 됐다. Grok 4 Fast는 출력 토큰을 61% 줄였고, Gemini 3 Flash는 str_replace 대비 5포인트 더 높은 결과를 냈다.
rename 요청은 workspace/willRenameFiles 경로로 처리돼 재내보내기, 배럴 파일, 별칭 임포트까지 파일이 이동되기 전에 함께 갱신된다. lsp 도구는 진단, 내비게이션, 심볼, 코드 액션, 원시 요청까지 IDE가 알고 있는 정보를 그대로 에이전트에 노출한다.
디버거 통합도 강하다. C 바이너리에서 segfault가 나면 lldb로 붙어 잘못된 포인터를 추적하고, Go 서비스가 멈추면 dlv로 고루틴을 훑는다. Python 프로세스는 debugpy로 일시정지, 검사, 평가까지 처리한다.
다른 에이전트가 Python 샌드박스만 주는 것과 달리 omp는 영속 Python과 Bun 워커를 함께 돌린다. 두 커널 모두 loopback 브리지로 read, search, task 같은 에이전트 도구를 다시 호출할 수 있어, 같은 셀에서 Python으로 CSV를 읽고 JavaScript로 차트를 그리는 흐름이 가능하다.
task는 작업을 여러 워커로 분기해 격리된 워크트리에서 실행하고 스키마 검증된 객체를 부모에 돌려준다. /review는 전용 리뷰어 서브에이전트를 띄워 브랜치, 단일 커밋, 미커밋 작업을 병렬로 훑고 P0에서 P3까지 등급을 매긴 결과를 낸다.
에이전트는 retain으로 사실을 기록하고 recall로 다시 꺼내며, 각 세션을 멘탈 모델로 압축해 다음 세션의 첫 턴에 로드한다. 메모리는 프로젝트 단위라 한 저장소에서 학습한 내용은 그 저장소 안에 머문다.
Zed 안에서 실행하면 같은 에이전트가 에디터 버퍼를 읽고 에디터 저장 경로로 쓰며 에디터 터미널에서 셸을 띄운다. 별도 변환 없이 Cursor MDC, Cline .clinerules, Codex AGENTS.md, Copilot applyTo를 비롯해 디스크에 있는 8개 포맷을 그대로 읽는다.