Prime Agent: 도구가 IPython 하나뿐인 코딩 에이전트
GitHub 트렌딩에서 Prime Agent를 보고 설치 여부를 정하려는 상황이라면, 별 개수보다 먼저 볼 것은 실행 방식입니다. 모델이 쓰는 도구가 계속 살아 있는 IPython 하나뿐이고, 파일 조작부터 서브에이전트 호출까지 전부 그 안에서 코드로 처리됩니다.
주의할 곳이 하나 있습니다. 모델이 만든 파이썬을 사용자 권한으로 그대로 실행하고, 만든 쪽도 이것이 보안 샌드박스가 아니라고 경고합니다.
도구가 IPython 하나면 무엇이 달라지나
Prime Agent는 모델에게 도구를 하나만 줍니다. 계속 살아 있는 IPython 커널입니다. 파일을 읽고 고치는 일, 셸 명령, 스킬 호출, 서브에이전트 위임이 모두 그 커널 안에서 시작합니다. read와 write, edit, bash를 여러 개 두고 모델이 골라 쓰게 하는 방식과 여기서 갈립니다.
컨텍스트 비용이 이 설계의 출발점입니다. Prime Intellect가 쓴 RLM 소개 글은 컨텍스트가 길어질수록 토큰당 비용은 선형으로 늘고 성능은 떨어진다는 문제를 짚습니다. 큰 입력을 컨텍스트에 통째로 올리지 않고 파이썬 변수에 담아 둔 다음, 필요한 조각만 코드로 꺼내 봅니다. 컨텍스트를 변수로 다룬다는 말이 이 뜻입니다.
파이썬 상태는 도구 호출 사이에도 컨텍스트 압축
이후에도 남습니다. 변수와 임포트, 함수, 파싱 결과, 작업 핸들이 다음 턴에도 그대로 쓰입니다. 셸 명령은%%bash 셀에서 돌아가는데, 그 셀은 매번 임시 서브셸이고 %cd로 옮긴 위치와 변수는 커널에 남습니다.
커널이 살아 있으니 변수가 살고, 변수가 살아 있으니 작업이 이어집니다.
성능 숫자는 이 글의 주제가 아닙니다. ARC-AGI-3 점수는 누가 쟀는지에 따라 값이 갈린다는 점을 정리한 글에 따로 적었고, 여기서는 구조만 다룹니다. 도구 하나로 좁힌 설계가 뒤에 나오는 기능 대부분의 전제입니다.
서브에이전트 호출은 답을 돌려주지 않습니다
서브에이전트는 커널 안에서 rlm(...)을 부르면 뜹니다. 호출은 자식을 띄운 뒤 곧바로 핸들을 돌려줍니다. 자식이 낸 답은 그 반환값에 들어 있지 않습니다. 결과는 agent_message 응답이나 파일로만 건너옵니다.
README만 보고 코드를 쓰면 여기서 어긋납니다. README는 rlm(...)이 자식을 띄우고 결과를 프로그래밍 방식으로 돌려준다고 적었지만, RLM 프로그래밍 모델 문서는 호출이 작업 접수 직후 핸들만 반환하며 자식의 답을 기다리지도 반환하지도 않는다고 명시했습니다.
호출 형태는 문서 예제로 보는 편이 빠릅니다. 아래 코드는 rlm.md에 실린 것이고, 직접 돌려 본 출력이 아닙니다. 자식 둘을 띄운 뒤 부모가 기다리지 않는 모양이 그대로 드러납니다.
api_review = await rlm("Review the public API", name="api-reviewer")
test_review = await rlm("Review the test coverage", name="test-reviewer")
await agent_message.send(
"Check the newly added regression test.",
receiver_role="child",
receiver_name=api_review.name,
)
두 번의 호출이 서로 다른 자식을 띄우고, 부모는 결과를 기다리지 않은 채 턴을 끝냅니다. 뒤쪽 agent_message.send는 이름으로 자식을 지목해 후속 지시를 넣는 부분입니다. 부모가 자식 목록을 다시 찾을 때는 rlm.list_subagents()를 쓰며, 이 목록은 컨텍스트 압축과 커널 재시작을 넘겨서도 남습니다.
부모 컨텍스트를 좁게 유지하는 것이 이 구조의 목적입니다. 자식은 자기 하위 작업에 필요한 만큼만 컨텍스트를 받고, 부모 모델과 제공자 설정, 스킬, 도구를 물려받습니다. 실행 중인 에이전트끼리 직접 메시지를 주고받는 통로도 같은 자리에 있습니다. 사람이 중간에서 옮겨 줄 필요가 없습니다.
터미널을 닫아도 세션이 계속 돕니다
터미널 창을 닫아도 작업은 멈추지 않습니다. 세션은 데몬이 관리하는 워커 프로세스에서 돌고, 워커가 루트 세션과 IPython 커널, 예약된 작업, 자식 세션을 계속 쥡니다. 클라이언트를 닫는 것은 연결을 끊는 일이지 실행을 끝내는 일이 아닙니다.
다시 붙는 방법은 명령 몇 개로 끝납니다. 아래는 README에 적힌 명령을 용도별로 옮긴 것이며, 실행 출력이 아닙니다. 세션을 잃어버렸다고 느낄 때 먼저 두드릴 자리입니다.
prime-agent agents # 실행 중, 대기, 저장된 세션 목록
prime-agent attach <agent> # 돌고 있는 세션에 다시 붙기
prime-agent --resume <path|id>
prime-agent status # 백그라운드 서비스 상태
prime-agent doctor --fix # 서비스 진단과 복구
prime-agent shutdown --force # 모든 에이전트와 서비스 종료
attach는 살아 있는 세션에 화면을 다시 붙이는 쪽이고, --resume은 저장된 세션을 되살리는 쪽입니다. 응답이 없을 때는 status로 백그라운드 서비스 상태를 먼저 보고 doctor --fix로 고칩니다. shutdown --force는 워커와 커널까지 한 번에 내립니다.
다시 깨우는 장치가 셋 있습니다
세션을 다시 깨우는 장치는 셋으로 갈립니다. 장시간 실행 문서는 /heartbeat를 사용자가 만드는 반복 지시 하나로, rlm_heartbeat를 에이전트가 코드로 만드는 세션 내부 반복 지시로 구분합니다. prime-agent schedule은 일회성이나 cron 예약을 맡습니다. /goal은 목표와 진행 상황을 완료하거나 지울 때까지 붙들어 둡니다.
자율 모드에는 기본 한도가 붙어 있습니다. CLI 문서에 적힌 기본값은 이어붙임 3회, 턴 12회, 누적 토큰 8만, 경과 시간 30분입니다. --autonomous-gate로 통과해야 할 셸 명령을 걸 수도 있습니다. 다만 같은 문서가 못을 박아 둔 문장이 있습니다. 게이트 통과는 그 게이트가 검사한 것만 통과했다는 뜻이고, 한도에 도달한 것이 과제 성공을 뜻하지는 않습니다.
스스로 고치는 범위는 보조 상태까지입니다
자기 개선이라는 말의 범위가 생각보다 좁습니다. /refine은 지금까지의 실행 기록을 읽고 보조 프롬프트, 메모리, 스킬 설명, 재사용할 서브에이전트 사양을 조금씩 갱신합니다. 모델을 학습시키는 일도, 에이전트가 자기 코드를 다시 쓰는 일도 아닙니다.
고치지 않는 부분이 정해져 있습니다. /refine은 변경 불가능한 기본 시스템 프롬프트를 절대 다시 쓰지 않고, 기록된 스냅샷으로 되돌릴 수 있습니다. CLI 문서의 명령 설명도 세션에 붙은 하네스 상태를 정련하거나 롤백하는 것으로 돼 있습니다.
스킬은 임포트해서 쓰는 파이썬 패키지입니다. 스킬 문서를 보면 마크다운 지시만 담은 스킬과 파이썬 패키지를 함께 담은 스킬이 나뉘고, 후자는 커널 환경에 설치돼 await release_audit(...) 같은 호출로 불립니다. 반복되는 절차를 스킬로 굳히는 skill-creator가 기본 스킬로 들어 있습니다.
헷갈리기 쉬운 지점이 하나 있습니다. /refine이 만드는 스킬 항목은 재사용할 파이썬 호출에 대한 설명과 인자 규약이지, 실행되는 패키지 자체가 아닙니다. 같은 문서가 /refine은 새 기능을 패키징하고 검토하는 일을 대신하지 않는다고 덧붙였습니다.
설계 근거는 논문 쪽에 걸려 있습니다. README가 링크한 Continual Harness 논문은 에이전트가 행동과 정련을 번갈아 하면서 자기 프롬프트와 서브에이전트, 스킬, 메모리를 갱신하는 구조를 다룹니다. 2026년 5월에 올라온 문서입니다.
설치 전에 권한 범위부터 확인합니다
만든 쪽이 보안 샌드박스가 아니라고 직접 경고합니다. Prime Agent는 모델이 생성한 파이썬과 프로젝트 명령을 사용자 권한으로 실행합니다. 워커와 커널 프로세스는 수명 격리와 복구를 위한 것이지 보안 장치가 아니라는 것이 README 경고문입니다.
권한 범위가 곧 위험 범위입니다. 사용자 계정이 지울 수 있는 파일은 커널도 지웁니다. 문서는 믿을 수 있는 저장소와 지시, 스킬, 확장만 쓰고 신뢰할 수 없는 코드는 외부 샌드박스에서 돌리라고 권합니다. 작업 디렉터리도 일회용 클론이나 되돌릴 수 있는 워크트리를 쓰라고 적혀 있습니다.
설치는 한 줄로 끝납니다. macOS와 리눅스가 대상이고, 문서 폴더에는 Git Bash 같은 bash 셸을 요구하는 Windows 설정 문서가 따로 있습니다. 아래 명령은 README에 적힌 그대로이며, 직접 실행해 본 결과가 아닙니다.
curl -fsSL https://app.primeintellect.ai/prime-agent/install.sh | sh
cd /path/to/project
prime-agent
설치 스크립트는 버전이 붙은 릴리스를 받아 SHA-256 체크섬을 검증한 뒤 prime-agent 명령을 깔고, 에이전트가 쓰는 IPython 런타임까지 준비합니다. 작업할 디렉터리로 옮겨 실행하면 에이전트는 그 자리에서 파일을 고치고 명령을 돌립니다. 첫 실행에서는 /login으로 제공자를 고릅니다.
구독을 붙이면 과금이 플랜 밖으로 나갑니다
제공자를 고르는 자리에서 과금 방식이 갈립니다. 구독 로그인은 ChatGPT Plus·Pro, Claude Pro·Max, GitHub Copilot을 받고, API 키로는 스무 곳 넘는 제공자를 붙일 수 있습니다. 주의할 곳은 그다음입니다. Claude 구독을 붙이면 서드파티 하네스 사용량이 플랜 한도가 아니라 추가 사용량에서 토큰 단위로 청구됩니다.
석 달 된 저장소를 어디까지 믿을까
판단 기준은 성숙도입니다. 2026년 8월 10일 GitHub API로 확인한 prime-agent 저장소는 별 11,390개, 열린 이슈 452개, MIT 라이선스, 생성일 5월 8일입니다. 석 달 사이 v0.7.0과 v0.7.1이 이틀 간격으로 나왔습니다. 이 속도면 개인 실험에는 맞고 팀 공용 파이프라인에는 이릅니다.
직접 설치해 돌려 보지 않았습니다. 토큰 소비량과 장시간 작업의 안정성은 확인하지 못했고, 이 둘이 판단을 가른다면 릴리스 노트에서 최근 변경 사항부터 보세요.
일회용 클론을 하나 만들고 그 안에서 첫 세션을 띄우세요. 커널이 무엇을 실행하는지 되돌릴 수 있는 자리에서 보는 것이 먼저입니다.
